Advertisement

vtkImageData转为cv::Mat

阅读量:

当采用VTK进行开发时,在生成渲染后的图像数据方面通常会使用vtkWindowToImageFilter对象。当需要利用 OpenCV 进行图像处理前,请确保获取的 OpenCV 处理前需将其转译为 cv::Mat 格式。本文旨在阐述如何实现 vtkImageData 到 cv::Mat 格式的转译过程。

核心的代码如下:

复制代码
    int dim[3];
    windowToImageFilter->GetOutput()->GetDimensions(dim);
    // convert vtkImageData to cv::Mat
    cv::Mat renderedImg(dim[1],
                        dim[0],
                        CV_8UC3,
                        windowToImageFilter->GetOutput()->GetScalarPointer());
    
    cv::cvtColor(renderedImg, renderedImg, CV_BGR2GRAY);
    cv::flip(renderedImg, renderedImg, 0);

全部评论 (0)

还没有任何评论哟~