SimpleITK CT图像窗宽窗位变换

##SimpleITK CT图像窗宽窗位变换

# -- coding: utf-8 --
import SimpleITK as sitk
import os
import numpy as np
def window_transform(ct_array, windowWidth, windowCenter, normal=False):
	"""
    return: trucated image according to window center and window width
    and normalized to [0,1]
    """
	minWindow = float(windowCenter) - 0.5*float(windowWidth)
	newimg = (ct_array - minWindow) / float(windowWidth)
	newimg[newimg < 0] = 0
	newimg[newimg > 1] = 1
	if not normal:
		newimg = (newimg * 255).astype('float32')
	return newimg


print("-"*100)
image=sitk.ReadImage(path,sitk.sitkFloat32)

array=sitk.GetArrayFromImage(image)

array=window_transform(array,400,100,True)


new_image=sitk.GetImageFromArray(new_image)
new_image.SetDirection(image.GetDirection())
new_image.SetOrigin([0,0,0])
new_image.SetSpacing([1,1,1])

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值