使用 Nipy 在 python 中对 mri T1 图像进行下采样

Rem*_*Dav 7 python image-processing neuroscience nipype nibabel

我有一个 T1 图像 (NIFTI),已经对齐,尺寸为 121 x 145 x 121。
该图像由 nibabel 加载。体素尺寸为 1.5 x 1.5 x 1.5 毫米。
我想将其下采样为分辨率为 2.0 x 2.0 x 2.0 毫米的图像并保持图像对齐。

我对 MRI 图像处理知之甚少。我找不到清晰的教程。

我怎么做 ?如果您知道任何其他可以做到这一点的 Python 库,它也可以工作。

Ale*_*lex 6

我建议使用 Nibabel。它只需几行即可对 nifti 文件进行缩减采样。
将图像重新采样为体素大小为 2x2x2 的示例:

import nibabel
import nibabel.processing

input_path = r'/input/path/input_img.nii.gz'
output_path = r'/output/path/output_img.nii.gz'
voxel_size = [2, 2, 2]

input_img = nibabel.load(input_path)
resampled_img = nibabel.processing.resample_to_output(input_img, voxel_size)
nibabel.save(resampled_img, output_path)
Run Code Online (Sandbox Code Playgroud)

只需更新input_pathoutput_path反映您的文件即可。resample_to_output 函数中的第二个参数 ( voxel_size) 需要匹配输入的尺寸或者是单个值,然后 nibabel 会假设您希望所有尺寸具有相同的体素大小。

Nibabel 信息:
文档:http: //nipy.org/nibabel/
安装说明: https: //anaconda.org/conda-forge/nibabel