VTK图像操作之灰度映射

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yu253/article/details/78307230

VTK中vtkImageLuminance类提供了彩色图像变换到灰度图像的方法,该类的使用比较简单,可以通过以下代码实现:

int main()
{
    vtkSmartPointer<vtkBMPReader> reader = vtkSmartPointer<vtkBMPReader>::New();
    const char* filename = "D:\\Color2GrayTest.bmp";
    reader->SetFileName(filename);

    vtkSmartPointer<vtkImageLuminance> luminanceFliter = vtkSmartPointer<vtkImageLuminance>::New();
    luminanceFliter->SetInputConnection(reader->GetOutputPort());
    luminanceFliter->Update(); 

    vtkSmartPointer<vtkImageActor> originActor = vtkSmartPointer<vtkImageActor>::New();
    originActor->GetMapper()->SetInputConnection(reader->GetOutputPort());
    vtkSmartPointer<vtkImageActor> resultActor = vtkSmartPointer<vtkImageActor>::New();
    resultActor->GetMapper()->SetInputConnection(luminanceFliter->GetOutputPort());

    double originViewport[4] = { 0.0,0.0,0.5,1.0 };
    double resultViewport[4] = { 0.5,0.0,1.0,1.0 };

    vtkSmartPointer<vtkRenderer> originRender = vtkSmartPointer<vtkRenderer>::New();
    originRender->SetViewport(originViewport);
    originRender->AddActor(originActor);
    originRender->SetBackground(1.0, 1.0, 1.0);
    originRender->ResetCamera();

    vtkSmartPointer<vtkRenderer> resultRender = vtkSmartPointer<vtkRenderer>::New();
    resultRender->SetViewport(resultViewport);
    resultRender->AddActor(resultActor);
    resultRender->SetBackground(1.0, 1.0, 1.0);
    resultRender->ResetCamera();

    vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
    renderWindow->AddRenderer(originRender);
    renderWindow->AddRenderer(resultRender);

    vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
    renderWindow->SetInteractor(renderWindowInteractor);
    renderWindow->SetSize(800, 600);
    renderWindow->SetWindowName("Color2GrayImageTest");
    renderWindow->Render();

    renderWindowInteractor->Start();

    return EXIT_SUCCESS;
}

运行结果:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/yu253/article/details/78307230
今日推荐