opencv3/C++中怎么实现平面对象识别和透视变换


本篇内容主要讲解“opencv3/C++中怎么实现平面对象识别和透视变换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“opencv3/C++中怎么实现平面对象识别和透视变换”吧!findHomography( )函数findHomography( )找到两个平面之间的透视变换H。参数说明:用于计算单应性矩阵的方法有:0 :使用所有点的常规方法;RANSAC:基于RANSAC的鲁棒法;LMEDS :最小中值鲁棒法;RHO :基于PROSAC的鲁棒法;被最小化。如果参数方法被设置为默认值0,则函数使用所有的点对以简单的最小二乘方案计算初始单应性估计。然而,如果不是所有的点对都符合刚性透视变换(也就是说有一些异常值),那么这个初始估计就会很差。在这种情况下,可以使用三种鲁棒法之一。方法RANSAC,LMeDS和RHO尝试使用这个子集和一个简单的最小二乘算法来估计单应矩阵的各个随机子集(每个子集有四对),然后计算计算的单应性的质量/良好度(这是RANSAC的内点数或LMeD的中值重投影误差)。然后使用最佳子集来产生单应矩阵的初始估计和内点/外点的掩码。不管方法是否鲁棒,计算的单应性矩阵都用Levenberg-Marquardt方法进一步细化(仅在鲁棒法的情况下使用inlier)以更多地减少再投影误差。RANSAC和RHO方法几乎可以处理任何异常值的比率,但需要一个阈值来区分异常值和异常值。 LMeDS方法不需要任何阈值,但只有在超过50%的内部值时才能正常工作。最后,如果没有异常值且噪声相当小,则使用默认方法(method = 0)。perspectiveTransform()函数perspec免费云主机域名tiveTransform()执行矢量的透视矩阵变换。参数说明:平面对象识别:到此,相信大家对“opencv3/C++中怎么实现平面对象识别和透视变换”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: 如何使用python实现列表反转

小编给大家分享一下如何使用python实现列表反转,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!列表反转Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 04/19 16:06
下一篇 04/19 16:28

相关推荐