
一家做消化道内窥镜 AI 辅助诊断的初创团队,花三个月用 MIMIC-CXR 训练出了一个效果不错的模型。准备拿去报 NMPA 二类证时才发现:数据集许可证写着"仅限非商业研究用途"。法务一句话否了------模型不能用在这条许可下训练的数据,整个 pipeline 推倒重来。
这不是个例。绝大多数医疗数据集的许可证都写着"仅限非商业研究用途"。模型不能商业化,甚至不能放进公司内部做验证。但产品要上线、要过审、要报证,每一步都需要数据来源的合规背书。
Creative Commons(CC)开放许可------CC0、CC-BY、CC-BY-SA------是解决这个问题的一条路。采用这类许可的数据集允许商用,只需标注来源。在整个医疗 AI 生态中,这类数据集极为稀缺,但确实存在。
以下 7 个数据集采用 CC 开放许可、可直接下载使用,覆盖内窥镜、病理、影像分割、细胞分析四个方向,每一个都能用于商业产品开发。
什么是 CC 许可?为什么重要?
| 许可类型 | 含义 | 商用 | 附加条件 |
|---|---|---|---|
| CC0 | 完全放弃版权,进入公共领域 | ✅ 可以 | 无需标注 |
| CC-BY 4.0 | 署名许可 | ✅ 可以 | 需标注原作者 |
| CC-BY-SA 4.0 | 署名-相同方式共享 | ✅ 可以 | 需标注 + 衍生作品同许可 |
| CC-BY-NC-ND | 非商业 + 禁止演绎 | ❌ 不可 | 仅限非商业研究 |
下文 7 个数据集均属于前三类(可商用)。
总览:7 个 CC 许可数据集
| 数据集 | 许可 | 模态 | 规模 | 任务类型 |
|---|---|---|---|---|
| Kvasir-HyperKvasir | CC-BY 4.0 | 内窥镜 | 11 万张图像 + 491 条视频·~158GB | 消化道病变分类 |
| Medical Decathlon | CC-BY-SA 4.0 | CT/MRI | 2,633 例 3D 体素·~72.5GB | 多任务分割 |
| CAMELYON16/17 | CC0 | 病理 WSI | 全切片图像·bigTIFF | 淋巴结转移检测 |
| BBBC | CC0 为主 | 显微图像 | 多模态荧光/明场 | 细胞核分割/药物筛选 |
| CIMA | CC-BY 4.0 | 空间生物学 | 56 通道·258K 细胞·~2TB | 免疫微环境分析 |
| BCNB | 研究开放 | 病理 WSI | 1,058 名患者·~33GB | 乳腺癌芯针活检 |
| MoNuSeg | 研究开放 | 显微图像 | TCGA 来源·~97MB | 细胞核分割 |
1. Kvasir-HyperKvasir --- 消化道内窥镜 AI 的最大开源库
11 万张标注图像 + 491 条视频,CC-BY 4.0 许可,158GB。挪威 SimulaMet 和 Bærum Hospital 联合发布。
业务场景:做 AI 辅助结肠镜筛查产品,需要大量带标注的消化道病变图像做训练集。Kvasir 是这个领域数据量最大、许可最开放的数据集------CC-BY 4.0 意味着用它训练的模型可以商业化,只需在产品文档中标注数据来源。23 类标注覆盖了息肉、溃疡性结肠炎、食管炎等常见病变,足够支撑一个初版商用模型的训练。491 条完整检查视频还可以用来做"检查质量评估"功能------判断医生退镜是否到位。
技术规格:
- 图像分辨率:各异的内窥镜帧
- 标注类别:23 类消化道病变和正常解剖结构
- 视频标注:491 条完整内窥镜检查视频
- 格式:JPEG / MP4
python
import os
import cv2
import numpy as np
from torch.utils.data import Dataset
class KvasirDataset(Dataset):
def __init__(self, root_dir, split='train'):
self.root = os.path.join(root_dir, split)
self.classes = sorted(os.listdir(self.root))
self.samples = []
for cls in self.classes:
cls_dir = os.path.join(self.root, cls)
if os.path.isdir(cls_dir):
for f in os.listdir(cls_dir):
if f.endswith(('.jpg', '.png')):
self.samples.append((os.path.join(cls_dir, f), cls))
self.cls_to_idx = {c: i for i, c in enumerate(self.classes)}
def __len__(self):
return len(self.samples)
def __getitem__(self, idx):
img_path, cls = self.samples[idx]
img = cv2.imread(img_path)
img = cv2.resize(img, (224, 224))
return img, self.cls_to_idx[cls]
# 数据集统计
ds = KvasirDataset('kvasir/')
print(f"类别数: {len(ds.classes)}")
print(f"样本数: {len(ds)}")
print(f"类别: {ds.classes}")
下载方式:官网 datasets.simula.no 直接下载,CC-BY 4.0。
2. Medical Segmentation Decathlon --- 十任务通用分割基准
2,633 例 3D 体素数据,72.5GB,CC-BY-SA 4.0 许可。King's College London、Memorial Sloan Kettering 和 German Cancer Research Center 联合发布。
业务场景:开发面向医院的通用医学影像分割平台,需要覆盖多个器官和病灶类型。分别找脑肿瘤、肝脏、肺结节的数据集要对接五六个不同的数据提供方,每个都有各自的许可协议。Medical Decathlon 一个数据包覆盖十个器官的分割任务,许可统一为 CC-BY-SA 4.0------法务只需审核一份协议。做脑肿瘤、肝脏、肺结节、前列腺等方向的商用产品,都能从这里拿到起步训练数据。
十个分割任务:
| 任务 | 器官 | 病灶 | 数据量 |
|---|---|---|---|
| Task01 | 脑 | 脑肿瘤 | 484 例 |
| Task02 | 心脏 | 左心室 | 20 例 |
| Task03 | 肝脏 | 肝肿瘤 | 131 例 |
| Task04 | 海马体 | 海马头 | 30 例 |
| Task05 | 前列腺 | 前列腺 | 48 例 |
| Task06 | 肺 | 肺结节 | 64 例 |
| Task07 | 胰腺 | 胰腺癌 | 282 例 |
| Task08 | 肝血管 | 血管 | 192 例 |
| Task09 | 脾脏 | 脾脏 | 41 例 |
| Task10 | 结肠 | 结肠癌 | 126 例 |
python
import SimpleITK as sitk
import numpy as np
# 读取 Medical Decathlon 的脑肿瘤数据
ct = sitk.ReadImage('Task01_BrainTumour/imagesTr/BRATS_001.nii.gz')
ct_array = sitk.GetArrayFromImage(ct) # (D, H, W, C)
print(f"CT shape: {ct_array.shape}")
seg = sitk.ReadImage('Task01_BrainTumour/labelsTr/BRATS_001.nii.gz')
seg_array = sitk.GetArrayFromImage(seg)
print(f"Seg shape: {seg_array.shape}")
print(f"标签值: {np.unique(seg_array)}") # 0=背景, 1=坏死, 2=水肿, 4=增强
注意:CC-BY-SA 4.0 的"相同方式共享"条款意味着衍生作品(包括训练出的模型如果对外发布)需保持相同许可。如果模型仅内部使用不对外发布,则不受此限制。商用前建议法务确认。
下载方式:medicaldecathlon.com 直接下载,CC-BY-SA 4.0。
3. CAMELYON16/17 --- 乳腺癌淋巴结转移的 CC0 里程碑
全切片图像(WSI),bigTIFF 格式,CC0 许可(完全放弃版权,进入公共领域),AWS Open Data 托管。荷兰 5 家医学中心联合标注。
业务场景:做术中冰冻病理 AI 辅助诊断系统,需要在手术过程中实时判断淋巴结是否有转移------这直接决定手术范围。CAMELYON 的像素级掩码标注和 40x 分辨率足够训练一个商用级转移检测模型。CC0 许可是关键:完全进入公共领域,不需要标注来源也能商用,法务零障碍。对于需要报 NMPA/FDA 认证的产品,CC0 是最干净的合规路径。
技术规格:
- CAMELYON16:139 张训练 + 54 张测试 WSI
- CAMELYON17:扩展为 500+ 张 WSI,含临床验证场景
- 标注:像素级掩码(肿瘤区域 + 正常区域)
- 分辨率:40x(0.25 μm/pixel)
python
import openslide
import numpy as np
# 读取 WSI
slide = openslide.OpenSlide('tumor_001.tif')
w, h = slide.level_dimensions[0]
print(f"WSI 尺寸: {w} x {h}")
# 在 40x 层提取 patch
level = 0
patch_size = 256
patches = []
for _ in range(100):
x = np.random.randint(0, w - patch_size)
y = np.random.randint(0, h - patch_size)
patch = slide.read_region((x, y), level, (patch_size, patch_size))
patches.append(np.array(patch)[:, :, :3])
print(f"采样 {len(patches)} 个 patch, shape: {patches[0].shape}")
下载方式:CAMELYON 官网和 AWS Open Data 免费下载,CC0。
4. BBBC --- Broad 显显微图像分析基准
Broad Institute 的 Bioimage Benchmark Collection,CC0 为主,涵盖荧光、明场、DIC 多种成像模式。CellProfiler 兼容。
业务场景:做高通量药物筛选平台,需要对细胞板数千个视野做自动细胞核分割和表型量化。BBBC 的数据格式和 CellProfiler(Broad 的开源图像分析软件)完全兼容------这意味着训练好的模型可以无缝接入 Broad 的分析生态,从数据加载到表型输出一条龙。CC0 许可让药企可以直接用这些数据训练内部模型,不需要和 Broad 签合作协议。
python
from skimage.io import imread
from scipy import ndimage
import numpy as np
# 读取 BBBC 细胞核分割数据
img = imread('BBBC039/IXMtest_A02_s9.tif') # 荧光图像
nuclei = imread('BBBC039/IXMtest_A02_s9.png') # 标注掩码
print(f"图像 shape: {img.shape}")
print(f"掩码 shape: {nuclei.shape}")
print(f"核数: {len(np.unique(ndimage.label(nuclei > 0)[0])) - 1}")
下载方式:Broad Institute 官网公开下载,CC0。
5. CIMA --- 结直肠癌免疫微环境 CODEX 数据
斯坦福大学 Nolan 实验室和伯尔尼大学病理研究所联合发布。56 通道 CODEX 高维空间成像,258K 细胞,2TB,CC-BY 4.0。TCIA 公开归档。
业务场景:做肿瘤免疫药物靶点发现平台,需要理解肿瘤微环境中免疫细胞的空间分布和互作关系。传统单通道免疫组化只能看一两个标记物,CIMA 的 56 通道 CODEX 数据可以同时标记 CD3/CD8/PD-1/CK 等数十种免疫标记------做细胞类型聚类、空间邻域分析、免疫细胞互作建模都能直接上手。CC-BY 4.0 允许药企商用,适合做药物靶点发现和伴随诊断开发。
下载方式:TCIA(The Cancer Imaging Archive)公开归档,CC-BY 4.0。
6. BCNB --- 早期乳腺癌芯针活检
1,058 名患者,JPG 格式 WSI,33GB,含 13 项临床特征。北邮和北京朝阳医院联合发布。
业务场景:做术前乳腺癌病理 AI 辅助诊断系统。CAMELYON 做的是术后淋巴结,BCNB 做的是术前穿刺------临床时间点更早,对患者的决策价值更大。更重要的是 BCNB 带了 13 项临床特征(年龄、ER/PR/HER2 状态、Ki-67、组织学分级等),可以做"影像+临床指标"的多模态融合------这比纯影像模型的临床价值更高。以中国患者为主的数据构成,对面向国内市场的产品尤为关键。
python
import torch
import torch.nn as nn
# BCNB 多模态融合模型
class BCNBFusionModel(nn.Module):
def __init__(self, img_feat_dim=512, clin_feat_dim=13, hidden=256):
super().__init__()
self.img_branch = nn.Sequential(
nn.Linear(img_feat_dim, hidden), nn.ReLU(), nn.Dropout(0.3))
self.clin_branch = nn.Sequential(
nn.Linear(clin_feat_dim, 64), nn.ReLU(), nn.Dropout(0.3))
self.classifier = nn.Sequential(
nn.Linear(hidden + 64, 128), nn.ReLU(),
nn.Linear(128, 2))
def forward(self, img_feat, clin_feat):
return self.classifier(torch.cat([
self.img_branch(img_feat),
self.clin_branch(clin_feat)
], dim=1))
下载方式:GitHub 仓库开放下载。
7. MoNuSeg --- 多器官细胞核分割基准
TCGA 来源,18 家医院多中心采集,显微镜图像 + XML 标注,仅 97MB。
业务场景:做数字病理分析平台,细胞核分割是几乎所有下游任务的基础------细胞计数、组织分型、增殖指数(Ki-67 阳性率)计算、预后预测都依赖准确的核分割。MoNuSeg 是这个任务的标准基准,数据来源于 TCGA,天然和基因组数据有交叉。97MB 的体量意味着半小时就能跑通完整 pipeline,非常适合做产品 POC 演示。
下载方式:MoNuSeg 官网和 GitHub 公开下载。
按业务方向选数据集
| 业务方向 | 推荐数据集 | 许可 | 理由 |
|---|---|---|---|
| 内窥镜筛查产品 | Kvasir-HyperKvasir | CC-BY 4.0 | 11 万张+视频,可商用 |
| 通用影像分割平台 | Medical Decathlon | CC-BY-SA 4.0 | 十器官统一许可,法务审一份 |
| 术中病理辅助诊断 | CAMELYON16/17 | CC0 | 像素级掩码,CC0 零合规障碍 |
| 高通量药物筛选 | BBBC | CC0 | CellProfiler 兼容,药企直接用 |
| 免疫药物靶点发现 | CIMA | CC-BY 4.0 | 56 通道空间成像 |
| 术前乳腺癌诊断 | BCNB | 开放 | 中国患者+13 项临床特征 |
| 数字病理平台 | MoNuSeg | 开放 | 轻量级,POC 首选 |
技术总结
CC 许可数据集在医疗 AI 生态中是稀缺资源,几个在产品化过程中需要关注的点:
- CC0 是最干净的合规路径------CAMELYON 和 BBBC 采用了 CC0,完全进入公共领域,不需要标注来源也能商用。对于需要报 NMPA/FDA 认证的产品,CC0 意味着数据来源合规问题被彻底消除。
- CC-BY-SA 的"传染性"------Medical Decathlon 采用 CC-BY-SA 4.0,衍生作品(包括对外发布的模型)需保持相同许可。如果模型仅内部使用不对外发布,则不受此限制。商用前法务务必确认。
- 数据量和许可的权衡------Kvasir 有 11 万张图像且 CC-BY,但标注粒度只有分类级;CAMELYON 虽然只有几百张 WSI 但有像素级掩码。选数据集时要看产品需要什么粒度的标注。
- 多模态融合是产品差异化关键------BCNB 带 13 项临床特征,CIMA 有 56 个免疫通道。纯影像数据集的产品壁垒低,多模态融合数据集能构建更深的临床价值。
能直接拿来做商用的医疗数据集,全球就这些。对于要走完"从训练到上市"全流程的团队来说,数据来源的许可合规是第一道门槛,也是最容易踩坑的环节。
扩展阅读
- GitHub 项目 :top100-medical-datasets --- 全球 Top100 AI-Ready 医疗数据集索引,按 8 大主题分类
更多数据集,也可以打开 千方数据集