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")
相关推荐
AuroraWanderll13 小时前
深入理解C++多态(三):多态的原理——虚函数表机制(上)
c语言·开发语言·数据结构·c++·算法·stl
lly20240614 小时前
Python Number(数字)
开发语言
阿沁QWQ14 小时前
STL库vector模拟实现
开发语言·c++
未来之窗软件服务14 小时前
操作系统应用(三十二)python版本选择系统—东方仙盟筑基期
开发语言·python·东方仙盟·操作系统应用
Ustinian_31014 小时前
【python】图片转PDF工具【附完整源码】
开发语言·python·pdf
数智化架构师-Aloong14 小时前
⚡️ PowerJob深度解析:Java生态下高并发分布式调度的终极选择
java·开发语言·分布式·系统架构
棒棒的皮皮14 小时前
【OpenCV】Python图像处理之读取与保存
图像处理·python·opencv
Godson_beginner14 小时前
Sa-Token (java权限认证框架)
java·开发语言
谢景行^顾14 小时前
numpy
开发语言·python·numpy