use*_*035 5 c++ image-processing decoding dicom grayscale
我一直在尝试为 DICOM 图像创建图像查看器。我的程序几乎正确地读取所有 8 位彩色和灰度图像。但是,当我尝试使用图像的前 8 位打开 16 位图像时,某些部分丢失了(使用 16 位的像素将显示为黑色而不是白色)。我真的不知道如何使用窗口中心、窗口宽度、重新缩放斜率和截距。请帮助我给出将 16 位图像转换为 8 位图像的确切步骤。另外,我不需要查看使用任何压缩技术来存储像素的文件。提前致谢。
关于Rescale Slope/Intercept:它是一个线性方程,因此每个像素值的计算方式为
<output pixel value> = <value from pixeldata attribute> * RescaleSlope + RescaleIntercept
Run Code Online (Sandbox Code Playgroud)
这是加窗方程的输入。确切的加窗方程在这里。
关于反转像素:属性(0028,0103)可能设置为MONOCHROME1,这意味着:min=white,max=black(或“黑骨”约定,即图像包含由管和检测器之间的组织引起的衰减) 。这称为极性变换,发生在像素值变换管道的末尾。
所以你的步骤是:
应用重新调整斜率/截距
应用窗口