当前位置: 首页 > article >正文

第九节 Opencv自带颜色表操作

知识点:Look Up lTable(LUT)查找表

了解LUT查找表的作用与用法,代码实现与API介绍

-applyColorMap(src,dst,COLORMAP)

-src表示输入图像

-dst表示输出图像

=匹配到的颜色LUT,Opencv支持13种颜色风格的查找映射

void QUickdemo::color_style_demo(Mat& image)
{
    int colormap[] = {

        COLORMAP_AUTUMN,
        COLORMAP_BONE,
        COLORMAP_JET,
        COLORMAP_WINTER,
        COLORMAP_RAINBOW,
        COLORMAP_OCEAN,
        COLORMAP_SUMMER,
        COLORMAP_SPRING,
        COLORMAP_COOL,
        COLORMAP_HSV,
        COLORMAP_PINK,
        COLORMAP_HOT,
        COLORMAP_PARULA,
        COLORMAP_MAGMA,
        COLORMAP_INFERNO,
        COLORMAP_TURBO,
        COLORMAP_PLASMA,
        COLORMAP_VIRIDIS,
    };
    Mat dst;
    int index = 0;
    while (true)
    {
        int c = waitKey(2000);--等待用户键盘输入,如果在2s没有输入将会输入-1.
        if (c == 27)
        {
            break;
        }
        applyColorMap(image, dst, colormap[index % 19]);--在opencv中applyColormap函数用于将颜色映射应用于输入图像,image输入单通道灰度图像,dst输出的三通道的彩色图像,colormap【。。。】预先定义的包含多个颜色映射常量的列表和数组,colormap【index%19】规定一直趋于在0-18之间循环;
            index++;
            imshow("颜色风格", dst);
    }
}

image是原始输入图像,它在整个过程中保持不变(除非外部有对它的修改操作)。

程序通过不断变化的index值,结合colormap[index % 19]从一系列预定义的颜色映射中选择一个特定的颜色映射常量。然后通过applyColorMap(image, dst, colormap[index % 19])将输入图像image按照选定的颜色映射进行处理,并将结果输出到dst图像中。

所以可以说是根据不断变化的index(由用户等待时间和键盘输入决定其变化)来从applyColorMap的可用颜色映射中选择对应的颜色映射,并将处理后的结果赋予dst。

个人理解,如有问题,请多指正


http://www.kler.cn/a/317457.html

相关文章:

  • STM32中,不进行printf改写通过函数达到同款效果
  • Vim 编辑器学习笔记
  • 基于yolov8、yolov5的鱼类检测识别系统(含UI界面、训练好的模型、Python代码、数据集)
  • 【AI日记】24.11.14 复习和准备 RAG 项目 | JavaScript RAG Web Apps with LlamaIndex
  • 微服务各组件整合
  • 深度学习——优化算法、激活函数、归一化、正则化
  • Unity using API openai Error en la solicitud: HTTP/1.1 400 Bad Request
  • 本地搭建我的世界服务器(JAVA)简单记录
  • JSP(Java Server Pages)基础使用
  • 打破网络安全域限制:跨区域文件传输的创新解决方案
  • Unity项目的脚本继承关系
  • 如何编写自己的Arduino库?
  • git reset 命令
  • 封装 WBXpopup 组件
  • 【C#】垃圾回收
  • 项目总结,路径匹配的业务逻辑
  • Docker使用指南
  • HTML常用的文本标签
  • Docker + Win 10 学习记录
  • OpenAI GPT o1技术报告阅读(3)-英文阅读及理解
  • 828华为云征文 | 云服务器Flexus X实例:RAG 开源项目 FastGPT 部署,玩转大模型
  • 数据结构-C语言实现线性表的顺序存储结构
  • Python Web日志管理与监控实践指南
  • OpenCV特征检测(12)检测图像中的潜在角点函数preCornerDetect()的使用
  • 使用ffmpeg实现音视频文件格式转换
  • C语言从头学62——学习头文件stdlib.h(一)