我有两个fMRI NIFTI(.nii)文件(一个感兴趣的区域(ROI)掩码和一个SPM T-contrast),我可以使用load_nii读入Matlab,给我两个结构。这些结构中的实际图像数据是不同的大小,并围绕不同的起源:
SPM = 79*95*69 voxels centered on [40, 57, 26]
ROI = 91*109*91 voxels centered on [46, 64, 37]
我需要对齐这两个矩阵,使ROI文件对应于对比文件的正确部分。我可以使用几个特定于NIFTI的函数(pad_nii添加零,clip_nii从任意/几个边删除值),但我不确定如何对齐两个坐标系。
答案 0 :(得分:0)
解决。我使用pad_nii来调整EPI的原点对齐以匹配ROI的原点对齐。
epi_origin = epi.hdr.hist.originator(1:3);
roi_origin = roi.hdr.hist.originator(1:3);
origin_diffs = roi_origin - epi_origin;
opt.pad_from_L = origin_diffs(1);
opt.pad_from_P = origin_diffs(2);
opt.pad_from_I = origin_diffs(3);
epi = pad_nii(epi, opt);
我认为它只适用于MNI标准化数据,但它可以与功能定义的ROI和单独对齐的数据一起使用。