RANSAC(随机采样一致性)

RANSAC是一种思想,一个求解已知模型的参数的框架,它并不限定某一特定的问题。

RANSAC将数据分为内群数据和离群数据,离群数据也就是受噪声影响的数据。RANSAC假定,给定一组内群,存在一个程序,这个程序可以估算最佳解释或最适用于这一数据模型的参数。

RANSAC与最小二乘法

如下图所示,由于最小二乘法拟合数据的时候是考虑所有的数据,所以最小二乘法的误差较大,而RANSAC算法是将那些噪声点设为离群点,就像下图中偏离中心的那些点,所以RANSAC得到的结果准确度较高,所以RANSAC的效果总是远优于最小二乘法。

RANSAC(随机采样一致性)_第1张图片

 RANSAC的步骤

RANSAC的输入:

1、一组观测数据(往往含有较大的噪声或无效点)

2、一个用于解释观测数据的参数化模型

3、一些可信的参数

步骤:

1、在数据中随机选择几个点设定为内群

2、计算适合内群的模型

3、把其他刚才没选到的点带入刚才建立的模型中,计算是否为内群

4、记下内群数量

5、重复以上步骤

6、比较哪次计算中内群数量最多,内群最多的那次所建的模型就是我们所要求的解。

注意:不同问题对应的数学模型不同,因此在计算模型参数时方法必定不同。

RANSAC的优缺点

优点:

它能鲁棒的估计模型参数。例如,它能从包含大量局外点的数据集中估计出高精度的参数。

缺点:

1、他计算参数的迭代次数没有上限,如果设置迭代次数的上限,得到的结果可能不是最优的结果,甚至可能得到错误的结果。

2、RANSAC只有一定的概率得到可信的模型,概率与迭代次数成正比。

3、他要求设置跟问题相关的阈值。

4、RANSAC只能从特定的数据集中估计出一个模型。

5、要求数据模型已知。

你可能感兴趣的:(计算机视觉,算法,机器学习,人工智能)