返回常见问题
数据交互
2026-05-18
2 分钟阅读
NumPy 数组转 VTK 图像数据
将二维或三维 NumPy 数组转换为 vtkImageData,用于图像显示、体绘制或后续处理。
问题描述
你有一个 NumPy 图像数组,希望用 VTK 显示或作为 vtkImageData 输入到算法中。
示例
import vtk
import numpy as np
from vtk.util import numpy_support
arr = np.zeros((64, 128), dtype=np.uint8)
vtk_arr = numpy_support.numpy_to_vtk(arr.ravel(order="C"), deep=True)
image = vtk.vtkImageData()
image.SetDimensions(arr.shape[1], arr.shape[0], 1)
image.GetPointData().SetScalars(vtk_arr)
关键点
VTK 的 SetDimensions(x, y, z) 顺序和 NumPy 的数组维度顺序不同。二维数组通常是 (height, width),设置 VTK 时要写成 (width, height, 1)。
相关内容
反馈
发现内容错误、链接失效或希望补充案例,可以提交反馈。