返回常见问题
数据交互
2026-05-18
1 分钟阅读
VTK 渲染结果转 NumPy 数组/截图
使用 vtkWindowToImageFilter 获取 RenderWindow 像素,并转换为 NumPy 数组或保存图片。
问题描述
你想把 VTK 渲染窗口中的图像拿到 Python 里,用 NumPy 或 OpenCV 继续处理。
基本做法
from vtk.util import numpy_support
window.Render()
w2i = vtk.vtkWindowToImageFilter()
w2i.SetInput(window)
w2i.Update()
image = w2i.GetOutput()
width, height, _ = image.GetDimensions()
vtk_array = image.GetPointData().GetScalars()
array = numpy_support.vtk_to_numpy(vtk_array).reshape(height, width, -1)
注意
VTK 图像坐标和常见图像库的上下方向可能不同,如果结果倒置,需要做一次垂直翻转。
相关内容
反馈
发现内容错误、链接失效或希望补充案例,可以提交反馈。