[opencv] 图像旋转180度要注意的细节问题

栏目: Web · 发布时间: 2020-09-09

来源: 战侠歌1994

作者:战侠歌1994

简介  这篇文章主要介绍了[opencv] 图像旋转180度要注意的细节问题以及相关的经验技巧,文章约1855字,浏览量117,点赞数2,值得参考!

两种方法:

第一种传统warpAffine

    cv::Point2f center = cv::Point2f(image.cols / 2, image.rows / 2);  
    cv::Mat rotateMat;   
    rotateMat = cv::getRotationMatrix2D(center, 180,1);  
    cv::Mat rotateImg;  
    cv::warpAffine(image, rotateImg, rotateMat, image.size());  

第二种transpose + flip

    transpose(image,b);
    ////transpose(b,b);
    flip(b,b,1);    //Horizontal flipping
    transpose(b,b);
    flip(b,b,1);    //Horizontal flipping

结果展示,主体都没问题,123是第二种transpose + flip结果,234是第一种warpAffine

细节在于warpAffine会有one pixel的黑边。下图依次是原图的右下角像素点,123图左上角像素点,234图左上角像素点。

      

 


以上就是本文的全部内容,希望对大家的学习有所帮助,本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文地址:http://www.cnblogs.com/zhanxiage1994/p/6687506.html

opencv 图像平移、缩放、旋转、翻转 图像仿射变换(示例代码)

使用Python,OpenCV旋转图像任意角度(完整和局部丢失~)

OpenCV利用矩阵实现图像旋转(示例代码)

在python中的openCV中绘制一个旋转的框

Python图像处理!(示例代码)

OpenCV Python围绕特定点旋转图像X度(示例代码)

【图像处理】基于OpenCV底层实现的图片旋转

opencv 图像变换原理详解 图像平移 图像旋转 图像缩放(示例代码)