RANSAC算法已广泛应用于计算机视觉等工程领域。但是,如果我理解得很好,使用该算法时需要设置两个参数:一个与迭代次数有关,另一个与估计模型的阈值有关。以线性线估计问题为例:
图片中的蓝点代表离群点,而红点代表离群点。
迭代次数表明我们应该尝试多少次才能找到正确的线模型。我们尝试的越多,就越有可能获得正确的模型。但是,消耗时间也会增加。此外,迭代次数还与数据集中异常值的百分比有关。存在的异常值越少,我们可以预期的迭代就越少。
模型的阈值取决于手头的问题。如果设置得太严格,可以拟合模型的数据将变得无用,从而导致估计不准确。此外,严格的模型阈值也可能导致错误的模型。如果设置得太松,异常值可能会发挥作用。
暂时我对这两个参数的设置方案如下: 1)迭代次数:开始时粗略估计异常值的百分比,如果百分比高,则需要更多的迭代;否则,迭代次数设置相对较低。2)模型阈值:一开始设置一个比较大的阈值保持,然后根据它们与模型的接近程度给内点一个权重。如果异常值碰巧变成了异常值,它们不会显着影响模型估计。我想知道 RANSAC 参数设置是否存在其他解决方案。谢谢!