#include<iostream>
#include <opencv2/opencv.hpp>
#include<opencv2/highgui.hpp> //图形界面和视频图像处理的头文件图形界面和视频图像处理的头文件。
#include<opencv2/imgproc.hpp>
using namespace std;
using namespace cv;
//图像处理函数
void function1()
{
Mat src;//生成一个矩阵
int high, width;//图像宽高
int i, j;
char imagpath[] = "C:\\Users\\pc\\Pictures\\Camera Roll\\2.jpeg";//图片的路径
src = imread(imagpath);//读入图片,并给src矩阵分配该图片大小的存储空间
high = src.rows;
width = src.cols*3;//读取图片的大小,即有多少行多少列
namedWindow("yuantu", cv::WINDOW_AUTOSIZE);//使显示窗口的大小适配图片的大小
imshow("yuantu", src);//显示图片
for (i = 0; i < high; i++)
{
for (j = 0; j < width; j++)//矩阵中逐个像素遍历
{
src.at<uchar>(i, j) = 255 - src.at<uchar>(i, j);//将图片中的灰度全部反转过来
}
}
namedWindow("fangzhuan", cv::WINDOW_AUTOSIZE);//使显示窗口的大小适配图片的大小
imshow("fangzhuan", src);
waitKey();
}
int main()
{
function1();
return 0;
}