我使用一个特定的工具箱(NIfTI和图像分析工具)来使用MATLAB处理NIfTI文件,但是当我做一个简单的值修改时,与图像相关的空间信息会发生某种改变。我不能直接比较前后的图像,因为它们有不同的起源和/或一些轻微的翻译。我没有(有意)修改NIfTI头信息。实际上,我只使用了三个命令:
matlab_nii = load_nii('original.nii');
matlab_nii.img(matlab.nii.img > 10) = NaN;
save_nii(matlab_nii, 'new.nii');尽管没有编辑任何头信息,只是直接修改图像值,但新的NIfTI文件具有不同的空间属性,因此无法直接与原始文件进行比较,以验证修改确实发生了。
我希望有人对这些工具有经验,并遇到了这个问题。
发布于 2016-05-17 21:51:39
在NIfTI/MATLAB中这问题的一个答案中找到了解决方案。
答案是使用load_untouch_nii代替load_nii,使用save_untouch_nii代替save_nii。
我最初使用的函数将仿射转换数据(如果存在的话,显然是这样)应用于图像。使用这些函数会在体素之间产生直接的空间关联。
https://stackoverflow.com/questions/37286581
复制相似问题