python - 如何使用 Python 绑定(bind)在 ITK 中创建网格对象?

标签 python itk

我正在尝试在 Python 中创建一个 Mesh 对象。我正在使用从以下 web page 安装的 python 绑定(bind)。就c++代码而言,我们可以这样做

      MeshType::Pointer mesh = MeshType::New();

我什至对使用 ITK 都很陌生。不知道如何创建它。在c++文档中Mesh的构造函数中,它提到了一个必要的参数,那就是TPixelType。也无法找到它。

有人可以帮我解决这个问题吗?

谢谢

最佳答案

如果我是你,我会看一下 ITK 4.0 附带的 Python 绑定(bind)。您可以通过在 cmake 中打开选项 WRAP_ITK_PYTHON 来访问它们。

一旦您在打开 python 绑定(bind)的情况下编译 ITK,您就可以创建 2 种开箱即用的网格类型:

import itk
meshType2D = itk.Mesh.D2Q.New()
meshType3D = itk.Mesh.D3Q.New()

或者,您可以显式实例化您的类,如下所示:

import itk
meshType2D = itk.Mesh[itk.D, 2, itk.QuadEdgeMeshTraits.D2BBFF]
meshType3D = itk.Mesh[itk.D, 3, itk.QuadEdgeMeshTraits.D3BBFF]

这将为您提供具有默认网格特征的 double 类型像素值的 2 维和 3 维网格。就 ITK 中的像素类型而言,这些相当于基本的 C++ 变量类型:double、float、unsigned int 等。这些基本类型包装在 python 中,可以在 ITK 命名空间中找到:itk.D、itk.F 、itk.UI 等

关于python - 如何使用 Python 绑定(bind)在 ITK 中创建网格对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7584373/

相关文章:

python - 在没有换行符的情况下 sleep 和打印?

python - 如何从外部有效 XML 标记中删除垃圾?

c++ - 如何使用 itkvtkglue 将 ITK 与 VTK 一起使用?

c# - SimpleITK - 如何获得图像中的最大和最小强度?

xcode - CMake Xcode 生成器使用不再受支持的选项

c++ - ITK - 计算分段 3D 大脑 MRI 的纹理特征

Python:独特的单词及其频率降序排列

python - 按标签系列重新索引 DataFrame 列

c++ - 使用 ITK 写入图像

python - 获取 PayPal 交易列表