Python Opencv实践 - 图像旋转

复制代码
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt

img = cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)

#图像旋转
#Opencv中的旋转,首先通过cv.getRotationMatrix2D获得旋转矩阵
#cv.getRotationMatrix2D(center,angle,scale)
#center是旋转中心点,angle是旋转角度,scale是缩放比例
#参考资料:https://blog.csdn.net/qq_44109682/article/details/117434461
rows,cols = img.shape[:2]
M = cv.getRotationMatrix2D((cols/2,rows/2),45,1)

#然后用得到的旋转矩阵作为放射变换的M矩阵即可
#cv.warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]])
# dsize是输出图像的大小,(宽度,高度),宽度是列数,高度是行数
#参考资料:https://blog.csdn.net/Gaowang_1/article/details/103128590
img_rotated = cv.warpAffine(img, M, (cols,rows))

fig,axes = plt.subplots(nrows=1, ncols=2, figsize=(10,10),dpi=100)
axes[0].imshow(img[:,:,::-1])
axes[0].set_title("Original")
axes[1].imshow(img_rotated[:,:,::-1])
axes[1].set_title("Rotated")
plt.show()
相关推荐
zzzsde8 分钟前
【c++】深入理解string类(4)
开发语言·c++
郝学胜-神的一滴1 小时前
Effective Python 第44条:用纯属性与修饰器取代旧式的 setter 与 getter 方法
开发语言·python·程序人生·软件工程
星期天要睡觉2 小时前
计算机视觉(opencv)——仿射变换(Affine Transformation)
人工智能·opencv·计算机视觉
嫂子的姐夫2 小时前
11-py调用js
javascript·爬虫·python·网络爬虫·爬山算法
程序员莫小特2 小时前
老题新解|计算2的N次方
开发语言·数据结构·算法·青少年编程·信息学奥赛一本通
MarvinP3 小时前
《Seq2Time: Sequential Knowledge Transfer for Video LLMTemporal Grounding》
人工智能·计算机视觉
图亚Vanta3 小时前
Python入门第一课:Python安装、VSCode/Pycharm配置
vscode·python·pycharm
睿思达DBA_WGX3 小时前
使用 python-docx 库操作 word 文档(2):在word文档中插入各种内容
python·word
white-persist3 小时前
XXE 注入漏洞全解析:从原理到实战
开发语言·前端·网络·安全·web安全·网络安全·信息可视化
kunge1v54 小时前
学习爬虫第五天:自动化爬虫
爬虫·python·自动化