常见的医疗数据归类

DICOM和NIFTI:

DICOM类型的文件后缀为dcm,常用的python处理库有:SimpleITK, pydicom库 。
NIFTI类型型的文件后缀为nii或nii.gz(压缩格式),常用的python处理库有:SimpleITK, nibabel库。

对于nii格式的图片,SimpleITK,nibabel中常用的api接口,都会自动的进行上述转化过程,即取出来的值已经是Hu了。
对于dcm格式的图片,SimpleITK, pydicom常用的api接口都不会将原始数据自动转化为Hu!!(itk snap软件读入dcm或nii都不会对数据进行scale操作)

公式与代码

HU = pixel_val*slope+ intercept
其中,slope,intercept可以从原数据中读取

def get_pixels_hu(ct_array,slope,intercept):
    if slope != 1:
        ct_array = slope * ct_array
    ct_array += intercept
    return ct_array

引用https://blog.youkuaiyun.com/weixin_44058333/article/details/102923921

nii/nii.gz

原数据中保存的Get size = (x,y,z) 但是 data.shape = (z , y, x )
在sitk对象中,GetSize()得到的是:[x, y, z] —> [width, height, depth]
而numpy中,shape为:[z, y, x] —> [depth, heitht, width]。

nrrd

·在pynrrd中nrrd.read(path)中得到的data.shape为(x,y, z)。
·在options里面的size:(y,x,z)
·nrrd_data:保存图片的多维矩阵
·nrrd_options:保存图片的相关信息

nrrd_data, nrrd_options = nrrd.read(nrrd_filename)

一个意外发现:基于nrrd的数据,也可以用Simpleitk读取哦,然后读取后的形状规则和上面的其它格式文件的规则相同,这样省了很多时间和精力啊。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值