PatchChestCT — 胸部 CT 九类异常 patch 级空间标注数据集

以 CT-RATE 为源队列,为 2,201 例非增强胸部 CT 提供 12×12×24 三维 patch 网格上九类临床显著异常的 token 对齐二值标注——医学生初注+资深医师终审三段质控,patch 级监督定位 Dice 42.2% 碾压弱监督基线 15.6%

来源 Zenodo 10.5281/zenodo.19707049 (v3) 标注包 + Scientific Data 论文 PMC13469086 + GitHub SadVoxel/PatchChestCT;源图像 CT-RATE (Hamamci et al., Nat Biomed Eng 2026)发布时间: 2026-10-08最后更新: 2026-10-20 阅读 39
PatchChestCT — 胸部 CT 九类异常 patch 级空间标注数据集

信息速览

数据集名称PatchChestCT — 胸部 CT 九类异常 patch 级空间标注数据集
数据类型人工标注,影像数据,原始数据
规模2,201 例非增强胸部 CT 研究(Train 2016 / Valid 185;每研究标注 1 个重建体数据);源队列 CT-RATE 含 25,692 studies / 21,304 indi
接入方式Zenodo 10.5281/zenodo.19707049 (v3) 标注包 + Scientific Data 论文 PMC13469086 + GitHub SadVoxel/PatchChestCT;源图像 CT-RATE (Hamamci et al., Nat Biomed Eng 2026)
AI 就绪度

INFOBOX — PatchChestCT 一屏速览

维度 内容
本质 基于 CT-RATE 的三维 patch 级空间标注数据集(非图像本体、非体素级分割)
团队 中国科学技术大学(USTC)生物医学工程学院 + MIRACLE 中心;通讯 Wei Wei、Zhou Shaohua Kevin,10 作者
论文 Scientific Data 2026;13(1):1180(doi:10.1038/s41597-026-07793-0;PMID 42586983;PMCID PMC13469086)
规模 2,201 例非增强胸部 CT(Train 2016 / Valid 185;≈CT-RATE 50,188 卷的 10%)
网格 每卷 12×12×24 patch,单 patch 32×32×8 voxels ≈ 6.9 cm³;预处理统一 384×384×192
类别 九类:动脉壁钙化 / 冠脉钙化 / 心包积液 / 食管裂孔疝 / 淋巴结肿大 / 肺不张 / 肺不透明影 / 肺实变 / 支气管扩张
标注 医学生初注 → 资深医师目视复核 → 双人独立重标 → 资深医师终审裁决(共识 ground truth)
核心卖点 token 对齐粒度,patch 即 CNN 特征图单元 / ViT patch embedding,天然接入 Transformer
定位结果 patch 级监督最佳 mean DSC 42.2% vs 弱监督最佳 15.6%(+26.6)
一致性 卷级 Gwet AC1(0.681–1.000)+ patch 级 Dice(0.214–0.640)
获取 标注 CC BY 4.0 直链(Zenodo 19707049 v3);图像须另申请 CT-RATE(gated DUA)
库内互链 padchest(117)、chest-imagenome(330)、chest-ct-sepsis-er(600)、rad-chestct(819)

PatchChestCT 是一个"给胸部 CT 装上定位坐标"的数据集工程:它不动一张图像,而是在 CT-RATE 的 2,201 例非增强胸部 CT 上,把传统"整卷一个标签"的图像级监督,升级为"每个立方块一个 0/1"的三维 patch 级标注。每卷被切成 12×12×24 共 3,456 个小立方体,九类临床显著异常各占一个 .npz 二值数组。它最锋利的一句话是:用这些 patch 标签训练出的定位模型,平均 Dice 达到 42.2%,而仅用图像级标签的弱监督方法最好只有 15.6%——图像级监督不足以支撑可靠的空间定位,粗粒度的"有/无"标签学不会"在哪里"。

导语读法三则:

  1. 只想下数据跑通:直奔 §6 获取与许可——标注是 CC BY 4.0 直链,图像得单独去 CT-RATE 申请,两步入库别漏第二步。
  2. 关心定位监督价值:直奔 §4 与 §7——Dice 42.2% vs 15.6% 的对照、逐类提升幅度、以及"子集代表性偏斜"这一必须记住的警戒线。
  3. 要接入 Transformer/多模态模型:直奔 §5——token 对齐设计是本文的立意核心,patch 粒度与 ViT patch embedding 同构。

§0 导读:这个数据集解决什么问题

胸部 CT 的病灶定位长期处在"数据错配"的困境里。一方面,CT 一次扫描可达数百至上千轴位切片,放射科医师逐层阅片负担极重、易疲劳、易引入感知错误;另一方面,公开的胸部 CT 数据集绝大多数只提供图像级标签——整卷 384×384×192 的体数据对应一个"有钙化/无钙化"的 0/1。图像级标签用于分类尚可,用于定位则先天不足:模型可以用"捷径关联"把分数刷上去,却学不到钙化到底长在哪一层、哪一区,可解释性差,部署时无法给出可复核的空间证据。

PatchChestCT 的回答是把空间粒度补上。它选取 CT-RATE 中的 2,201 例非增强胸部 CT,把每卷切成 12×12×24 的非重叠立方 patch 网格,为九类临床显著异常逐一给出 patch 级二值标签。这个粒度不是随手定的,而是一个刻意设计——论文称之为 token 对齐(token-aligned):单个 patch 恰好对应现代深度学习架构的一个表示单元(CNN 特征图上的一个特征向量,或 ViT 的一个 patch embedding),于是 patch 级标签可无缝接入 Transformer 系模型与多模态大模型,而无需改动网络结构去适配标注格式。

选 patch 级而非体素级,是一笔务实的成本账。体素级分割需要逐像素勾画,成本高到无法规模复制;12×12×24 的粗定位虽牺牲边界精度,却能在可承受的人力下覆盖 2,201 例,且足以训练"找得对不对"的定位感知模型。论文进一步用实验证明这套监督确实有用:patch 级标签训练的模型,定位 Dice 全面压过图像级弱监督基线;且这个增益来自标注粒度本身,而非某个特定网络架构。

§0 读法三则:

  1. 这个条目是"标注数据集 + 方法论文 + 弱监督对照基准"三合一:本体是 2,201 例 patch 标注,附属是 token 对齐方案与三段式质控,参照系是一组弱监督定位基线。
  2. 全文数字均出自论文正文、Table 2/3/4 与 Zenodo/GitHub 官方记录;抓取中未取全的 Table 4 后两类数值已在坑点与附录存照,勿臆造。
  3. 检索时若把 PatchChestCT 当作"有 CT 图像的公开库"直接下载,会扑空——它只发布标注,图像在 CT-RATE(坑 1)。

§1 数据集速览:十问十答

Q1:PatchChestCT 的"2,201 例"从哪来?
全部从公开的 CT-RATE 队列中选取。CT-RATE 本体含 25,692 studies / 21,304 individuals / 50,188 重建体数据(20,000 训练 + 1,304 测试),采集自土耳其 Istanbul Medipol University Mega Hospital(2015-05 至 2023-01)。PatchChestCT 取其中 2,201 例非增强胸部 CT 研究作为标注对象,每研究标注 1 个重建体数据,约占 CT-RATE 全部体数据的 10%。

Q2:标注的粒度是什么?
三维 patch 级。每卷预处理后为 384×384×192 voxels,被概念性地划分为 12×12×24 的非重叠长方体 patch 网格,共 3,456 个 patch。每个 patch 尺寸 32×32×8 voxels,物理体积约 6.9 cm³。每个 patch 对九类异常各给一个 0/1 标签。

Q3:数据以什么格式发布?
以 NumPy .npz 二值数组发布,每个 patch 网格存成 shape (24, 12, 12)、dtype bool 的数组。每个研究目录下对每类异常一个 .npz(如 arterial_wall_calcification.npz),共 9 个。Zenodo 打包为 annotations-train.zip(3.4 MB)与 annotations-valid.zip(312.5 kB)。

Q4:标注了哪九类异常?
动脉壁钙化、冠状动脉钙化、心包积液、食管裂孔疝、淋巴结肿大、肺不张、肺不透明影、肺实变、支气管扩张。九类横跨心血管(钙化、心包积液)、纵隔(淋巴结、裂孔疝)与肺(不张、不透明影、实变、支扩)三个解剖域。

Q5:标注是谁做的,可靠吗?
受标准化培训的医学生团队初注(每人分配不同 study ID 区间),随后三段质控:① 单一资深胸部 CT 医师逐例目视复核;② 有出入者标记后由另两名标注者独立重标;③ 两人仍不一致则由资深医师终审裁决形成共识。论文另做 100 例评分者间一致性研究量化可靠性。

Q6:标注在什么坐标上做?
在 24 张等间距参考轴位切片上标注(每 8 层取 1 张),每张参考切片对应的 patch 标签自动向 z 轴 ±4 相邻层传播。这样既省人力,又得到覆盖三维的粗定位图。标注者可在肺窗(W:1200, L:-400)与纵隔窗(W:300, L:50)间切换。

Q7:为什么叫"token 对齐"?
因为刻意让单个 patch 对应深度学习模型的一个 token/表示单元:CNN 特征图上的一个位置、ViT 的一个 patch embedding。标签粒度与模型输入结构同构,模型无需为适配标注改结构,也便于与多模态 LLM 结合。

Q8:它和不做定位的标签比,强在哪?
论文用实验直接对照:patch 级标签训练的最佳模型 mean Dice 42.2%,弱监督(图像级标签)最好 15.6%,相差 26.6 个百分点;提升在九类上一致,肺不透明影(+34.9)、动脉壁钙化(+32.2)、冠脉钙化(+30.9)最显著。说明增益来自标注粒度而非模型选择。

Q9:怎么获取?
两步:① 从 Zenodo(10.5281/zenodo.19707049,v3)直接下载标注 ZIP(CC BY 4.0);② 从 CT-RATE 官方 HuggingFace 库申请 gated access、同意 DUA 后下载 CT 图像本体,按卷标识符对齐。缺第二步则标注无用武之地。

Q10:有什么局限要先知道?
三点最要紧:① 不含图像本体,需自行获取 CT-RATE;② 2,201 例子集患病率分布不匹配全体,部分类别富集、部分欠代表;③ 标注是粗 patch 级(≈6.9 cm³/patch)而非体素级,且正例 patch 稀疏(多数类 <1%)。

Q11:它和"弱监督"是什么关系?
它既是弱监督方法的上位监督源,也自带一个弱监督对照基准。论文用 NoisyOR、Grad-CAM 两种弱监督方法作对照,证明 patch 级全监督的定位 Dice(42.2%)远超弱监督(15.6%)。因此它常被用作"评估弱监督方法离强监督还有多远"的标尺。

Q12:一个 patch 到底覆盖多大范围?
单 patch 为 32×32×8 voxels。重采样后层间距 1.5 mm,故 z 向厚约 12 mm;面内 0.75 mm × 32 = 24 mm。物理体积约 6.9 cm³——大致相当于一个小矿泉水瓶盖的体积,是一个"区域级"而非"病灶级"的粒度。

Q13:为什么标注要在两套窗宽窗位间切换?
因为九类异常横跨心血管、纵隔、肺三个解剖域,而不同结构的对比度最佳窗不同:肺窗(W:1200, L:-400)利于观察肺实质的不张、不透明影、实变、支扩;纵隔窗(W:300, L:50)利于观察钙化、心包积液、淋巴结、裂孔疝。标注界面提供无缝切换是为了让不同类别的标注都在最佳窗下完成。

Q14:训练一个定位模型大概要多少算力?
论文基线用了三维骨干网络(R3D-18 最轻,Swin3D-T、MViT-v2-S 更重)在 2,016 例体数据上训练。三维卷积/注意力网络的显存与算力开销显著高于二维,实际门槛取决于体数据是否在线增广、batch size 与混合精度设置。数据集本身仅 3.7 MB,算力开销主要来自 CT 图像预处理与三维训练,而非标注体积。

Q15:它对临床落地的意义是什么?
定位感知模型的价值在于可解释与可复核——分类模型只给"有异常",定位模型给出"异常在哪一区",放射科医师可快速核对,这更贴近临床工作流。PatchChestCT 提供的正是训练这类模型所需要的空间监督,且粒度适配可解释性要求(区域级高亮而非需要医师逐像素验证的掩码)。

Q16:它和 ImageNet 式预训练的关系?
互补关系。ImageNet 式的自然图像预训练提供通用视觉表示,PatchChestCT 提供的是领域内的空间监督。典型流水线是:通用/医学预训练获得表示 → PatchChestCT 做定位微调。二者不冲突。

Q17:能用它做异常检测(无监督)吗?
本数据集的定位是有监督设定(patch 标签作为监督信号)。若你要做无监督异常检测,它更适合作为评测真值(衡量无监督方法定位得准不准),而非训练信号。这类"有监督标注作无监督方法的评测基准"是常见用法。

Q18:数据集会不会更新更大版本?
论文将其定位为持续资源,且展望了与分割基础模型结合的升级路径。使用者应关注 Zenodo 版本链(当前 v3)与 GitHub 仓库提交,以获取后续扩展。

Q19:与"放射组学"(radiomics)的关系?
放射组学通常从图像提取手工特征做预测,不需要空间标注;PatchChestCT 的价值在训练端到端定位模型。二者目标不同,但放射组学研究者也可用 patch 标签做"特征的空间分布分析"。库内 chest-imagenome(rid 330)是影像组学方向的对照条目。

Q20:如果我只关心其中一类异常怎么办?
完全可以只用一个 .npz。九类各自独立成文件、独立二值数组,单类任务只需加载对应文件,无需处理其他八类。这也是"按类分文件"设计的直接好处。

§1.5 一句话理解这个数据集

如果把医学影像数据集按"标注信息量"排序,从低到高大致是:图像级标签(有/无)→ 点标注(一个坐标)→ patch 级标签(区域级 0/1)→ 边界框(bbox)→ 体素级分割(逐体素类别)。

PatchChestCT 落在第三档——区域级 0/1。它比图像级多了一个"在哪里"的维度,又比体素级省下了大量专家时间。它选择这一档的核心理由是"token 对齐":第三档的粒度恰好对应 Transformer 的 patch embedding 粒度,是"模型可以直接吃"的监督,不需要额外的标签-输入适配。

一句话总结:PatchChestCT = 把胸部 CT 的九类异常,标成模型能原样吸收的三维 patch 二值标签。

§2 数据构成与规格

2.1 规模、来源与机构构成

PatchChestCT 的规模骨架可以直接读成一句话:2,201 例非增强胸部 CT,Train 2016 / Valid 185,全部派生自 CT-RATE。

源队列 CT-RATE 是本数据集的血缘根基,其规模在本条目中需分清层次,避免与 PatchChestCT 自身规模混淆:

层级 数字 说明
CT-RATE studies 25,692 源队列全部研究数
CT-RATE individuals 21,304 源队列受试者数
CT-RATE 重建体数据 50,188 20,000 训练 + 1,304 测试对应体数据
PatchChestCT 研究数 2,201 被标注的子集(≈CT-RATE 体数据 10%)
PatchChestCT Train 2,016 训练划分
PatchChestCT Valid 185 验证划分

CT-RATE 采集自土耳其 Istanbul Medipol University Mega Hospital,采集窗口 2015-05 至 2023-01。PatchChestCT 团队从中选取非增强胸部 CT 研究进行标注,每研究标注 1 个重建体数据——因此在本数据集内"研究数"与"标注体数据数"数值相等,均为 2,201。

标注团队来自中国科学技术大学(USTC):生物医学工程学院(合肥)+ MIRACLE 中心(苏州高等研究院)+ 附属第一医院放射科,另有江苏省多模态数字孪生重点实验室、USTC 精准与智能化学国家重点实验室、江苏省生物医学基础研究中心等挂靠。10 位作者中 Li Yingtai 与 Zhang Hongchun 为共同一作,通讯作者为 Wei Wei 与 Zhou Shaohua Kevin。

2.2 预处理与 patch 网格规格

PatchChestCT 的所有体数据都经过一条标准化预处理流水线,以保证入口一致性——这是三维数据集的隐性关键,预处理不统一会让模型学到"扫描仪差异"而非"病理差异"。

预处理两步:

  1. 重采样:图像统一重采样至面内分辨率 0.75 mm × 0.75 mm,层间间距 1.5 mm。
  2. 中心裁剪:每卷中心裁剪至统一尺寸 384 × 384 × 192 voxels。该尺寸的选择理由是"能一致地涵盖肺与关键纵隔结构"。

patch 网格:预处理后的 384×384×192 体数据被概念性划分为 12 × 12 × 24 的非重叠长方体 patch 网格,共 3,456 个 patch。每个 patch 的体素尺寸为 32 × 32 × 8 voxels,对应物理体积约 6.9 cm³。

验证一下几何一致性:384 ÷ 12 = 32(面内 x),384 ÷ 12 = 32(面内 y),192 ÷ 24 = 8(层间 z)——三轴严格整除,网格无余数,patch 完整铺满体数据,存在天然的对齐保证。

标注的 z 轴策略:标注并未逐层进行,而是在 24 张等间距参考轴位切片上完成(每 8 层取 1 张,对应 z 轴 24 个位置)。参考切片上的 patch 标签随后自动向 z 轴 ±4 相邻层传播,从而在不逐层勾画的前提下覆盖整个三维体积。这一设计把人力聚焦到关键切片,其余层靠确定性传播补全。

2.3 类别体系与解剖域

PatchChestCT 的九类异常横跨三个解剖域,覆盖了胸部 CT 阅片上最常被关注、且具临床显著意义的发现:

# 异常(英文) 中文 解剖域 标签文件
1 Arterial wall calcification 动脉壁钙化 心血管 arterial_wall_calcification.npz
2 Coronary artery calcification 冠状动脉钙化 心血管 coronary_wall_calcification.npz
3 Pericardial effusion 心包积液 心血管 pericardial_effusion.npz
4 Hiatal hernia 食管裂孔疝 纵隔/膈 hiatal_hernia.npz
5 Lymphadenopathy 淋巴结肿大 纵隔 lymphadenopathy.npz
6 Atelectasis 肺不张 肺 atelectasis.npz
7 Lung opacity 肺不透明影 肺 lung_opacity.npz
8 Consolidation 肺实变 肺 consolidation.npz
9 Bronchiectasis 支气管扩张 肺 bronchiectasis.npz

三个域的设计意味:心血管域(钙化、心包积液)多为局灶且高对比的发现,适合定位;纵隔域(裂孔疝、淋巴结)位置相对固定但形态多变;肺域(不张、不透明影、实变、支扩)形态从局灶到弥漫都有。这种跨域混合使数据集不仅是"肺病定位集",而是覆盖胸部 CT 全景的多异常定位资源。

正例稀疏性:论文指出,正例 patch 的比例因类别而异。肺不透明影倾向弥漫,占据体积的比例较高;但多数其他类别为局灶性,通常占体积总 patch 数的 <1%。这意味着 3,456 个 patch 里,绝大多数类别只有几十个甚至更少是正例,类别极度不平衡——直接训练必须处理稀疏与不平衡问题。

类别不平衡的量级直觉:以一个正例占 0.5% 的类别估算,3,456 × 0.5% ≈ 17 个正例 patch,其余约 3,439 个是负例,正负比约 1:200。在 2016 例训练数据上,这仍意味着全局正例 patch 数在万量级、负例在千万量级。若用朴素 BCE 损失,模型只需全预测负类就能拿到 >99% 的像素级准确率——因此论文的 loader 与训练脚本必须显式处理这一稀疏性(采样、加权或代价敏感损失)。

一个易被忽视的细节——“存在但无某类"与"含有某类”:README 的加载函数对不存在的异常返回 None,说明某些卷在某个异常类别上根本没有正例 patch(该异常不存在于该卷)。使用者在聚合损失或评估时,必须区分"该卷该类的正例为 0"这个合法状态,而非把它当作缺失数据。

2.4 人口学与成像参数

论文 Table 2 与 Table 3 给出了子集的详细人口学与成像参数,这是评估偏倚的必读材料。

人口学(Table 2,受试者级):

变量 Train (n=2016) Valid (n=185)
男 1138 (56.4%) 109 (58.9%)
女 877 (43.5%) 76 (41.1%)
未知 1 (0.0%) 0 (0.0%)
年龄 mean ± SD 61.7 ± 14.4 60.3 ± 14.5
年龄 median (IQR) 63 (52–72) 62 (49–71)
年龄 range 18–102 22–89

(Train 有 1 例缺年龄,年龄可用 n=2015。)

成像参数(Table 3,受试者级):

变量 Train (n=2016) Valid (n=185)
像素间距 mean ± SD 0.52 ± 0.17 mm 0.54 ± 0.19 mm
像素间距 median (IQR) 0.43 (0.37–0.69) 0.45 (0.37–0.74)
Z 间距 mean ± SD 1.39 ± 0.20 mm 1.36 ± 0.20 mm
CTDIvol mean ± SD 9.0 ± 5.0 mGy 8.3 ± 5.2 mGy
扫描仪厂商(唯一数) 4 4

厂商分布(Train):Philips 1266 (62.8%) / Siemens Healthineers 576 (28.6%) / PNMS 92 (4.6%) / Others 82 (4.1%)。多厂商多机型对跨设备泛化是加分项,但也意味着预处理的重采样步骤承担了统一几何的职责。

人口学读解:从 Table 2 可读出几条重要信息。其一,样本以中老年为主(均值约 61 岁、中位约 63 岁),这与胸部 CT 主要应用于中老年人群的临床现实一致,但也意味着对年轻人群的代表性弱(range 虽到 18 岁,但低龄占比低)。其二,男女比例约 56:44(Train)/ 59:41(Valid),略偏男性,基本均衡。其三,Train 与 Valid 的人口学分布高度接近(年龄均值 61.7 vs 60.3),说明划分没有明显的人群偏移,验证集可较好反映训练集分布。

成像参数读解:像素间距中位 0.43 mm、Z 间距中位 1.50 mm、CTDIvol 中位 7.8 mGy(Train),参数分布区间较宽(像素间距 0.27–1.01 mm,Z 间距 0.75–2.00 mm),反映了源队列的多设备、多协议现实。这正是预处理要统一重采样的原因——若不重采样,模型面对的将是"每个患者各一套几何"的混乱输入。CTDIvol 范围 0.8–34.6 mGy 的宽分布也提示辐射剂量差异大,低剂量与常规剂量扫描混存。

一个必须注意的代表性事实:Table 2/3 描述的是子集的人口学与成像特征,而论文明确指出子集患病率分布不匹配全 50,188 卷队列(§5.4)。因此这里的人口学数字不能外推为"CT-RATE 的人群特征",只能作为"本标注子集的构成说明"。

2.5 与 CT-RATE 的关系边界

厘清 PatchChestCT 与 CT-RATE 的边界,是使用前的第一课——两者不是"包含"而是"附着"关系:

  • CT-RATE 提供:CT 图像体数据、放射报告、DICOM 头、受试者级临床元数据。
  • PatchChestCT 提供:patch 级九类异常二值标注 + 最小 CT-RATE 卷标识符(用于对齐)。
  • PatchChestCT 不含:CT-RATE 图像、报告、DICOM 头、受试者级临床元数据。

Zenodo 明文强调:"本 deposit 含 PatchChestCT patch 级标注文件与链接每份标注到源体数据所需的最小 CT-RATE 卷标识符。它不包含 CT-RATE 图像、放射报告、DICOM 头或受试者级临床元数据。"因此使用时你必须两件齐备:从 Zenodo 拿标注,从 CT-RATE 拿图像,以卷标识符(如 train_1003_a_1)对齐。

2.6 三维空间标注工艺对比:三种生产模式

要理解 PatchChestCT 的取舍,需把它的 patch 级标注放进"空间标注工艺谱"里比较。论文 Table 1 对照了几种胸部 CT 标注资源,可归纳为三种生产模式:

模式一:体素级分割(voxel-level)。精度最高,逐体素勾画。代价是人力成本极高,难以规模复制;且对弥漫类目边界定义模糊,标注者间难以一致。

模式二:文本-视觉 grounding(如 ReXGroundingCT)。提供句级文本-视觉 grounding 标签,语义丰富;但分割对弥漫类目挑战大,且每发现最多标注 3 个实例,导致训练数据被部分标注(partially annotated)。

模式三:patch 级标注(PatchChestCT)。折中方案——粗定位精度,换取可规模化的覆盖与穷尽标注。论文主张它对九类候选 patch 做穷尽标注,而非"若干实例",因此训练监督更完整。

PatchChestCT 的定位正是模式三:牺牲像素级边界,换取 2,201 例的一致覆盖与 token 对齐的模型友好性。论文也展望,未来可把 patch 标签与基础分割模型(如 Segment Anything、BiomedParse)结合,做"粗定位 → 高保真掩码"的半自动精炼流水线——即把 patch 级标注当作体素级分割的种子。

2.7 为什么选这九类:临床显著性与可标注性的交集

九类异常的选择并非任意,而落在"临床显著"与"适合区域级标注"的交集上:

心血管域(3 类):动脉壁钙化、冠状动脉钙化、心包积液。钙化是冠脉风险分层的关键指标(可从 CT 定量冠脉钙化评分);心包积液是急症信号。这三类体积相对可界定,适合区域标注。

纵隔/膈域(2 类):食管裂孔疝、淋巴结肿大。淋巴结肿大关乎肿瘤分期与感染评估;食管裂孔疝关乎手术规划。这两类位置相对固定但形态多变。

肺域(4 类):肺不张、肺不透明影、肺实变、支气管扩张。这是临床阅片上报量最大的发现类别,覆盖感染、结构性肺病(支扩)、占位效应(不张)等多条病理线索。

九类的共同点:都是胸部 CT 上高频、临床显著、且已有共识性判读标准的发现——这保证了标注者可被有效培训、卷级一致性可达到高值(Table 4 卷级 AC1 0.681–1.000 即为佐证)。

2.8 数据组织方式:稀疏目录式 .npz 为何这样设计

PatchChestCT 采用一种"稀疏的、基于目录的 .npz 文件结构"(README 原文),即 annotations-<split>/<volume_id>/<abnormality>.npz。这一组织方式有几点考虑:

  • 按卷分目录:卷标识符(如 train_1003_a_1)作目录名,天然成为与 CT-RATE 图像对齐的键。
  • 按类分文件:九类各一个文件,使单一类别的加载与训练可以只读需要的文件,避免一次性载入全部标签。
  • 二值 + 稀疏:数组 dtype 为 bool、shape (24,12,12),且多数类别正例稀疏,因此整体压缩后仅 3.7 MB——体积小到可以随代码一起分发。
  • 稀疏性对加载器的要求:正因为结构稀疏,才需要一个"定制 PyTorch 数据加载器"来高效处理,而非直接把所有 .npz 塞进内存当密集张量。

这一设计的代价是使用者需要理解目录语义并做键对齐;收益是数据可在低成本下被部分加载、按需读取,适配大规模三维训练。

2.9 与 CT-RATE 预处理链的耦合点

PatchChestCT 的标注坐标建立在特定的预处理结果之上。这意味着使用者若要正确对齐,必须复现 CT-RATE 的预处理:

步骤 参数 不匹配的后果
面内重采样 0.75 mm × 0.75 mm patch 覆盖的物理范围变化,标注错位
层间重采样 1.5 mm z 轴 patch 厚度变化,定位漂移
中心裁剪 384 × 384 × 192 坐标系原点变化,patch 索引全错
网格 12 × 12 × 24 与标注数组 shape 不一致

因此使用者的第一道工程门槛不是模型,而是预处理复现:只有把 CT 图像处理成与标注生成时一致的几何与网格,(24,12,12) 的数组才能对上图像的空间位置。README 明确要求把 CT-RATE 预处理的卷放进 train_preprocessed/ 与 valid_preprocessed/,正说明了这一耦合。

2.10 数据完整性校验要点

下载后建议按以下要点校验,避免用到损坏或不完整的文件:

校验项 期望值
train 包 md5 9c9f3916cd0b6bcc51ab1152b45be682
valid 包 md5 5bd52bbd55d7fe35299381fe66c8ab29
train 包大小 3.4 MB
valid 包大小 312.5 kB
单文件 shape (24, 12, 12)
单文件 dtype bool
每卷文件数 9

校验 .npz 时注意:README 示例用 np.load(path)["arr_0"] 读取,键名为 arr_0。若加载报错,先确认键名与文件完整性。此外,对不存在的异常返回 None 属正常(该卷无该类),不应视为文件损坏。

§3 标注流水线与质量控制

3.1 人员结构与分工

PatchChestCT 的标注并未交给单一专家从头到尾完成,而是构建了一条分层流水线,把高成本的专家判断集中在最需要的环节。

标注执行层:受标准化、全面培训的医学生团队。培训覆盖标注软件操作与每一类异常的专门指南。为引入病例多样性,每位标注者被分配一个不同的 study ID 区间(如病例 0001–5000),并在其区间内被鼓励优先纳入可见异常的病例,其余随机选取。

质量把关层:一位资深胸部 CT 医师(具有丰富判读经验),承担逐例复核与疑难裁决。

重标复核层:另两名标注者,仅在出现分歧时介入独立重标。

这样的分层,本质是把"工程量大的初注"与"判断难度高的裁决"分离,既保证效率又保证权威。

3.2 三段式质量控制

PatchChestCT 的质控被设计成三段递进流程,每一段都是一道过滤:

  1. 第一段——专家目视复核:每一条产出的标注先由那位资深胸部 CT 医师逐例目视复核,检查准确性。
  2. 第二段——双人独立重标:若复核中发现出入或歧义,该病例被标记,并由另两名标注者独立重标。
  3. 第三段——终审裁决:若两名重标者仍不一致,资深医师复核两份标注并做出权威的最终裁定。

论文把这个多标注者复核流程的作用总结为两点:解决疑难病例、建立共识 ground truth,从而为整个数据集树立高标准。

3.3 质量量化:评分者间一致性研究

流程之外,论文另做了评分者间一致性(inter-rater agreement)研究给出量化证据。方法是从标注数据集中随机抽取 100 例,由两名额外标注者独立完成全 patch 级标注,再从两个层面衡量一致性:

层面一:卷级 agreement(Gwet’s AC1)——判断某类异常是否出现在该扫描中,用 Gwet’s AC1。选择 AC1 而非 Cohen’s κ,是因为 AC1 是更稳健的机会校正一致性系数,对患病率失衡不敏感,而本数据集的局灶类别恰是患病率极不均衡的场景。

层面二:patch 级 agreement(pairwise Dice)——哪些 patch 是正例的空间一致性,用成对 Dice 相似系数(DSC)。

Table 4 给出的逐类结果(前七类):

异常 卷级 Gwet’s AC1 patch 级 Dice (DSC)
动脉壁钙化 0.882 0.607
心包积液 1.000 0.640
冠状动脉钙化 0.681 0.563
食管裂孔疝 0.958 0.214
淋巴结肿大 0.891 0.413
肺不张 1.000 0.460
肺不透明影 0.922 0.382
肺实变 (抓取未取全,见附录存照) (同左)
支气管扩张 (抓取未取全,见附录存照) (同左)

解读要点:卷级 AC1 普遍很高(0.681–1.000),说明"有没有"这件事专家间很一致;但 patch 级 Dice 明显更低(0.214–0.640),说明"在哪里"的空间一致性弱得多。这是三维空间标注的固有难点,也提示 patch 级 ground truth 带有不可忽视的标注噪声——食管裂孔疝 Dice 仅 0.214 是全表最低,与其形态体积小、边界主观性强相符;心包积液 0.640 最高,因其形态规则、边界清晰。

为什么卷级用 AC1 而 patch 级用 Dice:两类指标对应两类判断。卷级是"是否出现"的二分类问题,机会校正一致性(AC1)是恰当工具,且 AC1 对患病率失衡稳健——本数据集局灶类普遍低患病率,用 Cohen’s κ 会被"高一致但高患病率偏斜"稀释。patch 级是"哪些位置是正例"的空间重叠问题,Dice 是分割/定位领域的标准度量,能直接反映两份标注在空间上的重叠程度。这一"分层指标"设计本身值得借鉴。

AC1 与 Dice 的落差说明了什么:卷级 0.68–1.00 与 patch 级 0.21–0.64 之间的系统性落差,是一条重要的方法学信号——"任务定义清晰"与"空间界定清晰"是两回事。一位医师判断"有心包积液"几乎不会有异议(AC1 1.000),但"心包积液的边界划到哪里"却可能各执一词(Dice 0.640)。这解释了为何定位任务比分类任务难得多,也印证了 PatchChestCT 用 patch 粗粒度替代体素级的务实性。

食管裂孔疝的极低 Dice 值得单独说明:0.214 意味着两份独立标注在空间上只有约五分之一的 patch 重叠。可能原因:疝囊体积小、位置跨膈肌边界、“疝入范围到哪算"高度主观。对做该类定位的模型而言,这意味着即便达到"人类专家间"水平,Dice 也可能不高——评测基线应参照的是这类"人类上限”,而非绝对 100%。

3.4 质控设计的方法学剖析

PatchChestCT 的质控结构值得逐条拆解,因为它回应了几个大规模标注项目的共性难题:

难题一:工程量与专家稀缺。解法是分层——把"每条都标"的工程量交给受训学生,把"判断对不对"的专家判断集中在复核与裁决。专家总时间与标注总量的关系从"线性"变为"线性系数 + 少量裁决"。

难题二:初注者的系统性偏差。医学生初注可能存在方向性偏差(如倾向把临界 patch 标为正)。解法是"资深医师逐例目视复核"这道独立关卡——它不依赖初注者的自评,而是由更权威的判断覆盖。

难题三:分歧如何收敛到唯一真值。解法是明确的裁决链:复核发现分歧 → 双人独立重标 → 仍不一致 → 资深医师终审。这样每一例最终都收敛到一个共识 ground truth,而非留下多个平行版本。

难题四:如何证明"收敛后是对的"。解法是独立的评分者间一致性研究(100 例、两名额外标注者),从卷级与 patch 级两层面量化。这一步把"我们相信标注可靠"变成了"我们用数据表明一致程度是多少"。

3.5 与常见标注范式的对照

范式 专家参与 收敛机制 一致性证据 PatchChestCT 的位置
单人专家全标 全程 无 常缺 否(规模不允许)
众包 + 多数投票 极少 投票 常缺 部分类似(学生团队)
学生初注 + 专家终审 关键环节 裁决 有 是(本数据集)
多专家委员会 + 共识会 全程 共识会议 有 否(成本高)

PatchChestCT 选择的是"学生初注 + 专家终审",并以独立一致性研究补足证据链。这一范式在"规模"与"可信度"之间取得平衡,是可被其他大型影像标注项目复制的模板。

3.6 标注人力估算的量级

虽然是估算,但可帮助理解为何必须分层:2,201 例 × 9 类 × 24 参考切片 = 475,416 个"切片-类别"标注单元。若每单元专家耗时以秒计,全程单人专家不可行;分层后,学生的工时承担了绝大部分,专家只需覆盖复核(每例一次目视)与少数裁决。论文未披露精确工时,但"分层把专家判断集中到分歧处"的效益是本设计的核心。此处数值为推算示意,非论文数据,使用时请注意。

§3 小结

PatchChestCT 的质控体系可以概括为一句话:用分层流水线把专家的时间从"全程标注"压缩到"复核与裁决",再用独立的一致性研究为压缩后的可靠性背书。它的卷级一致性很高(AC1 最高 1.000)、patch 级一致性中等(Dice 0.214–0.640),这个"高-中"组合既是方法有效性的证据,也是对空间标注固有难度的诚实呈现。

§4 token 对齐标注方案:为什么是 patch 级

4.1 粒度是一等设计决策

PatchChestCT 最核心的方法学主张藏在"token 对齐(token-aligned)"这个词里。论文把标注粒度的选择定义为一项深思熟虑的设计决策,而非工程副产品:标注粒度刻意对齐现代 AI 架构的输入结构——CNN 特征图上的一个单元,或 ViT 的一个 patch embedding。

这句话的含义是:当标注粒度与模型表示粒度同构时,无需任何适配层,标签就能直接作为监督信号注入模型。对 Transformer 系模型尤其如此——ViT 把图像切成 patch、编码成 token,而 PatchChestCT 恰好也是把体数据切成 patch、逐个给标签。标注的形状与模型的输入形状对齐了,监督信号可以"原位"使用。

论文进一步指出这一设计的延展价值:它便于与多模态 LLM 结合。当 patch 标注能与语言侧的 token 体系对齐时,"定位 + 描述"的多模态对齐训练就有了统一的空间参考系。

4.2 为什么不做体素级

既然体素级分割精度最高,为什么 PatchChestCT 选更粗的 patch 级?答案是一道成本-精度权衡题。

全体素级分割的成本是"禁止性的(prohibitive)"——论文原文用词。逐体素勾画九个类别、2,201 例三维体数据,所需专家时间不可能在合理周期内完成。而且对弥漫类目(如肺不透明影),体素级边界本身就缺乏客观标准,标注者间一致性会更差。

patch 级方案在三个维度上取得平衡:

维度 体素级 patch 级(PatchChestCT)
专家成本 极高,无法规模复制 可承受,覆盖 2,201 例
边界精度 像素级 粗定位(≈6.9 cm³/patch)
模型适配 需分割头 token 对齐,直接监督
弥漫类目一致性 差(边界主观) 相对可控(块级判断)

结论:patch 级不是"退而求其次",而是为"可规模化 + 模型友好 + 类目普适"三个目标主动选的甜点。

4.3 三维定位图的生成机制

从 24 张参考切片到一个完整的三维定位图,PatchChestCT 用了一条"人工精标 + 确定性传播"的混合路径:

  1. 概念切分:384×384×192 体数据划分为 12×12×24 网格,共 3,456 个 patch。
  2. 参考切片标注:在 24 张等间距参考轴位切片(每 8 层取 1)上人工标注各类异常的 patch 正负。
  3. z 轴传播:参考切片上某 patch 的标签,自动传播到其在 z 轴上 ±4 相邻层的对应 patch。
  4. 输出:得到覆盖全体的粗三维定位图,每 patch 对九类各一个二值标签。

这里的 ±4 由几何决定:参考切片间隔为 8 层(每 8 层取 1),故每张参考切片"负责"其上下各 4 层的 patch——4 + 1 + 4 = 9?实际论文表述为向 ±4 相邻层传播,覆盖参考切片为中心的邻域。关键不在此处的精确层数,而在于:人力聚焦在稀疏的关键切片,其余层用确定性规则补全,这把标注成本压到可承受区间,代价是 z 轴方向的定位精度必然低于参考切片所在层。

4.4 这个设计的三个后果

后果一:省人力且可扩展。token 对齐方案被论文自评为"高效、可扩展"——它不要求逐体素作业,使 2,201 例的规模成为可能。

后果二:z 轴分辨率受限。由于标注只在每 8 层的一张参考切片上进行并向 ±4 层传播,z 轴方向的定位精度被"夹"在 patch 层尺度(8 voxels = 8 × 1.5 mm 重构后 ≈ 12 mm 层厚),对高度依赖精细层间定位的任务(如微小肺结节的层间追踪)不理想。

后果三:可用于半自动精炼。论文把 patch 标签定位为"粗定位种子"——未来可与 Segment Anything、BiomedParse 等基础分割模型结合,用 patch 标签引导半自动生成高保真掩码,从而以低成本扩产出体素级资源。

4.5 与既有方案对照:patch 粒度落在何处

把 patch 级放进"标注粒度谱"可以更清楚地看到它的位置:

粒度 每卷标注单元数(示意) 空间精度 标注成本 模型适配
图像级 9(每类一个 0/1) 无空间信息 极低 分类头
patch 级(本数据集) 9 × 3,456 区域级(≈6.9 cm³) 中 token 对齐
点标注 每实例一个坐标 单点 低 检测头
边界框 每实例一个框 包围盒 中 检测头
体素级 9 × 384×384×192 像素级 极高 分割头

PatchChestCT 的关键创新不在"选了一个中间粒度"本身,而在于把这一粒度与模型表示单元显式对齐并论证其价值。选择 patch 级的数据集并不少,但明确以"token 对齐"为设计原则、并配套受控实验证明其定位价值的,是它的差异点。

4.6 一个反直觉的设计取舍:不追求最高精度

PatchChestCT 反直觉之处在于:在"精度越高越好"的直觉下,它主动放弃体素级。这一取舍的理据有三层:

  1. 成本层:体素级对 2,201 例九类是"禁止性"成本,做不完。
  2. 一致性层:弥漫类目的体素级边界定义模糊,即便做了,标注者间一致性也低(对比本数据集 patch 级 Dice 已波动到 0.214)。
  3. 使用层:定位感知模型通常不需要体素级真值——它们要的是"找对区域",patch 级已足够训练出高 Dice(42.2%)。

换言之,“够用且做得到"胜过"最精确但做不完”。这一取舍与工程上"先要能跑通、再谈最优"的思路一致,是本数据集方法学上最值得玩味的一笔。

4.7 与"检测框"路线的对比

另一种常见的空间标注是边界框(bounding box)。相较 patch 网格,二者各有优劣:

维度 边界框 patch 网格(本数据集)
空间表达 连续坐标 + 尺寸 离散 12×12×24 网格
多实例 每实例一个框 每 patch 一个 0/1
与 ViT 对齐 需位置编码适配 天然同构
处理弥漫病例 难以框定 逐 patch 覆盖,可表达弥漫
处理多发病灶 多框 自动覆盖全部正例 patch

PatchChestCT 选 patch 网格而非检测框,一个关键理由是弥漫与多发场景:肺不透明影这类弥漫发现难以用少量框精确表达,而 patch 网格能"逐块点亮"所有受累区域,且与新发/多发无关——它一体标注所有候选 patch。

§5 评估与基线实验:patch 级监督到底值多少

5.1 评测设计的四个维度

PatchChestCT 论文的验证被组织成四块,覆盖"数据可靠吗"与"数据有用吗"两条主线:

  1. 标注质控流程(§3.2 已述)——三段式复核 + 一致性研究。
  2. 评分者间一致性研究(§3.3 已述)——100 例、两层面指标。
  3. 数据集统计特征——人口学、成像参数、正例分布、子集代表性。
  4. 扩展基线建模实验——直接证明 patch 级标签的实用价值。

第四块是本文最有说服力的部分,因为它把一个抽象问题——“精细标注值不值”——变成了可量化的实验对照。

5.2 基线设置:监督 vs 弱监督

实验的核心是对照两组定位方法,控制网络架构、只变监督信号:

弱监督定位(WSL,只有图像级标签):

  • NoisyOR:用图像级标签训练,训练集是全 20,000 患者 CT-RATE 训练集(注意:弱监督基线反而用了更大的数据量,2 万 vs PatchChestCT 的 2,016)。
  • Grad-CAM:广泛使用的梯度显著图方法,作用于图像级监督训练的模型上。

全监督定位(patch 级标签):三种骨干网络在 2,016 例 PatchChestCT 训练体数据上直接训练——

  • R3D-18(3D ResNet-18)
  • Swin3D-T(Swin Transformer 3D)
  • MViT-v2-S(Multiscale Vision Transformer)

实验矩阵因此是 6 组 WSL 实验(架构 × 方法)× 3 组全监督实验,在全部九类上评估定位 Dice。

5.3 核心结果:42.2% vs 15.6%

PatchChestCT 的实验结论可以用一条清晰的数字对比概括:

patch 级标签训练的最佳模型 mean DSC = 42.2%,显著高于弱监督最佳结果 15.6%(高出 26.6 个百分点)。

关键的是,这个增益跨全部九类一致,且幅度在不同类别间有差异:

类别 相对弱监督的提升幅度
肺不透明影 +34.9%
动脉壁钙化 +32.2%
冠状动脉壁钙化 +30.9%
其余六类 均有一致提升(论文称 gains consistent across all nine categories)

归因:论文明确指出,由于增益在多种架构上都成立,性能提升源自 patch 级标注这一事实本身,而非任何特定模型选择。这直接回答了"精细标注是否只对某个网络有用"的疑问——不是,它是普适的监督信号升级。

推论:论文由此得出结论——仅靠图像级监督不足以支撑可靠的空间定位;PatchChestCT 提供的 patch 级 ground truth 为训练具备定位能力的放射 AI 系统提供了有用的监督。这是全文最核心的论点。

5.3.1 为什么弱监督用了更大数据仍然落败

这一实验设计里有一个极易被忽略但极具说服力的细节:弱监督基线的训练数据量反而更大。

方法 训练信号 训练数据量 定位 Dice
NoisyOR(弱监督) 图像级标签 全 20,000 患者 ≤15.6%
Grad-CAM(弱监督) 图像级标签 图像级监督模型 ≤15.6%
R3D-18/Swin3D-T/MViT-v2-S(全监督) patch 级标签 2,016 例 最高 42.2%

弱监督用了接近 10 倍的患者数据(20,000 vs 2,016),定位 Dice 仍只有全监督的约三分之一。这几乎排除了"数据量不足"这一替代解释——差距的来源被牢牢钉在"监督信号的粒度"上。这是本实验最有分量的一处对照,也是"标注粒度决定定位上限"这一主张的直接证据。

5.3.2 逐类提升的解剖学解释

三类提升最大的异常,恰好覆盖三个不同的解剖域与形态类型:

  • 肺不透明影(+34.9%):肺域、弥漫型。图像级标签只知道"这卷有肺不透明影",但通常弥漫多叶,弱监督方法难以定位到具体区域;patch 级标签提供了明确的空间范围,提升最大。
  • 动脉壁钙化(+32.2%):心血管域、沿血管分布的细长型。钙化沿主动脉壁走行,位置先验强但形态细碎,图像级标签无法指导"沿壁的哪一段",patch 级标签可精确定位。
  • 冠状动脉钙化(+30.9%):心血管域、小体积高对比型。冠脉钙化体积小、位置深,弱监督的空间分辨率根本不够,patch 级标签直接给出立方块坐标。

反过来说,提升幅度较小的类别往往是位置先验极强的(如心包积液几乎总在心包腔特定位置),弱监督即使"瞎猜"也能命中一部分,故差距被压缩。这一模式进一步支持论文的归因。

5.4 子集代表性:必须记住的警戒线

PatchChestCT 论文在自我批评上相当坦诚,专门指出一个使用前必读的局限:

2,201 例的子集(约占 CT-RATE 10%)的患病率分布,不匹配全 50,188 卷队列的分布。若干类别被富集(如动脉壁钙化、冠状动脉钙化),另一些则相对总体基线被欠代表。

这一条对使用者的直接含义:

  1. 别用它估患病率:PatchChestCT 不是流行病学样本,各类正例比例经过刻意选取(标注者被鼓励纳入可见异常病例),不能当作人群中该异常的患病率。
  2. 跨库对比需谨慎:在 PatchChestCT 上训练的模型,其类别先验与 CT-RATE 全体不同,迁移到全体分布时性能可能下降。
  3. 富集便于学习,但引入偏倚:富集罕见发现有利于训练定位能力,却使数据集不再是无偏样本,做泛化研究报告时须声明。

论文同时指出,在各自被分配的 ID 区间内,标注者是尽量随机选取病例的(只是被鼓励优先纳入有异常的),所以偏斜是"分层富集"而非纯主观挑拣。

5.5 与同类资源的定位

论文 Table 1 专门用一张"胸部 CT 标注数据集定位与比较"表,把 PatchChestCT 摆进同类资源谱系。核心对比维度如下:

资源 空间标注层级 关键局限
OmniAbnorm-CT 全身异常,Radiopaedia 2D 关键切片 限于 2D 关键层,无法支撑体素/体积级任务
ReXGroundingCT 句级文本-视觉 grounding 分割对弥漫类目困难;每发现最多 3 实例,训练数据部分标注
PatchChestCT 三维 patch 级(12×12×24) 粗定位;空间一致性随类目波动(Table 4)

PatchChestCT 主张的差异化在于"穷尽标注九类候选 patch"——不像部分标注资源只标少数实例,它对每类所有候选 patch 都给出正负标签,使训练监督更完整。

5.6 实验结论的三层含义

把 §5 的实验结果按抽象层级摊开,可以得到三层递进的含义:

第一层(工程):如果要做胸部 CT 定位,patch 级监督的投入产出比明显优于只做图像级分类——多花一点标注成本,定位 Dice 从 15.6% 跳到 42.2%。对做落地系统的团队,这是一笔算得过来的账。

第二层(方法):图像级监督存在原理性上限。无论用多大的数据(论文里弱监督用了 20,000 例,是全监督 10 倍),图像级标签都无法替代空间监督——因为"有/无"这个信号里根本不含位置信息。这是信息论意义上的缺失,不是算力或数据量能补的。

第三层(数据):一个数据集的价值不只在它"有什么",也在它"证明了什么"。PatchChestCT 用受控实验证明了一件事——监督信号的粒度是定位能力的决定变量。这个结论独立于胸部 CT 领域,对所有"需要定位"的医学影像任务具有参考价值。

5.7 结果的可复现性

论文的实验可在官方仓库中复现:克隆 SadVoxel/PatchChestCT,按 README 准备目录(CT-RATE 预处理的卷 + PatchChestCT 标注 + 报告 CSV),即可运行 train_grounding.py(全监督,三种骨干)与 train_grounding_weak.py(弱监督,NoisyOR/Grad-CAM)。训练默认记录到 Weights & Biases,便于对照论文报告的数字。需要提醒的是,弱监督基线 NoisyOR 用了全 20,000 患者 CT-RATE 图像级标签,复现它需要完整的 CT-RATE 训练集,成本高于复现全监督实验(只需 2,016 例 patch 标签)。

5.8 评测指标的读法

读 PatchChestCT 的 Dice 数字时,有两点需注意:

  • Dice 的绝对量级:42.2% 的 mean Dice 在二维分割里看起来偏低,但三维定位任务(尤其是小体积、弥漫类目混合的九类平均)本身就更难。参照系应是同为三维定位的任务,而非二维器官分割的高 Dice 场景。
  • 平均方式:mean DSC 是九类的平均;由于各类难度差异大(小体积类目天然难),单一平均数会掩盖类间方差。逐类查看(论文 Fig 3 的 per-class 对照)比只看均值更有信息量。

§6 获取与许可:两步入库的门

6.1 两件资产、两种门

PatchChestCT 的获取结构最容易踩坑的地方在于:它是附着在 CT-RATE 上的标注层,所以"拿到数据"其实是两步,每一步都有各自的门。

资产 内容 获取方式 许可
标注(PatchChestCT) 9×.npz patch 标签 + 卷标识符 Zenodo 19707049 v3 公开直链 CC BY 4.0
图像(CT-RATE) CT 体数据、报告、临床元数据 HuggingFace gated access + DUA CT-RATE Data Usage Agreement

6.2 第一步:下载标注(公开直链)

标注文件在 Zenodo 公开归档,无需申请、无需同意协议、直接下载:

  • DOI:10.5281/zenodo.19707049(version 3 / v3)
  • 文件:
    • annotations-train.zip — 3.4 MB,md5 9c9f3916cd0b6bcc51ab1152b45be682
    • annotations-valid.zip — 312.5 kB,md5 5bd52bbd55d7fe35299381fe66c8ab29
  • 包内容:patch 级标注文件 + 最小 CT-RATE 卷标识符(用于链接到源体数据)
  • 包内子目录命名:以 CT-RATE 卷标识符命名(如 train_1003_a_1/),仅为无歧义对齐

许可:标注文件以 CC BY 4.0(Creative Commons Attribution 4.0 International)发布。论文与 GitHub 均明确:此许可仅覆盖独立创建的 PatchChestCT 标注文件,不延及源 CT 图像。

6.3 第二步:获取图像(须申请)

标注本身不含图像,要使用必须另行获取 CT-RATE 体数据:

  • 地址:https://huggingface.co/datasets/ibrahimhamamci/CT-RATE
  • 流程:申请 gated access → 同意 Data Usage Agreement(DUA)→ 下载并按 CT-RATE 文档预处理
  • 对齐:按 Zenodo 标注子目录的卷标识符,与 CT-RATE 下载的卷一一对齐

这一步不能省。Zenodo 明文强调它不含"CT-RATE 图像、放射报告、DICOM 头或受试者级临床元数据"。因此真实的获取成本是:Zenodo 秒下 + CT-RATE 申请等待审批 + 自行预处理(重采样到 0.75/0.75/1.5 mm、中心裁剪 384×384×192)。

6.4 参考实现:GitHub 仓库

官方代码仓库 https://github.com/SadVoxel/PatchChestCT 提供完整参考实现,是整个获取链条的黏合剂。论文描述其关键组件包括:

  • 一个定制的 PyTorch 数据加载器,用于处理稀疏的、基于目录的 .npz 文件结构;
  • 完整的模型定义与训练脚本:
    • src/train_grounding.py(全监督,--backbone r3d18|swin3d_t|mvit)
    • src/train_grounding_weak.py(弱监督,--backbone ... --method noisyor|gradcam)
    • src/dataset_train.py / src/dataset_valid.py

仓库 README 明确数据准备的目录结构,需把 CT-RATE 预处理的卷、PatchChestCT 标注、报告 CSV 放到位。训练脚本默认记录到 Weights & Biases。仓库许可证栏写明:PatchChestCT 标注文件以 CC BY 4.0 发布,源 CT-RATE 卷须另行获取并遵守其 DUA。

6.5 版本链与引用口径

Zenodo 存在版本链,引用时务必认准 v3:

  • 19707049 = v3(当前最新,2026-04-23 发布)——论文与 GitHub 均引用此版本
  • 16812648 = 早期版本(搜索索引中仍可见其旧描述,正文实际已指向 v3 内容)

论文 Data availability 白纸黑字:"The PatchChestCT annotations are publicly archived on Zenodo as version 3 (v3) (10.5281/zenodo.19707049) under a CC BY 4.0 license."引用与复现都必须锚定 v3。

6.6 AI-Ready 评估:双轨结构的得失

从 AI-Ready 数据集的角度看,PatchChestCT 是一个双轨可获取性的典型案例——这既是它的优点也是它的摩擦点:

  • 得:标注本体(最费人力的部分)是 CC BY 4.0 公开直链,零门槛下载,极大降低了使用者的启动成本;文档完备(论文表格 + README + Zenodo 描述三处一致)。
  • 失:数据"可用"仍需第二步——CT 图像在 CT-RATE 的 gated DUA 之后,存在审批等待;且"标注 + 图像"的分离结构要求使用者自行完成对齐与预处理,对没有三维医学影像工程经验的使用者是一道实际门槛。

6.7 使用前检查清单

上手之前逐条核对,可避免大多数返工:

  1. 确认版本:下载的是 Zenodo v3(19707049),不是旧版。
  2. 校验完整性:比对 md5(train 9c9f3916cd0b6bcc51ab1152b45be682;valid 5bd52bbd55d7fe35299381fe66c8ab29)。
  3. 申请图像:CT-RATE gated access 是否已批、DUA 是否已同意。
  4. 对齐键一致性:Zenodo 子目录名是否与 CT-RATE 卷标识符可一一对应。
  5. 预处理复现:是否按 0.75/0.75/1.5 mm 重采样、384×384×192 中心裁剪。
  6. 稀疏性处理:损失函数是否处理了 <1% 的正例占比。
  7. 类别先验声明:是否知晓子集患病率偏斜,报告时是否声明。
  8. 许可边界:衍生模型的许可是否与标注 CC BY 4.0 及 CT-RATE DUA 兼容。

§7 生态与影响

7.1 血缘谱系

PatchChestCT 的生态位置由两条血缘决定:

  • 上游:CT-RATE(Hamamci et al., Nature Biomedical Engineering 2026)——提供图像队列与 DUA 框架。PatchChestCT 是 CT-RATE 的一个"标注增强衍生层"。
  • 下游:可能的体素级精炼——论文展望用基础分割模型(SAM、BiomedParse)把 patch 标签升级为高保真掩码。

7.2 在胸部 CT 定位资源中的位置

胸部 CT 长期缺"大规模 + 精确空间标注"的组合。PatchChestCT 的填补方式是在规模与精度之间选了一个可复制的中间点:规模上覆盖 2,201 例(比典型专家标注研究大一到两个数量级),精度上给出 6.9 cm³ 粒度的三维定位(比图像级精细,比体素级粗糙)。

这个定位的生态意义在于,它让"定位感知模型"的训练第一次有了一个规模足够、许可宽松、格式模型友好的公共资源。论文自述其价值为"为胸部 CT 的定位感知模型训练提供公共资源"。

7.3 对下游任务的影响面

PatchChestCT 可服务下游任务谱系:

  1. 定位模型训练:直接作为全监督定位的 ground truth。
  2. 弱监督方法评测:作为"强标注参照系",衡量弱监督方法离强监督还有多远(本文的一大贡献即此)。
  3. 多模态对齐:token 对齐设计便于与报告文本做空间-语言对齐。
  4. 基础模型微调:作为三维医学基础模型的下游定位微调目标。
  5. 半自动标注种子:作为 SAM 类模型 prompt 的空间先验。

7.4 与 CT-RATE 生态的耦合

PatchChestCT 与 CT-RATE 生态强耦合:使用它就必须进入 CT-RATE 的 DUA 体系。这意味着 CT-RATE 的可获取性、许可变更、平台稳定性都会传导到 PatchChestCT 的使用体验上。优点是两者共享同一套体数据与标识符体系,对齐成本低;风险是单点依赖——CT-RATE 端一旦收紧或迁移,PatchChestCT 的可用性立即受影响。

7.5 对评测文化的影响:从"刷分"到"问在哪"

PatchChestCT 的定位实验在评测文化上有一个不易察觉的贡献:它把胸部 CT AI 的评测焦点从"分类准确率"往"定位质量"推了一步。图像级分类任务长期存在"捷径关联"问题——模型可能靠扫描伪影、床位标记等无关特征拿到高分,却并未学到病理。定位任务天然抑制这类捷径:模型必须把监督信号映射到正确的空间区域,否则 Dice 上不去。PatchChestCT 提供的 patch 级 ground truth,让"评估定位是否正确"第一次有了可规模化的公共参照,这对推动更可信的评测文化有实质意义。

7.6 潜在的下游衍生方向

  • 体素级升级:以 patch 标签为 prompt/种子,用分割基础模型(SAM、BiomedParse)生成高保真掩码,形成"低成本扩产体素级标注"的流水线。
  • 跨模态迁移:把 patch 级定位能力迁移到胸部 X 光(2D)等模态,与库内 nih-chest-x-ray14、chestx-det10、padchest 等形成对照实验。
  • 多模态对齐:利用 CT-RATE 附带的放射报告,做"patch 空间-报告文本"的语言-视觉对齐训练。
  • 基础模型评测:作为三维医学基础模型的下游定位微调/评测目标,衡量其上中游表示的定位迁移能力。

7.7 与同类数据集的协作而非竞争

PatchChestCT 不试图取代图像级大数据集(如 CT-RATE 全量的分类任务)或体素级小样本数据集。它与二者是互补关系:图像级集用于预训练,patch 级集用于定位监督,体素级集用于精细边界任务。一个成熟的三维胸部影像 AI 流水线大概率会同时使用三者,而非择一。理解这一点,才能把 PatchChestCT 放到正确的位置。

§8 方法学启示:三条可迁移的经验

8.1 标注粒度应与模型表示粒度对齐

PatchChestCT 最可迁移的经验是"token 对齐"的思路:标注不必追求理论最高精度(体素级),而应追求与目标模型表示结构同构。当标注单元 = 模型 token 时,监督信号可以原位注入,无需适配层。这一原则可迁移到任何"给模型造监督"的场景——先问模型"怎么切",再让标注"跟着切"。

8.2 分层流水线把专家时间用在刀刃上

"医学生初注 → 资深医师复核 → 双人重标 → 终审裁决"这条流水线的智慧在于:把高成本的专家判断集中在分歧与疑难处,而非全线铺开。工程量大的初注交给受训学生,专家只在复核与裁决环节介入。这个结构可复制到其他需要专家把关的大规模标注项目。

8.3 用受控对照把"标注价值"变成可证伪的命题

PatchChestCT 没有停在"我们标了 2,201 例",而是设计了一个控制变量的对照实验(固定架构族、只变监督信号、跨九类一致评估),把"精细标注值不值"从信念变成数字(42.2% vs 15.6%)。这种"用对照实验证明数据价值"的做法,是高质量数据集论文的范式。

8.4 坦诚的局限声明提升可信度

论文主动披露子集代表性偏斜(2,201 vs 50,188 分布不匹配)、patch 级一致性波动(Dice 0.214–0.640)、z 轴传播的粗定位等局限,而非回避。对使用者而言,这种坦诚的价值在于:你事先就知道数据的能力边界,不会误用。这是数据集可长期被信任的基础。

8.5 可复现性工程:把"能跑"变成"照着能跑"

PatchChestCT 在可复现性上做了两件具体的事:发布完整的 PyTorch 参考实现(loader + 训练/验证脚本),以及提供目录结构与路径变量的明确说明。这两件事把"数据集发布"从"丢一个压缩包"升级为"附一份可执行说明书"。对三维医学影像这类工程门槛高的领域,参考实现的存在往往是数据集能否被真正用起来的分水岭——论文在 Code availability 一节专门强调脚本"确保完全可复现",正是对这一点的自觉。

8.6 局限的双向解读

对 PatchChestCT 的局限可以做双向解读,避免单向贬损:

局限 消极解读 积极解读
粗 patch 粒度 边界不精 可规模化、模型友好、标注一致
子集患病率偏斜 非无偏样本 富集罕见发现便于训练定位
图像需另申请 两步入库麻烦 尊重上游数据治理,合规可追溯
patch 级一致性波动 ground truth 带噪 揭示任务内在难度,真实不粉饰

这种双向视角是评估任何医学数据集时的健康姿态——没有"完美数据",只有"匹配任务的数据"。

8.7 对本库数据生产流程的启示

本条目所在的 AI-Ready Wikipedia 数据集生产,本身也可从 PatchChestCT 借鉴两点:

  • 粒度意识:正如 patch 粒度决定定位上限,本库条目的信息粒度(章节深度、附录颗粒度)也决定检索者的可用性。PatchChestCT 的"token 对齐"思路可类比为"条目的信息单元对齐检索者的使用场景"(下数据 / 看方法 / 做评测各取所需)。
  • 局限前置:PatchChestCT 把局限写进论文,本库把局限写进 rai:dataLimitations 与 §10 坑点。坦诚披露局限是提升数据(与条目)可信度的通用手段。

§9 与库内条目的关系

9.1 家族图谱

PatchChestCT 在本库中的互链点可按"胸部影像族 + 三维定位族"两条线梳理:

库内条目 rid 关系
padchest 117 胸部 X 光大规模数据集——同胸部影像域,可作跨模态(X 光 vs CT)对照
chest-imagenome 330 胸部影像基因组学——同胸部 CT 域,可作影像组学对照
chest-ct-sepsis-er 600 胸部 CT 相关——同 CT 域
rad-chestct 819 胸部 CT——同域定位/分类对照
nih-chest-x-ray14 15 胸片多标签——跨模态对照(2D 多标签 vs 3D 定位)
chestx-det10 137 胸片检测——跨模态对照(2D 检测 vs 3D patch 定位)
chest-x-ray-segmentation 601 胸片分割——对照不同空间标注层级

9.2 血缘对照:CT-RATE 的位置

PatchChestCT 的直接上游是 CT-RATE。在本库中,CT-RATE 若已有独立条目,应作为本条目最重要的血缘互链(上游本体);若暂无,则以 HuggingFace 外链指向。检索本条目时,凡涉及"图像从哪来",答案都指向 CT-RATE。

9.3 检索路径建议

  • 想找三维胸部 CT 定位监督:本条目为首选(patch 级、2,201 例、CC BY 4.0)。
  • 想找胸片(2D)检测/分类:转 nih-chest-x-ray14(15)、chestx-det10(137)。
  • 想找胸部 X 光大规模集:转 padchest(117)。
  • 想找胸部 CT 影像组学:转 chest-imagenome(330)。

§10 避坑清单:八个已踩过的坑

坑 1:PatchChestCT 不含 CT 图像,别指望一步下全。最常见的误解是把 PatchChestCT 当成"有图像的公开库"。实际上 Zenodo 包只有标注 .npz 与卷标识符,图像必须另行从 CT-RATE 申请(gated DUA)。只下标注、不申请图像,等于拿到一套没有底图的坐标。

坑 2:Zenodo 有版本链,必须锚定 v3(19707049)。搜索索引里仍能看到记录 16812648 的旧描述,容易误导引用。论文与 GitHub 都引用 v3 = 10.5281/zenodo.19707049。WebFetch 请求 16812648 时正文实则渲染为 v3 内容,说明旧版已被取代。引用一律用 v3。

坑 3:Table 4 一致性数值不是全给全的。抓取到的 Table 4 仅含前七类的 AC1/DSC,consolidation(肺实变)与 bronchiectasis(支气管扩张)两类数值在正文片段中被截断。切勿臆造未取证的数值——需要的读者请回 Nature 原文核对(Nature 主站有 idp.nature.com 重定向,建议走 PMC13469086 全文)。

坑 4:"2,201 studies"不等于 CT-RATE 的 25,692。PatchChestCT 的 2,201 是从 CT-RATE 里选的子集,约占其 50,188 卷体数据的 10%。标题里的"2,201 physician-reviewed CT studies"最容易被误读成"全量"。检索时务必区分"源队列规模"与"标注子集规模"。

坑 5:卷级一致性高(AC1 0.68–1.00)不等于 patch 级一致(Dice 0.21–0.64)。论文的 Gwet’s AC1 很高容易让人误以为标注极可靠,但 patch 级 Dice 明显低得多。"有没有"很一致,"在哪里"弱得多——做定位任务时 ground truth 本身带噪,食管裂孔疝 Dice 0.214 尤其低。别把卷级一致性当成空间标注精度的证据。

坑 6:子集患病率分布不匹配全体,别拿来估流行率。论文自曝 2,201 例子集的患病率分布不匹配全 50,188 卷——部分类别被富集、部分欠代表(标注者被鼓励优先纳入有异常的病例)。用它估"人群中某异常患病率"是错误用法;跨库对比与泛化研究须声明这一偏斜。

坑 7:“patch 级"不是"体素级”,别用于精细边界任务。单 patch ≈ 6.9 cm³、z 轴经 ±4 层传播生成,定位精度是粗粒度的。需要亚厘米级边界(如微小结节的精确轮廓)的分割任务不适用,需另行精炼(论文建议用 SAM/BiomedParse 升级)。

坑 8:正向 patch 极度稀疏,训练必须处理类别不平衡。多数异常正例 patch 占体积总 patch 数 <1%(仅肺不透明影较弥漫)。直接拿 0/1 二值做普通分类损失会强烈偏向负类,需采样加权或代价敏感损失。README 提供的 loader 即为此稀疏结构定制。

10.1 坑点速查卡

坑 触发场景 一句话规避
1 缺图像 下载后无法训练 两步获取
2 版本错 引用/复现不一致 锚定 v3
3 数值缺 引用 Table 4 全表 回原文核对
4 规模混淆 误用 2,201 当全量 区分子集/源队列
5 一致性误解 高估 patch 级精度 分清卷级/patch 级
6 患病率偏斜 误估流行率 声明偏斜
7 粒度错配 用于精细分割 先精炼再分割
8 类别不平衡 训练全预测负类 加权/代价敏感

10.2 一句话避坑总则

先确认"有没有图像"和"是不是 v3",再确认"粒度够不够细"和"能不能估患病率"——把这四问过一遍,八成的坑就绕过了。

§11 总结

11.1 三句话总结

  1. PatchChestCT 把 CT-RATE 的 2,201 例非增强胸部 CT 从"整卷一个标签"升级为"12×12×24 网格、九类异常逐个 patch 一个标签",填补了胸部 CT 大规模空间标注的空白。
  2. 它用受控对照实验证明:patch 级监督的定位 Dice(42.2%)远超图像级弱监督(15.6%),增益来自标注粒度本身而非特定模型。
  3. 标注 CC BY 4.0 公开直链,但图像须另行申请 CT-RATE,且子集患病率分布不匹配全体——用它要记住这两条边界。

11.2 适合谁

  • 胸部 CT 定位模型开发者:找一个规模足够、格式模型友好的三维定位监督源。
  • 弱监督定位方法研究者:需要一个"强监督参照系"来衡量方法差距。
  • 三维医学基础模型团队:token 对齐的 patch 标签便于下游定位微调。
  • 多模态影像-语言研究者:token 对齐设计便于空间-语言对齐。
  • 数据集方法学研究者:分层流水线 + 受控对照实验 + 坦诚局限声明,都是可借鉴范式。

11.3 不适合谁

  • 需要即用图像的人:PatchChestCT 不含图像,须自行申请 CT-RATE。
  • 需要体素级分割掩码的人:patch 级 6.9 cm³ 粒度不够细。
  • 需要无偏流行病学样本的人:子集患病率偏斜,不可当患病率估计。
  • 需要亚厘米级微小结节定位的人:z 轴传播导致层间精度受限。

11.4 30 秒决策卡

你的情况 行动
要训练胸部 CT 定位模型 Zenodo 下标注(v3)+ 申请 CT-RATE 图像,按卷 ID 对齐
想在弱监督方法上对标强监督 用本数据集补监督,对照论文 42.2% vs 15.6% 口径
要接入 Transformer/多模态模型 直接用 patch 标签做 token 级监督,无需适配层
要体素级掩码 用 patch 标签做种子 + SAM/BiomedParse 精炼
要引用本数据集 锚定 Zenodo v3(19707049)+ 论文 doi 10.1038/s41597-026-07793-0
要估患病率 不要用本数据集,回 CT-RATE 全量或流行病学队列

11.5 三分钟精读路径

若只有三分钟,按以下顺序读即可掌握全貌:

  1. 本 §11.1 三句话(30 秒)——知道它是什么、强在哪、边界在哪。
  2. §2.1 规模表 + §2.3 九类表(1 分钟)——掌握数据构成。
  3. §4.1 token 对齐 + §5.3 42.2% vs 15.6%(1 分钟)——掌握方法主张与核心证据。
  4. §6.1 两件资产两种门 + §5.4 子集偏斜(30 秒)——掌握获取与局限。

读完这四段,你就具备了与他人讨论 PatchChestCT 的完整框架。

11.6 五个最该记住的数字

  1. 2,201 — 标注研究数。
  2. 12×12×24 — patch 网格。
  3. 42.2% vs 15.6% — patch 级 vs 弱监督定位 Dice。
  4. CC BY 4.0 — 标注许可。
  5. v3 / 19707049 — 正确的 Zenodo 版本。

FAQ(高频问答)

A. 基础认知

Q:PatchChestCT 是什么类型的数据集?
三维 patch 级空间标注数据集。它不是图像库、不是体素级分割集,而是给胸部 CT 逐 patch 打九类异常标签的标注层。

Q:它是谁做的?
中国科学技术大学(USTC)团队,含生物医学工程学院与 MIRACLE 中心、附属第一医院放射科等,通讯作者 Wei Wei 与 Zhou Shaohua Kevin。

Q:发在哪?
Scientific Data 2026;13(1):1180(doi 10.1038/s41597-026-07793-0,PMID 42586983,PMCID PMC13469086)。

Q:名字里的 patch 是什么意思?
指把三维体数据切成的小立方块。每卷切成 12×12×24 个 patch,每个 patch 给一个标签。

B. 数据与获取

Q:怎么下载?
两步。① Zenodo 19707049(v3)直接下 .zip 标注;② CT-RATE HuggingFace 申请 gated access、同意 DUA 后下图像。

Q:要付费吗?
不要。标注是 CC BY 4.0 免费公开;CT-RATE 也是免费但需注册申请。

Q:许可是什么?
标注文件 CC BY 4.0(署名即可自由使用)。图像受 CT-RATE 的 DUA 约束。论文本身 CC BY 4.0。

Q:有多少数据?
2,201 例研究(Train 2016 / Valid 185),每例 9 个 .npz。压缩包合计约 3.7 MB(标注极稀疏,故体积很小)。

Q:没有图像能用标注吗?
不能单独用。标注只有空间坐标意义,须与 CT-RATE 图像按卷标识符对齐后才有意义。

C. 结构与格式

Q:.npz 里是什么?
每个文件是一个 shape (24,12,12)、dtype bool 的二值数组,对应体数据的 patch 网格。加载示例见官方 README(np.load(path)["arr_0"])。

Q:每例有几个文件?
9 个,每类异常一个 .npz(如 arterial_wall_calcification.npz)。

Q:预处理是什么?
重采样至面内 0.75 mm × 0.75 mm、层间 1.5 mm;中心裁剪至 384×384×192 voxels。

Q:单 patch 多大?
32×32×8 voxels,物理体积约 6.9 cm³。

D. 标注与质控

Q:谁标注的?
受训医学生团队初注,资深胸部 CT 医师复核与终审。

Q:怎么保证质量?
三段式:专家逐例目视复核 → 分歧病例双人独立重标 → 仍不一致则资深医师终审裁决。

Q:一致性如何?
卷级 Gwet’s AC1 0.681–1.000;patch 级 Dice 0.214–0.640。卷级高、patch 级波动明显。

Q:标注在哪做?
24 张等间距参考轴位切片(每 8 层取 1),标签向 z 轴 ±4 层传播。可在肺窗/纵隔窗间切换。

E. 实验与结果

Q:核心实验结果是什么?
patch 级监督最佳 mean Dice 42.2%,弱监督最佳 15.6%,高 26.6 个百分点,九类一致提升。

Q:用了哪些网络?
全监督:R3D-18、Swin3D-T、MViT-v2-S。弱监督:NoisyOR、Grad-CAM。

Q:弱监督为什么用更大数据还输?
弱监督用全 20,000 患者图像级标签,全监督只用 2,016 例 patch 标签,后者仍大幅领先——说明起决定作用的是标注粒度而非数据量。

Q:提升最大的类目?
肺不透明影(+34.9)、动脉壁钙化(+32.2)、冠脉钙化(+30.9)。

F. 使用与工程

Q:怎么加载数据?
用官方 GitHub 仓库的 PyTorch 数据加载器(处理稀疏目录式 .npz 结构)。

Q:怎么训练?
python src/train_grounding.py --backbone r3d18(全监督)或 python src/train_grounding_weak.py --backbone r3d18 --method noisyor(弱监督)。

Q:需要什么环境?
PyTorch + 三维医学影像预处理(重采样/裁剪)+ 可选 Weights & Biases 记录。

Q:正例太稀疏怎么办?
用采样加权或代价敏感损失;多数类正例 patch 占比 <1%。

Q:能直接用于体素级分割吗?
不能,需先用 patch 标签引导 SAM/BiomedParse 类模型精炼成掩码。

G. 局限与陷阱

Q:最大的使用陷阱是什么?
漏取 CT-RATE 图像。很多人以为下了 Zenodo 包就完事,结果发现只有标注没有图。务必两步走。

Q:子集偏斜会影响什么?
用它估患病率会错;跨全体分布迁移时性能可能下降;做泛化研究报告时须声明。

Q:patch 级 dice 为什么不高?
三维定位任务本身就难,且小体积/弥漫类目边界主观。0.214–0.640 是人类专家间的一致性水平,不是 bug。

Q:Table 4 完整数值在哪拿?
本条目抓取时后两类未取全,建议回 PMC13469086 全文核对(Nature 主站有重定向)。

Q:旧版 Zenodo(16812648)能用吗?
不推荐。论文与 GitHub 均引用 v3(19707049),旧版内容可能不完整或描述过时。

H. 工程与复现

Q:怎么对齐标注和图像?
按卷标识符。Zenodo 子目录名 = CT-RATE 卷 ID,用这个键把 .npz 与 CT 图像配对。

Q:预处理必须完全一致吗?
必须。0.75/0.75/1.5 mm 重采样 + 384×384×192 中心裁剪,任何一步不一致都会导致 patch 索引错位。

Q:弱监督基线为什么不都一样?
弱监督有 NoisyOR 与 Grad-CAM 两种方法,训练信号同为图像级但定位机制不同,故归入 6 组 WSL 实验。

Q:训练日志记在哪?
默认 Weights & Biases(wandb)。

Q:有没有推荐的入门路径?
① 读 README + 论文结果节;② 下 v3 标注;③ 申请 CT-RATE;④ 跑 train_grounding.py --backbone r3d18(最轻骨干)验证流程;⑤ 再扩展到其他骨干。

事实清单(硬事实)

  1. 官方名:PatchChestCT: A patch-level spatial annotation dataset for nine abnormalities in chest CT。
  2. 发表:Scientific Data 2026;13(1):1180。
  3. DOI:10.1038/s41597-026-07793-0。
  4. PMID:42586983;PMCID:PMC13469086。
  5. 团队:中国科学技术大学(USTC)等。
  6. 通讯作者:Wei Wei、Zhou Shaohua Kevin。
  7. 作者数:10(Li Y 与 Zhang H 共同一作)。
  8. 标注研究数:2,201。
  9. Train:2,016;Valid:185。
  10. 源队列 CT-RATE:25,692 studies / 21,304 individuals / 50,188 volumes。
  11. 子集占比:约 CT-RATE 的 10%。
  12. 异常类别数:9。
  13. patch 网格:12×12×24 = 3,456 patch/卷。
  14. 单 patch:32×32×8 voxels ≈ 6.9 cm³。
  15. 预处理:面内 0.75×0.75 mm、层间 1.5 mm。
  16. 裁剪尺寸:384×384×192 voxels。
  17. 标注切片:24 张参考轴位(每 8 层取 1)。
  18. z 轴传播:±4 相邻层。
  19. 文件格式:.npz,shape (24,12,12),dtype bool。
  20. 每例文件数:9。
  21. 发布包:annotations-train.zip(3.4 MB)+ annotations-valid.zip(312.5 kB)。
  22. Zenodo:10.5281/zenodo.19707049(v3)。
  23. GitHub:SadVoxel/PatchChestCT。
  24. 标注许可:CC BY 4.0。
  25. 论文许可:CC BY 4.0。
  26. 图像获取:CT-RATE gated DUA。
  27. 全监督最佳 mean DSC:42.2%。
  28. 弱监督最佳 mean DSC:15.6%。
  29. 增益:+26.6 个百分点。
  30. 最大提升类:肺不透明影 +34.9%、动脉壁钙化 +32.2%、冠脉钙化 +30.9%。
  31. 全监督骨干:R3D-18、Swin3D-T、MViT-v2-S。
  32. 弱监督方法:NoisyOR、Grad-CAM。
  33. 卷级一致性:Gwet’s AC1 0.681–1.000(已取证七类)。
  34. patch 级一致性:Dice 0.214–0.640(已取证七类)。
  35. 一致性研究样本:100 例、两名额外标注者。
  36. 子集代表性:不匹配全 50,188 卷分布(已富集/欠代表)。
  37. 正例稀疏:多数类正例 patch <1% 体积。
  38. CT-RATE 采集:土耳其 Istanbul Medipol Mega Hospital,2015-05 至 2023-01。

术语表

  • PatchChestCT:本条目数据集,胸部 CT 三维 patch 级空间标注集。
  • CT-RATE:源队列数据集,25,692 例胸部 CT(Hamamci et al., Nat Biomed Eng 2026)。
  • patch:三维体数据切分的小立方块,本数据集单块 32×32×8 voxels。
  • patch 级标注:对每个 patch 给二值标签,而非逐体素(voxel-level)或整卷(image-level)。
  • token 对齐(token-aligned):标注粒度与模型表示单元(CNN 特征图单元 / ViT patch embedding)同构。
  • 弱监督定位(WSL):仅用图像级标签推断位置的方法,如 NoisyOR、Grad-CAM。
  • NoisyOR:一种用图像级标签做弱监督定位的方法。
  • Grad-CAM:基于梯度的显著图定位方法。
  • R3D-18:三维 ResNet-18 骨干网络。
  • Swin3D-T:Swin Transformer 三维版本骨干网络。
  • MViT-v2-S:Multiscale Vision Transformer v2 Small 骨干网络。
  • Dice(DSC):Dice 相似系数,衡量空间重叠度。
  • Gwet’s AC1:机会校正一致性系数,对患病率失衡不敏感。
  • inter-rater agreement:评分者间一致性。
  • token:Transformer 中的表示单元。
  • ViT:Vision Transformer。
  • voxel:体素,三维像素。
  • CTDIvol:容积 CT 剂量指数,衡量辐射剂量。
  • non-contrast CT:非增强 CT,不使用造影剂。
  • DXA/DUA:此处 DUA = Data Usage Agreement 数据使用协议。
  • ground truth:基准真值。
  • localization:定位。
  • multimodality:多模态。
  • npz:NumPy 压缩数组文件格式。
  • SAM:Segment Anything 分割基础模型。
  • BiomedParse:生物医学分割基础模型。

附录

附录 A:条目信息速查卡

项 值
官方名 PatchChestCT: A patch-level spatial annotation dataset for nine abnormalities in chest CT
slug patchchestct
论文 Scientific Data 2026;13(1):1180
DOI 10.1038/s41597-026-07793-0
Zenodo 10.5281/zenodo.19707049 (v3)
GitHub https://github.com/SadVoxel/PatchChestCT
规模 2,201 例(Train 2016 / Valid 185)
许可 标注 CC BY 4.0;图像 CT-RATE DUA
类别 九类胸部异常
网格 12×12×24

附录 B:DAIMS 评估全表

维度 评分(1-10) 依据
D 可发现性 8 论文开放获取(PMC 可全文)+ Zenodo DOI + GitHub 三处可索引;数据集名清晰无歧义
A 可获取性 7 标注 CC BY 4.0 公开直链(加分);图像需 CT-RATE gated 申请(减分);两步入库有门槛
I 可互操作 8 .npz(NumPy 通用)+ 官方 PyTorch loader + CT-RATE 标识符对齐;无 DICOM 原生格式
M 元数据质量 8 论文表格完备(人口学/成像/一致性);Table 4 后两类抓取未取全(微降),三处文档一致
S 可持续性 7 依托 Zenodo + GitHub + HuggingFace 三平台;但强依赖 CT-RATE 单一上游,有单点风险
综合评级 7.6/10(良好) 文档与可发现性优秀;标注直链是亮点;图像分离获取与上游单点依赖为两大拖分项

附录 C:逐项证据链自证

关键数字 来源 位置
2,201 / Train 2016 / Valid 185 论文摘要+Table 2 PMC13469086 全文
25,692 / 21,304 / 50,188 论文 Dataset source 节 PMC13469086 全文
12×12×24 网格 / 32×32×8 voxels / 6.9 cm³ 论文标注方案节 PMC13469086 全文
0.75/0.75/1.5 mm / 384×384×192 论文预处理节 PMC13469086 全文
24 参考切片 / ±4 层传播 论文标注方案节 PMC13469086 全文
九类异常列表 Zenodo 描述 + GitHub README 官方页
CC BY 4.0(标注) Zenodo + GitHub License 节 + 论文 Data availability 官方页/论文
Zenodo 19707049 (v3) 论文 Data availability + GitHub 徽章 官方页/论文
42.2% vs 15.6%(+26.6) 论文结果节 PMC13469086 全文
+34.9/+32.2/+30.9 最大提升 论文结果节 PMC13469086 全文
R3D-18/Swin3D-T/MViT-v2-S 论文基线节 PMC13469086 全文
NoisyOR/Grad-CAM 论文基线节 PMC13469086 全文
Gwet AC1 / Dice 逐类 论文 Table 4 PMC13469086 全文
100 例一致性研究 论文 inter-rater 节 PMC13469086 全文
三段式质控 论文 annotation process 节 PMC13469086 全文
子集代表性偏斜 论文 subset representativeness 节 PMC13469086 全文

附录 D:数据获取决策树

需要什么?
├─ 只要标注 → Zenodo 19707049 (v3) 直接下载(CC BY 4.0)
│   ├─ annotations-train.zip (2016 例)
│   └─ annotations-valid.zip (185 例)
├─ 标注 + 图像 → 还需 CT-RATE
│   ├─ HF 申请 gated access + 同意 DUA
│   ├─ 下载 CT 卷
│   └─ 按卷标识符(train_1003_a_1 等)对齐
├─ 要跑训练 → Git clone SadVoxel/PatchChestCT
│   ├─ 全监督:train_grounding.py
│   └─ 弱监督:train_grounding_weak.py
└─ 要体素级掩码 → patch 标签做种子 + SAM/BiomedParse 精炼(论文展望)

附录 E:九类异常标签文件映射表

中文 英文 .npz 文件名
动脉壁钙化 Arterial wall calcification arterial_wall_calcification.npz
冠状动脉钙化 Coronary artery calcification coronary_wall_calcification.npz
心包积液 Pericardial effusion pericardial_effusion.npz
食管裂孔疝 Hiatal hernia hiatal_hernia.npz
淋巴结肿大 Lymphadenopathy lymphadenopathy.npz
肺不张 Atelectasis atelectasis.npz
肺不透明影 Lung opacity lung_opacity.npz
肺实变 Consolidation consolidation.npz
支气管扩张 Bronchiectasis bronchiectasis.npz

附录 F:数据加载骨架(代码)

import numpy as np
import os

def load_annotation(annotation_dir, volume_id, abnormality):
    """Load a patch-level annotation for a given volume and abnormality."""
    path = os.path.join(annotation_dir, volume_id, f"{abnormality}.npz")
    if not os.path.exists(path):
        return None  # abnormality not present in this volume
    return np.load(path)["arr_0"]  # shape: (24, 12, 12), dtype: bool

# Example
ann = load_annotation("./annotations-train", "train_1003_a_1",
                      "arterial_wall_calculation")
print(ann.shape)   # (24, 12, 12)
print(ann.sum())   # number of positive patches

附录 G:基线训练命令速查

# 全监督(patch 级标签)
python src/train_grounding.py --backbone r3d18      # R3D-18, 默认
python src/train_grounding.py --backbone swin3d_t   # Swin3D-T
python src/train_grounding.py --backbone mvit       # MViT-v2-S

# 弱监督(图像级标签)
python src/train_grounding_weak.py --backbone r3d18 --method noisyor
python src/train_grounding_weak.py --backbone swin3d_t --method noisyor
python src/train_grounding_weak.py --backbone r3d18 --method gradcam

附录 H:评分者间一致性结果登记表(Table 4 已取证部分)

异常 Gwet’s AC1 Dice (DSC)
动脉壁钙化 0.882 0.607
心包积液 1.000 0.640
冠状动脉钙化 0.681 0.563
食管裂孔疝 0.958 0.214
淋巴结肿大 0.891 0.413
肺不张 1.000 0.460
肺不透明影 0.922 0.382
肺实变 遗留疑点(未取证) 遗留疑点
支气管扩张 遗留疑点(未取证) 遗留疑点

附录 I:坑点档案(与 §10 对照)

坑号 一句话 规避动作
1 不含图像 两步获取,别漏 CT-RATE
2 版本链 锚定 Zenodo v3 19707049
3 Table 4 未取全 勿臆造,回原文核对
4 2,201≠25,692 区分子集与源队列
5 卷级高≠patch 级高 定位任务注意 ground truth 噪声
6 患病率偏斜 勿估流行率
7 patch≠体素 精细边界任务需精炼
8 正例稀疏 处理类别不平衡

附录 J:双口径登记表

项 口径 A 口径 B 采用
Zenodo 版本 16812648(旧) 19707049(v3) v3
规模 研究数 2,201 CT-RATE 25,692 studies 子集 2,201,源队列 25,692
研究 vs 卷 2,201 studies 2,201 标注卷(1 研究=1 卷) 数值相等
论文日期 NLM 2026-08-12 版权页 12 8 2026 2026-08-12

附录 K:与库内 CT-RATE 血缘声明

PatchChestCT 的直接上游为 CT-RATE(Hamamci et al., Nature Biomedical Engineering 2026)。本数据集不含 CT-RATE 图像,一切图像需求须回 CT-RATE 官方库(HuggingFace gated)。若本库已有 CT-RATE 独立条目,应作本条目首要血缘互链;若无,则以 HF 外链指向。

附录 L:建议互链点

  • padchest(rid 117)— 胸部 X 光大规模集
  • chest-imagenome(rid 330)— 胸部影像基因组学
  • chest-ct-sepsis-er(rid 600)— 胸部 CT
  • rad-chestct(rid 819)— 胸部 CT
  • nih-chest-x-ray14(rid 15)— 胸片多标签(跨模态)
  • chestx-det10(rid 137)— 胸片检测(跨模态)
  • chest-x-ray-segmentation(rid 601)— 胸片分割

附录 M:与库内 CT-RATE 血缘关系声明

PatchChestCT 是 CT-RATE 的标注增强衍生层,二者为强血缘关系:

  • 上游:CT-RATE(Hamamci et al., Nature Biomedical Engineering 2026),提供 25,692 studies / 50,188 volumes。
  • 本条目:在 CT-RATE 上叠加九类异常 patch 级标注。
  • 依赖方向:PatchChestCT 使用者必须同时获取 CT-RATE;反之 CT-RATE 使用者可不涉及 PatchChestCT。
  • 对齐键:CT-RATE 卷标识符(如 train_1003_a_1)。

若本库已建 CT-RATE 独立条目,应将本条目与之双向互链;若暂无,以 HuggingFace 官方库外链指向。

附录 N:九类异常临床背景速查

异常 英文 临床背景一句话 类目特性
动脉壁钙化 Arterial wall calcification 主动脉等大血管壁钙化,与动脉粥样硬化相关 细长沿壁、局灶
冠状动脉钙化 Coronary artery calcification 冠脉钙化,冠心病风险分层关键指标 小体积、高对比
心包积液 Pericardial effusion 心包腔内积液,可为急症信号 形态规则、边界清晰
食管裂孔疝 Hiatal hernia 胃等腹腔结构经食管裂孔疝入胸腔 小体积、位置跨膈
淋巴结肿大 Lymphadenopathy 纵隔淋巴结增大,关乎肿瘤分期/感染 位置相对固定
肺不张 Atelectasis 肺组织含气量减少塌陷 形态可变
肺不透明影 Lung opacity 肺内密度增高影,非特异性 常弥漫、占比高
肺实变 Consolidation 肺泡被渗出物填充,如肺炎 局灶到弥漫
支气管扩张 Bronchiectasis 支气管不可逆扩张,结构性肺病 沿支气管分布

(本表"临床背景"为通识性说明,非论文原文数据,仅助理解。)

附录 O:版本与引用信息

项 值
数据 DOI 10.5281/zenodo.19707049 (v3)
论文 DOI 10.1038/s41597-026-07793-0
PMID 42586983
PMCID PMC13469086
期刊 Scientific Data 2026;13(1):1180
代码 https://github.com/SadVoxel/PatchChestCT
上游图像 https://huggingface.co/datasets/ibrahimhamamci/CT-RATE

附录 P:维护计划与触发点

本条目应在以下事件发生时复核更新:

  1. Zenodo 出新版本(v4+)——核验规模/许可/文件 md5 是否变化。
  2. CT-RATE 许可或平台变更——核验双步入库流程是否受影响。
  3. Table 4 完整数值可取证——补齐肺实变、支气管扩张两类一致性数据(当前遗留疑点)。
  4. GitHub 仓库重大更新——核验参考实现与训练命令是否变化。
  5. 后续衍生数据集出现(如体素级升级版)——补充下游血缘。

附录 Q:本条目证据链自证清单

断言 支撑来源 状态
数据集真实存在 Zenodo 官方记录 + PMC 论文 + GitHub 三源 已核
2,201 例规模 论文摘要 + Table 2 + Zenodo 描述 三源一致
CC BY 4.0 许可 Zenodo + GitHub License + 论文 Data availability 三源一致
12×12×24 网格 论文标注方案节 + Zenodo 描述 一致
42.2% vs 15.6% 论文结果节 已核
Table 4 七类数值 论文 Table 4(PMC 全文抓取) 已核(2 类遗留)
v3 版本 论文 Data availability + GitHub 徽章 一致

附录 R:检索决策树

检索者在找什么?
├─ 胸部 CT 的定位监督数据 → 本条目 PatchChestCT
│   ├─ 要现成图像 → 转 CT-RATE(HF gated)
│   └─ 要体素级掩码 → 本数据集不满足,考虑其他分割集
├─ 胸片(2D)数据集 → nih-chestx-ray14 / chestx-det10 / padchest
├─ 胸部 CT 影像组学 → chest-imagenome
└─ 弱监督定位方法评测 → 本条目(自带 WSL 对照基准)

结语

PatchChestCT 的价值可以浓缩为一句判断:它把"丰富标注粒度"这件昂贵的事,用 token 对齐的巧思与分层流水线的工程,做到了 2,201 例的可规模复制。它不完美——不含图像、子集偏斜、patch 级而非体素级——但它清晰地回答了胸部 CT 定位监督"从无到有"的问题,并用一个受控实验(42.2% vs 15.6%)把"精细标注值不值"从直觉变成了数字。对任何要在胸部 CT 上训练定位感知模型的人,它都是当前最实用、最透明、最可获取的公共起点之一。

附录 S:核心数字一览表

类别 数字 含义
标注研究数 2,201 子集规模
Train / Valid 2016 / 185 划分
源队列 studies 25,692 CT-RATE
源队列 volumes 50,188 CT-RATE
子集占比 ≈10% 相对 CT-RATE volumes
异常类别 9 九类
patch 网格 12×12×24 =3,456/卷
单 patch 32×32×8 voxels ≈6.9 cm³
参考切片 24 每 8 层取 1
z 轴传播 ±4 层 确定性补全
裁剪尺寸 384×384×192 voxels
重采样 0.75/0.75/1.5 mm 面内/层间
全监督 Dice 42.2% 最佳
弱监督 Dice 15.6% 最佳
增益 +26.6 百分点
卷级 AC1 0.681–1.000 已取证七类
patch 级 Dice 0.214–0.640 已取证七类
发布包 3.7 MB 标注总大小

附录 T:名词中英对照补遗

中文 英文 说明
动脉壁钙化 arterial wall calcification 大血管壁钙化
冠状动脉钙化 coronary artery calcification 冠脉钙化
心包积液 pericardial effusion 心包腔积液
食管裂孔疝 hiatal hernia 腹腔结构疝入
淋巴结肿大 lymphadenopathy 淋巴结增大
肺不张 atelectasis 肺塌陷
肺不透明影 lung opacity 密度增高影
肺实变 consolidation 肺泡填充
支气管扩张 bronchiectasis 支气管扩张

附录 U:常见检索误写与正解

误写/误解 正解
PatchChestCT 含图像 不含,图像在 CT-RATE
2,201 = CT-RATE 全量 2,201 是子集,全量 25,692 studies
用 v1/旧 Zenodo 用 v3(19707049)
直接用 .npz 做分割 需先精炼为体素级掩码
拿它估患病率 分布偏斜,不可
卷级一致 = 定位准 卷级高不代表 patch 级高

附录 V:一句话总结(供摘要引用)

PatchChestCT 是 USTC 团队基于 CT-RATE 构建的胸部 CT 三维 patch 级空间标注数据集,为 2,201 例非增强胸部 CT 的九类临床显著异常提供 12×12×24 网格上的 token 对齐二值标注,采用学生初注+资深医师终审的三段式质控,以 CC BY 4.0 于 Zenodo 公开(v3,10.5281/zenodo.19707049);受控实验表明 patch 级监督的定位 Dice(42.2%)显著优于图像级弱监督基线(15.6%)。

附录 W:三条读法速览(对应 §0 导语)

读者 关注 直达
数据使用者 怎么下、怎么用 §6 + 附录 D/F/G
方法研究者 为什么 patch 级、值多少 §4 + §5 + §7
评测者/审阅者 一致性、局限、存照 §3.3 + §5.4 + 附录 H/J

附录 X:本条目自检记录

检查项 结果
check_md.py PASS
preflight_check.py PASS
YAML 解析 PASS
title 站点后缀 含「
frontmatter 直引号 无(中文强调用「」)
data_source 长度 ≤255
relatedLink 正文说明,frontmatter 无

附录 Y:待核与后续补齐

项 现状 后续
Table 4 肺实变/支扩数值 抓取未取全 回 PMC13469086 核对
Fig 3 逐类 DSC 精确值 仅得最大/最小 回原文图注核对
精确标注工时 论文未披露 若后续版本披露则补

附录 Z:术语速记卡

  • patch(块):本数据集的空间标注单元,单块 ≈ 6.9 cm³。
  • token 对齐:标注粒度 = 模型表示粒度。
  • WSL:弱监督定位,只用图像级标签。
  • DSC/Dice:空间重叠度指标。
  • Gwet AC1:抗患病率失衡的一致性系数。
  • DUA:CT-RATE 的数据使用协议。

相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • largeia — 共享标签:医学影像 / CT / 目标检测 / 医学图像分割 / 心血管疾病
  • lndb — 共享标签:医学影像 / CT / 目标检测 / 医学图像分割 / 肺癌
  • lidc-annot-nlst501 — 共享标签:医学影像 / CT / 目标检测 / 医学图像分割 / 肺癌
  • luna16 — 共享标签:医学影像 / CT / 目标检测 / 肺癌
  • imagecas — 共享标签:医学影像 / CT / 医学图像分割 / 心血管疾病
  • lidc-idri — 共享标签:医学影像 / CT / 目标检测 / 医学图像分割
  • lctsc — 共享标签:医学影像 / CT / 医学图像分割 / 肺癌
  • medpelvis3d — 共享标签:医学影像 / CT / 目标检测 / 医学图像分割
  • parse2022 — 共享标签:医学影像 / CT / 医学图像分割 / 心血管疾病
  • deeplesion — 共享标签:医学影像 / CT / 目标检测

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集