实例11:读取BMP图像并显示
窗宽(Window Width):表示所显示信号强度值的范围(CT图像上所包含的CT值范围)
窗位(Window Level):又称窗水平。窗位是指窗宽上下限的平均数(窗位的高低影响图像的亮度)
例如:窗宽为300H,当窗位是0H时,其CT值范围为-150H~0H~+150H;如窗位是+40H时,则CT值范围为
-110H~+40H~+190H。通常欲观察某一组织的结构及发生的病变,应以该组织的CT值为窗位。
#include "vtkAutoInit.h"
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
#include <vtkBMPReader.h>//BMP读取类
#include <vtkImageViewer.h>//显示2D图像类
#include <vtkRenderWindowInteractor.h>//交互器类
int main()
{
//实例化一个对象bmpReader
vtkBMPReader* bmpReader = vtkBMPReader::New();
bmpReader->SetFileName("1234.bmp");//读取图片
//实例化一个对象bmpViewer
vtkImageViewer* bmpViewer = vtkImageViewer::New();
bmpViewer->SetInputConnection(bmpReader->GetOutputPort());//读取的图像数据输出给显示对象输入
bmpViewer->SetColorLevel(128);//设置窗位
bmpViewer->SetColorWindow(256);//设置窗宽
bmpViewer->Render();//显示图像
//加入交互机制
//实例化一个交互器对象interactor
vtkRenderWindowInteractor* interactor = vtkRenderWindowInteractor::New();
bmpViewer->SetupInteractor(interactor);
interactor->Initialize();
interactor->Start();//使交互器处于等待状态
//getchar();
//释放内存
bmpReader->Delete();
bmpViewer->Delete();
interactor->Delete();
return 0;
}