
【 OpenCV】——图像旋转
前言
本文介绍了图片旋转的基础内容。
使用步骤
##1.引入库
#include
#include
using namespace std;
using namespace cv;
// 图像旋转(图像部分显示)
void fun(Mat &img1, Mat &img2, double angle)//angle表示要旋转的角度
{
Point2f center(img1.cols / 2, img1.rows / 2);//中心
Mat m = getRotationMatrix2D(center, angle, 1);//计算旋转的仿射变换矩阵
//现在把旋转应用到仿射变换的输出
warpAffine(img1, img2, m, Size(img1.cols, img1.rows));//仿射变换
}
// 图像旋转(图像全部显示)
void fun1(Mat &img1, Mat &img2, double angle)//angle表示要旋转的角度
{
Point2f center(img1.cols / 2, img1.rows / 2);//中心
Mat m = getRotationMatrix2D(center, angle, 0.6);//计算旋转的仿射变换矩阵
//现在把旋转应用到仿射变换的输出
warpAffine(img1, img2, m, Size(img1.cols, img1.rows));//仿射变换
//circle(img2, center, 2, Scalar(255, 0, 0));
}
int main()
{
Mat image1;
//读取图像
image1 = imread("F:\专高CV2\图片\520.jpg");
imshow("原图", image1);
Mat image2;
double angle = 9.9;//角度
fun(image1, image2, angle);
imshow("旋转图片1", image2);
Mat image3;
double angle1 = 9.9;//角度
fun1(image1, image3, angle1);
imshow("旋转图片2", image3);
waitKey(0);
return 0;
}
效果图展示 总结
以上是一个简单的图像旋转,对图像旋转之后图像部分显示,以及图像全部显示基础内容。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)