CT图像之Hu值变换与窗宽窗位调整

今天通过分析实验结果,完善了之前的预处理代码,借此博文分享给大家,另外 点击此处可以查看预处理的完整代码,欢迎大家一起来完善。
最重要的是,欢迎大家的批评指正,您的建议和意见将会是我成长源泉。
在这里插入图片描述
接下来开始进入正题。

灰度值转换为HU值

基本知识

首先,我们要明确,CT值灰度值属于不同的概念。
CT值属于医学领域的概念,通常称亨氏单位(hounsfield unit ,HU),反映了组织对X射线吸收程度。
灰度值属于计算机领域的概念,指的是单个像素点的亮度,灰度值越大表示越亮。范围一般从0到255,白色为255 ,黑色为0,故黑白图片也称灰度图像。

其次,我们了解两种最常用的医学图像数据格式:DICOM类型NIFTI类型
DICOM类型的文件后缀为dcm,常用的python处理库有:SimpleITK, pydicom库 ;
NIFTI类型型的文件后缀为nii或nii.gz(压缩格式),常用的python处理库有:SimpleITK, nibabel库。

对于nii格式的图片,SimpleITK,nibabel中常用的api接口,都会自动的进行上述转化过程,即取出来的值已经是Hu了。(除非专门用nib.load(‘xx’).dataobj.get_unscaled()或者itk.ReadImage(‘xx’).GetPixel(x,y,z)才能取得原始数据)
对于dcm格式的图片,SimpleITK, pydicom常用的api接口都不会将原始数据自动转化为Hu!!(itk snap软件读入dcm或nii都不会对数据进行scale操作)

以下我用SimpleITK读取的NIFTI文件,打印出来的最大值和最小值范围,很明显,它们已经是Hu值了,而非灰度值,无需做Hu值变换。

0 all:( -3024.0 , 1410.0 ) bg:( -3024.0 , 1410.0 ) liver:( -604.0 , 333.0 ) tumor:( -0.0 , 160.0 )

公式与代码

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

CT图像窗宽窗位调整

注意:

  1. 窗宽窗位是CT图像特有的概念,MRI图像中可没有此概念;
  2. CT 图像必须先转换成 HU值再做窗宽窗位调整。

基本知识

医学图像领域的窗口技术,包括窗宽(window width)和窗位(window center),用于选择感兴趣的CT值范围。因为各种组织结构或病变具有不同的CT值,因此欲显示某一组织结构细节时,应选择适合观察该组织或病变的窗宽和窗位,以获得最佳显示。

窗宽是CT图像上显示的CT值范围,在此CT值范围内的组织和病变均以不同的模拟灰度显示。而CT值高于此范围的组织和病变,无论高出程度有多少,均以白影显示,不再有灰度差异; 反之,低于此范围的组织结构,不论低的程度有多少,均以黑影显示,也无灰度差别。增大窗宽,则图像所示CT值范围加大,显示具有不同密度的组织结构增多,但各结构之间的灰度差别减少。减小窗宽,则显示的组织结构减少,然而各结构之间的灰度差别增加。如观察脑质的窗宽常为-15~+85H,即密度在-15 ~+85H范围内的各种结构如脑质和脑脊液间隙均以不同灰度显示。而高于+85H的组织结构如骨质几颅内钙化,其间虽有密度差,但均以白影显示,无灰度差别;而低于-15H组织结构如皮下脂肪及乳突内气体均以黑影显示,其间也无灰度差别。
窗位是窗的中心位置,同样的窗宽,由于窗位不同,其所包括CT值范围的CT
值也有差异。例如窗宽同为100H,当窗位为0H时,其CT值范围为-50 ~ +50H ; 如窗位为+35H时,则CT值范围为-15~+85H。通常,欲观察某以组织结构及发生的病变,应以该组织的CT值为窗位。例如脑质CT值约为+35H,则观察脑组织及其病变时,选择窗位以+35H为妥。

设定正确的窗宽窗位

应用场景:用神经网络分割liver 和liver tumor,对训练数据进行预处理。
基本思路:

  1. 用liver和tumor的mask抠出liver和tumor部分;
  2. 统计相
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值