SimpleITK.ImageFileWriter в Python не имеет метода "SetImageIO", но документы C ++ говорят, что он имеет - PullRequest
0 голосов
/ 24 апреля 2019

Я использую SimpleITK для Python и создал пустое изображение с помощью NumPy следующим образом:

import SimpleITK as sitk
import numpy as np

pixels = np.zeros((64, 64))
image = sitk.GetImageFromArray(pixels)

Затем, когда я пытаюсь записать изображение в файл в формате NIFTI, он жалуется, что не может найти метод "SetImageIO" в объекте ImageFileWriter.

write = sitk.ImageFileWriter()
write.SetFileName('hello.nii.gz')
write.SetImageIO('NiftiImageIO')
write.Execute(image)

Ошибка:

AttributeError: 'ImageFileWriter' object has no attribute 'SetImageIO'

Кто-нибудь знает, почему это так? В документах C ++ четко упоминается метод "SetImageIO" для ImageFileWriter.

Спасибо, Ральф

Ответы [ 2 ]

2 голосов
/ 24 апреля 2019

Какую версию SimpleITK вы установили?

Это новая функция с 1.2, поэтому, если у вас более старая версия, метод будет недоступен.

0 голосов
/ 26 мая 2019

В документации SimpleITK катастрофически не хватает, и не все функции библиотеки C ++ доступны в пакете python, что усложняет еще несколько вещей.

Тем не менее,

sitk.WriteImage(image, "hello.nii.gz")

Будет автоматически выводить тип файла из строки.

...