RANSAC算法MATLAB实验

RANSAC算法MATLAB实验RANSAC 是 RANdomSAmple 随机抽样一致 的缩写 它可以从一组包含 局外点 的观测数据集中 通过迭代方式估计数学模型的参数 它是一种不确定的算法 它有一定的概率得出一个合理的结果 为了提高概率必须提高迭代次数 该算法最早由 Fischler 和 Bolles 于 1981 年提出 nbsp nbsp nbsp RANSAC 的基本假设是 1 数据由 局内点 组成 例如 数据的分布可以

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

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

    RANSAC也做了以下假设:给定一组(通常很小的)局内点,存在一个可以估计模型参数的过程;而该模型能够解释或者适用于局内点。



MATLAB实验:一组二维点,包含误差很大的点,如果直接用最小二乘法,求出的模型是不对的。而一个好的方法就是用RANSAC算法剔除误差较大的点,获得最大的支持集合,用此最大支持集合求出最佳的模型。

下图是二维点集合:

RANSAC算法MATLAB实验

如下是用最小二乘法直接求模型的结果(蓝线):

RANSAC算法MATLAB实验

下边用ransac算法剔除误差较大的点(红线):

RANSAC算法MATLAB实验

源代码连接:http://download.csdn.net/detail/freecloud_insky/;







版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223904.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午1:10
下一篇 2026年3月17日 下午1:10


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号