天天看点

Opencv3图片旋转(仿射变换)

惯例先放结果:

Opencv3图片旋转(仿射变换)

代码如下:

#include<opencv2/opencv.hpp>
using namespace cv;
int main() {
	Mat frame = imread("1.jpg");
	imshow("原图", frame);
	int width = frame.cols;
	int length = frame.rows;
	Mat rotation=getRotationMatrix2D(Point2f(length/2, width/2), 45, 1.0);
	warpAffine(frame, frame,rotation, Size(length, width));
	imshow("旋转45度", frame);
	waitKey(-1);
}
           

两个关键函数:

1.getRotationMatrix2D获取旋转矩阵,三个参数分别为:旋转中心点坐标,旋转角度,图片缩放比例

2.warpAffine应用仿射变换,参数分别为:输入Mat,输出Mat,旋转Mat,图片大小

Opencv3图片旋转(仿射变换)