【转】itk、vtk、qt 显示dicom 数据
生活随笔
收集整理的這篇文章主要介紹了
【转】itk、vtk、qt 显示dicom 数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉自:https://blog.csdn.net/Zzhouzhou237/article/details/107199076/
以下代碼實現了itk讀取dicom數據,轉換為vtkData,然后用Qt顯示。
1、Qt Designer 搭建界面,QVTKOpenGLNativeWidget 是vtk的一個類,連接qt與vtk的橋梁,是一個可以顯示dicom數據的widget。它可以當做一個普通的widget去布局。但是需要的vtk 與qt 的版本都比較高,注意一下。
2、因為使用itk較多,直接用itk讀的dicom數據,然后使用 itk::ImageToVTKImageFilter轉成vtkData,便于顯示。
3、QVTKOpenGLNativeWidget 顯示 dicom數據,主代碼如下:
vtkSmartPointer<vtkImageViewer2> imageViewer = vtkSmartPointer<vtkImageViewer2>::New();imageViewer->SetInputData(connector->GetOutput()); imageViewer->SetRenderWindow(ui.qvtk_2->renderWindow()); //ui.qvtk_2 為QVTKOpenGLNativeWidget imageViewer->SetSliceOrientationToXY(); imageViewer->SetSlice();//設置初始顯示的切面Index imageViewer->SetColorLevel(40);//窗寬窗位 imageViewer->SetColorWindow(40);vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor= vtkSmartPointer<vtkRenderWindowInteractor>::New();vtkSmartPointer<myVtkInteractorStyleImage> myInteractorStyle = vtkSmartPointer<myVtkInteractorStyleImage>::New();myInteractorStyle->SetImageViewer(imageViewer);imageViewer->SetupInteractor(renderWindowInteractor);renderWindowInteractor->SetInteractorStyle(myInteractorStyle);imageViewer->GetRenderer()->SetBackground(0.0, 0.0, 0.0); imageViewer->Render(); imageViewer->GetRenderer()->ResetCamera(); imageViewer->Render();renderWindowInteractor->Initialize();renderWindowInteractor->Start();總結
以上是生活随笔為你收集整理的【转】itk、vtk、qt 显示dicom 数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 夫妻离婚自媒体账号归属引争议!法院调解:
- 下一篇: 已筹集上亿元!巴菲特最后一次慈善午餐今日