简单的用filter2D掩膜操作来实现一下提高图片的对比度;
#include <opencv2/opencv.hpp>
#include <iostream>
#include <math.h>
using namespace cv;
int main(int argc, char** argv)
{
Mat a, s;
a = imread("D:/文件/VS2015练习/c++/opencv/OpenCV03-矩阵的掩膜操作/w3.jpg");
if (!a.data)
{
printf("could not load image...\n");
return(-1);
}
namedWindow("原图",CV_WINDOW_AUTOSIZE);
imshow("原图", a);
Mat c = (Mat_<char>(3, 3) << 0, -1, 0, -1, 5, - 1, 0, -1, 0);
filter2D(a, s, a.depth(), c);
namedWindow("掩膜后", CV_WINDOW_AUTOSIZE);
imshow("掩膜后", s);
waitKey();
return(0);
}
原理;
当然如果你的图片太大可以用这个API处理一下
resize(image, image_5_min, Size(image.cols / 5, image.rows / 5), 0, 0, INTER_NEAREST);//五倍缩