nii数据的各种处理详解

1 NIFTI格式图像

       .nii文件是NIFTI(Neuroimaging Informatics Technology Initiative)格式的文件。Nifti数据本身是除了矩阵信息(也就是图像信息之外),还有和物理坐标相关的仿射矩阵以及Header头文件信息.

       把nii数据转成png格式会损失很多信息,因为png格式图像的灰度值有256阶, 因此直接使用nii的医学图像做输入会更好一点。但是Pythorch中的Dataloader是不能直接读取nii图像的,因此加一个CreateNiiDataset的类。

       pytorch中读取数据的主要途径——Dataset类。在自己构建数据层时都要基于这个类,类似于C++中的虚基类。根据自己的需要编写CreateNiiDataset子类。

2 使用Nibabel库对nii格式图像的读写操作

1)简单的图像读取和存储操作:

nii数据的各种处理详解_第1张图片

nii数据的各种处理详解_第2张图片

nii数据的各种处理详解_第3张图片

注意:不能直接对图像image进行取切片操作 nii数据的各种处理详解_第4张图片

nii数据的各种处理详解_第5张图片

nii数据的各种处理详解_第6张图片

nii数据的各种处理详解_第7张图片

nii数据的各种处理详解_第8张图片

nii数据的各种处理详解_第9张图片

2)将nii格式图像存为npy格式的示例:nii数据的各种处理详解_第10张图片3 使用SimpleITK读取NII格式三维图像

        Python中SimpleITK被广泛用于医学图像的处理任务中,功能非常强大,图像读取时一定要注意维度。

读取NII格式的图像

nii数据的各种处理详解_第11张图片

nii数据的各种处理详解_第12张图片

更多可参考

 SimpleITK的使用介绍

你可能感兴趣的:(pytorch,人工智能,python)