opencv访问像素,改变灰度值,亮度增强

本文介绍了如何使用OpenCV通过指针遍历像素来改变灰度图的亮度值,适合OpenCV初学者。文章涵盖了at方法、迭代器和指针三种访问像素的方式,并提供了使用迭代器增强灰度图像像素值的示例。

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

今天小编分享一篇改变灰度图亮度值的干货

有什么建议请多多评价那

#include"stdafx.h"
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>

using namespace cv;
using namespace std;


void lightImage(Mat& inputImage, Mat& outputImage, int bate);//亮度增强
void on_trackbar(int, void*);
//全局变量
int bate;  //增加的亮度值
int bate_max = 150;
Mat image2;
Mat result2;


int main()
{
	image2 = imread("lena.jpg", 0);

	namedWindow("灰度图原图");
	imshow("灰度图原图", image2);

	bate = 0;
	createTrackbar("亮度值", "显示结果", &bate, bate_max, on_trackbar);
	on_trackbar(bate, 0);
	//lightImage(image2, result2,bate);
	//namedWindow("灰度图亮度增强");
	//imshow("灰度图亮度增强", result2);
	on_trackbar(bate,0);
	waitKey();
	return 0;
}
void brightImage(Mat& inputImage, Mat& outputImage, int bate)
{
	//参数准备
	outputImage = inputImage.clone();  //拷贝实参到临时变量
	int nRows = outputImage.rows; //行数
	int nCols = outputImage.channels() * outputImage.cols;  //列数
	int a = 255 / log(1024);
	for (int i = 0; i < n
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值