opencv学习系列——图像对比度亮度调节

本文介绍了如何利用OpenCV的Sigmoid函数调整图像的对比度和亮度。首先,通过线性函数实现基本的对比度亮度调节,然后详细探讨了Sigmoid函数的特性及其在图像处理中的应用,包括核心调节代码。最后,通过创建滑动条交互式地改变Sigmoid函数参数,实现不同级别的对比度和亮度调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验2.1:对比度调整
设计一个Sigmoid函数,实现对图像的对比度调整(使用opencv窗口系统的slider控件,交互改变Sigmoid函数的参数,实现不同程度的对比度调整;)
(1)线性函数调节对比度亮度:
根据调节公式g(i,j) = af(i,j) + b*,在新建的图像里进行
new_image.at(y, x)[c] = saturate_cast
(0.01a(image.at(y,x)[c])+b)即可。
(2)线性测试截图:
在这里插入图片描述代码

#include<opencv2/core/core.hpp>
#include<opencv2/imgcodecs.hpp>
#include<opencv2/core/saturate.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<iostream> 

using namespace std;
using namespace cv;

int main(int, char** argv)
{
   
	double alpha = 1.0; //< Simple contrast control 
	int beta = 0;       //< Simple brightness control 

	Mat image = imread("D:\\picture\\leaf.jpg");
	Mat new_image = Mat::zeros(image.size(), image.type());//创建新的图像

	cout << "* Enter the alpha value [1.0-3.0]: "; cin >> alpha;
	cout << "* Enter the beta value [0-100]: ";    cin >> beta;

	for (int y = 0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值