How_to_registrate

如何具体实现registration 0. 心得 一开始其实根本没理解配准是具体需要做什么,只是一味的vibe coding,什么重采样,刚性配准什么的,最后生成出来的图像全是噪声,第二周感觉把这些放一起就没问题了,结果惊奇的发现人体直接错位了,锁骨来到了人体的中间地方,经过重新认真严谨思考,才意识到配准的真正含义,接下来是对具体配准过程的学习笔记。 完整代码见 GitHub:registration-scripts 1. 任务目标 当前任务是多期相 CT 图像配准。 对于同一个病例,可能存在多个期相或序列,例如: 平扫期 动脉期 门静脉期 延迟期 std5mm lung5mm 这些序列的原始 DICOM 可能存在: 切片数量不同 扫描起始位置不同 spacing 不同 origin 不同 扫描范围不同 呼吸状态导致器官位置轻微变化 因此,不能直接认为不同期相中相同编号的 DICOM 切片对应同一个身体位置。 当前目标是: 以一个期相作为 fixed image,将其他期相作为 moving image,通过配准和重采样,使不同期相在统一空间中具有一一对应的切片关系。 最终输出为 nnU-Net 多通道输入格式。 2. 大体流程 当前采用的整体流程为: 读取同一病例下的 DICOM 文件; 根据 SeriesInstanceUID 区分不同序列; 排除 localizer、scout、切片数过少、不同部位的序列; 选择一个序列作为 fixed image; 其他序列作为 moving image; 对 moving image 进行配准; 将 moving image 重采样到 fixed image 的空间; 根据共同有效扫描范围进行统一裁剪; 检查同编号切片是否对应同一部位; 保存为 nnU-Net 多通道 NIfTI 格式。 简化表示为: fixed image ↓ 提供统一空间标准 moving image ↓ 配准到 fixed image ↓ 重采样到 fixed image 空间

阅读全文 »