VTK 实例44:二维图像快速傅里叶变换(频域处理)


1 #include "vtkAutoInit.h" 2 VTK_MODULE_INIT(vtkRenderingOpenGL2); 3 VTK_MODULE_INIT(vtkInteractionStyle); 4 5 #include <vtkSmartPointer.h> 6 #include <vtkImageData.h> 7 #include <vtkImageFFT.h> 8 #include <vtkImageRFFT.h> 9 #include <vtkRenderWindoh> 10 #include <vtkRenderWindowInteractor.h> 11 #include <vtkInteractorStyleImage.h> 12 #include <vtkRenderer.h> 13 #include <vtkImageActor.h> 14 #include <vtkImageCast.h> 15 #include <vtkJPEGReader.h> 16 #include <vtkImageExtractCponents.h> 17 #include <vtkImageFourierCenter.h> 18 #include <vtkImageMagnitude.h> 19 #include <vtkImageShiftScale.h> 20 21 //测试图像:../data/lenagray.jpg 22 int main(int argc, char* argv[]) 23 ; 81 double fftViewport[4] = ; 82 double rfftViewport[4] = ; 83 84 vtkSmartPointer<vtkRenderer> originalRenderer = 85 vtkSmartPointer<vtkRenderer>::New(); 86 originalRenderer>SetViewport(originalViewport); 87 originalRenderer>AddActor(originalActor); 88 originalRenderer>ResetCamera(); 89 originalRenderer>SetBackground(1.0, 1.0, 1.0); 90 91 vtkSmartPointer<vtkRenderer> fftRenderer = 92 vtkSmartPointer<vtkRenderer>::New(); 93 fftRenderer>SetViewport(fftViewport); 94 fftRenderer>AddActor(fftActor); 95 fftRenderer>ResetCamera(); 96 fftRenderer>SetBackground(1.0, 1.0, 1.0); 97 98 vtkSmartPointer<vtkRenderer> rfftRenderer = 99 vtkSmartPointer<vtkRenderer>::New(); 100 rfftRenderer>SetViewport(rfftViewport); 101 rfftRenderer>AddActor(rfftActor); 102 rfftRenderer>ResetCamera(); 103 rfftRenderer>SetBackground(1.0, 1.0, 1.0); 104 105 vtkSmartPointer<vtkRenderWindow> renderWindow = 106 vtkSmartPointer<vtkRenderWindow>::New(); 107 renderWindow>AddRenderer(originalRenderer); 108 renderWindow>AddRenderer(fftRenderer); 109 renderWindow>AddRenderer(rfftRenderer); 110 renderWindow>SetSize(640, 320); 111 renderWindow>Render(); 112 renderWindow>SetWindowName("FFTAndRFFTExample"); 113 114 vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor = 115 vtkSmartPointer<vtkRenderWindowInteractor>::New(); 116 vtkSmartPointer<vtkInteractorStyleImage> style = 117 vtkSmartPointer<vtkInteractorStyleImage>::New(); 118 119 renderWindowInteractor>SetInteractorStyle(style); 120 renderWindowInteractor>SetRenderWindow(renderWindow); 121 renderWindowInteractor>Initialize(); 122 renderWindowInteractor>Start(); 123 124 return EXIT_SUCCESS; 125 }



上一篇:VTK 实例25:BMP图像像素值的访问与修改

下一篇:VTK 实例35:图像运算(逻辑运算)


VTK
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图