DICOM影像中的窗宽窗位 ITK Intensity Windowin

医学图像领域的关键技术窗技术,是CT检查中用以观察不同密度的正常组织或病变的一种显示技术,包括窗宽(window width)和窗位(window level)。由于各种组织结构或病变具有不同的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为妥。

查找窗位和窗宽时,可参照guide给出的例子(“Printing DICOM Tags From One Slice”这一节),用到了itkMetaDataDictionary和itkMetaDataObject.
设定时,可参照ITK源代码自带例子(Filtering\ResampleVolumesToBeIsotropic.cxx),用到了itkIntensityWindowingImageFilter.

注意这里设定的最大值(SetWindowMaximum)和最小值(SetWindowMinimum),需要根据窗位和窗宽计算一下.

(max = window center + window width/2.0f; min = window center - window width/2.0f )

代码示例:

typedef itk::IntensityWindowingImageFilter IntensityWindowingImageFilterType;
IntensityWindowingImageFilterType::Pointer intensityFilter=IntensityWindowingImageFilterType::New();
intensityFilter->SetInput( reader->GetOutput() );
intensityFilter->SetWindowMinimum(low_threshold);
intensityFilter->SetWindowMaximum(high_threshold);
intensityFilter->SetOutputMinimum(0);
intensityFilter->SetOutputMaximum(255);
intensityFilter->Update();

Window level/centerThe window level (WL),

often also referred to as window center, is the midpoint of the range of the CT numbers displayed.
窗口水平,也经常成为窗口中心,是ct值的中点。

窗口level减少,图片将变亮,level增大,图片变暗。

当给定了window width和window level后,就能计算出窗口的上下界。
超过上界的,是白色,低于下界的,是黑色。
下面是计算方法和举例。

the upper grey level (x) is calculated via WL + (WW ÷ 2)
the lower grey level (y) is calculated via WL - (WW ÷ 2)

For example, a brain is W:80 L:40, therefore, all values above +80 will be white and all values below 0 are black.