VTK 中文站
返回常见问题
数据交互 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)。

相关内容

反馈

发现内容错误、链接失效或希望补充案例,可以提交反馈。