MRI脑影像分析——多种工具实现Nifti(*.nii)文件读取、处理与写入——把小舞写进脑海里、6mm半高全宽高斯核平滑脑影像、NIFTI文件合并、算fMRI平均图像

在这里插入图片描述

| 图源

  Nifti(Neuroimaging Informatics Technology Initiative,神经影像信息学技术倡议)文件格式,是目前各大神经影像分析工具普遍兼容的体素水平的数据格式,也是在进行神经影像研究中最常见的一种数据格式。简单点看它,它就是一个三维数组(sMRI)或者四维数组(fMRI、dMRI),再套上一个头部数据。数组里包含的就是图像体素值数据本身,头部数据里包含空间和体素信息,具体的文件结构不必理会,只要能用工具解析它即可。Matlab从2017b后就引入了专门的Nifti文件的解析函数1,SPM12(Statistical Parametric Mapping,统计参数映射),dpabi等工具包也提供了Nifti文件的解析接口,NIfTI_20140122是专门的Nifti文件的解析处理工具包,现在好像没有更新了,不过也比较好用。python上面的nibabel可以解析Nifti等脑影像文件,nilearn更是一个集解析,处理,与分析于一体的工具。以下就针对这些工具,简要探讨他们对Nifti文件的解析,以及简单处理。

copyright©意疏:https://blog.csdn.net/sinat_35907936/article/details/118862614


SPM12读取Nifti文件——查看轴状面、冠状面与矢状面切片


  SPM12提供spm_vol(N)来获取Nii文件的头部信息,返回一个带有图像信息的结构体。N可以是单个Nii文件的路径,也可以是包含多个Nii文件路径的数组。

V = spm_vol('brain.nii');

  返回的结构体包含一个完整的Nifti-1的对象,和被SPM12简化了的Nifti-1属性,如图1所示,因为T1是三维影像,所以返回的1X1的结构体,如果是fMRI则会返回nX1的结构体。属性中比较重要的是,路径属性fname和维度属性dim

Nifti结构体

图1 Nifti结构体

  SPM12用spm_read_vols()来解析头部信息结构体,并返回一个三维或者四维数组Y,就是图像数据体素值本身,另外还有一个3xn的数组是每个体素的坐标。

[Y,XYZmm] = spm_read_vols(V);
size(Y);

  轴状位、冠状位与矢状位是医学上人体的三个方位。左右为冠(X),前后为矢(Y),上下为轴(Z)。沿矢状位,切分左右的面为矢状面(sagital,固定X);沿冠状位,切分前后的面为冠状面(coronal,固定Y);切分上下的为轴状面(横断面,axial,固定Z),如图2所示,图源

在这里插入图片描述

图2 轴状面、冠状面与矢状面

  有了上面的分析,我们只需要在三维数据中,固定对应的轴,就可以取出对应的二维切面来。代码如下,其间为了最终显示还涉及如维度压缩squeeze,维度交换permute,尺度变换mapminmax等操作。

  代码:

nifti_file = spm_vol('MNI152_T1_1mm.nii');
data = spm_read_vols(nifti_file);

% 水平面
Z_66 = squeeze(data(:,:,66));
Z_66 = permute(Z_66,[2,1,3]);

figure(1);
imagesc(mapminmax(Z_66, 0, 255));
set(gca, 'YDir', 'normal');
colormap(gray);
axis off;

% 冠状面
Y_111 = squeeze(data(:,111,:));
Y_111 = permute(Y_111,[2,1]);

figure(2);
imagesc(mapminmax(Y_111, 0, 255));
set(gca, 'YDir', 'normal');
colormap(gray);
axis off;

% 矢状面
X_99 = squeeze(data(99,:,:));
X_99 = permute
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值