在DICOM中重新缩放斜率和重新缩放截距

时间:2014-12-21 14:06:27

标签: matlab dicom

我正在尝试编写一个简单的DICOM阅读器。我有两个函数mydicominfo和mydicomread,其中mydicominfo读取标签并存储数据,mydicomread读取图像。

在mydicomread中我想重新调整值(图像来自CT扫描仪),似乎我必须使用关系OutputValue = SV * RescaleSlope + RescaleIntercept,但是我为RescaleIntercept获取了3个值的向量,我不知道怎么办呢?

以下是mydicominfo的代码示例,我将信息存储在结构中。

t(16).name = 'RescaleIntercept';   t(16).groupnumber = '0028';  t(16).elementnumber = '1052'; t(16).type = 'uint16'; t(16).default = 0;
t(17).name = 'RescaleSlope';       t(17).groupnumber = '0028';  t(17).elementnumber = '1053'; t(17).type = 'uint16'; t(17).default = 0;
t(18).name = 'MinPixelValue';      t(18).groupnumber = '0028';  t(18).elementnumber = '0106'; t(18).type = 'uint16'; t(18).default = 0;
t(19).name = 'MaxPixelValue';      t(19).groupnumber = '0028';  t(19).elementnumber = '0107'; t(19).type = 'uint16'; t(19).default = 0;
t(20).name = 'RescaleType';        t(20).groupnumber = '0028';  t(20).elementnumber = '1054'; t(20).type = 'uint16'; t(2).default = 0;

我为附加的DICOM图像获得的输出片段是:

RescaleIntercept: [12589 12848 8244]
            RescaleSlope: 8241
           MinPixelValue: 0
           MaxPixelValue: 0

0 个答案:

没有答案