2016-03-29 3 views
0

В VTK и ITK можно передавать изображения между ними. Но можно только отправить изображение из ITK в VTK, используя itk::ImageToVTKImageFilter.Отправить img VTK для ITK

Можно ли отправить изображение с vtk на itk?

+0

Вы видели [это] (http://itk.org/Wiki/ITK/Examples/Broken/Images/VTKImageToImageFilter)? – siavashk

+0

Отлично! Я иду туда! –

ответ

0

Там находится фильтр, ITK :: ImportImageFilter, который принимает буфер изображения (этот массив, возвращаемый vtkImageData.GetScalarPointer ()) и свойства изображения, такие как размер, происхождение и интервал, и создает itk :: Image.

https://itk.org/Wiki/ITK/Examples/IO/ImportImageFilter показывает, как импортировать массив C в ITK в качестве изображения. Импортирование vtkImageData очень похоже.

В основном вы получите расстояние, начало и размеры vtkImageData и используйте его как вход в фильтр itk, упомянутый выше. Обратите внимание на тип данных: если скаляры vtkImageData являются шортами, itk :: image должен быть itk :: Image (3, если это трехмерное изображение, 2, если это 2d-изображение).

Конечно, синхронизация между частью vtk вашего конвейера и частью itk вашего конвейера должна выполняться вручную, если вы не можете гарантировать, что образ, с которого вы получаете указатель, всегда один и тот же.

Смежные вопросы