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

OpenCV计算摄影学(14)实现对比度保留去色(Contrast Preserving Decolorization)的函数decolor()

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

将彩色图像转换为灰度图像。它是数字印刷、风格化的黑白照片渲染,以及许多单通道图像处理应用中的基本工具。
cv::decolor 是 OpenCV 中用于实现对比度保留去色(Contrast Preserving Decolorization)的一个函数。此函数可以将输入的彩色图像转换为灰度图像,同时生成一个颜色增强图,该增强图可用于后续处理或分析。这种方法旨在保持原始图像中的对比度信息,使得转换后的灰度图像尽可能地保留原始图像的视觉特性。

函数原型

void cv::decolor 	
(
	InputArray  	src,
	OutputArray  	grayscale,
	OutputArray  	color_boost 
) 		

参数

  • 参数src:输入的8位3通道图像。
  • 参数grayscale:输出的8位1通道图像。
  • 参数color_boost:输出的8位3通道图像。

此函数应用于彩色图像。

代码示例

#include <iostream>
#include <opencv2/opencv.hpp>

int main()
{
    // 加载图像
    cv::Mat src = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/jiangnan.jpg" );
    if ( src.empty() )
    {
        std::cerr << "无法加载图像!" << std::endl;
        return -1;
    }

    // 初始化输出矩阵
    cv::Mat grayscale, color_boost;

    // 应用 decolor 函数
    cv::decolor( src, grayscale, color_boost );

    // 显示原始图像、灰度图像和颜色增强图像
    cv::imshow( "Original Image", src );
    cv::imshow( "Grayscale Image", grayscale );
    cv::imshow( "Color Boost Image", color_boost );

    // 将结果保存到文件
    cv::imwrite( "grayscale_image.jpg", grayscale );
    cv::imwrite( "color_boost_image.jpg", color_boost );

    cv::waitKey( 0 );
    return 0;
}

运行结果

在这里插入图片描述

相关文章:

  • TypeError: Cannot create property ‘xxx‘ on string ‘xxx‘
  • HTTP 与 HTTPS 协议:从基础到安全强化
  • C语言学习知识点总结(适合新手/考试复习)
  • 项目--高并发CPP内存池,低配版本
  • 【人工智能】Deepseek 与 Kimi 联袂:重塑 PPT 创作,开启智能演示新纪元
  • springBoot集成声明式和编程式事务的方式
  • Python基于Django的图书馆管理系统【附源码、文档说明】
  • RangeError: Invalid array length
  • linux0.11内核源码修仙传第五章——内存初始化(主存与缓存)
  • 高颜值多端适用软件:兼具屏保功能,PC 端登录可用
  • 数据结构(队列)
  • DeepSeek-R1本地化部署(Mac)
  • 【原创】springboot+vue实验室预约管理系统设计与实现
  • 增删改查 数据下载 一键编辑 删除
  • SpringSecurity认证授权完整流程
  • 城市霓虹灯夜景拍照后期Lr调色教程,手机滤镜PS+Lightroom预设下载!
  • instr,locate是否使用索引实验
  • DeepSeek【部署 03】客户端应用ChatBox、AnythingLLM及OpenWebUI部署使用详细步骤
  • 并发编程——累加器
  • 【华三】STP端口角色与状态深度解析
  • 网站建设属于设备吗/网络推广网站的方法
  • 网站如何分页/免费引流推广怎么做
  • 新站整站优化/seo资源网站 排名
  • 手机网站有哪些类型/石家庄网络推广平台
  • 宿迁宿豫网站建设/seo关键词seo排名公司
  • 做网站用什么服务器比较好/坚持