基于OpenCV的透视变换

基础概念

透视变换(Perspective Transformation)是仿射变换的一种非线性扩展,是将图片投影到一个新的视平面(Viewing Plane),也称作投影映射(Projective Mapping)。

原理:将二维的图片投影到一个三维视平面上,然后再转换到二维坐标下,所以也称为投影映射(Projective Mapping)。

相对仿射变换来说,改变了直线之间的平行关系

透视变换的特点和方法

透视变换相比仿射变换更加灵活,变换后会产生一个新的四边形,但不一定是平行四边形,需要非共线的四个点才能唯一确定

变换后原图中的直线变换后依然是直线

四边形包括了所有的平行四边形,所以透视变换包括了所有的仿射变换

openCV中实现透视变换方法:

首先根据变换前后的四个点用cv.getPerspectiveTransform()生成3×3的变换矩阵

再用cv2.warpPerspective()进行透视变换

函数cv2.warpPerspective()

格式:cv2.warpPerspective(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]])

src: 输入图像

M:大小为3×3的转换矩阵

其他参数含义与cv2.warpAffine()函数中的一致

函数cv2.getPerspectiveTransform()

格式:M=cv2.getPerspectiveTransform(src,dst)

src:原图像中4个点的坐标

dst:原图像中4个点在转换后的目标图像中的对应坐标

应用案例

相关推荐
霍小毛5 分钟前
轻量黑科技!数字孪生重构智慧城乡供水一体化新范式
人工智能
如此风景8 分钟前
Playwright 速查表
人工智能
草青工作室9 分钟前
AI主流大模型参数量和收费情况参考(26年4月)
人工智能
Y敲键盘的地方11 分钟前
第1章:从命令行到智能体
人工智能
雷工笔记17 分钟前
读书笔记|《AI知识库:个人与企业的智慧玩法》
人工智能
李可以量化27 分钟前
【2026 量化工具选型】通达信 TdxQuant vs 迅投 QMT/miniQMT 深度对比:新手该怎么选?
大数据·人工智能·区块链·通达信·qmt·量化 qmt ptrade
互联科技报36 分钟前
零售数字化:高准确率客流分析系统优质推荐
大数据·人工智能
互联科技报37 分钟前
成熟零售客流系统该怎么选?决定门店效率的关键选择
人工智能·零售
北京耐用通信43 分钟前
国产优选:耐达讯自动化EtherCAT转RS232在工业协议转换中的卓越表现
人工智能·科技·物联网·网络协议·自动化
沃垠AI1 小时前
万字干货!Agent Skills从入门到精通
人工智能