Как правильно создать DICOMDIR с помощью fo-dicom?
Я пытался найти способ использовать fo-dicom для создания файла DICOMDIR и сделать так, чтобы он ссылался на несколько файлов, содержащих серии изображений, но пока не могу.
Я успешно прочитал DICOMDIR, сериалы и даже отрендеренные изображения. Из этого я смог понять, что DicomDirectory имеет RootDirectoryRecordCollection
для пациентов, и оттуда у вас есть LowerLevelDirectoryRecordCollection для исследований, затем серии, а затем изображения. Но когда дело доходит до построения этой структуры (например, для создания файлов DICOMDIR и Series для новых исследований), я не могу найти способ установить эти LowerLeverDirectoryRecords
; RootDirectoryRecordCollection
имеет Add
метод, но он требует DicomItem
так что я беру это для DicomDataset
или DicomTag/Value, и его свойство LowerLevelDirectoryRecordCollection
является IEnumerable
так что нет Add
там. Я также видел AddFile
метод, но там нет иерархии, поэтому я предположил, что это для файлов серии.
Кто-нибудь успешно создал DICOMDIR и сделал ссылку на несколько файлов серии с помощью fo-dicom? Как? Спасибо
1 ответ
Это должно быть так же просто, как:
var dicomDir = new DicomDirectory();
foreach (var file in dirInfo.GetFiles("*.*", SearchOption.AllDirectories))
{
var dicomFile = Dicom.DicomFile.Open(file.FullName);
dicomDir.AddFile(dicomFile, String.Format(@"000001\{0}", file.Name));
}
dicomDir.Save(dicomDirPath);
Вся внутренняя иерархическая структура добавляется автоматически. Я взял этот пример из репозитория fo-dicom-samples: https://github.com/fo-dicom/fo-dicom-samples/blob/master/Desktop/DICOM%20Media/Program.cs