OpenCV 4.x API 详解与C++实例-颜色映射

第六节 颜色映射

人类的感知并不是为观察灰度图像的精细变化而建立的。 人眼对观察颜色之间的变化更为敏感,因此您通常需要重新着色灰度图像以获取有关它们的线索。 OpenCV现在带有各种颜色图,以增强计算机视觉应用程序中的可视化效果。

在OpenCV中,只需要applyColorMap即可在给定图像上应用颜色图。

  • void cv::applyColorMap(InputArray src,OutputArray dst,int colormap)

参数如下:

参数名称 参数描述
src 输入图像,灰度或彩色CV_8UC1或CV_8UC3类型。
dst 输出颜色映射的源图像
colormap 颜色映射类型, 请参考 ColormapTypes
  • void cv::applyColorMap(InputArray src,OutputArray dst,InputArray userColor)

参数如下:

参数名称 参数描述
src 输入图像,灰度或彩色CV_8UC1或CV_8UC3类型。
dst 输出颜色映射的源图像。
userColor 应用的CV_8UC1或CV_8UC3类型的颜色图,大小为256
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main(int argc, const char *argv[])
{
    // 读取图像
    cv::Mat src = cv::imread("images/leaf.jpg");
    if(src.empty()){
        cerr << "cannot read image.\n";
        return EXIT_FAILURE;
    }

    Mat img_color;
    // 应用颜色映射
    applyColorMap(src, img_color, COLORMAP_JET);

    // 显示
    imshow("src",src);
    imshow("colorMap", img_color);
    waitKey(0);
    return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wujuxKkoolerter/article/details/112426598
今日推荐