原文地址:http://www.uscube.com/news_show.asp?id=89

CT等放射医学影像常有窗宽(Window Width,简写WW)窗位(Window Level,简写WL)的转换,比如窗宽400,窗位60,这代表什么意思呢?
常规显示器的颜色位深是8bit,哪怕是彩色显示器,也是RGB每通道是8bit。而医学图像通常是10~12bit(通常用16bit的变量类型表示,比如 short 和 unsigned short ),因此即使不做窗宽窗位转换也需要将10~12bit的数据映射到8bit来显示(显示器是彩色,则灰度图像的话每通道颜色一样即可)
医学图像中常有个骨窗、肺窗等的概念,即将具体的某个窗宽窗位的值来映射到8bit显示。
依然拿WW:400,WL:60举例:
它表示将窗位是60,窗宽是400的像素映射到8bit来显示,即将像素范围是 -140 ~ 260 的像素映射到 0 ~ 255,毕竟原始像素范围可能是-1024~4096 这样的范围。
因为是线性映射,故创建一个一元二次方程 ( y = a*x + b ) 转换即可。创建a,b系数的函数源码如下:
void CalculateFactor( float& a, float&b, float w, float l)
{
a = dstW / w; // dstW = 256
       b = dstL - dstW * l / w; // dstL = 128
 b += a*intercept; // intercept 来自于DICOM文件中的[0028,1052]
 a *= slope; // slope来自于DICOM文件中的[0028,1053]
}
拿代码举例:
float a, b;
CalculateFactor( a, b,400,60 ); // 目标窗宽窗位是400,60.
short rawPixel = ....; // DICOM中原始像素
unsigned char resultPixel; // 映射到8bit的像素
float tempPixel = rawPixel * a + b; // 进行像素映射
if ( tempPixel > 255 )
 resultPixel = 255;
else if ( tempPixel < 0 )
 resultPixel = 0;
else
 resultPixel = unsigned char( tempPixel );
// 而窗口里应该显示的图像的像素为

showPixel = RGB( resultPixel, resultPixel, resultPixel ); // RGB( r, g, b )宏

通过代码就能将窗宽窗位有个较好的了解了。

(以下内容来自百度,感谢原作者)

附:

常见人体组织的CT值(HU)

组织          CT值            组织        CT值
骨组织      >400           肝脏      50~70
钙值       80~300         脾脏      35~60
血块       64~84           胰腺      30~55
脑白质     25~34         肾脏      25~50
脑灰质     28~44         肌肉      40~55
脑脊液      3~8            胆囊      10~30
血液       13~32          甲状腺   50~90
血浆       3~14            脂肪  -20~-100
渗出液      >15           水           0

1、胸部CT检查时,肺窗纵膈窗窗宽、窗位分别是:

(1)肺窗WW1500—2000HU 、WL-450—-600HU

(2)纵膈窗WW250—350HU、WL30—50HU

2、骨窗、软组织窗窗宽、窗位

(1)骨窗WW1000—1500HU、WL250—350HU

(2)软组织窗WW300—500HU、WL40—60HU

3、窗宽和窗位设定

不同部位使用不同窗宽窗位,能较充分反映解剖内容和病灶影像表现,

头颅,脑组织:窗宽设定为80 Hu~100 Hu,窗位为30 Hu~40 Hu,

垂体及蝶鞍区病:变窗宽宜设在200 Hu~250 Hu,窗位45 Hu~50 Hu,

脑出血患者可改变:窗宽位80 Hu~140 Hu,窗位30 Hu~50 Hu,

脑梗死患者:常用窄窗60 Hu,能提高病灶的检出率,清楚显示梗死及软化灶,

颌面部眼眶:窗宽定为150 Hu~250 Hu,窗位30 Hu~40 Hu,

骨骼检查:窗宽150 Hu~2 000 Hu,窗位400 Hu~450 Hu,

喉颈部、鼻咽、咽喉部:窗宽和窗位常设在300 Hu~350 Hu和30 Hu~50 Hu,能满足该部位的解剖和病灶显示,

胸部:常规胸部CT检查分别用纵隔窗及肺窗观察,纵隔窗可观察心脏、大血管的位置,纵隔内淋巴结的大小,纵隔内肿块及这些结构的比邻关系,设定纵隔窗可用窗宽300 Hu~500 Hu,窗位30 Hu~50 Hu,

肺部:窗宽1300 Hu~1 700 Hu,窗位-600 Hu~-800 Hu,在上述基本窗宽的基础上,若观察肺裂和肺血管,可调窄窗宽和调低窗位,对肿块形态,分叶,胸膜凹陷征,毛刺征增的观察肺窗比纵隔窗更为清晰,

腹部检查:常设定窗宽为300 Hu~500 Hu,窗位30 Hu~50 Hu,

肝脾CT检查应适当变窄窗宽以便更好发现病灶,窗宽为100 Hu~200 Hu,窗位为30 Hu~45 Hu,

肾脏:因含水量较多,检查时常用窗宽200 Hu~300 Hu,窗位为25 Hu~35 Hu,

胰腺:一般为300 Hu~350 Hu,窗位为35 Hu~50 Hu,窄窗120 Hu~150 Hu和30 Hu~40 Hu,

脊柱及四肢:常规脊柱扫描显示脊椎旁软组织,窗宽200 Hu~350 Hu,窗位35 Hu~45 Hu,

骨窗:为窗宽800 Hu~2 000 Hu,窗位250 Hu~500 Hu,骨的CT值多在1 000 Hu左右,肌肉为40 Hu左右,脂肪多为-50 Hu以下。

DICOM中窗宽窗位含义相关推荐

  1. MITK中窗宽窗位相关代码

    目录 1  基本数据结构Image 2  窗宽窗位mitkLevelWindow定义类 3 窗宽窗位自动设定算法 4  窗宽窗位的属性设置LevelWindowProperty 类 5  mitkDi ...

  2. 使用pydicom实现Dicom文件读取与CT图像窗宽窗位调整

    1. 前言 为了能够在Labelme上对Dicom图像进行编辑,这里对python环境下Dicom文件的读取进行了研究.在Dicom图像中CT的窗宽窗位是一个很重要的概念,但是找了半天在pydicom ...

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

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

  4. matlab设置固定的窗宽窗位,python实现CT窗宽窗位的调整(即指定HU值保存图像)...

    最近一直在做实验,所以好久没有更新了,先把上周做的一些小的实验贴出来供大家分享. 在医生诊断时,是会将CT图像调整成不同的窗来处理的.比如说肺部CT吧,肺窗(窗宽为2000,窗位为-400)用于看小的 ...

  5. 8bit黑白图像的灰度值范围是_窗宽窗位对基于互信息的医学图像

    窗宽窗位对基于互信息的医学图像 摘 要:基于互信息的配准方法具有自动化程度高.配准精度高等优点,近来已成为医学图像处理领域的热点.基于互信息的配准方法实质上是一种对灰度进行统计和计算的方法,因此同一图 ...

  6. 医学图像处理涉及到的窗宽窗位 1

    先说一下CT值是什么 CT图像反映的是人体对X射线吸收的系数,但我们关心的是各组织结构的密度差异,即相对密度,如果某组织发生病变,其密度就会发生变化,但由于比较吸收系数非常繁琐,于是亨氏把组织器官对X ...

  7. ITK (1)窗宽窗位的意义与设置

    背景与意义 医学图像与传统可视化图像相比,其具有更大的"灰度"范围.如,普通图像(灰度图像)的灰度范围一般是256级(即图像中最亮的点的灰度值定义为0,最亮的定义为255,也就是2 ...

  8. X线DR医学图像 --- 直方图的窗宽窗位调整(Matlab篇)

    X线图像直方图的窗宽窗位的调整 图像的直方图显示了图像的灰阶分布.说白了就是,显示了图像当中每一个点的亮度分布情况(整个图像当中比较亮的点有多少个,黑的点又有多少个.反之,也可以看出某个点是落在了亮的 ...

  9. python nii 图像读取,转换成CT 值,设置窗宽窗位,保存成png 图像

    import numpy as np import os # 遍历文件夹 import nibabel as nib # nii格式一般都会用到这个包 import imageio # 转换成图像ce ...

  10. CT值以及窗宽窗位(未完待续)

    1 常见人体组织的CT值(HU) 常见人体组织的CT值(HU)组织 CT值 组织 CT值骨组织 >400 肝脏 50-70 钙值 80-300 脾脏 35-60 血块 64-84 胰腺 30-5 ...

最新文章

  1. 使用阿里云的maven私服的setting.xml, 提高maven项目jar下载速度
  2. .net多线程 Thread
  3. 动态规划—最长公共子序列
  4. ASP.NET Core Web 项目文件介绍
  5. 力扣两数之和 II - 输入有序数组
  6. 帝国cms模板嵌入php,帝国cms模板中php调用信息的例子
  7. 打破国外垄断,开发中国人自己的编程语言(1):编写解析表达式的计算器
  8. 算法设计与分析第二版第一章笔记
  9. 前端菜鸟浅谈Web前端开发技术
  10. SecureCRT绿色版的下载和安装
  11. 卷积神经网络 —— 图像识别与深度学习
  12. Loadrunner事务与子事务函数简介
  13. 常微分方程各种类型方程表格汇总
  14. 学习这篇总结后,你也能做出天天快报一样的推荐系统
  15. IEEE 802.3标准就是ISO 802.3标准
  16. 2010-2015年笔记本专题研究及投资可行性评估报告
  17. 搭建云平台(一) 云平台基础服务部署
  18. MBA形式逻辑四大基本考点
  19. 导excel到SAP行数不能超过9999,字符不能超过50个处理
  20. 安全行业的发展与现状

热门文章

  1. Android 神器Tasker使用
  2. Vue - 搜索关键字标红高亮(用户输入关键词搜索后,在搜索结果的列表标题上匹配并标红加粗)怎么使内容文本标红高亮的最详细教程,Nuxt.js uni-app 也适用,搜索功能及搜索结果关键字高亮源码
  3. DX11:先定一个小目标,比如:把DX11龙书上的知识点系统的总结下来
  4. Codeforces 731C Socks By Assassin
  5. python 3d绘图立方体_Python绘制立方体
  6. js案例01-设置光标到指定input
  7. vue+elementUI出现 Uncaught SyntaxError: import declarations may only appear at top level of a module
  8. ltm是什么门的缩写_ltm的含义,ltm是什么的缩写,ltm的词语,ltm代表的意思
  9. 把期货当现货做,专业投机大局观
  10. 【ZYNQ】从入门到秃头10 DDS增强版实验ADDA测试(基于ALINX 7020 AN108)