#include <opencv2\opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
	Mat a = imread("./a.jpg");
	Mat output = Mat::zeros(a.size(), a.type());
	//定义一个新的Mat对象大小类型与a相同
	//对每个Mat的像素进行处理
	//图像为三通道,是通道就按照几通道进行像素处理
	for (int i = 0; i < a.rows; ++i) {
		for (int j = 0; j < a.cols; ++j) {
			output.at<Vec3b>(i, j)[0] = saturate_cast<uchar>(a.at<Vec3b>(i, j)[0] * 1.3 + 1);//b
			output.at<Vec3b>(i, j)[1] = saturate_cast<uchar>(a.at<Vec3b>(i, j)[1] * 1.3 + 1);//g
			output.at<Vec3b>(i, j)[2] = saturate_cast<uchar>(a.at<Vec3b>(i, j)[2] * 1.3 + 1);//r
		}//1.3为对比度权重,1为亮度权重
	}
	imshow("output", output);
	waitKey(0);
	return 0;
}