Random Sample Consensus(RANSAC)算法介绍

       转眼间2012年过了三个月了,最近在做目标跟踪,需要利用ransac算法进行图像匹配,使用Opencv+vs进行实现。终于初见成效啊,很激动也很兴奋,在这里mark一下,以备查用 !这里就不贴源码了,想想都是泪啊!委屈

       RANSAC是“RANdom SAmple Consensus(随机抽样一致)”的缩写。它可以从一组包含“局外点”的观测数据集中,通过迭代方式估计数学模型的参数。它是一种不确定的算法——它有一定的概率得出一个合理的结果;为了提高概率必须提高迭代次数。该算法最早由Fischler和Bolles于1981年提出。

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

  • 43
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RANSACRandom Sample Consensus算法是一种经典的模型参数估计方法,用于从数据中识别出liers(噪声点)并拟合出一个最优的模型。该算法可以被用于许多领域,例如计算机视觉、机器人学、计算机图形学、地理信息系统等。 RANSAC算法的基本思想是:从样本数据中随机选择一小部分数据作为内点集合,根据这些内点拟合出一个模型,然后用这个模型来测试所有数据,将与模型拟合程度高的数据归为内点,低的归为外点。重复这个过程多次,最终选择内点数最多的模型作为最终模型。 RANSAC算法的具体步骤如下: 1. 随机从数据集中选取一小部分数据作为内点集合,根据这些内点拟合出一个模型。 2. 用这个模型来测试所有数据,将与模型拟合程度高的数据归为内点,低的归为外点。 3. 计算内点的数目,如果内点数目大于某个预设的阈值,则认为这个模型是好的,否则重新从数据集中随机选取一小部分数据,重复以上步骤。 4. 重复执行一定的次数,选择内点数目最多的模型作为最终模型。 需要注意的是,RANSAC算法的效果与内点数目的选择有关,选择的内点数目太小会导致模型拟合不准确,选择的内点数目太大会导致计算量增加,影响算法效率。因此,在实际应用中,需要进行多次试验,选择最优的内点数目和迭代次数。 RANSAC算法的优点是能够快速、准确地处理包含噪声的数据集,并且适用于多种模型拟合问题。但是,该算法也存在一些缺点,例如对于数据集中outliers较多的情况,算法的效果较差。此外,该算法也无法保证求得的模型是全局最优解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值