ITKラッパー(PythonXY 2.6.6.2から)でpython 2.6を使用しています。処理のために numpy/scipy から itk に 3D 画像を送信しようとしています。
import itk
imageType = itk.Image.F3
buf = scipy.zeros( (100,100,100), dtype = float)
itkImage = itk.PyBuffer[imageType].GetImageFromArray(buf)
GetImageFromArray() は次のエラーで失敗します:
RuntimeError: Contiguous array couldn't be created from input python object
ただし、バッファを自分で作成せずに ITK にイメージを作成させると、GetImageFromArray() が突然機能します。
import itk
imageType = itk.Image.F3
itkImage1 = imageType.New(Regions=[256, 256, 256])
buf = itk.PyBuffer[imageType].GetArrayFromImage(itkImage1)
itkImage2 = itk.PyBuffer[imageType].GetImageFromArray(buf)
GetImageFromArray() で受け入れられる numpy 配列を自分で作成するにはどうすればよいですか?