Python Opencv实践 - 图像放射变换

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


img = cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)
rows,cols = img.shape[:2]
print(img.shape[:2])


#使用getAffineTransform来获得仿射变换的矩阵M
#cv.getAffineTransform(pts 1,pts 2)
#pts 1: 原图中的3个点坐标
#pts 2:经过放射变换后的3个点坐标
#参考资料:https://blog.csdn.net/weixin_45335726/article/details/122531876
pts1 = np.float32([[50,50],[200,50],[50,200]])
pts2 = np.float32([[100,100],[200,50],[100,250]])
M = cv.getAffineTransform(pts1,pts2)
img_affine_transform = cv.warpAffine(img, M, (cols,rows))


#显示图像
fig,axes = plt.subplots(nrows=1,ncols=2,figsize=(10,8),dpi=100)
axes[0].imshow(img[:,:,::-1])
axes[0].set_title("Original")
axes[1].imshow(img_affine_transform[:,:,::-1])
axes[1].set_title("Affine Transformed")
相关推荐
meng半颗糖3 分钟前
3.Java流程控制语句
java·开发语言·intellij-idea
影寂ldy7 分钟前
C# WinForm 三种自定义控件 + 完全自定义重绘控件知识点
开发语言·c#
学逆向的12 分钟前
汇编——寻址方式
开发语言·汇编·网络安全
大模型码小白18 分钟前
企业级检索增强后端集成:Java 服务如何管理知识库版本
java·服务器·开发语言·人工智能·python·microsoft
-银雾鸢尾-22 分钟前
C#中的Dictionary相关方法
开发语言·c#
农村小镇哥27 分钟前
Python3开发快速获取图片的文字
开发语言·python
geovindu33 分钟前
go:Backtracking Algorithm
开发语言·后端·算法·golang·回溯算法
FriendshipT39 分钟前
Ultralytics:解读Proto模块
人工智能·pytorch·python·深度学习·目标检测
ViperL11 小时前
[智能算法]NASSFG-显著特征指导的医学目标检测NAS
人工智能·目标检测·计算机视觉
zhiSiBuYu05171 小时前
Python3 循环语句新手实战指南
python