为dicom图像指定窗口中心和窗口宽度

时间:2015-05-02 07:13:29

标签: matlab image-processing dicom imshow

我有一个dcm格式的Dicom图像文件。在matlab中使用 Dicomread 我得到了图像数据并使用 dicominfo 我得到了窗口中心和窗口宽度。现在我想使用图中的 imshow 来显示图像。

我的代码如下,

ct = dicomread('E:\IM-0001-0001.dcm'); 
info = dicominfo('E:\IM-0001-0001.dcm');
figure
imshow(ct , [info.WindowCenter, info.WindowWidth]);

但它会出错

 Error using checkDisplayRange (line 20)
HIGH must be greater than LOW.

我知道为什么会出现这个错误。因为窗口中心值大于窗口宽度而发生。

现在我的问题是

1.为dcm图像分配窗口级别和窗口宽度,我的代码是对还是错?

2.如果出现上述情况,如何为dicom图像指定窗口级别和窗口宽度?

1 个答案:

答案 0 :(得分:1)

只需按

计算最高和最低值
low = center - width / 2
high = center + width / 2

并将此值用于imshow

imshow(ct, [low, high])