解析 DICOMDIR 以获取图像文件路径

Parse DICOMDIR to get image filepaths

我正在尝试通过解析 DICOMDIR 来定位 DICOM 文件路径。

但似乎无法弄清楚如何找到它们。我通过 DICOMDIR 解析如下:

DicomDirectory dir = new DicomDirectory("AE_TITLE");
dir.Load(dirPath);
foreach(DirectoryRecordSequenceItem elem in dir.RootDirectoryRecordCollection){//study
    foreach(DirectoryRecordSequenceItem innerElem in elem.LowerLevelDirectoryRecordCollection){//sequence
        foreach(DirectoryRecordSequenceItem inner2Elem in innerElem.LowerLevelDirectoryRecordCollection){//series
            foreach (DirectoryRecordSequenceItem inner3Elem in lastElem.LowerLevelDirectoryRecordCollection) // img
            {

            } 
        }
    }
}

这会遍历每个 study/sequence/series/image,但似乎没有一个包含 .dcm 文件的文件路径。

P.S。我使用 ClearCanvas 库创建 DicomDirectory 对象

看来,如果你转到最低级别(图像级别),dicomfile 有一个属性 ReferencedFileId,它保存相对路径,所以只需要:

Console.inner3Elem.GetAttribute(DicomTags.ReferencedFileId).ToString();

此 returns dicom 文件的路径相对于 DICOMDIR 所在的位置