当使用Grayscale图像跟RGB图像进行blend的时候,使用vtkImageBlend滤波器,但是这个filter规定了只能进行Grayscale之间或者RGB之间的blend。
当我使用Grayscale图像无法跟RGB图像会遇到error:
`
ERROR: In ..\..\src\Imaging\vtkImageBlend.cxx, line 903
vtkImageBlend (0000000003B47450): input has too many components, can't blend RGB data into greyscale data
</div></div></div><div>解决的思路当然是把灰度图像转换为rgb图像,但是不用映射lookuptable,如果映射了lookuptable,灰色图像将映射到红色至蓝色之间的颜色。</div><div>具体工作代码如下:</div><div><div>
vtkSmartPointer<vtkScalarsToColors> scalarsToColors = vtkSmartPointer<vtkScalarsToColors>::New();
vtkSmartPointer<vtkImageMapToColors> colorMapper = vtkSmartPointer<vtkImageMapToColors>::New();
colorMapper->SetOutputFormatToRGB();
colorMapper->SetInput(reader->GetOutput());
colorMapper->SetLookupTable( scalarsToColors );
</div>`</div></div>参考:http://vtk.1045678.n5.nabble.com/Convert-grayscale-image-to-rgb-td5727289.html#
[来自为知笔记(Wiz)](http://www.wiz.cn/i/c09d0bb5 "来自为知笔记(Wiz)")