我正在尝试开发一个dicom图像查看器。我已成功解码图像缓冲区。我将所有图像像素值unsigned char
存储在 C++ 的缓冲区中。
现在,当我显示图像时,它适用于像素表示 (0028,0103) = 0 的图像。有人可以告诉我如何将此签名转换应用到这些解码缓冲区中。我不知道如何将此有符号位转换为无符号位(我认为通常使用类型转换的转换效果不佳)。请发布 16 位图像的回放,这是我现在真正需要的。
我正在尝试从头开始创建一个查看器,它只是将图像放在屏幕上。我已经成功完成了dicom图像的解码和显示。但是,当我尝试打开像素表示(标记 0028,0103)=1 的图像时,图像显示不正确。从 16 位到 8 位的转换是与应用窗口级别和宽度(在 dicom 图像中找到的值)一起完成的,转换只是线性的。