RANSAC算法——RANDOM SAMPLE CONSENSUS

功能:采用迭代的方法去估计样本的拟合模型

应用:剔除错误点、直线拟合、平面拟合、估计图像或点云间的变换矩阵、估计基础矩阵

思路:一组较大的样本点,假设包括外点(离群点,噪声)和内点。根据大数定律,假设随机抽样得到的数据都是内点,从样本随机抽样得到的模型可以近似作为整体模型。去计算其他点的到此抽样模型的距离,设定一个距离允许误差阈值,找到所有允许误差阈值范围内的点,作为抽样模型的评分。继续抽样,最后评分最高的就是模型的近似

算法步骤:

(1)要得到一个直线模型,需要两个点唯一确定一个直线方程。所以第一步随机选择两个点。
(2)通过这两个点,可以计算出这两个点所表示的模型方程y=ax+b。
(3)将所有的数据点套到这个模型中计算误差。
(4)找到所有满足误差阈值的点。
(5)然后我们再重复(1)~(4)这个过程,直到达到一定迭代次数后,选出那个被支持的最多的模型,作为问题的解。

原文地址:https://www.cnblogs.com/Henry-ZHAO/p/12725146.html