OpenCV3_C++_RotateCotinue()连续回转图像 实例

来源:互联网 发布:前瞻数据库 编辑:程序博客网 时间:2024/05/02 22:14

Opencv3 的开发环境安装和导入请看

http://blog.csdn.net/sileixinhua/article/details/71175748

所有的OpenCV3_C++实例代码请看

https://github.com/sileixinhua/OpenCV_C-_tutorials

实例

#include "stdafx.h"#include <opencv2/opencv.hpp>#pragma comment(lib,"opencv_world330.lib")//using namespace cv;//using namespace std;//去掉以上两行代码注释之后就可以不用在下面的代码中加上cv::和std:://cv::为OpenCV的函数库//std::为C++的标准函数库int RotateCotinue() {    cv::Mat src, dst;    const char* filename = "C:\\Code\\FirstOpenCVProgramming\\lena.jpg";    cv::imread(filename).copyTo(src);    if (src.empty()) {        throw("Faild open file.");    }    cv::Point2f center = cv::Point2f(static_cast<float>(src.cols / 2),        static_cast<float>(src.rows / 2));    cv::imshow("src",src);    cv::namedWindow("dst",cv::WINDOW_AUTOSIZE);    for (float angle = 0.0; angle < 360.0; angle++) {        cv::Mat affineTrans = getRotationMatrix2D(center,angle,1.0);        cv::warpAffine(src,dst,affineTrans,src.size(),cv::INTER_CUBIC);        cv::imshow("dst",dst);        if (cv::waitKey(1) >= 0)            break;    }    //for循环为连续旋转图像    return 0;}int main(){    //以下的方法如果想运行,直接把前头的注释去掉即可    //运行代码的时候请改掉filename里的地址    //我的opencv是安装在C盘目录下    //一些目录地址请自行修改一下    RotateCotinue(); //连续回转图像    return 0;}

原图像

这里写图片描述

结果图像

这里写图片描述