vtkImageViewer2用于图像显示实例分析
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import vtk
reader = vtk.vtkMetaImageReader()
reader.SetFileName(r'E:\xujia\project\learn_vtk/brain.mhd') # 读入mhd图像
reader.Update()
imageViewer = vtk.vtkImageViewer2() # vtkImageViewer2中封装了vtkActor、vtkRender、vtkRenderWindow等
imageViewer.SetInputConnection(reader.GetOutputPort())
renderWindowInteractor = vtk.vtkRenderWindowInteractor()
imageViewer.SetupInteractor(renderWindowInteractor)
imageViewer.SetColorLevel(500) # 窗位
imageViewer.SetColorWindow(2000) # 窗宽
imageViewer.SetSlice(40) # 切片索引
imageViewer.SetSliceOrientationToXY() # 切片方向
imageViewer.Render()
imageViewer.GetRenderer().SetBackground(1.0, 1.0, 1.0)
imageViewer.SetSize(640, 480)
imageViewer.GetRenderWindow().SetWindowName('DisplayImageExample')
renderWindowInteractor.Start()
窗宽窗位的概念
窗宽是图像显示的灰度范围。一般显示器的灰度范围为256级,而医学图像的灰度范围则远远大于该范围,因此通过显示器显示时不能显示所