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(rows,cols)

#opencv中的透射变换,需要一个3x3透射变换矩阵
#这个矩阵可以通过cv.getPerspectiveTransform(src,dst)获得
#src是原图中的4个点的坐标,dst是目标图像中的4个点的坐标(任意三个点不共线)
#参考资料:https://blog.csdn.net/qq_50394133/article/details/123832496
srcPts = np.float32([[56,65],[368,52],[28,387],[389,390]])
dstPts = np.float32([[100,145],[300,100],[80,290],[310,300]])
M_perspective = cv.getPerspectiveTransform(srcPts,dstPts)


#图像透射变换
#cv.warpPerspective(src,M,dsize,dst,flags,borderMode,borderValue)
img_perspective = cv.warpPerspective(img,M_perspective,(cols,rows))

#显示图像
fig,axes = plt.subplots(nrows=1, ncols=2, figsize=(12,12), dpi=100)
axes[0].imshow(img[:,:,::-1])
axes[0].set_title("Original")
axes[1].imshow(img_perspective[:,:,::-1])
axes[1].set_title("Perspective Transform")
相关推荐
欧特克_Glodon2 分钟前
C++医学图像处理经典ITK库用法详解<三>: 图像配准模块功能
c++·图像处理·vtk·图像配准
长安牧笛5 分钟前
设计职场新人社交恐惧破冰工具,生成趣味自我介绍模板,团建互动小游戏,帮助新人快速融入团队。
python
黎雁·泠崖9 分钟前
【C语言指针精讲】从内存到运算,吃透指针核心逻辑
c语言·开发语言
秦苒&15 分钟前
【C语言指针四】数组指针变量、二维数组传参本质、函数指针变量、函数指针数组
c语言·开发语言·c++·c#
木泽八15 分钟前
python实现pdf拆分与合并
服务器·python·pdf
秋雨雁南飞16 分钟前
C# 字符串占位
开发语言·c#
拾贰_C16 分钟前
[Python | pytorch | torchvision ] models like ResNet... 命名变量说明
开发语言·pytorch·python
傅里叶的耶17 分钟前
C++ Primer Plus(第6版):第三章 处理数据
开发语言·c++
清水白石00826 分钟前
《Python 装饰器模式与代理模式深度剖析:从语法技巧到架构实战》
python·代理模式·装饰器模式
dagouaofei26 分钟前
AI自动生成PPT工具横评,真实使用感受分享
人工智能·python·powerpoint