我正在开发一个DICOM解决方案,需要针对.Net 4.0并访问原始像素数据以进行注释。因此,我使用end-of-the-road标记来编译我的程序。我正在使用Philip Xcelera R4.1 L1系统的美国Echo图像。光度解释在标题中显示为RGB,并且传输语法是JPEG基线1.2.840.10008.1.2.4.50。当我在文件中打开文件时,如何访问原始RGB数据?我需要将注释直接放在像素数据上并保存它。
当我打开它并查看调试器时,var img = new DicomImage(fullImagePath);
DICOM图像显示它是YBR-FULL:422。我不知道从哪里来的?图像标题表示RGB。这是图像的问题还是旧版本的库中存在错误?
感谢。
编辑:光度解释问题实际上不是问题。观察者MicroDicom显示错误的值为RGB,当我实际查看字节时,它是YBR-FULL:422并且一切都匹配。但是我仍然想要回答如何获取像素数据。
答案 0 :(得分:1)
如果您已使用例如:
打开Image作为DicomImagevar dcm = new DicomImage(DicomFile.Open("filename.dcm").Dataset);
那么你应该得到你想要的东西:
byte[] rawPixelData = dcm.PixelData.GetFrame(0).Data;