OpenCV靜心修煉總結篇6——影象亮度與對比度調節
阿新 • • 發佈:2018-12-22
影象的亮度與對比度調節原理
參考程式碼:
int image_change_bright() { Mat src,dst; src = imread("E:\\1.png"); if(src.empty()) { printf("開啟影象失敗\n"); return -1; } imshow("input image",src); int height =src.rows; int wide =src.cols; dst = Mat::zeros(src.size(),src.type()); int alpha = 1.5; int bate =50; for(int row=0;row<height;row++) for(int col=0;col<wide;col++) { if(src.channels()==3) { int b= src.at<Vec3b>(row,col)[0]; int g= src.at<Vec3b>(row,col)[1]; int r= src.at<Vec3b>(row,col)[2]; dst.at<Vec3b>(row,col)[0]=saturate_cast<uchar>(b*alpha+bate); dst.at<Vec3b>(row,col)[1]=saturate_cast<uchar>(g*alpha+bate); dst.at<Vec3b>(row,col)[2]=saturate_cast<uchar>(r*alpha+bate); } else if(src.channels()==1) { } } imshow("output",dst); waitKey(0); }