Ввод массива Python — vtkDICOMImageReader?

#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