
在医学影像处理流程中,原始数据往往具有体积大、范围广的特点,例如胸腹联合扫描、全身PET/CT或高分辨率MRI。这些数据虽然信息完整,但在实际分析中,往往只关注特定解剖区域(如肝脏、胰腺或肾脏)。
如果直接对完整体数据进行后续处理,通常会带来一系列问题:
- 计算效率低:无论是传统算法还是深度学习模型(如 TotalSegmentator、nnU-Net),推理时间都会显著增加
- 显存/内存压力大:容易导致 GPU OOM 或程序崩溃
- 数据冗余严重:大量无关区域(空气、扫描床、远离目标器官的结构)并不会提供有效信息
- 影响算法效果:无关区域可能引入噪声,干扰分割或配准结果
- 数据不规范:不同病例空间范围差异大,不利于批量处理或模型训练
因此,在正式处理之前,对影像进行空间裁剪(Crop)与必要的重采样(Resampling)是一个非常关键的预处理步骤。
3D Slicer 提供的 Crop Volume 工具,不仅可以:
- 精准裁剪感兴趣区域(ROI)
- 统一体素间距(isotropic spacing)
- 控制插值方式(适用于影像或标签)
还广泛应用于以下场景:
- 深度学习数据预处理(nnU-Net / MONAI / TotalSegmentator 等)
- 医学图像分割前的ROI限定
- 3D重建与可视化加速
- 数据标准化(统一spacing与FOV)
通过合理使用 Crop Volume,可以显著减少数据规模、提升处理速度、降低硬件压力,并提高整体流程的稳定性和一致性。
Crop Volume的使用
- 加载 Crop Volume 模块
Crop Volume 是 3D Slicer 的内置模块,一般不需要额外安装。加载方法如下:在顶部工具栏的 Modules 下拉框中,直接输入 Crop Volume 并选择该模块。
进入模块后,即可看到图中所示的参数面板。标准使用流程如下:
- 选择输入影像(Input volume):
在 Input volume 中选择需要裁剪的体数据。 - 创建或选择 ROI:
在 Input ROI 中选择一个已有 ROI,或新建一个 ROI 节点。 - 让 ROI 先匹配整幅图像:点击 Fit to Volume,使 ROI 先自动包住整个输入体数据。
- 显示并调整 ROI:点击 Display ROI,在轴位、冠状位、矢状位或 3D 视图中拖动 ROI 边界,只保留需要的区域。
- 设置输出名称(Output volume):
在 Output volume 中输入裁剪后数据的名称,建议不要直接覆盖原始图像。 - 根据需要设置高级参数:例如是否插值、是否统一为各向同性 spacing、采用哪种插值方式等。
- 执行裁剪:向下滚动到模块底部,点击 Apply 完成裁剪。


按图中所示,就裁剪好了。可以回到DATA模块进行保存数据。
很简单,这里着重讲一下高级功能
Advanced 区域参数详解
这一部分决定裁剪时是否进行重采样,以及如何插值。
(1)Fill value
用于指定:当输出图像中有些区域超出原始图像范围时,用什么数值来填充。
例如图中设置为 -1000 ,这在 CT 中很常见,因为 -1000 HU 接近空气值。
不同模态可以根据需要调整:
- CT:常用 -1000 或 0
- MRI:常用 0
- PET:通常也常设为 0
当仅做普通包围式裁剪时,这个参数影响不大;当涉及旋转、重定向或输出网格变化时,它就更重要。
(2)Interpolated cropping
表示是否在裁剪时进行插值重采样。
- 勾选:裁剪时允许重新采样,适合需要统一 spacing、改变分辨率、旋转裁剪框的情况;
- 不勾选:更接近"直接按原始网格截取子体数据"。
一般来说:
- 只是单纯截取原图的一部分,且想尽量保持原始体素网格,可考虑关闭;
- 如果要统一 spacing、做深度学习预处理或空间规范化,通常需要开启。
(3)Spacing scale
用于控制输出体素间距相对输入图像的缩放比例。
- 1.00x:保持原始 spacing 不变;
- 大于 1:输出 spacing 变大,分辨率降低,数据量更小;
- 小于 1:输出 spacing 变小,分辨率更高,但数据量和内存占用会增加。
例如:
2.0x:体素更粗,图像更小,计算更快;0.5x:体素更细,细节更多,但更耗时、更占内存。
这是控制精度与速度平衡的重要参数。
(4)Isotropic spacing
用于指定输出是否采用各向同性体素间距,即 x、y、z 三个方向 spacing 相同。
这在以下场景中特别常见:
- 三维深度学习模型输入规范化;
- 三维重建;
- 某些配准或定量分析任务;
- 希望不同病例具有一致空间分辨率。
例如原始 CT 可能是:
- x = 0.9 mm
- y = 0.9 mm
- z = 0.625 mm
勾选后,系统会将输出重采样为统一 spacing。
这样更利于后续 3D 算法处理,但也意味着会发生插值。
(5)插值方式:
Nearest Neighbor / Linear / Windowed Sinc / B-spline
这几个选项用于指定重采样时的插值方法。
- 对 CT/MRI/PET 原始图像:优先考虑 Linear或 B-spline;
- 对 标签图、mask、分割结果:必须优先使用 Nearest Neighbor,否则标签值会被插值破坏。
这一点非常重要。很多人裁剪标签图时忘记切换到最近邻,结果导致标签边界被污染。
Volume information
该区域用于查看体数据的基本信息,通常是只读的。可以读取裁剪前裁剪后的图像大小以及分辨率

从这个图可以看到,我们裁剪只是改变了图像的大小,图像的分辨率是没有改变的。

从这个图里可以看到,当我们把Spacing scale调整到2的时候,裁剪后图像的spacing也叫原图增加了2倍,相当于层厚增加2被,数据大小缩小2倍
总结:想要改变图像的大小,一个是调整spacing(层厚),一个是调整上下范围,范围包少一点,图像自然小一点。
文章持续更新,可以关注微公【Radiology AI Camp】获取最新动态。人手有限,文中涉及的链接前往微公对应文章查看。关注Tina姐,一起学习进步~
我是Tina, 我们下篇博客见~
白天工作晚上写文,呕心沥血
觉得写的不错的话最后,求点赞,评论,收藏。或者一键三连