opencv 相机调亮度_OpenCV:六、调整图像亮度与对比度

本文介绍了如何使用OpenCV进行图像的亮度和对比度调整。通过线性和非线性变换方法,详细解释了如何改变图像的亮度和对比度,并提供了相应的源代码示例,包括使用Mat::convertTo()和LUT()函数进行像素级别的点操作。
摘要由CSDN通过智能技术生成

前言

目标

本章中,将学习如何:

理论

代码演示

相关API

图像处理理论

图像变换就是找到一个函数,把原始图像矩阵经过函数处理后,转换为目标图像矩阵。可以分为两种方式,即像素级别的变换和区域级别的变换:

像素变换(Point operators) - 点操作(pixel transforms)

领域操作(Neighborhood operators) - 区域(area-based )

调整图像亮度和对比度属于像素变换 - 点操作,即变换后的每个像素值都与变换前的同位置的像素值有个函数映射关系。

线性变换

调整对比度和亮度,最常用的就是线性表变换。即g(i,j)=α⋅f(i,j)+β

f(i,j)是原像素值,g(i,j)是变换后的像素值

α 调整对比度,β调整亮度.有时也称之为gain和bias参数.

对比度是什么?不就是“亮和暗的区别”吗?也就是像素值大小的区别。如果乘以一个alpha系数,当alpha很大的时候就是放大了这个亮度值的差异,也就是提高了对比度,当alpha很小时,也就是缩小了亮度的差异,也就是降低了对比度。beta就更好理解了,直接在像素的亮度值上加上一个常数,为正数时就是提搞图像亮度,为负数就是降低图像亮度。

源代码

int main(int argc, char** argv) {

Mat src, dst;

src = imread("../images/test.png");

if (!src.dat

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值