C++ OpenCV:如何在图像上应用彩虹渐变贴图?
假设我们通过openCV修改了一幅图像: 现在,我们很乐意申请:C++ OpenCV:如何在图像上应用彩虹渐变贴图?,c++,c,opencv,gradient,C++,C,Opencv,Gradient,假设我们通过openCV修改了一幅图像: 现在,我们很乐意申请: 所以我想知道如何通过OpenCV?< /P> < P>应用渐变映射(彩虹色)。这里是一种用Python创建假/伪彩色图像的方法,转换到C++应该非常简单。概述: 以灰度和RGB格式打开图像 将RGB图像转换为HSV(色调、饱和度、值/亮度)颜色空间。这是一个圆柱形空间,色调由极轴上的单个值表示 将色调通道设置为我们已经打开的灰度图像,这是关键步骤 将值和饱和通道都设置为最大值 转换回RGB空间(否则显示将不正确) 不过有几个陷
所以我想知道如何通过OpenCV?< /P> < P>应用渐变映射(彩虹色)。这里是一种用Python创建假/伪彩色图像的方法,转换到C++应该非常简单。概述:
180/256.0
现在存在一个名为openCV的函数,它使这个过程变得简单。下面的代码将完成此任务
image_cm = cv2.applyColorMap(image, cv2.COLORMAP_JET))
这就是结果:
图1:原始平面
图2:Plane在应用colormap后好吧,我对OpenCV一无所知,但是这个过程分为两部分,从RGB到灰度,然后使用这个渐变将灰度恢复到RGB。请参见第一部分和第二部分。@如果我们想使用opencv在像这里这样的图像上使用photoshop的渐变色空间,该怎么办
image_cm = cv2.applyColorMap(image, cv2.COLORMAP_JET))