OpenCV这么简单为啥不学——1.6、图像旋转与翻转(rotate函数、imutils环境安装、imutils任意角度旋转)
2023-06-13 09:16:57 时间
OpenCV这么简单为啥不学——1.6、图像旋转与翻转(rotate函数、imutils环境安装、imutils任意角度旋转)
目录
OpenCV这么简单为啥不学——1.6、图像旋转与翻转(rotate函数、imutils环境安装、imutils任意角度旋转)
前言
计算机视觉市场巨大而且持续增长,且这方面没有标准API,如今的计算机视觉软件大概有以下三种:
1、研究代码(慢,不稳定,独立并与其他库不兼容) 2、耗费很高的商业化工具(比如Halcon, MATLAB+Simulink) 3、依赖硬件的一些特别的解决方案(比如视频监控,制造控制系统,医疗设备)这是如今的现状,而标准的API将简化计算机视觉程序和解决方案的开发,OpenCV致力于成为这样的标准API。
OpenCV致力于真实世界的实时应用,通过优化的C代码的编写对其执行速度带来了可观的提升,并且可以通过购买Intel的IPP高性能多媒体函数库(Integrated Performance Primitives)得到更快的处理速度。
故而我们选择学习OpenCV,我们来一步步的学习OpenCV。
图像旋转与翻转
图像旋转
rotate函数语法
rotate(src, rotateCode, dst=None)
rotate函数参数说明
src:输入图像 rotateCode:翻转角度,3种选择,90度,180度,270度 dst:输出图像
实例代码
import cv2
img = cv2.imread('800_600.jpg')
img = cv2.resize(img, None, fx=0.7, fy=0.7)
# 平移 3种旋转,使用cv2.ROTATE_参数进行选择
# 顺时针90度
demo1 = cv2.rotate(img, cv2.ROTATE_90_CLOCKWISE)
# 顺时针270度
demo2 = cv2.rotate(img, cv2.ROTATE_90_COUNTERCLOCKWISE)
# 顺时针180度
demo3 = cv2.rotate(img, cv2.ROTATE_180)
cv2.imshow('base', img)
cv2.imshow('demo1', demo1)
cv2.imshow('demo2', demo2)
cv2.imshow('demo3', demo3)
cv2.waitKey(0)
cv2.destroyAllWindows()
旋转效果
imutils环境安装
pip install imutils
逆时针旋转33度
import cv2
import imutils
img = cv2.imread('800_600.jpg')
img = cv2.resize(img, None, fx=0.7, fy=0.7)
demo1 = imutils.rotate_bound(img, -33)
cv2.imshow('base', img)
cv2.imshow('demo1', demo1)
cv2.waitKey(0)
cv2.destroyAllWindows()
旋转效果:
图像翻转
图像上下翻转
import cv2
image = cv2.imread('800_600.jpg')
dst = cv2.flip(image, 0)
cv2.imshow("image", image)
cv2.imshow("res2", dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
核心代码
dst = cv2.flip(image, 0)
图像左右翻转
import cv2
image = cv2.imread('800_600.jpg')
dst = cv2.flip(image, 1)
cv2.imshow("image", image)
cv2.imshow("res2", dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
核心代码
dst = cv2.flip(image, 1)
图像上下左右翻转
import cv2
image = cv2.imread('800_600.jpg')
dst = cv2.flip(image, -1)
cv2.imshow("image", image)
cv2.imshow("res2", dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
核心代码
dst = cv2.flip(image, -1)
总结
旋转与翻转操作是非常多的,我们很多时候都会需要这个功能,为了方便查询都放在这个文章中了,后续有其它旋转的方法我也都放进来,查询起来方便、快捷、高效。
相关文章
- ubuntu 18.04 安装 opencv(踩了很多雷终于整合成一个完整的成功版本)[通俗易懂]
- pycharm安装opencv-python_geany配置python
- ubuntu18.04安装opencv教程_Ubuntu18安装opencv
- pycharm安装opencv2_python opencv 教程
- pycharm中安装opencv_pycharm安装opencv库出错
- pycharm配置opencv-Python_pycharm环境安装
- Docker安装OpenCV
- 基于opencv人脸识别
- VS2019+OpenCV安装与配置教程
- windows下OpenCV安装教程(小白教程)
- 配置OpenCV+VisualStudio最快的方法
- 使用 OpenCV 和 Python 模糊和匿名化人脸
- opencv gamma校正_opencv resize函数踩坑
- linux下 opencv 和 ffmpeg安装「建议收藏」
- vs2019配置opencv什么版本_vs配置opencv
- pycharm配置OpenCV_pycharm opencv安装
- gis如何无缝拼接两张图_opencv图像拼接
- ubuntu配置opencv环境_opencv的安装与配置详细教程
- opencv remap matlab,如何使用OpenCV的remap函数?
- OpenCV趣味应用系列--grabCut人物背景替换
- 使用 OpenCV 的基于标记的增强现实
- Python+Opencv读取高帧率USB摄像头问题
- 【Android OpenCV】Visual Studio 创建支持 OpenCV 库的 CMake 工程 ④ ( OpenCV 官方代码示例 )
- Linux服务器上如何安装OpenCV的库?
- Linux 安装OpenCV简易指南(linux安装opencv)