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")
相关推荐
C+++Python3 分钟前
Java 锁机制
java·开发语言
未知数Tel3 分钟前
Dify离线安装插件
python·阿里云·pip·dify
龘龍龙4 分钟前
Python基础学习(六)
开发语言·python·学习
SickeyLee8 分钟前
基于Dify智能体开发平台开发一个目标检测智能体
人工智能·计算机视觉·目标跟踪
未来之窗软件服务15 分钟前
幽冥大陆(五十八)php1024位密码生成—东方仙盟筑基期
开发语言·算法·仙盟创梦ide·东方仙盟
热爱专研AI的学妹22 分钟前
【搭建工作流教程】使用数眼智能 API 搭建 AI 智能体工作流教程(含可视化流程图)
大数据·数据库·人工智能·python·ai·语言模型·流程图
databook29 分钟前
拒绝“凭感觉”:用回归分析看透数据背后的秘密
python·数据挖掘·数据分析
刺客xs31 分钟前
Qt ----- QT线程
开发语言·qt
Psycho_MrZhang34 分钟前
Flask 设计思想总结
后端·python·flask
是一个Bug35 分钟前
桌面GUI应用开发
python