信息速览
NucMM 的全称是「亚立方毫米尺度的三维神经元核实例分割数据集」,2021 年随 MICCAI 发表,由哈佛大学工程与应用科学学院与分子与细胞生物学系牵头,联合 Donostia 国际物理中心与 Ikerbasque 完成。给出的东西很少,只有两个体数据:覆盖近乎整条幼体斑马鱼脑的电镜体,约 0.14 立方毫米、十七万枚核;取自成年小鼠初级视皮层的微 CT 体,0.25 立方毫米、七千枚核。两者都是逐体素实例标注,不是点,不是包围盒。
它值得单独成篇,理由不在「又一个细胞核分割集」,而在体积和反差。在它之前,公开的神经元核数据集体积普遍小于千分之一立方毫米、每体不到五百个实例,脑组织相关的甚至不到两百;NucMM 把量级推高两个数量级,第一次让「在一整块真实脑组织里数清每一个核」成为可复现的评测任务。电镜体里核挤在一起、边界清楚却几乎相贴,微 CT 体里核稀疏却前景背景几乎相融,两种难度方向相反。
有两处需要先校正。其一,Z 与 M 不是 micro 与 macro,而是斑马鱼与小鼠,两个体都属亚立方毫米量级,不存在「小视野高分辨」对「大体积低分辨」的二分。其二,分辨率差被人为抹平:电镜原始层厚三十纳米、面内四纳米,被主动降采样到约半微米,剩下的差别是密度与对比度。一屏速览见下表。
| 数据集名称 | NucMM(NucMM Dataset) |
| 英文全称 | NucMM Dataset: 3D Neuronal Nuclei Instance Segmentation at Sub-Cubic Millimeter Scale |
| 别名/简称 | NucMM-Z(斑马鱼体)、NucMM-M(小鼠体) |
| 研究对象 | 幼体斑马鱼全脑、成年小鼠初级视皮层 layer II/III |
| 数据模态 | 串行切片电镜(ssEM)与 X 射线微型 CT(µCT),均为灰度单通道 |
| AI 任务类型 | 三维实例分割、密集目标分离、低对比度目标检测、跨模态迁移 |
| 标注形式 | 逐体素三维实例掩膜 + 脑区有效掩膜 |
| 体数据数量 | 2 个(每物种各一) |
| 细胞核总数 | 约十七万七千枚(斑马鱼约十七万 + 小鼠约七千) |
| 物理体积 | 斑马鱼 0.14 立方毫米 / 小鼠 0.25 立方毫米 |
| 体素网格 | 397×1450×2000 / 700×996×968 |
| 体素尺寸 | 约 480×512×512 纳米 / 各向同性 720 纳米 |
| 划分比例 | 每体 5% 训练 / 5% 验证 / 90% 测试 |
| 公开程度 | 原始影像与训练验证标注公开;完整标注需表单申请 |
| 评测指标 | AP、AP-50、AP-75(COCO 口径的三维实例分割) |
| 许可证 | 官方页无 SPDX 声明;配套代码 MIT |
| 发布机构 | 哈佛大学 SEAS / 分子与细胞生物学系 |
| 官方主页 | https://nucmm.grand-challenge.org/ |
| AI 就绪度评分 | ⭐⭐☆(2.5/5)— 标注质量极高;扣分项:仅两个体、九成区域不公开、无许可声明 |
§1 数据集概览
§1.1 三十秒速览
一句话:这是目前公开的唯一一个「在整块脑组织的三维体积里把每一个细胞核都标出来」的基准,两个体积分别代表密度极端与对比度极端两种失败模式。
如果只记三个数字,记这三个:十七万、七千、百分之五。十七万是斑马鱼体里被逐个编号的细胞核数量,七千是小鼠体的数量,百分之五是每个体数据公开给下载的训练区比例。前两个数字决定了它为什么难,第三个数字决定了它为什么不好用。
如果只记一句话,记这一句:它不是为了让你刷分,而是为了让你知道你的三维分割模型在「核贴核」和「核融于背景」这两种情况下分别会怎么崩。
§1.2 摘要
数据集的物理基础是两块组织。一块是幼体斑马鱼的头,几乎整条脑都在里面,被切成三十纳米厚的连续切片后逐张扫描,重建成一个 397 层、每层 1450×2000 像素的灰度堆栈。另一块是成年小鼠初级视皮层的 layer II/III,经过重金属染色后用 X 射线微型 CT 直接三维成像,得到 700×996×968 的各向同性体素格。
标注的物理基础是人的时间。两个体积都不是纯手工画的,也都不是纯自动生成的:电镜体先用滤波加阈值得到前景掩膜、再用分水岭切开粘连,小鼠体则用「人工修正—U-Net 预测—再人工修正」的迭代方式逐步扩张标注集,最后两个体积都由有经验的神经科学家用 VAST 逐体素校对。组织方在官网上明确写着「标注并不完美」,并留了一个邮箱专门接收错误坐标。这种坦率在同类数据里并不多见,也直接决定了使用者应当怎样对待它的标签。
评测的物理基础是实例数。指标沿用 COCO 的平均精度,只是把二维的 IoU 换成三维的体素 IoU,报告 AP-50、AP-75 与两者均值。选 AP 而不选 Dice 的逻辑很直接:这个任务的难点是「数对多少个」,不是「覆盖得多准」,一个把所有核连成一团的模型可以有很高的体素重叠率,却几乎没有正确的实例。
§1.3 决策卡:你的处境决定它能帮你什么
| 你的处境 | NucMM 能帮你什么 |
|---|---|
| 在做三维核分割,模型在密集组织上总把相邻核粘成一个 | 斑马鱼体是天然的粘连压力测试,十七万枚核挤在 0.14 立方毫米里 |
| 模型在低对比度体数据上召回率上不去 | 小鼠体的前景背景 KL 散度只有 1.33,正好卡在你的弱项上 |
| 想验证「跨成像物理」的迁移能力 | 电镜与 X 射线微 CT 是两种完全不同的对比机制,同一个任务、两套物理 |
| 要给连接组学流水线做核计数前置步骤 | 这是目前唯一有整脑级真值的公开体,计数误差可以直接对齐 |
| 显存有限,想做分块推理与拼接 | 两个体都大到必须分块,边界处理是绕不开的工程问题 |
| 想找一张能证明「我的方法在极小训练集下仍有效」的图 | 官方只给 5% 训练区,二十七块 64³ 或四块 192³ 的小块就是全部训练素材 |
| 想做病理 WSI 的核分割 | 帮不上,完全不同物理、不同维度、不同尺度 |
§1.4 不适合谁
如果你的需求是「训练一个能在 H&E 病理切片上数核的模型」,NucMM 给不了你任何直接帮助。它没有颜色通道,没有全切片金字塔,没有肿瘤微环境,切片厚度与染色化学都与病理完全无关。库内的 pan-cancer-nuclei-seg 或 nucls 才是那条路上的东西。
如果你的需求是「做细胞核的形态学分类」,它也帮不上。这里只有「是不是核、是哪一个核」,没有细胞类型、没有皮层分层标签、没有发育阶段。斑马鱼体里能区分出神经元核与胶质核的信息,在标注层面并没有被拆开。
如果你的需求是「拿一个现成的测试服务器来打分」,同样不行。官方站点没有可用的提交阶段,评测页打不开,排行榜并不存在。想复现论文里的 AP,必须自己申请完整标注、自己实现三维 AP 计算。
如果你的需求是「做人体组织的研究并写进临床论文」,那就更不合适。两个体数据都不是人,一个幼体鱼、一个成年鼠,结论外推到人脑需要极强的额外论证。
§1.5 定位差异
| 资源 | 核心内容 | 与本篇的差异 |
|---|---|---|
| NucMM | 两个整脑级三维体,逐核实例掩膜 | 唯一同时具备「大体数据 + 整脑覆盖 + 双成像物理」的公开核分割基准 |
| pan-cancer-nuclei-seg | 五千余例病理全切片,二维逐核标注 | 二维、彩色、人肿瘤;核密度低、切片薄、无 z 轴歧义 |
| nucls | 乳腺癌病理核分类 | 带细胞类型标签,但仍是二维病理视野 |
| Light My Cells 2 | 无标记显微图像预测荧光 | 任务是图像翻译而非实例分割,且为二维 |
| MICrONS | 小鼠视皮层的功能—结构联合图谱 | 同为小鼠视皮层,但目标是连接组与功能,核分割只是中间产物 |
| Cell Tracking Challenge | 二维与三维时序细胞分割追踪 | 有 z 轴也有时间轴,但对象是培养细胞而非脑组织 |
一句可操作的判断规则:要「数清一整块脑里的每一个核」,只有 NucMM;要「在病理切片上分割核」,去 pan-cancer-nuclei-seg;要「核的分类与形态」,去 nucls。
§2 数据构成与规模
§2.1 官方规模口径
官方给出两个数字体系,彼此略有出入,需要说清楚以哪个为准。官网首页写电镜体是「0.1 立方毫米」,论文摘要沿用这个说法;但论文表 1 与正文给出的是 0.14 立方毫米,并且体素网格 397×1450×2000 乘以体素尺寸 480×512×512 纳米,算出来正好是 0.144 立方毫米。所以 0.14 是几何事实,0.1 是摘要里的整数化表述。
| 指标 | NucMM-Z(斑马鱼) | NucMM-M(小鼠) | 合计 |
|---|---|---|---|
| 物种 | 幼体斑马鱼 | 成年小鼠(雄性) | — |
| 取材 | 近乎整条脑 | 初级视皮层 layer II/III | — |
| 成像 | 串行切片电镜 | X 射线微型 CT | — |
| 物理体积 | 0.14 立方毫米 | 0.25 立方毫米 | 0.39 立方毫米 |
| 体素网格 | 397×1450×2000 | 700×996×968 | — |
| 体素尺寸 | 480×512×512 纳米 | 720 纳米各向同性 | — |
| 核实例数 | 约十七万 | 约七千 | 约十七万七千 |
| 训练区 | 5% | 5% | — |
| 测试区 | 90% | 90% | — |
§2.2 三个划分各自意味着什么
每个体数据按 5% / 5% / 90% 切成训练、验证、测试三块。这个比例在任何常规数据集里都会被认为是病态的,在这里却是设计出来的:作者想模拟神经科学家面对一块新采集的体积时的真实处境——手上只有很小一块被标注过的样本,剩下全部要靠模型自己推。
| 划分 | 占比 | 是否公开 | 现实含义 |
|---|---|---|---|
| 训练 | 5% | 公开,随原始影像一起下载 | 你唯一能用来学参数的像素 |
| 验证 | 5% | 公开 | 调阈值、选模型、early stop 的全部依据 |
| 测试 | 90% | 不公开,需申请表申请 | 报告的分数只有在这里才算数 |
这个设计的代价很明确:验证集和训练集一样小,超参搜索极易过拟合到那 5% 上。使用者的常见错误是把验证集分数当成泛化能力,然后在申请到的测试区上看到大幅下跌。
§2.3 单条记录的形态
一个「记录」在这份数据里就是一个体数据文件夹,里面至少有四样东西:灰度影像堆栈、实例掩膜堆栈、脑区有效掩膜、以及描述体素尺寸与模态的元信息。
以斑马鱼体为例,逐行解剖它的几何:
nucmm_z/
image.tif #-- 397 x 1450 x 2000, uint8, 灰度,层间为 z
instance.tif #-- 同尺寸, uint32, 0 为背景,1..N 为核编号
brainmask.tif #-- 同尺寸, uint8, 1 为有效脑区,0 为体外
meta.json #-- voxel_size [480, 512, 512] nm, modality "ssEM"
这里有两个容易踩的点。第一,z 轴在数组的第一维,即 397;如果按常见的 (z, y, x) 约定读进来,体素尺寸的顺序必须同步写成 (480, 512, 512),否则重采样时三轴会错配。第二,实例编号是全局唯一的整数,跨分块不复用,所以按块裁剪时不需要重编号,但拼接时必须保证不覆盖——这是分块推理最常见的静默错误。
小鼠体的结构完全一致,只是尺寸换成 700×996×968、体素尺寸三轴都是 720 纳米。两个文件夹的目录约定相同,这意味着同一套读取代码可以同时吃两份数据,前提是不把体素尺寸写死。
§2.4 密度:真正的规模差异在这里
物理体积上两个体只差不到一倍,实例数却差二十多倍。把官方数字相除可以得到一个更有用的量:
| 指标 | 斑马鱼体 | 小鼠体 | 比值 |
|---|---|---|---|
| 核密度(推算,枚/立方毫米) | 约一百二十万 | 约二点八万 | 约四十三倍 |
| 平均每个核占用的体积份额 | 极小 | 明显更大 | — |
| 相邻核中心距 | 近,分布右偏窄 | 远,分布宽 | — |
(密度一行为按官方数字直接相除的推算值,非官方公布。)
这四十三倍才是这份数据真正的「双尺度」:不是分辨率的高低,而是同一体积里目标的拥挤程度。它解释了为什么同一个模型在两个体上的表现可以差一倍以上——论文里 U3D-BCD 在斑马鱼体上 AP 均值 0.894,在小鼠体上只有 0.444。
§2.5 命名与主键
主键就是体积名:NucMM-Z 与 NucMM-M。Z 取自 zebrafish,M 取自 mouse。官方从未把这两个字母解释为 micro 与 macro,论文与官网都没有这样的表述;把 NucMM 读成「显微与宏观」是中文语境里流传最广的一处误读,成因大概是 Nuc 与 MM 两个音节看起来像一对尺度词。
实例编号则是另一层主键。掩膜里的整数值既是身份也是索引,没有单独的实例表,所以「第 12345 号核在哪里、有多大」只能通过遍历掩膜现算。这带来一个工程后果:任何统计都必须自己扫一遍体数据,没有现成的 CSV 可以查。
§2.6 规模数字该怎么用
十七万这个数字最容易被误用。它不是「十七万个样本」,而是一个体积里的实例数,彼此高度相关:相邻的核共享组织环境、共享成像条件、共享切片质量。把它当独立样本做统计推断,会得到窄得离谱的置信区间。
正确的用法是把它当「一个测试用例里的目标数」——衡量算法的召回率与分离能力,而不是衡量模型的泛化方差。要做泛化结论,样本量其实只有二,两个物种,两个个体,两个模态。
§3 影像来源层:两块组织、两套物理
§3.1 为什么这一层要先讲
核分割的公开数据绝大多数来自光学显微镜:共聚焦、双光子、光片、或者病理明场。NucMM 一个都不是。它用的是电子显微镜和 X 射线微型 CT,两种都不靠荧光,成像对比来自组织对电子或 X 射线的吸收差异。这一点决定了所有基于光学的直觉在这里都会失效。
最直接的后果是通道数。这里没有通道,只有单通道灰度。任何以「DAPI 通道 + 明场通道」为输入的现成流程,在这里都要先改结构。第二个后果是噪声模型:光学图像是光子噪声,电镜是探测器噪声加切片对齐误差,微 CT 是重建伪影。三者完全不同,用同一套数据增强会伤害其中至少一个。
§3.2 电镜体:从三十纳米到半微米
斑马鱼体的采集路径是经典串行切片电镜:树脂包埋、重金属染色、超薄切片、逐张扫描。原始层厚三十纳米,面内像素四纳米,这个分辨率足以看清核膜与部分胞内结构。
但作者没有用原始分辨率发布。他们把体积降采样到约 480×512×512 纳米,也就是面内降了一百多倍、层间降了十六倍。理由写在论文里:让分辨率接近其他用于细胞核分析的成像模态。这是一个非常清醒的取舍——如果保留四纳米面内分辨率,这个体数据的规模会大到绝大多数实验室无法处理,而任务的难点本来是「分离粘连」而不是「看清边界」。
| 参数 | 原始采集 | 发布版本 | 变化 |
|---|---|---|---|
| 层厚(z) | 30 纳米 | 480 纳米 | 降 16 倍 |
| 面内(x/y) | 4 纳米 | 512 纳米 | 降 128 倍 |
| 层数 | — | 397 | — |
| 面内像素 | — | 1450×2000 | — |
降采样的副作用是核与核之间的缝隙变得更窄。在四纳米下能看到的间质空隙,在半微米下往往只剩一两个体素,这正是斑马鱼体「粘连」难度的来源之一。
§3.3 微 CT 体:吸收对比下的低反差
小鼠体走的是另一条路。组织块经重金属浸染后,用 X 射线微型 CT 直接三维成像,不需要物理切片,因此没有切片对齐误差,也没有层间错位。体素是各向同性的 720 纳米,三个方向完全等价。
代价是对比度。论文用 KL 散度量化前景与背景的强度分离程度,斑马鱼体是 3.43,小鼠体只有 1.33。这个数字的直观含义是:在斑马鱼体里,核与背景的灰度分布几乎不重叠,阈值就能大致分开;在小鼠体里,两个分布大幅交叠,任何全局阈值都会同时切掉大量真核、留下大量假核。
| 指标 | 斑马鱼体 | 小鼠体 | 含义 |
|---|---|---|---|
| 成像方式 | 串行切片电镜 | X 射线微 CT | 物理机制不同 |
| 体素各向同性 | 否(480 对 512) | 是(720) | 小鼠体无需考虑层间插值 |
| 前景背景 KL 散度 | 3.43 | 1.33 | 小鼠体的对比度问题严重得多 |
| 核密度 | 极高 | 低 | 斑马鱼体的问题在分离 |
| 主要失败模式 | 相邻核合并 | 漏检与背景误检 | 两者方向相反 |
§3.4 两种失败模式为什么是相反的
这是这份数据最值得写进方法 section 的一点。在斑马鱼体上,一个把阈值调低的模型会把所有核连成一片,实例数报得远少于真值,AP 崩塌的原因是「分不开」。在小鼠体上,同样的模型会把大量背景当成核,实例数报得远多于真值,AP 崩塌的原因是「分不准」。
于是任何单点的超参选择都无法同时取悦两个体。论文里的做法是分别调参并分别报告,这也解释了为什么表格里小鼠体的分数普遍低——它的上限受对比度限制,不是受模型容量限制。
§3.5 没有的东西
这一层需要明确列出缺项,因为它们决定了这个数据不能做什么:
- 没有荧光通道,不能做多标记共定位。
- 没有时间序列,不能做追踪或分裂事件分析。
- 没有配对染色,不能做「电镜—光学」配准研究。
- 没有临床或行为元数据,不能做条件关联分析。
- 没有人类组织,不能做临床外推。
§3.6 切片质量的方向性偏差
电镜体的一个隐性偏倚在层方向。串行切片的厚度、染色深浅、切片丢失率都会随深度缓慢漂移,于是 z 方向上的图像统计并不平稳。一个足够深的网络完全可以学到「第几层」这个捷径,而不是学核的形状。
这一点在跨数据集测试时会暴露:在小鼠体上不存在这种层向漂移(因为不需要切片),所以从斑马鱼体迁到小鼠体的模型常常丢掉的正是它依赖的那个捷径。
§4 标注体系层:人被写进标签里
§4.1 标注是什么形态
标注是三维实例掩膜。每一个被判定为细胞核的连通体获得一个全局唯一的整数编号,未被判定为核的体素为 0。没有点标注,没有包围盒,没有语义类别——这里只有一个类别:核。
| 项目 | 内容 |
|---|---|
| 标注类型 | 三维实例分割掩膜 |
| 类别数 | 1(细胞核) |
| 编号方式 | 全局唯一整数,0 为背景 |
| 数据类型 | 32 位无符号整数 |
| 附加掩膜 | 脑区有效掩膜(二值) |
| 是否有点标注 | 否 |
| 是否有类别标签 | 否 |
| 是否有部分遮挡标记 | 否 |
§4.2 两条不同的半自动流水线
两个体的标注生成方式不一样,这一点在多数介绍里被略过,但它直接决定了标签的误差结构。
斑马鱼体的路径是「先分后校」:电镜对比度高、核边界清晰,先用滤波加阈值得到二值前景,再用分水岭变换把粘连的前景切开,得到初始实例,最后人工校对。这条路径的误差集中在分水岭的切分位置——两个紧贴的核被切在错误的地方,或者三个核被切成两个。
小鼠体的路径是「边标边学」:先手工标一小块,训一个 U-Net,用它预测周围的区域,人工修正预测,再用修正后的数据重训,如此迭代扩张。这条路径的误差集中在「模型没预测到、人也没注意到」的漏标,以及模型系统性把某种纹理当成核的假阳。
| 维度 | 斑马鱼体 | 小鼠体 |
|---|---|---|
| 初始来源 | 阈值 + 分水岭 | 人工 + U-Net 迭代 |
| 人工介入方式 | 校对切分 | 修正预测并重训 |
| 主要误差 | 切分位置错误 | 漏标与系统性假阳 |
| 校对工具 | VAST | VAST |
| 校对者 | 神经科学家 | 神经科学家 |
§4.3 为什么用 VAST
VAST 是连接组学社区常用的体积标注与分割工具,特点是能在切片视图与三维视图之间快速切换、能把一个实例的所有体素高亮、能对单个实例做分割与合并。用它而不是用通用的图像标注软件,原因是这个任务的瓶颈不是「画」,而是「判断两个相邻的暗区是不是同一个核」——这需要三维上下文,也需要极快的实例切换速度。
工具的選擇反过来影响了标签的形态:VAST 以实例为操作单位,所以标签天然是实例编号而不是语义图。这也是这份数据只能做实例分割、不能直接拿去做语义分割训练的原因(要做也行,把编号二值化,但那样就丢掉了它最大的价值)。
§4.4 官方承认标注不完美
官网首页有一段不常见的话,大意是:标注并不完美,如果你发现分割错误,请把错误位置的 (x, y, z) 坐标或实例编号发到指定邮箱,主题写「[NucMM Error]」,我们一起改进。
这段话的价值不止是态度。它给出了三个可操作的事实:其一,错误是可以定位到坐标的,说明标签是可编辑的体数据而不是一张图;其二,修订是社区协作式的,没有版本号也没有变更日志,所以你拿到的标签可能和别人拿到的不同;其三,官方自己把「不完美」写在了明处,任何声称「以 NucMM 真值为绝对标准」的论证都站不住。
| 事实 | 含义 | 使用建议 |
|---|---|---|
| 错误可按坐标上报 | 标签是可编辑体数据 | 报告指标时应说明标签快照时间 |
| 无版本号与变更日志 | 不同时间下载可能不同 | 论文中注明下载日期 |
| 官方承认不完美 | 真值是近似而非绝对 | 不要用它判定「谁绝对正确」 |
| 无一致性报告 | 无标注者间一致性数据 | 可靠性需自行抽样复核 |
§4.5 脑区有效掩膜的作用
每个体数据都附一张二值掩膜,标出有效脑区。它的作用是把「体外区域」排除在评测之外:切片边缘的组织破损、树脂空洞、载网遮挡,都不该被算成漏检。
这张掩膜在实践中经常被忽略,后果是分数无法与论文对比。论文的 AP 是在掩膜内计算的,如果你在全图上算,分母变大,分数会系统性偏低。这是一个非常容易犯、又非常难自查的错误,因为两种算法的代码看起来只差一行。
§4.6 部分核的处理
跨越体积边界的核必然是残缺的。官方没有为这类核设特殊标记,它们和完整核一样获得编号、一样进入评测。这意味着边界层的核在形态统计上不可用——如果你要测量核体积分布,必须先剔除贴边的实例。
剔除的方法不难:对每个实例检查它是否触及体积的六个面之一。但要注意,斑马鱼体的 z 方向只有 397 层,贴边的比例不算低,粗暴剔除会让浅层的统计样本明显变少。
§4.7 标注规模的实际含义
十七万枚核的实例标注,在公开数据里属于极罕见的量级。作为对比:多数神经元核数据集体积小于千分之一立方毫米、实例少于五百;脑组织相关的甚至不到两百。NucMM 的斑马鱼体一个就顶得上一百多个这样的数据集。
但这个量级不是靠人力堆出来的。它是「半自动流水线 + 神经科学家校对」这个组合的产物:机器负责生成候选,人负责判断对错。理解这一点,才能理解标签的误差为什么是「系统性」的而不是「随机」的——机器犯的错会成批出现。
§4.8 贯穿案例:一个把三枚核标成两枚的实例
设想斑马鱼体里一处典型的密集区:三枚核沿 z 方向叠在一起,层间只有一两个体素的暗隙。分水岭在这一处把中间那枚与下面那枚合并,于是掩膜里出现一个体积约为正常核两倍的实例,编号连续,肉眼在单张切片上看不出异常。
这个错误在三个地方造成后果。第一,实例计数少了一个,如果下游做「整脑核计数」,误差就落在这个体上;第二,该实例的形态统计——体积、长短轴比、球形度——全部失真,任何基于形态的核分类都会把它判成异常;第三,在训练时,模型会把「两个核可以合并」当成合法输出,从而在别处复制这个错误。
规避的方式是在读取后做一次体积分布检查:把实例体积画成直方图,正常核应该聚成一个单峰,合并错误的实例会落在右尾。这个检查很便宜,但能抓住相当一部分系统性标注错误。同样的检查在小鼠体上要做的是左尾——那里的主要错误是漏标导致的碎片。
§5 任务与评测层:AP 的口径与取数路径
§5.1 任务定义
输入是一个三维灰度体积,输出是一个与输入同尺寸的整数体积,每个体素的值是它所属的核编号,背景为 0。这是一个实例分割任务,不是语义分割,也不是检测。评测时不关心编号的具体数值,只关心「划分是否与真值一致」。
这个定义有一个隐含要求:实例必须是三维连通的。分水岭、区域生长这类方法天然满足,而逐切片二维推理再堆叠的方法会产生 z 方向断裂的实例,直接判负。这条约束把很多从病理 WSI 迁移过来的流程挡在门外,因为它们在二维平面内工作得很好。
§5.2 指标:为什么是 AP 而不是 Dice
指标是 COCO 口径的平均精度,把二维的 IoU 换成三维体素 IoU。具体报告 AP-50(IoU 阈值 0.5)、AP-75(IoU 阈值 0.75)与两者均值。
| 指标 | 阈值 | 抓什么 | 容易被什么骗 |
|---|---|---|---|
| AP-50 | IoU ≥ 0.5 | 有没有找到、大致形状对不对 | 一个稍大的合并实例可以同时命中两个真值中的一部分 |
| AP-75 | IoU ≥ 0.75 | 边界准不准 | 边界模糊处的小偏差 |
| AP 均值 | 0.5 至 0.75 区间 | 综合 | 单点调参可以针对性优化 |
| Dice(非官方) | 体素重叠 | 覆盖度 | 完全无法反映实例数是否正确 |
Dice 在这里几乎无用:把所有核并成一块,Dice 仍然可以很高,但实例数错得离谱。这就是为什么官方用 AP——它按实例匹配,多报少报都扣分。
§5.3 基线成绩说明了什么
论文给出的四个方法成绩,是理解这份数据难度的最快入口:
| 方法 | 斑马鱼体 AP 均值 | 小鼠体 AP 均值 | 总体 |
|---|---|---|---|
| Cellpose(二维切片平均) | 0.569 | 0.233 | 0.401 |
| StarDist(星凸距离) | 0.620 | 0.155 | 0.388 |
| U3D-BC(前景 + 轮廓) | 0.670 | 0.428 | 0.549 |
| U3D-BCD(前景 + 轮廓 + 有符号距离) | 0.894 | 0.444 | 0.669 |
三件事值得注意。第一,两个在二维核分割上如雷贯耳的方法,在这里都被三维方法甩开一大截,Cellpose 在小鼠体上只有 0.233。第二,加一个「有符号距离图」就让斑马鱼体从 0.670 跳到 0.894,说明密集场景下「离边界多远」这个信号比「是不是边界」更有用。第三,小鼠体上所有方法都卡在 0.44 附近,差距很小,说明瓶颈不在模型结构而在图像本身——对比度决定了天花板。
§5.4 五个阈值的敏感性
论文的解码阶段有五个阈值:两个控制种子点(前景概率、轮廓概率),一个控制种子的距离值,两个控制有效前景区域(前景概率、距离值)。敏感性测试给出一个反直觉的结论:模型对前两个阈值几乎不敏感,τ1 从 0.4 调到 0.8,AP-50 只在 0.943 到 0.946 之间摆动;但控制有效前景区域的 τ4 从 0.1 变到 0.4,分数从 0.872 掉到 0.946。
含义很清楚:这个任务的成败不在「找不找得到种子」,而在「允许多大的区域被算作前景」。种子多一颗少一颗无所谓,前景区域画大一圈就会把相邻的核吞进来。这条经验可以直接迁移到任何密集实例分割任务上。
§5.5 取数路径
数据分两层发放,路径完全不同:
第一条路径是公开目录。原始影像与训练、验证区的标注放在一个公开的云盘目录里,不需要注册、不需要审批,点开就能下。这是大多数人实际会走的路。
第二条路径是表单申请。要拿到两个体数据的完整标注(含 90% 的测试区),需要填一张 Google 表单,说明用途,由组织方人工发放。申请表里没有承诺审批时限,也没有公开的拒绝理由清单。
| 层级 | 内容 | 门槛 | 可否复现论文分数 |
|---|---|---|---|
| 公开目录 | 原始影像 + 5% 训练 + 5% 验证标注 | 无 | 否 |
| 表单申请 | 完整标注(含 90% 测试区) | 填表 + 人工审批 | 是 |
| 论文表格 | 四个基线的分数 | 无 | 仅可对照 |
§5.6 代码与工具链
配套代码在 PyTorch Connectomics 仓库里,目录是 configs/NucMM,许可证是 MIT。这个仓库把 NucMM-Z 列为「组织尺度·细胞核」这一档的支持数据集,配置名是 nuc_nucmm-z;值得注意的是列表里只有 Z,没有 M。
| 资源 | 位置 | 许可 |
|---|---|---|
| 训练与推理配置 | configs/NucMM(PyTorch Connectomics) |
MIT |
| 解码与评测脚本 | 同仓库 | MIT |
| 数据本体 | 官方云盘 + 表单 | 未声明 |
这个不对称本身是个信号:作者团队的主要工程投入在电镜方向,小鼠体的微 CT 分支更像是为了论证「跨模态」而加的对照,工具链没有同等跟进。
§5.7 自己算分时的口径
要在自己的环境里复现 AP,需要对齐四件事,任何一件不一致都会让分数不可比:
#-- 三维 AP 的口径对齐:四件事必须与论文一致
import numpy as np
def iou_3d(pred, gt, idx):
p = pred == idx
g = gt == idx
inter = np.logical_and(p, g).sum()
union = np.logical_or(p, g).sum()
return inter / union if union else 0.0
def match_instances(pred, gt, thr=0.5):
#-- 只在脑区有效掩膜内评测,这一点最常被漏掉
gt_ids = np.unique(gt); gt_ids = gt_ids[gt_ids > 0]
pred_ids = np.unique(pred); pred_ids = pred_ids[pred_ids > 0]
used, tp = set(), 0
for g in gt_ids:
best, best_id = 0.0, None
for p in pred_ids:
if p in used:
continue
v = iou_3d(pred, gt, p) if False else 0.0
if v > best:
best, best_id = v, p
if best >= thr and best_id is not None:
used.add(best_id); tp += 1
fp = len(pred_ids) - len(used)
fn = len(gt_ids) - tp
precision = tp / (tp + fp) if tp + fp else 0.0
recall = tp / (tp + fn) if tp + fn else 0.0
return precision, recall
真正可跑的实现应当用体素级 IoU 的向量化版本,并沿 IoU 阈值 0.5 到 0.95 积分求 AP。上面这段只演示匹配逻辑,重点是最后那句注释:评测区域必须限定在脑区掩膜内,这是分数能否与论文对齐的第一道关口。
§6 与库内数据的边界
§6.1 与 pan-cancer-nuclei-seg 的边界
两者都叫「细胞核分割」,但除了这四个字之外几乎没有共同点。
| 维度 | NucMM | pan-cancer-nuclei-seg |
|---|---|---|
| 维度 | 三维体数据 | 二维全切片 |
| 颜色 | 单通道灰度 | RGB 彩色 |
| 成像物理 | 电子束 / X 射线吸收 | 明场染色吸收 |
| 组织 | 斑马鱼脑、小鼠视皮层 | 人肿瘤组织 |
| 尺度 | 半微米体素,毫米级体积 | 亚微米像素,厘米级切片 |
| 核密度 | 极高(斑马鱼体) | 中等 |
| 难点 | 粘连分离与低对比度 | 染色变异、类别不平衡 |
| 实例数 | 十七万(一个体内) | 五千余例累加 |
判断规则很简单:需要 z 轴、需要三维连通性、需要整块组织的完整体积,用 NucMM;需要病理形态、需要肿瘤微环境、需要与临床标签关联,用 pan-cancer-nuclei-seg。把两者混在一起训练,得到的是一个既不懂三维也不懂染色的模型。
§6.2 与其他核分割条目的边界
库内的 sinus-her2-nuclei 是乳腺癌 Dual-ISH 的单核分割,nucls 是带细胞类型标签的病理核分类,neurips22-cellseg 是二维细胞分割挑战赛。三者全部是二维光学图像,全部是人源或培养细胞,与 NucMM 的三维电镜/微 CT 体数据没有重叠。
真正接近的是 MICrONS:同样是小鼠视皮层,同样是体数据,同样涉及核。但 MICrONS 的目标是功能—结构联合连接组,核分割只是流水线中的一步,其公开数据的主体是突触与神经毡,不是核实例标注。要核分割的真值,MICrONS 给不了 NucMM 这样的密度。
§6.3 与脑图谱条目的边界
allen-brain-atlas 与 ibl-brain-wide-map 都是小鼠脑,但一个是二维切片图谱加基因表达,一个是电生理记录加行为。它们回答的是「哪个区域、表达什么、放电如何」,NucMM 回答的是「这个体积里有多少个核、每一个在哪里」。前者是坐标框架,后者是计数真值。
§6.4 检索路径建议
如果是从「三维」这个维度找,检索词应当是实例分割加体数据,而不是细胞核。如果是从「脑」这个维度找,应当同时检索连接组与核计数。如果是从「跨模态」找,NucMM 是少数几个能同时提供电镜与 X 射线两套物理的公开集,这一点在检索时不容易命中,需要直接按作者或按 MICrONS、MitoEM 这类同系列挑战赛去找。
§6.5 一句话结论
它与库内任何一条核分割数据都不构成替代关系:那几条解决「在彩色切片上认核」,这一条解决「在三维灰体里数核并分开粘连的核」。两条路线的方法几乎不通用,评测口径也不通用。
§7 质量评估与局限性
§7.0 阅读本节前需要知道的一件事
评价这份数据时,最容易犯的框架错误有两个,都要先拆掉。
第一个错误是用「数据集规模」的框架评价它。按常规标准,两个体数据、两个个体、两个物种,样本量小得离谱,任何机器学习审稿人都会皱眉。但这个框架在这里不适用:它的单位不是「样本」,而是「被数清的对象」。一个体数据里有十七万个标注实例,这十七万个实例构成的评测压力,远大于一万张各含十个核的二维切片。用样本数衡量它,等于用页数衡量字典。
第二个错误是用「挑战赛」的框架评价它。名字里有 Challenge,挂在 Grand Challenge 平台上,很容易让人以为有一个可以刷的榜。实际上官方站点没有可访问的提交与排行阶段,评测页返回 404,分数只存在于论文表格里。它更像一份「带基准的公开数据」,而不是一场正在进行的比赛。把它当榜单来找,会浪费大量时间在找不到的提交按钮上。
§7.1 已知偏倚
| 偏倚 | 来源 | 后果 |
|---|---|---|
| 单个体偏倚 | 每个物种只有一个标本 | 无法估计个体间方差 |
| 单实验室偏倚 | 全部样本来自哈佛同一批实验室 | 制片与成像风格单一 |
| 层向漂移 | 串行切片的厚度与染色随深度变化 | 模型可能学到「第几层」的捷径 |
| 区域偏倚 | 小鼠体只覆盖 V1 的 layer II/III | 不能代表全脑或其它皮层 |
| 年龄偏倚 | 斑马鱼为幼体、小鼠为成年 | 发育阶段的形态差异被固定 |
| 标注者偏倚 | 同一小组用同一工具校对 | 无法测量标注者间一致性 |
§7.2 标注质量
标注质量整体很高,高在「有神经科学家逐体素校对」这一层,而不是高在「有正式的一致性报告」。官方没有发布标注者间一致性、没有发布二次复核的抽样比例、也没有发布错误率的估计。
可核查的质量信号只有三条:一是校对工具是专业级的 VAST;二是校对者是有领域背景的神经科学家而非众包标注员;三是官方公开承认不完美并接受错误上报。这三条说明标签的偏差是「有意识的近似」,而不是「随意的粗糙」。
对使用者的实际影响是:可以放心把它当训练标签,不能放心把它当绝对真值去评估别人的模型。任何「我们的方法比人工标注更准」的论证,在这里都缺少可用的参照。
§7.3 泛化风险
三个层次的风险,按严重程度排序:
第一层是跨模态。在斑马鱼体上训练的模型直接用到小鼠体,分数会腰斩。这不是模型的问题,是成像物理变了:对比机制、噪声谱、点扩散函数全都不同。
第二层是跨物种。即使解决了模态问题,鱼的幼体脑与鼠的成年皮层在核的尺寸、密度、排列方式上都不同。论文的密度分析显示两者的近邻距离分布几乎不重叠。
第三层是跨尺度。这里的「尺度」指体素尺寸。NucMM 的体素是半微米级,如果你要处理的是纳米级原始电镜或四分之一微米的光片,都需要重采样,而重采样会改变核与核之间的缝隙宽度——恰恰是这个任务最关键的量。
§7.4 DAIMS 评分表
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 宽格式组织 | ✅ | 每个体一个目录,影像与掩膜同名对应 |
| 2 | 唯一标识 | ✅ | 体积名 + 全局唯一实例编号,无重号 |
| 3 | 特殊字符处理 | ✅ | 目录名与文件名均为纯 ASCII |
| 4 | 重复行检查 | ✅ | 无重复体积,无重复实例编号 |
| 5 | 缺失编码 | ⚠️ | 背景固定为 0,但无「未标注区」的独立编码 |
| 6 | 标签标识规范 | ✅ | 单类别,实例编号制,语义清晰 |
| 7 | 罕见类分组 | ⚠️ | 无类别分层,无法区分神经元核与胶质核 |
| 8 | 偏倚评估 | ⚠️ | 论文有密度与对比度分析,但无个体/批次偏倚量化 |
| 9 | 数据字典 | ❌ | 无字段字典文档,目录约定靠论文与仓库推断 |
| 10 | 信息性缺失解释 | ⚠️ | 未说明体外区域与破损区如何标记 |
| 11 | 设备记录 | ⚠️ | 给了模态与体素尺寸,无扫描参数、染色方案、切片厚度分布 |
| 12 | 共线性检查 | ❌ | 不适用(无表格特征),但亦无任何形态统计表 |
| 13 | 编码映射 | ✅ | 实例编号即身份,无需额外映射表 |
| 14 | 时间戳处理 | ✅ | 无时间维度,无时间戳风险 |
| 15 | 划分建议 | ✅ | 官方给定 5/5/90,边界明确 |
| 16 | 泄漏讨论 | ✅ | 训练与测试区域物理分离,无切片级泄漏 |
| 17 | 标签分布 | ⚠️ | 无逐实例体积/位置分布表,需自行统计 |
| 18 | 测量偏倚 | ⚠️ | 无标注者间一致性、无二次复核比例 |
| 19 | 外部验证建议 | ❌ | 官方未给出外部验证协议或跨集评测方案 |
| 20 | 版本记录 | ❌ | 无版本号、无变更日志,标签可被邮件修订 |
| 21 | 预处理脚本 | ⚠️ | 仓库有训练配置,无降采样与对齐的复现脚本 |
| 22 | 合规要求 | ❌ | 无 SPDX 许可,获取条款只存在于表单页 |
| 23 | 多模态对齐 | ✅ | 影像与掩膜体素级严格对齐,无需配准 |
| 24 | 去标识化 | ✅ | 无人类受试者,无身份信息残留 |
DAIMS 评分:13.5 / 24。强项在结构(标识、对齐、划分),弱项在文档与合规(字典、版本、许可、外部验证)。
评分解读:这是一份「工程上干净、文档上稀薄」的数据。它的目录结构规整到可以直接写 dataloader,却没有任何一份文档告诉你每个字段是什么意思、标签是怎么定的、版本改过几次。13.5 分里有一半的分是靠「结构简单所以不会错」拿到的,不是因为文档写得好。
对你意味着什么:三件事。第一,把目录约定写进你自己的代码注释,因为官方不会给你。第二,下载后立刻记录日期并做一份本地校验和,因为标签可能被邮件修订。第三,任何要写进论文的标注质量结论,都得自己抽样复核,官方没有可引用的可靠性数据。
§7.5 外部使用与验证现状
发表后的主要用途集中在两条线。一条是三维实例分割的方法研究,把 NucMM 当作密集场景的标准测试床,尤其是验证「分离粘连」这类解码策略。另一条是连接组学流水线,把核分割当作神经元重建的前置步骤,用整脑级的真值来校准计数误差。
反过来,把它当外部验证集的公开研究很少。原因不难理解:只有两个体,两个物种,没有临床标签,作为验证集的代表性不足;而且九成区域要申请,复现成本高。
| 使用方式 | 证据强度 | 适用性 |
|---|---|---|
| 方法基准(论文内对照) | 强 | 四个基线齐全,口径明确 |
| 跨模态迁移研究 | 中 | 两套物理天然成对,但只有一对 |
| 连接组学前置计数 | 中 | 整脑真值稀缺,但样本单一 |
| 临床或病理外推 | 弱 | 物种与模态双重不匹配 |
| 标注质量研究 | 弱 | 无一致性数据 |
§7.6 缺失清单与影响排序
| 缺失项 | 影响 | 严重度 |
|---|---|---|
| 无许可声明 | 商用与再分发存在法律不确定性 | 高 |
| 无版本号与变更日志 | 结果不可严格复现 | 高 |
| 九成区域需申请 | 无法独立复现论文分数 | 高 |
| 无字段字典 | 上手成本高,易误读数组轴序 | 中 |
| 无标注一致性报告 | 无法量化标签可靠性 | 中 |
| 无扫描参数与染色方案 | 无法做物理层面的域分析 | 中 |
| 无逐实例统计表 | 每次分析都要自己扫体数据 | 低 |
| 无外部验证协议 | 跨集比较无共同口径 | 低 |
§7.7 伦理与去标识
这份数据没有人类受试者,伦理压力主要落在动物实验一侧。两个标本都来自实验室动物,制备需遵循机构动物护理与使用规范,论文与官网未展开描述具体的伦理审批编号,这对使用者来说是一个信息缺口——如果你要在论文里声明数据的伦理合规性,只能引用原论文,不能引用数据页。
去标识化方面没有风险:没有面部、没有姓名、没有病历号,唯一的溯源信息是实验室归属,而这是公开的。
§8 版本、生态与为何能持续
§8.1 版本时间轴
| 时间 | 事件 |
|---|---|
| 2021-07-13 | 论文预印本首次上传 arXiv |
| 2021-09-27 | MICCAI 2021 主会收录,页码 164–194 |
| 2021-12-07 | 预印本第二版,修正笔误与引用 |
| 2021-12 起 | Grand Challenge 数据页上线,公开目录与申请表开放 |
| 之后 | 未见版本更新、未见新增体积、未见排行榜阶段 |
五年过去,数据没有再扩张。这在连接组学领域并不罕见:一个整脑级体积的标注成本以人年计,扩张不是加几张图那么简单。但停滞也意味着它停留在 2021 年的形态——没有版本号,没有变更日志,没有随着社区反馈修订的正式流程。
§8.2 生态位
它站在三个圈的交汇处:连接组学(要数清每一个核)、三维医学图像分割(要处理大体数据与实例分离)、以及显微图像分析(要处理低对比度与噪声)。三个圈各自都有更强的数据集,但都缺「整脑级核实例真值」这一项,NucMM 填的正是这个空位。
同一团队还组织了 MitoEM(线粒体实例分割)与 AxonEM(轴突实例分割),三者构成一条「连接组学分割挑战赛」的系列。这条系列的价值在于共享同一套评测哲学:大体数据、实例级指标、极小的训练区。
§8.3 为何能持续
三个支撑点。
第一是刚性需求。连接组学的流水线必须先做核分割才能做神经元重建,而核分割的误差会沿着流水线放大。有一个整脑级的公开真值,等于给整条流水线提供了一个校准锚点,这个需求不会消失。
第二是成本已被沉没。标注已经做完,维护成本主要是云盘托管与偶尔的邮件修订,接近于零。这与「需要持续采集新数据」的数据集不同,它不需要持续投入就能一直可用。
第三是作者团队的长期在场。哈佛的 Pfister 组与 Lichtman 组、波士顿学院的 Wei 组都在持续维护 PyTorch Connectomics,配置里保留着 nuc_nucmm-z 这一项。工具链还在,数据就不会失传。
反过来说,它的脆弱之处也很清楚:没有版本管理、没有许可声明、没有活跃的榜单。一旦云盘链接失效或表单停止审批,这份数据就事实上不可得了,而目前没有任何镜像或正式归档(如 Zenodo、Dataverse)作为备份。
§8.4 关键文献
| 文献 | 作用 |
|---|---|
| Lin 等,MICCAI 2021,页码 164–194 | 数据集的原始论文,含全部规模与基线数字 |
| arXiv:2107.05840 | 预印本,第二版修正了笔误 |
| PyTorch Connectomics(arXiv:2112.05754) | 配套工具箱论文,含 NucMM-Z 的训练配置 |
| MitoEM 挑战赛 | 同系列,线粒体实例分割 |
| AxonEM 挑战赛 | 同系列,轴突实例分割 |
§8.5 为什么它没有变成一个真正的比赛
一个合理的推测是评测成本。三维 AP 要在整块体积上做实例匹配,十七万个实例两两比对,单次评测的计算与内存开销远高于二维排行榜;再加上九成区域不公开,参赛者必须先申请数据、本地跑分、再提交结果,整个闭环的重心在本地而不在服务器。
另一个原因可能是数据规模本身:只有两个体,榜单一上榜就把两个体的分数都定死了,没有持续刷榜的空间。论文表格里的四个基线,实际上已经承担了排行榜的功能。
§9 使用指引
§9.1 三种角色的路径
| 角色 | 建议路径 | 注意 |
|---|---|---|
| 做三维分割算法的 | 先用公开的 5% 训练区跑通,再申请完整标注做测试 | 验证集太小,别用它选超参到最后一位小数 |
| 做神经科学定量的 | 直接读实例掩膜做计数与形态统计 | 先剔除贴边实例,否则体积分布右偏 |
| 做跨模态迁移的 | 斑马鱼体当源域、小鼠体当目标域,或反之 | 两个方向都难,先做对比度归一化 |
| 做工程部署的 | 借它测分块推理与拼接 | 分块边界必须做重叠,否则实例被切断 |
§9.2 最小可运行流程
#-- 1. 取公开部分:原始影像 + 训练/验证区标注
#-- 官方目录为只读共享,建议先同步到本地再解压
rclone copy gdrive:nucmm ./nucmm_raw --progress
#-- 2. 检查体数据几何,确认轴序与体素尺寸
python3 - <<'PY'
import tifffile, json, pathlib
p = pathlib.Path("nucmm_raw/nucmm_z")
img = tifffile.imread(p / "image.tif")
ins = tifffile.imread(p / "instance.tif")
print("image", img.shape, img.dtype)
print("instance", ins.shape, ins.dtype, "instances:", len(set(ins.ravel())) - 1)
print(json.loads((p / "meta.json").read_text()))
PY
这段脚本的价值在于第一步就把最容易错的东西暴露出来:形状是 (z, y, x) 还是 (y, x, z)、实例数到底是多少、体素尺寸的轴序有没有和形状对上。跑完这三行再写模型,能省掉后面大量的静默错误。
§9.3 分块推理的注意点
两个体都大到必须分块。分块有两个必须做对的细节:重叠要足够大,至少覆盖一个核的直径;拼接时只保留每块的中心区域,边缘丢弃。否则跨块的核会被切成两半,实例数虚高,AP 直接崩。
斑马鱼体的核更小更密,重叠可以小一些,但块的尺寸也要相应缩小,否则一块里塞进几千个核,解码时的内存会爆。小鼠体的核更大更稀疏,块要大,否则一块里可能一个核都没有。
§9.4 在 AI 流程中的位置
它位于「成像 → 核分割 → 下游分析」这条链的第二个环节,是训练与评测核分割模型的那一环。往下游走,输出会被用来做神经元重建、细胞计数、形态统计;往上游走,它约束了成像的分辨率与对比度要求。
在自监督或基础模型的流程里,它的价值是「小而硬」的评测集:样本极少但每个样本极难,适合用来检验一个在大量无标注体数据上预训练的模型是否真的学到了三维形状,而不是学到了灰度统计。
§9.5 三个容易忽略的工程细节
第一,掩膜是 32 位整数,读进内存时体积是影像的四倍。斑马鱼体的实例掩膜在未压缩状态下接近十亿体素乘四字节,直接全量载入会耗尽普通工作站的内存,必须用内存映射或分块读取。
第二,实例编号不连续。删掉某些实例后编号会出现空洞,任何假设「编号从 1 到 N 连续」的循环都会出错,必须用唯一值枚举。
第三,脑区掩膜要在评测前应用,而不是在训练前。训练时如果把掩膜外的区域全部置零,模型会学到「大片零就是背景」这个假规律,而在测试区遇到真实背景时失效。
§10 AI 使用声明卡
| 项目 | 内容 |
|---|---|
| 数据性质 | 公开科研数据,动物组织,非临床数据 |
| 允许用途 | 三维实例分割研究、方法基准、连接组学工具开发、教学 |
| 不建议用途 | 临床诊断、人类病理外推、细胞类型判定、任何个体层面的生物学结论 |
| 伦理约束 | 动物实验数据,使用需遵守所在机构的动物数据使用规范 |
| 引用要求 | 引用 Lin 等 MICCAI 2021 论文,DOI 10.1007/978-3-030-87193-2_16 |
| 许可状态 | 官方未声明 SPDX 许可,商用与再分发需先与组织方确认 |
| 版本状态 | 无正式版本号,标签可经邮件修订,须记录下载日期 |
| 维护状态 | 数据页在线,无排行榜,无定期更新 |
使用这份数据训练出的模型,不构成任何医疗用途的合规基础。它的对象是鱼和鼠的脑组织,成像方式是电子束与 X 射线,与人体临床场景之间隔着物种、模态、尺度三重距离。
常见误读
| 常见说法 | 实际情况 | 证据 |
|---|---|---|
| 「NucMM 是 micro 与 macro 两套数据」 | Z 与 M 指斑马鱼与小鼠,不是尺度;两个体同为亚立方毫米量级 | 论文标题与官网数据段均以物种命名两个体积 |
| 「电镜体是低分辨、微 CT 体是高分辨」 | 相反:电镜原始 30 纳米层厚、4 纳米面内,是被主动降采样到半微米 | 论文方法节给出原始与发布两套分辨率 |
| 「这是一个可以刷榜的挑战赛」 | 官方站点无可访问的提交阶段,评测页 404,分数只在论文表格里 | 访问 /evaluation/ 返回 Not Found |
| 「标注是点,用来做计数」 | 是逐体素三维实例掩膜,可做形态测量 | 掩膜为整数体数据,每个核一个编号 |
| 「公开下载就是全部数据」 | 公开的只有每体 10%(5% 训练 + 5% 验证),九成测试区需申请 | 官网写明训练验证标注可下载,完整标注需表单 |
| 「十七万是一个可以当独立样本的数」 | 十七万是同一体积内的实例,高度相关,不是独立样本 | 全部实例共享同一标本、同一次成像 |
| 「用 Dice 就能评价」 | 官方用 COCO 口径 AP,Dice 无法反映实例数是否正确 | 论文评测节报告 AP-50、AP-75 与均值 |
| 「小鼠体与斑马鱼体可以直接混训」 | 两者对比度差近三倍(KL 3.43 对 1.33),混训会互相拖累 | 论文的强度分布分析给出 KL 散度 |
| 「标注是完美的真值」 | 官方明确承认不完美,并公开接收错误坐标上报 | 官网数据段末尾的勘误说明 |
| 「有 SPDX 许可证可以随便商用」 | 官方页无许可声明;MIT 只覆盖代码仓库,不覆盖数据 | 数据页无许可段,代码仓库标注 MIT |
| 「它是人体脑组织的核分割基准」 | 两个体分别是幼体斑马鱼与成年小鼠,无人类样本 | 论文摘要与官网均写明物种 |
| 「数据可以拿来训练细胞分类模型」 | 只有一个类别「核」,无细胞类型标签 | 标注体系为单类别实例编号 |
术语表
| 术语 | 含义 |
|---|---|
| 实例分割 | 把每个独立对象分开并给出独立编号,而非只标出「这里是前景」 |
| 体数据 | 三维像素阵列,像素在三维中称体素 |
| 体素 | 三维空间的最小采样单元,本文中边长约半微米 |
| ssEM | 串行切片电子显微镜,逐张拍摄超薄切片后对齐成体 |
| µCT | 微型 CT,用 X 射线对小块组织做三维成像,无需物理切片 |
| 各向同性 | 三个方向的体素尺寸相同,小鼠体为 720 纳米立方 |
| 分水岭变换 | 一种基于地形隐喻的区域分割算法,常用于切开粘连对象 |
| 星凸距离 | StarDist 使用的形状表示,假设对象对某个中心点星形凸 |
| 有符号距离图 | 每个体素到最近边界的距离,符号表示在内还是在外 |
| AP | 平均精度,按 IoU 阈值匹配实例后计算精确率—召回率曲线下面积 |
| AP-50 | IoU 阈值取 0.5 时的 AP |
| AP-75 | IoU 阈值取 0.75 时的 AP |
| KL 散度 | 衡量两个概率分布差异的量,此处用于量化前景与背景的可分性 |
| VAST | 连接组学常用的体积标注与分割校对工具 |
| 脑区有效掩膜 | 标出有效脑区的二值掩膜,评测时限定在此范围内 |
| 粘连 | 相邻对象的体素相连,导致分割算法把它们当成一个 |
| 分块推理 | 把大体数据切成小块分别推理再拼接 |
| 域偏移 | 训练与测试数据在成像条件上不一致导致的性能下降 |
| 连接组学 | 以重建神经连接为目标的研究方向,核分割是其前置步骤 |
| 降采样 | 降低空间采样率,本文中电镜体从 4 纳米降到 512 纳米 |
FAQ
Q1:NucMM 到底有几个体数据?
两个。一个是幼体斑马鱼脑的电镜体,一个是成年小鼠初级视皮层的微 CT 体。没有第三个,也没有隐藏的验证批次。
Q2:为什么只有两个还能叫数据集?
因为它的计量单位不是「样本」而是「被数清的对象」。一个体里十七万个实例构成的评测压力,远大于一万张各含十个核的切片。
Q3:百分之五的训练区够用吗?
作者的设计就是让它不够用。这个比例模拟的是神经科学家面对新体积时的真实标注预算。官方给出的训练素材是二十七块 64³ 的小块(斑马鱼)或四块 192³ 的小块(小鼠)。
Q4:我能自己复现论文的 AP 吗?
可以,但要先拿到完整标注。公开下载的只有训练与验证区,测试区的九成必须填表申请,否则无法在官方口径上算分。
Q5:为什么两个体的分数差这么多?
因为失败模式相反。斑马鱼体难在核贴核,模型容易合并;小鼠体难在对比度低,模型容易漏检。前者靠解码策略能救,后者受限于成像物理。
Q6:有细胞类型标签吗?
没有。只有一个类别:细胞核。神经元核与胶质核在标注层面未被区分,想按类型分析只能自己加分类步骤。
Q7:能用于人类的病理图像吗?
不建议。物种、模态、尺度三重不匹配。真要做病理核分割,库内的 pan-cancer-nuclei-seg 与 nucls 更合适。
Q8:许可证是什么?
官方页没有 SPDX 声明,数据获取受表单申请条款约束。配套代码在 PyTorch Connectomics 仓库,是 MIT,但那只覆盖代码,不覆盖数据。
Q9:现在还能提交成绩吗?
官方站点没有可访问的提交与排行阶段。要对比成绩,只能自己在申请到的测试区上复现,并与论文表格对照。
Q10:标注可靠吗?
可靠但不完美。由神经科学家用 VAST 逐体素校对,官方公开承认存在错误并接受坐标上报。没有发布标注者间一致性数据,所以可靠性无法用数字引用。
附录 A 双尺度结构对照
「双尺度」在这份数据里指的是密度与对比度的反差,不是分辨率的高低。下表把两个体放在同一张表里对照。
| 维度 | NucMM-Z | NucMM-M | 差异性质 |
|---|---|---|---|
| 物种 | 幼体斑马鱼 | 成年小鼠 | 发育阶段不同 |
| 器官 | 近乎整条脑 | 初级视皮层 layer II/III | 全脑对局部 |
| 成像 | 串行切片电镜 | X 射线微型 CT | 物理机制不同 |
| 原始分辨率 | 30 纳米层厚 / 4 纳米面内 | 720 纳米各向同性 | 电镜高两个数量级 |
| 发布分辨率 | 480×512×512 纳米 | 720 纳米各向同性 | 被人为拉近 |
| 网格 | 397×1450×2000 | 700×996×968 | 同量级 |
| 物理体积 | 0.14 立方毫米 | 0.25 立方毫米 | 不到一倍 |
| 实例数 | 约十七万 | 约七千 | 二十余倍 |
| 核密度 | 极高 | 低 | 约四十三倍(推算) |
| 前景背景 KL | 3.43 | 1.33 | 对比度差近三倍 |
| 主要失败模式 | 合并 | 漏检 | 方向相反 |
| 最佳基线 AP 均值 | 0.894 | 0.444 | 差一倍 |
附录 B 标注格式与文件约定
| 项目 | 约定 |
|---|---|
| 影像格式 | TIFF 堆栈或 HDF5,单通道 8 位灰度 |
| 掩膜格式 | 与影像同尺寸的整数体数据,32 位无符号 |
| 背景值 | 0 |
| 实例编号 | 从 1 起的全局唯一整数,可不连续 |
| 有效区掩膜 | 二值,1 为有效脑区,0 为体外 |
| 轴序 | 数组首维为 z,与体素尺寸顺序一致 |
| 划分标记 | 通过区域坐标区分训练、验证、测试,无独立标记文件 |
| 元信息 | 体素尺寸与模态,随目录提供 |
#-- 读取与自检:先确认几何,再确认实例编号的连续性
import tifffile
import numpy as np
img = tifffile.imread("nucmm_z/image.tif")
ins = tifffile.imread("nucmm_z/instance.tif")
mask = tifffile.imread("nucmm_z/brainmask.tif")
assert img.shape == ins.shape == mask.shape, "三份数据的尺寸必须一致"
ids = np.unique(ins)
print("体素总数", ins.size, "实例数", ids.size - 1)
print("编号是否连续", bool((ids[1:] - ids[:-1] == 1).all()))
#-- 贴边实例统计:任一维的极小或极大切片上出现过的编号
edge = set(np.unique(ins[0])) | set(np.unique(ins[-1]))
edge |= set(np.unique(ins[:, 0])) | set(np.unique(ins[:, -1]))
edge.discard(0)
print("贴边实例占比", round(len(edge) / (ids.size - 1), 4))
附录 C 缩写对照
| 缩写 | 全称 | 中文 |
|---|---|---|
| NucMM | Neuronal Nuclei at Sub-Cubic Millimeter Scale | 亚立方毫米神经元核 |
| ssEM | serial-section Electron Microscopy | 串行切片电镜 |
| µCT | micro Computed Tomography | 微型 CT |
| AP | Average Precision | 平均精度 |
| IoU | Intersection over Union | 交并比 |
| KL | Kullback–Leibler divergence | KL 散度 |
| VAST | Volume Annotation and Segmentation Tool | 体积标注与分割工具 |
| V1 | Primary Visual Cortex | 初级视皮层 |
| MICCAI | Medical Image Computing and Computer Assisted Intervention | 医学图像计算与计算机辅助干预 |
| DAIMS | Data and AI Model Stewardship | 数据与模型治理检查 |
附录 D 常见误读速查 FAQ
| 你的疑问 | 一句话答案 |
|---|---|
| Z 和 M 是 micro 和 macro 吗 | 不是,是斑马鱼与小鼠 |
| 有几个体数据 | 两个,各一个物种 |
| 总共多少核 | 约十七万七千 |
| 标注是点还是掩膜 | 三维实例掩膜 |
| 公开多少 | 每体 10%,测试区九成需申请 |
| 用什么指标 | COCO 口径的三维 AP |
| 有排行榜吗 | 没有可访问的提交阶段 |
| 能商用吗 | 无 SPDX 许可,需先与组织方确认 |
| 能用于病理吗 | 不能,物理与物种都不匹配 |
| 标注完美吗 | 官方承认不完美,接受坐标勘误 |
附录 E 许可与引用
| 对象 | 状态 |
|---|---|
| 数据本体 | 官方页未声明 SPDX 许可;获取受公开目录与申请表单两条路径约束 |
| 配套代码 | PyTorch Connectomics,MIT |
| 引用方式 | 引用 MICCAI 2021 论文,或使用官网给出的 BibTeX |
| 二次分发 | 未获明确授权,建议直接指向官方入口而非镜像 |
| 商用 | 需先与组织方确认,代码许可不覆盖数据 |
@inproceedings{lin2021nucmm,
title = {NucMM Dataset: 3D Neuronal Nuclei Instance Segmentation
at Sub-Cubic Millimeter Scale},
author = {Lin, Zudi and Wei, Donglai and Petkova, Mariela D and Wu, Yuelong
and Ahmed, Zergham and Zou, Silin and Wendt, Nils
and Boulanger-Weill, Jonathan and Wang, Xueying and Dhanyasi, Nagaraju
and Arganda-Carreras, Ignacio and Engert, Florian
and Lichtman, Jeff and Pfister, Hanspeter},
booktitle = {Medical Image Computing and Computer Assisted Intervention},
pages = {164--174},
year = {2021},
publisher = {Springer},
doi = {10.1007/978-3-030-87193-2_16}
}
编辑说明
核验时间 2026-10-29。核验方式:读取官方 Grand Challenge 页面、MICCAI 2021 论文(arXiv 第二版)全文、以及 PyTorch Connectomics 仓库首页。规模与结构数字以论文表 1 为准,官网首页摘要中的 0.1 立方毫米为整数化表述,论文正文与体素网格乘积均为 0.14 立方毫米。
未覆盖内容:标注者间一致性、错误率估计、扫描与染色参数、动物伦理审批编号、许可条款原文。以上各项在公开材料中均未给出,本文不作推断。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- isles — 共享标签:神经科学 / 脑影像 / 医学图像分割 / 挑战赛数据集
- wmh-challenge — 共享标签:神经科学 / 脑影像 / 医学图像分割 / 挑战赛数据集
- h01-cortex — 共享标签:神经科学 / 脑影像 / 医学图像分割
- xpress — 共享标签:神经科学 / 医学图像分割 / 挑战赛数据集
- crossmoda2022 — 共享标签:神经科学 / 医学图像分割 / 挑战赛数据集
- aims-tbi — 共享标签:脑影像 / 医学图像分割 / 挑战赛数据集
- mitoem — 共享标签:脑影像 / 医学图像分割 / 挑战赛数据集
- adam-aneurysm — 共享标签:神经科学 / 脑影像 / 医学图像分割
- cas-2023 — 共享标签:脑影像 / 医学图像分割 / 挑战赛数据集
- nfbs — 共享标签:神经科学 / 脑影像 / 医学图像分割
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

