VSLAM基础(四)————RANSAC、最小二乘法、DLT

本文深入探讨VSLAM中的关键算法,包括RANSAC随机抽样一致算法,用于处理数据中的误匹配和噪声;最小二乘法,适用于高斯分布的测量误差;以及DLT直接线性变换,解决包含尺度问题的最小二乘问题。RANSAC通过迭代选择和验证局内点来估计模型,最小二乘法在高斯噪声下提供稳定解,而DLT用于处理如针孔相机投影等几何问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

到目前为止,我们已经知道怎么由一系列图像得到它们之间的相对姿态了,在这里暂停一下,插入这篇讨论一下RANSAC、最小二乘、DLT。

一、RANSAC随机抽样一致算法

在vslam中通过对图像进行特征点匹配,然后根据匹配点坐标计算恢复出图像相对姿态。但是匹配会存在误匹配,数据也存在噪声,那么怎么在包含错误点的数据内获得我们想要的最优解呢?我们用到了RANSAC随机抽样一致算法。

RANSAC是“RANdom SAmple Consensus(随机抽样一致)”的缩写。它可以从一组包含“局外点”的观测数据集中,通过迭代方式估计数学模型的参数。它是一种不确定的算法——它有一定的概率得出一个合理的结果;为了提高概率必须提高迭代次数。该算法最早由Fischler和Bolles于1981年提出。核心思想就是随机性和假设性,随机性用于减少计算,循环次数是利用正确数据出现的概率。所谓的假设性,就是说随机抽出来的数据都认为是正确的,并以此去计算其他点,获得其他满足变换关系的点,然后利用投票机制,选出获票最多的那一个变换。

RANSAC的基本假设是:
(1)数据由“局内点”组成,例如:数据的分布可以用一些模型参数来解释;
(2)“局外点”是不能适应该模型的数据;
(3)除此之外的数据属于噪声。
局外点产生的原因有:噪声的极值;错误的测量方法;对数据的错误假设。

RANSAC通过反复选择数据中的一组随机子集来达成目标。被选取的子集被假设为局内点,并用下述方法进行验证:
1.有一个模型适应于假设的局内点,即所有的未知参数都能从假设的局内点计算得出。
2.用1中得到的模型去测试所有的其它数据,如果某个点适用于估计的模型,认为它也是局内点。
3.如果有足够多的点被归类为假设的局内点,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值