opencv 图像矫正的原理

图像矫正的原理是透视变换,下面来介绍一下透视变换的概念。

听名字有点熟,我们在图像旋转里接触过仿射变换,知道仿射变换是把一个二维坐标系转换到另一个二维坐标系的过程,转换过程坐标点的相对位置和属性不发生变换,是一个线性变换,该过程只发生旋转和平移过程。因此,一个平行四边形经过仿射变换后还是一个平行四边形。

而透视变换是把一个图像投影到一个新的视平面的过程 ,在现实世界中,我们观察到的物体在视觉上会受到透视效果的影响,即远处的物体看起来会比近处的物体小。**透视投影是指将三维空间中的物体投影到二维平面上的过程,这个过程会导致物体在图像中出现形变和透视畸变。**透视变换可以通过数学模型来校正这种透视畸变,使得图像中的物体看起来更符合我们的直观感受。通俗的讲,透视变换的作用其实就是改变一下图像里的目标物体的被观察的视角。

如上图所示,图1在经过透视变换后得到了图2的结果,带入上面的话就是图像中的车道线(目标物体)的被观察视角从平视视角变成了俯视视角,这就是透视变换的作用。

与仿射变换一样,透视变换也有自己的透视变换矩阵:

其中x、y是原始图像点的坐标,x^{\prime}、y^{\prime}是变换后的坐标,a11,a12,...,a33则是一些旋转量和平移量,由于透视变换矩阵的推导涉及三维的转换,所以这里不具体研究该矩阵,只要会使用就行,而OpenCV里也提供了getPerspectiveTransform()函数用来生成该3*3的透视变换矩阵。

相关推荐
Danileaf_Guo4 分钟前
告别“云端降智”与“订阅割肉”:Mac mini M4开启本地AI算力自由之路
人工智能
无忧智库4 分钟前
智慧城市IOC顶层设计与实战:从“数字底座”到“城市智能体”的全栈实践(PPT)
人工智能·智慧城市
chaofan9806 分钟前
2026大模型应用架构选型:如何通过API聚合平台构建企业级AI服务?
人工智能·架构·自动化·api
腾讯蓝鲸智云7 分钟前
提升研发效能:DevOps平台高效权限配置与同步方案
运维·服务器·人工智能·云计算·devops
Joshkhh7 分钟前
2026年国内三大AI工具横向测评:Gemini 3.1 Pro、ChatGPT 5.4、Claude
人工智能·chatgpt
大佐不会说日语~8 分钟前
Spring AI Alibaba 的 Function Calling 使用 @Tool 调用中,无法获取用户ID踩坑记录
java·人工智能·spring boot·spring·alibaba·function
黑金IT9 分钟前
AI带‘脑’摒弃前端硬编码实现浏览器自动化系统
前端·人工智能·自动化
财迅通Ai10 分钟前
SuperX完成日本全球供应中心首批高性能AI服务器交付,全球战略迈出关键一步
运维·服务器·人工智能·superx·中恒电气
蔡俊锋10 分钟前
AI进化史:从人工智障到全能管家
人工智能·ai进化简史·ai历史·ai模型历史
Jagger_11 分钟前
AI能力边界外扩时,工作到底还需要做什么?——一份写给自己的现场记录
人工智能