OpenCV 图像旋转
在OpenCV中图像旋转首先根据旋转角度和旋转中心获取旋转矩阵,然后根据旋转矩阵进行变换,即可实现任意角度和任意中心的旋转效果。
cv2.getRotationMatrix2D(center, angle, scale)
- center:旋转中心
- angle:旋转角度
- scale:缩放比例
M:旋转矩阵
调用cv.warpAffine完成图像的旋转
import cv2 as cv
import matplotlib.pyplot as plt# 1 读取图像
img = cv.imread("1.png")# 2 图像旋转
rows, cols = img.shape[:2]# 2.1 生成旋转矩阵
M = cv.getRotationMatrix2D((cols/2, rows/2), 90, 1) # 以图形的正中心作为旋转中心,旋转90°# 2.2 进行旋转变换
dst1 = cv.warpAffine(img, M, (cols, rows))M = cv.getRotationMatrix2D((cols/2, rows/2), 45, 0.5) # 旋转45°,缩小为原图的二分之一
dst2 = cv.warpAffine(img, M, (cols, rows)) # 调用warpAffine()函数完成图片旋转# 3 图像展示
fig,axes=plt.subplots(nrows=1, ncols=3, figsize=(10, 8), dpi=100)
axes[0].imshow(img[:, :, ::-1])
axes[0].set_title("原图")
axes[1].imshow(dst1[:, :, ::-1])
axes[1].set_title("旋转后90°结果")
axes[2].imshow(dst2[:, :, ::-1])
axes[2].set_title("旋转后45°结果")
plt.show()
OpenCV 图像旋转相关推荐
- python opencv 图像旋转
python opencv 图像旋转 原图 顺时针旋转 代码: import cv2 path = '2.jpg' img = cv2.imread(path,1) trans_img = cv2.t ...
- OpenCV图像旋转,指定填充背景颜色边界颜色
OpenCV图像旋转,指定填充背景颜色边界颜色 OpenCV与图像旋转有关的函数: (1)warpAffine函数 void cv::warpAffine ( InputArray src, ...
- OpenCV:OpenCV图像旋转的代码
OpenCV图像旋转的代码 cv::transpose( bfM, bfM ) 前提:使用两个矩阵Mat型进行下标操作是不行的,耗费的时间太长了.直接使用两个指针对拷贝才是王道.不知道和OpenCV比 ...
- OpenCV 图像旋转、平移、缩放
本文是 OpenCV图像视觉入门之路的第7篇文章,本文详细的进行了图像的缩放 cv2.resize().旋转 cv2.flip().平移 cv2.warpAffine()等操作. OpenCV 图像旋 ...
- 经验 | OpenCV图像旋转的原理与技巧
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|OpenCV学堂 01 引言 初学图像处理,很多人遇到的 ...
- OpenCV图像旋转的原理与技巧
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 转自|OpenCV学堂 01 引言 初学图像处理,很多人遇到的第一 ...
- opencv 图像旋转_用Dlib和OpenCV还能做什么?这个开源项目实现了驾驶员疲劳检测...
Dlib 和 OpenCV 这两个库已经在深度学习和人脸识别领域逐渐有了自己的一席之地,基于它们的各种开源项目的越来越多,今天 Gitee 上这个开源项目也是基于 Dlib 和 OpenCV 的,具体 ...
- opencv图像旋转和翻转,cv2.flip,cv2.rotate
目录 翻转图像 图像旋转 翻转图像 opencv中使用cv2.filp可以实现图像翻转 def flip(src, flipCode, dst=None) src:输入图像 flipCode:flip ...
- OpenCV图像旋转(cv::rotate)与镜像(cv::flip)
1.概述 案例:使用OpenCV实现图像的旋转和镜像操作 所用函数:这里主要使用到了两个函数 1.旋转:cv::rotate 2.镜像:cv::flip rotate(InputArray src, ...
最新文章
- KOAProgressBar
- 对标Oculus Quest2,爱奇艺奇遇VR打的什么牌?
- 倒计时 4 天!高通人工智能应用创新大赛颁奖典礼线上隆重举行
- 美国本科计算机专业,美国本科计算机专业的最新排名介绍
- 【Boost】boost库asio详解1——io_service::run函数无任务时退出的问题
- android ndk怎样加载o文件_在Android中使用TFLite c++部署
- java that关键字_Java中this关键字的几种用法
- html表格宽度设置相同,我如何使HTML表格的宽度与其包含的div标签相同?
- informix使用得一些小常识
- 新媒体营销方式的优势
- Linux--内核版本和发行版本
- java嵌套for循环基础练习 -班级平均分
- H.264中NALU、RBSP、SODB的关系 (弄清码流结构)
- SSM根据上传文件获取视频文件时长
- Swift创作天气APP
- 国内邮箱免费邮箱注册哪个好?
- c++中子类调用父类方法的方法
- linux进程间通信有kindle版的,计算机网络6寸pdf适合kindle-1.pdf
- Python深度学习-Data Augmentation:使用Augly库进行图片数据增强
- OpenStack没落了吗?
热门文章
- 如何把讨厌的人踢出局域网(kickthemout)
- MySQL多实例的安装
- PYTHON黑帽编程 4.1 SNIFFER(嗅探器)之数据捕获(下)
- vs shortcut
- Distributed Systems-leader based分布式一致性协议
- 【资源汇总分享】Android开发资源汇总之一
- 我学Delphi心得及笔记----字符串操作(第六讲)
- 单网卡部署WEB+Mail+FTP+ISA服务器之四:局域网内部署FTP和winwebmail服务器
- Smarty变量调节器的使用
- Android Support v4、v7、v13 介绍