使用 vtk python 显示 RGB 图像
Dispaly a RGB image with vtk python
我想用 vtk 模块显示 RGB 图像 python。图像以 .vti 格式保存。我写了下面的简单代码,但它以灰度颜色显示图像。我如何以 RGB 颜色显示它?
图片供参考:
import vtk
import nrrd
import matplotlib.pyplot as plt
im = plt.imread('RGB.tif')
header = {}
header['encoding'] = 'raw'
nrrd.write('Vug.vti', im ,header)
file_name = 'Vug.vti'
# Read the source file.
reader = vtk.vtkNrrdReader()
reader.SetFileName(file_name)
reader.Update()
# Map the image through the lookup table
color = vtk.vtkImageMapToColors()
#color.SetLookupTable(table)
color.SetInputConnection(reader.GetOutputPort())
# Display the image
actor = vtk.vtkImageActor()
actor.GetMapper().SetInputConnection(color.GetOutputPort())
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
window = vtk.vtkRenderWindow()
window.AddRenderer(renderer)
# Set up the interaction
interactor = vtk.vtkRenderWindowInteractor()
window.SetInteractor(interactor)
window.Render()
我在 vtk9 中使用以下内容
import vtk
# Read the source file.
reader = vtk.vtkPNGReader()
reader.SetFileName("oIu8j.png")
reader.Update()
# Display the image
actor = vtk.vtkImageActor()
actor.GetMapper().SetInputConnection(reader.GetOutputPort())
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
window = vtk.vtkRenderWindow()
window.AddRenderer(renderer)
# Set up the interaction
interactor = vtk.vtkRenderWindowInteractor()
interactor.SetRenderWindow(window)
interactor.Initialize()
interactor.Start()
我想用 vtk 模块显示 RGB 图像 python。图像以 .vti 格式保存。我写了下面的简单代码,但它以灰度颜色显示图像。我如何以 RGB 颜色显示它?
图片供参考:
import vtk
import nrrd
import matplotlib.pyplot as plt
im = plt.imread('RGB.tif')
header = {}
header['encoding'] = 'raw'
nrrd.write('Vug.vti', im ,header)
file_name = 'Vug.vti'
# Read the source file.
reader = vtk.vtkNrrdReader()
reader.SetFileName(file_name)
reader.Update()
# Map the image through the lookup table
color = vtk.vtkImageMapToColors()
#color.SetLookupTable(table)
color.SetInputConnection(reader.GetOutputPort())
# Display the image
actor = vtk.vtkImageActor()
actor.GetMapper().SetInputConnection(color.GetOutputPort())
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
window = vtk.vtkRenderWindow()
window.AddRenderer(renderer)
# Set up the interaction
interactor = vtk.vtkRenderWindowInteractor()
window.SetInteractor(interactor)
window.Render()
我在 vtk9 中使用以下内容
import vtk
# Read the source file.
reader = vtk.vtkPNGReader()
reader.SetFileName("oIu8j.png")
reader.Update()
# Display the image
actor = vtk.vtkImageActor()
actor.GetMapper().SetInputConnection(reader.GetOutputPort())
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
window = vtk.vtkRenderWindow()
window.AddRenderer(renderer)
# Set up the interaction
interactor = vtk.vtkRenderWindowInteractor()
interactor.SetRenderWindow(window)
interactor.Initialize()
interactor.Start()