0

注意:: 这可能是一个更好的问题回答::免费 DICOM 文件,具有多个叠加层

嗨,我有一个关于标签 DicomTags.OverlayData 和覆盖平面的问题。

到目前为止,我可以从 ClearCanvas 中的 DICOM 文件中取回覆盖数据,并使用以下方法解压缩并显示它:

var overlayData = dicomFile.DataSet[DicomTags.OverlayData];

我还在 DICOM 文件中将其他标签用于叠加,例如 OverlayOrigin、OverlayColumns、OverlayRows 等...

所以我的问题是,OverlayPlanes 如何在这里发挥作用?所有这些 Overlay 标签似乎都是全局的,而不是在 OverlayPlane 标签或其他东西中分组。

平面数据是否分层在 OverlayData 标签中?我是 DICOM 的新手,对此有点困惑。

4

2 回答 2

2

ClearCanvas DICOM 程序集有几个帮助 IOD 类,可以更轻松地访问 DICOM 消息中的特定模块。OverlayPlaneModuleIod 类就是这样一种 IOD 类,它可以更轻松地访问覆盖平面内的所有标签。以下代码显示了如何使用此类检查和访问每个潜在覆盖平面的示例,而不必担心涉及的各种标签:


DicomFile theFile = new DicomFile("filename.dcm");
theFile.Load();

OverlayPlaneModuleIod iod = new OverlayPlaneModuleIod(theFile.DataSet);
for (int i = 0; i < 16; i++)
{
    if (iod.HasOverlayPlane(i))
    {
        OverlayPlane overlay = iod[i];
        byte[] overlayData = overlay.OverlayData;
        string description = overlay.OverlayDescription;
    }
}
于 2011-02-17T07:44:56.660 回答
0

这个链接在很大程度上回答了我的问题,因为我只需要了解一些关于覆盖分组的内容。

http://www.medicalconnections.co.uk/wiki/Number_of_Overlays_in_Image

于 2011-02-15T23:35:47.853 回答