CT图像的预处理操作一般包括以下几步:
step1:spacing interpolation
step2:window transform
step3:get mask effective range
step:generate subimage
各步骤意义:
step1:spacing interpolation
用插值(interpolation)一词可能不太准确,较准确的叫法是重采样(resampling),另外取决于不同的工具包,还有zoom,resize两个称呼。
对于不同的数据类型重采样的方法和目的都不相同。例如在遥感中,重采样是从高分辨率遥感影像中提取出低分辨率影像的过程,在医疗图像中,重采样是指将医疗图像中大小不同的体素归一化到相同的大小。体素是体积元素(Volume Pixel)的简称,一张3D医疗图像可以看成是由若干个体素构成的,体素是一张3D医疗图像在空间上的最小单元。
因为CT图像中,不同扫描面的像素尺寸、粗细粒度是不同的,这不利于进行CNN任务,所以需要使用同构采样。
step2: window transform
窗宽窗位的变换,主要是为了视觉上的清晰,具体可参见CT图像的预处理。有人会用cut off,即HU值截断来代替此步,我一直用的window transform,因为无需分析整个数据集cut off所必须的截断值。在此步还可顺便做归一化操作,这一步也是必不可少的。归一化操作和零值中心化的操作主要是为了后续训练网络,零值中心化是网络收敛的关键。具体的归一化操作,有很多的变种,可自行查资料。
step3:get mask effective range
获取Slices的有效范围,即去除整个序列中前后几张没有任何器官的Slices。
step4:generate subimage
获取小的patch,即根据手头的GPU可以接受的大小,用滑窗法从原始图像中获得小patch。
本文主要讲述重采样操作
重采样可分为两种方案,具体操作步骤并无太大差异:
具体的工具包及操作步骤见:CT图像预处理之重采样
参考: