#python #vtk #dicom #pydicom
#python #vtk #dicom #pydicom
Вопрос:
Я создаю систему для просмотра файлов DICOM. Файлы DICOM, расположенные в указанной папке, считываются dcmread
и помещаются в список. Я проверяю метаданные, чтобы разделить серии по номеру серии в информации, затем я создаю словарь с несколькими списками, по одному для каждой серии, которые содержат соответствующие сканы. Поэтому в программе я могу выбрать, какие серии отображать с 3D-реконструкцией. Однако я заметил, что с vtkDICOMImageReader
помощью I можно указать только файл или каталог. Могу ли я также каким-либо образом выбрать список, содержащий файлы DICOM?
Комментарии:
1. какое это имеет отношение к pydicom?
2. @Richard Я использую pydicom.dcmread для чтения файлов из каталогов. Результирующий массив содержит сканы, прочитанные с помощью этой функции, которые я должен каким-то образом просмотреть с помощью vtk
Ответ №1:
vtkDICOMImageReader
происходит из vtkImageReader2
, вы можете использовать vtkImageReader2::SetFileNames(vtkStringArray *)
По замыслу vtkImageReader2 должен считывать файлы с диска (подумайте, UpdateExtent != WholeExtent).
Если вы хотите импортировать c-массив в виде изображения в VTK, вам следует вместо этого начать использовать:
Комментарии:
1. Поправьте меня, если я ошибаюсь, но SetFileNames() принимает массив строк, содержащий имена файлов, которые будут прочитаны на диске, в то время как у меня есть массив, содержащий файлы DICOM, уже прочитанные с диска с помощью dcmread