医学影像处理工具:SimpleITK学习笔记(二)图像基本操作

本文详细介绍了SimpleITK库中图像的构造方法,包括2D和RGB图像的创建。此外,讲解了图像的常见属性,如大小、原点、间距、方向和组件数量,并提供了获取这些属性的代码示例。还探讨了二维和三维图像的深度,以及像素的读写操作。同时,讨论了SimpleITK与Numpy数组之间的转换,特别注意了两者在索引顺序上的差异。最后,提到了在转换过程中需要注意的细节。

本节大纲

sitk图像的构造

sitk中的常见属性值

 像素的相关操作

SimpleITK和Numpy的相互转换

类型转化中的index顺序


sitk图像的构造

sitk有几种构建图像的方式,可以构建2D或者RGB格式的图像

image_2D = sitk.Image(64, 64, sitk.sitkFloat32)
image_2D = sitk.Image([32,32], sitk.sitkUInt32)
image_RGB = sitk.Image([128,128], sitk.sitkVectorUInt8, 3)

其中Uint代表无符号整数,即unsigned

sitk中的常见属性值

print(image.GetSize())
print(image.GetOrigin())
print(image.GetSpacing())
print(image.GetDirection())
print(image.GetNumberOfComponentsPerPixel())

sitk中有以上五种常见的属性,分别可以使用get的方式获取

其中Size代表图像的大小,为图像的每一个维度的长度,即像素点的多少

Origin为图像的原点坐标

Space的代表的是体素或像素之间的间距。体素可以理解为像素在三维立体图像中的另一种称呼,即每个像素点或者体素点之间的距离,通常单位为mm,在医学影像中,由于不同的机器设备不同,其体素间距也不完全相同,所以在处理图像前一般需要对其进行重采样。Spacing的更加直观理解可以参照下图:

Direction则是指图像的方向,由于图像未必是正交,所以会用方向向量来指明不同轴的方向。

GetNumberOfComponentsPerPixel(): 这个方法的字面意思是每一个像素是由几个部分组成的,由于sitk中包含一种数据类型为Vector类型,对于三维RGB类型,该属性值为3,因为其由RGB三个元素组成:

image_RGB = sitk.Image([128,128], sitk.sitkVectorUInt8, 3)

如上一节中定义的VectorUInt,其虽然定义的为128*128的维度,但是由于其中数据类型为VectorUint

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值