opencv之对比度和亮度的调节

opencv之对比度和亮度的调节

  • 公式

\[ g(x) = a*f(x) + b\]

注:\(f(x)\) 为输入图像, \(g(x)\) 为输出图像。

注:\(a\)为增益,用于控制图像的对比度; \(b\)为偏置,用于控制图像的亮度。

  • 代码
for (int y = 0; y < image.rows; ++y)
  {
    for (int x = 0; x < image.cols; ++x)
    {
      for (int c = 0; c < image.channel; ++c)
      {
        new_image.at<cv::Vec3b>(y, x)[c] = cv::saturate_cast<uchar>(contrast_value * (image.at<cv::Vec3b>(y, x)[c]) + bright_value);
      }
    }
  }

注: cv::saturate_cast<uchar>()是为了防止结果超出范围,用于溢出保护。

注:为了对比效果一般, constrast_value取值范围为: 0.0 -3.0之间。

原文地址:https://www.cnblogs.com/ChrisCoder/p/10260956.html

时间: 2024-10-11 19:10:53

opencv之对比度和亮度的调节的相关文章

【OpenCV入门教程之六】 创建Trackbar &amp; 图像对比度、亮度值调整(转)

本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/21479533 作者:毛星云(浅墨)    邮箱: [email protected] 写作当前博文时配套使用的OpenCV版本: 2.4.8 这篇文章中我们一起学习了如何在OpenCV中用createTrackbar函数创建和使用轨迹条,以及图像对比度.亮度值的动态调整. 文章首先详细讲解了OpenCV2.0中的新版创建轨迹条的函数c

opencv ,亮度调整【【OpenCV入门教程之六】 创建Trackbar &amp; 图像对比度、亮度值调整

http://blog.csdn.net/poem_qianmo/article/details/21479533 [OpenCV入门教程之六] 创建Trackbar & 图像对比度.亮度值调整 标签: opencvvs2010c++图像处理 2014-03-18 21:43 43189人阅读 评论(99) 收藏 举报  分类: [OpenCV](18)  目录(?)[+] 本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qian

OpenCV入门:(五:更改图片对比度和亮度)

1. 理论 图片的转换就是将图片中的每个像素点经过一定的变换,得到新像素点,新像素点组合成一张新的图片. 改变图片对比度和亮度的变换如下: 其中α和β被称作增益参数(gain parameter)和偏差参数(bias parameter),分别控制对比度和亮度. 2. 实现代码 使用上述公式实现改变对比度和亮度的代码如下: void ContrastAndBrightness(const Mat& Src,Mat& Dst,double alpha,double beta) { Dst =

OpenCV(5) 对比度和亮度

? 公式: 两个参数 \alpha > 0 和 \beta 一般称作 增益 和 偏置 参数.我们往往用这两个参数来分别控制 对比度 和 亮度 . ? #include "stdafx.h" #include<iostream> #include<thread> #include<vector> #include <opencv2/core/core.hpp> #include <opencv2/contrib/contrib.

【opencv入门之四】Trackbar、图像对比度、亮度值调整

参考网站: http://blog.csdn.net/poem_qianmo/article/details/21479533 1.轨迹条(Trackbar) createTrackbar函数(创建轨迹条) 注意:它会和一个回调函数配合使用 C++: int createTrackbar(conststring& trackbarname, conststring& winname, int* value, int count, TrackbarCallback onChange=0, v

学习 opencv---(5) 创建Trackbar(活动条) &amp;图像对比度,亮度值调整

学习如何在opencv 中用trackbar 函数创建和使用 轨迹条,以及图像对比度,亮度值的动态调整 一.OpenCV中轨迹条(Trackbar)的创建和使用 [1]创建轨迹条-----createTrackbar 函数详解 createTrackbar这个函数我们以后会经常用到,它创建一个可以调整的轨迹条,并将轨迹条附加到指定的窗口上,使用起来方便,首先,它往往会和一个回调函数 配合起来使用,先看它的函数原型: 1 int createTrackbar(conststring &tracke

9.调整图像的对比度和亮度

//调整对比度和亮度 int g_nContrastValue; int g_nBrightValue; Mat g_srcImage_Contrast; Mat g_dstImage_Contrast; //滑动条事件处理函数 void on_ContrastAndBright(int,void*) { for(int x=0;x<g_srcImage_Contrast.rows;x++) { for(int y=0;y<g_srcImage_Contrast.cols;y++) { for

图像对比度和亮度

图像亮度通俗理解便是图像的明暗程度,数字图像 f(x,y) = i(x,y) r(x, y) ,如果灰度值在[0,255]之间,则 f 值越接近0亮度越低,f 值越接近255亮度越高.而且我们也要把亮度和对比度区分开来,正如上述提的对比度指的是最高和最低灰度级之间的灰度差. 饱和度指的是图像颜色种类的多少, 上面提到图像的灰度级是[Lmin,Lmax],则在Lmin.Lmax 的中间值越多,便代表图像的颜色种类多,饱和度也就更高,外观上看起来图像会更鲜艳,调整饱和度可以修正过度曝光或者未充分曝光

win10亮度不能调节的解决方法

如果大家遇到Win10屏幕亮度调不了,该如何解决呢?以下是电脑百事网小编亲测比较有用的几种方法,希望能够帮助大家. 修改注册表解决Win10屏幕亮度无法调节 1.首先使用 Win+R 组合快捷键打开Win10运行对话框,然后在打开后面输入命令:regedit 完成后,点击下方的“确定”,如下图所示. 2.打开注册表编辑器后,依次展开位置:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-0