首页 > 解决方案 > Nibabel 不加载斜率和间参数

问题描述

我正在使用nibabel包将一些 nparray 保存为 nifti 格式。我指定了斜率和截距值,以便将数据缩放回其原始格式。但是,当我加载数据时,比例和截距信息不再可用。这是重现该行为的代码片段:

import numpy as np
import nibabel as nib

# Create dumb 3D data:
img=np.ones((20,20,5),dtype=np.uint16)

# Create an affine matrix:
affine=np.eye(4)

# Create nifti
nii=nib.Nifti1Image(img,affine=affine)

# Set slope and inter values
nii.header.set_slope_inter(slope=1,inter=0)

# Save the nifti on disk
nib.save(nii,'test.nii')

# Load back the data
nii2=nib.load('test.nii')

# Get the slope and inter
print(nii2.header.get_slope_inter())

# It returns (None, None)

输出是(None,None),尽管nii2.header.has_data_slopenii2.header.has_data_intercept都返回 True。

我用其他 nifti 阅读器(如 mango 和 itk-snap)打开了 nifti 文件,可以检查斜率和截距是否正确显示。

这是一个错误吗?

谢谢您的帮助!

标签: pythonpython-3.xniftinibabel

解决方案


推荐阅读