1. 课程导入与3D医学影像工程全景
3D医学影像工程的核心,是把体数据从“能看见”推进到“能判断、能定位、能分类、能复核”。在二维阅片中,医生逐层浏览切片并在脑中重建空间关系;而在3D医学影像工程中,我们让算法直接面对体素网格,输出病灶的立体位置、范围、类别以及置信度。理解这一转变,是进入本课程的第一把钥匙。
检测与分类:任务边界先分清
在医学影像AI中,检测回答“有没有、在哪里、有多大”,分类回答“是什么、属于哪一类、恶性概率多高”。两者常被混用,但工程实现差异很大。
- 3D检测:输入为体数据(如CT的DICOM序列),输出为三维边界框或病灶中心点坐标,典型指标是召回率、FROC、每例假阳性数。例如肺结节检测中,输出格式常为
(x, y, z, w, h, d)加置信度。 - 3D分类:输入为整个体积或检测裁剪出的ROI立方块,输出类别标签或概率,典型指标是AUC、准确率、敏感度/特异度。例如将肺结节分为良性、恶性、炎性三类。
- 检测+分类级联:先检测候选病灶,再对每个候选做分类,是临床中最常见的工程组合。
边界不清会直接导致工程错误:把分类模型当检测用,模型只会说“这张CT有结节”,却给不出位置;把检测模型当分类用,则无法回答“这个结节是良性还是恶性”。因此,本课程后续每个任务都会先明确输出空间与评价指标。
典型模态:CT、MRI、PET的工程差异
三种模态在3D工程中的处理方式不同,不能套用同一套预处理和网络配置。
| 模态 | 物理含义 | 典型体素间距 | 工程要点 |
|---|---|---|---|
| CT | X射线衰减系数(HU) | 0.6–1.0 mm 层内,1–5 mm 层厚 | 需做HU窗宽窗位归一化,肺窗/纵隔窗影响检测灵敏度 |
| MRI | 质子密度、T1/T2弛豫 | 0.5–1.0 mm 各向同性较常见 | 多序列配准、强度不均匀校正,无固定HU标准 |
| PET | 放射性示踪剂摄取(SUV) | 3–5 mm,分辨率低 | 常与CT融合,关注SUVmax阈值与代谢体积 |
以肺结节为例:CT上结节与血管的HU差异明显,检测模型可依赖灰度对比;MRI上同样大小的病灶可能因序列不同而信号反转,必须做多通道输入;PET上小结节受部分容积效应影响,SUV会被低估,检测阈值需相应调整。这些差异决定了预处理、增强策略和评价方式的选择。
临床价值:从辅助阅片到量化随访
3D医学影像工程的临床价值主要体现在三方面:效率——自动检出大量切片中的可疑病灶,减少漏诊;量化——给出体积、直径、SUVmax等可追踪指标,支持疗效评估;一致性——同一患者多次随访用同一算法测量,减少人工测量波动。例如肺结节随访中,体积倍增时间(VDT)是判断良恶性的重要依据,算法可稳定计算两次CT的结节体积变化。
工程流程:从DICOM到临床报告
一个完整的3D医学影像工程链路通常包含以下环节,每个环节都有明确的输入输出和常见陷阱。
- 数据接入:读取DICOM序列,解析像素数据、层厚、像素间距、方向矩阵。常见问题:层厚不均、缺失切片、方向标记错误。
- 预处理:重采样到各向同性(如1×1×1 mm³)、强度归一化、裁剪或填充到固定尺寸(如128×128×128)。CT常用肺窗[-1000, 400] HU截断后归一化到[0,1]。
- 标注与划分:由放射科医生勾画病灶边界或标注类别,按患者划分训练/验证/测试集,避免同一患者数据泄漏。
- 模型构建:检测常用3D U-Net、V-Net、3D RPN;分类常用3D ResNet、DenseNet或ViT 3D变体。
- 训练与调优:损失函数检测用Focal Loss + 回归损失,分类用交叉熵;数据增强包括随机旋转、缩放、弹性形变、MixUp。
- 评估与部署:在独立测试集上计算指标,导出ONNX/TensorRT,集成到PACS或阅片工作站。
以肺结节检测为例,一个可运行的训练配置示例:输入128×128×128,体素间距1 mm,batch size 4,初始学习率1e-4,Adam优化器,训练200 epoch,每20 epoch衰减0.5。这些参数属于教学示例,实际需根据显存和数据量调整。
# 示例:3D检测数据加载核心参数(教学示例)
patch_size = (128, 128, 128)
spacing = (1.0, 1.0, 1.0)
hu_window = (-1000, 400)
batch_size = 4
lr = 1e-4
epochs = 200
学习路线:本课程如何展开
课程按“数据—检测—分类—评估—部署”推进。先掌握DICOM解析与预处理,再实现3D检测网络并理解FROC评价,随后进入分类与多任务学习,最后完成模型压缩与临床集成。每一章都会给出可复现的代码片段、参数配置和结果判读方法。