ITK 过滤器上的非零退出代码

Nonzero exit code on ITK filter

我正在使用 ITK BinaryThinningImageFilter3D。但是,代码(其中 mask 是一个 np.uint8 3D Numpy 数组,其中填充了 0s 和 1s - 它是动脉的体素表示)

import itk
output = itk.BinaryThinningImageFilter3D.New(
    itk.GetImageFromArray(mask)
)

给予

Process finished with exit code -1073741819 (0xC0000005)

指向 Python 版本 - 我检查过了,一切都是 x64。我倾向于某种数据类型不兼容。关于如何修复的任何提示?

将其包装在 try...catch 块中并打印错误消息。那会告诉你出了什么问题。也许是这样的:

try:
  import itk
  output = itk.BinaryThinningImageFilter3D.New(
    itk.GetImageFromArray(mask))
except RuntimeError as e:
  print('Got an exception\n' + str(e))

我原来是there was a segfault。问题已在新版本的库中修复。