數字圖像處理:圖像反轉

jpg格式的都是三通道,灰度圖的三個通道數值一樣。

#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
void reverse(Mat &image, Mat &result)
{
	result = image.clone();
	int rows = image.rows, cols = image.cols;
	for (int i = 0; i < rows; i++)
	{
		for (int j = 0; j < cols; j++)
		{
			for (int k = 0; k < 3; k++)
			{
				result.at<Vec3b>(i, j)[k] = image.at<Vec3b>(rows - 1 - i, cols - 1 - j)[k];
			}
		}
	}
}
int main()
{
	Mat image = imread("f:\\圖片\\cute.jpg");
	Mat result;
	reverse(image, result);
	namedWindow("原圖");
	namedWindow("反轉圖");
	imshow("原圖", image);
	imshow("反轉圖", result);
	waitKey(0);
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章