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")
相关推荐
我的golang之路果然有问题2 分钟前
mac配置 unity+vscode的坑
开发语言·笔记·vscode·macos·unity·游戏引擎
却道天凉_好个秋6 分钟前
OpenCV(二十八):双边滤波
人工智能·opencv·计算机视觉
铅笔小新z18 分钟前
【C++】从理论到实践:类和对象完全指南(上)
开发语言·c++
rainFFrain24 分钟前
qt显示类控件---QCalendarWidget
开发语言·qt
蓁蓁啊39 分钟前
ARM交叉编译中编译与链接参数不一致导致的问题
开发语言·arm开发·嵌入式硬件
go_bai40 分钟前
Linux-线程
linux·开发语言·c++·经验分享·笔记
咖啡の猫40 分钟前
Python中的输出函数
开发语言·数据库·python
zzzsde1 小时前
【C++】二叉搜索树
开发语言·c++
无限进步_1 小时前
C语言atoi函数实现详解:从基础到优化
c语言·开发语言·c++·git·后端·github·visual studio
上去我就QWER1 小时前
C++中的堆和栈
开发语言·c++