我当前的任务是生成一个3D图像空间,其中有我设计的3D对象(iso曲面),并将其导出为图像堆栈(numpy或tiff)
我开始使用Mayavi生成3D iso曲面。我知道Mayavi最初是为提供3D可视化而设计的,但我想找到一种方法,可以将3D对象导出到3D图像堆栈中,如(z,y,x)的numpy形式。我最初的想法是从Mayavi mlab对象沿z轴迭代拍摄切片体积的快照,但我不确定是否有任何选项将iso曲面的切片图像保存为快照
最好的情况是完全从我在Mayavi窗口中看到的内容导出3D图像堆栈(tiff)。否则,我将采纳任何建议来执行这项任务
下面是一个示例代码
import numpy as np
from mayavi import mlab
# Produce some nice data.
n_mer, n_long = 6, 11
pi = np.pi
dphi = pi/1000.0
phi = np.arange(0.0, 2*pi + 0.5*dphi, dphi, 'd')
mu = phi*n_mer
x = np.cos(mu)*(1+np.cos(n_long*mu/n_mer)*0.5)
y = np.sin(mu)*(1+np.cos(n_long*mu/n_mer)*0.5)
z = np.sin(n_long*mu/n_mer)*0.5
# Init plot
source = mlab.points3d(x, y, z)
您可以选择vtk类
vtkImplicitModeller
。 例如:相关问题 更多 >
编程相关推荐