Переходя от массива numy к itk Image - PullRequest
3 голосов
/ 28 октября 2010

У меня есть массив numpy, и я хочу преобразовать его в изображение ITK для дальнейшей обработки. Как мне сделать это без использования расширения PyBuffer для WrapITK. Я не могу использовать это, потому что я получаю кучу ошибок при компиляции:

.../ExternalProjects/PyBuffer/itkPyBuffer.txx: In static member function ‘static PyObject* itk::PyBuffer<TImage>::GetArrayFromImage(TImage*) [with TImage = itk::Image<float, 2u>]’:
.../ExternalProjects/PyBuffer/wrap_itkPyBufferPython.cxx:1397:   instantiated from here
.../ExternalProjects/PyBuffer/itkPyBuffer.txx:64: error: cannot convert ‘int*’ to ‘npy_intp*’ in argument passing

Я мог бы использовать идею о том, как исправить ошибки компиляции, или о другом способе преобразования моих объектов Python.

Ответы [ 3 ]

2 голосов
/ 28 октября 2010

Просто изменить

int dimensions[ ImageDimension ];

до

npy_intp dimensions[ ImageDimension ];

и перекомпилируйте.

1 голос
/ 24 сентября 2011

Вас может заинтересовать недавняя работа SimpleITK.

На сайте www.simpleitk.org имеется много информации.

Исходный код и большая часть документации можно найти по адресу http://www.github.com/SimpleITK.

0 голосов
/ 23 августа 2014

Клонируйте репозиторий PyBuffer в исходном дереве ITK в разделе Модули / Внешний.Затем включите его в вашей конфигурации CMake.

...