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")
相关推荐
小陈工4 分钟前
2026年3月24日技术资讯洞察:边缘AI商业化,Java26正式发布与开源大模型成本革命
java·运维·开发语言·人工智能·python·容器·开源
qq_416018726 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
m0_6625779711 分钟前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
方安乐21 分钟前
Javascript工具库:classnames
开发语言·javascript·ecmascript
xushichao198923 分钟前
C++中的中介者模式
开发语言·c++·算法
Hello.Reader25 分钟前
从零开始安装 Qt完整新手教程(1)
开发语言·qt
MORE_7726 分钟前
leecode100-买卖股票的最佳时期-贪心算法
python·算法·贪心算法
娇娇yyyyyy27 分钟前
QT编程(19) : Qt 实现自定义delegate
开发语言·数据库·qt
AI科技星29 分钟前
基于wr/c + h/c = 1的螺旋线矢量特性及应用分析
c语言·开发语言·人工智能·opencv·算法·计算机视觉·r语言
xiaomo224942 分钟前
javaee-多线程进阶
java·开发语言