随机抽样一致算法(Random sample consensus,RANSAC)

       

     RANSAC代表随机样本共识。正如我们之前看到的,这里有你可以尝试拟合的不同类型的模型,我们仅仅去拟合一个平面模型,在这里,我们将研究试图拟合线条的情况。在这种情况下:我们有数据并且我们知道这有一条线。但是数据也有很多异常值。

但是数据也有很多离群值,那么您如何确定那条线在哪里呢?好吧,如果您只是想做线性回归之类的事情,那将取所有点的平均值,并取没有意义的离群值的平均值。他会给你个很差的线,它不会代表你所有的真实的点。因此,当数据中包含这些异常值时,RANSAC实际上是一种用于查找此模型的方法。

         普通最小二乘是保守派:在现有数据下,如何实现最优。是从一个整体误差最小的角度去考虑,尽量谁也不得罪。

RANSAC是改革派:首先假设数据具有某种特性(目的),为了达到目的,适当割舍一些现有的数据。

         RANSAC简化版的思路就是:参考了https://www.cnblogs.com/xingshansi/p/6763668.html

         第一步:假定模型(如直线方程),并随机抽取Nums个(以2个为例)样本点,对模型进行拟合:

 

 

第二步:由于不是严格线性,数据点都有一定波动,假设容差范围为:sigma,找出距离拟合曲线容差范围内的点,并统计点的个数:

 

第三步:重新随机选取Nums个点,重复第一步~第二步的操作,直到结束迭代

 

第四步:每一次拟合后,容差范围内都有对应的数据点数,找出数据点个数最多的情况,就是最终的拟合结果

 

  所以,其实就是概率性去寻找最符合的线,以O的大小为优化函数(越大越好),简而言之,RANSAC代表随机样本共识,是一种检测数据中异常值的方法。 RANSAC运行最大迭代次数,并以最佳拟合返回模型。 每次迭代都随机选择数据的子样本,并通过它拟合模型,例如直线或平面。 然后,将具有最大数量的内部值或最低噪声的迭代用作最佳模型。

  就工程而言有两个问题:

 一是迭代次数该怎么选,意味着你随机尝试多少次。

  二是,\delta值该怎么设。

附:


RANSAC overview

One type of RANSAC version selects the smallest possible subset of points to fit. For a line, that would be two points, and for a plane three points. Then the number of inliers are counted, by iterating through every remaining point and calculating its distance to the model. The points that are within a certain distance to the model are counted as inliers. The iteration that has the highest number of inliers is then the best model. This will be the version that you will implement in this quiz.
Other methods of RANSAC could sample some percentage of the model points, for example 20% of the total points, and then fit a line to that. Then the error of that line is calculated, and the iteration with the lowest error is the best model. This method might have some advantages since not every point at each iteration needs to be considered. It’s good to experiment with different approaches and time results to see what works best.
 

 

                                                                                                                                                                                      20200728

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ArcGIS提供了多种方法来生成随机样本。一种常用的方法是使用ArcToolbox中的创建随机点工具。这个工具可以在指定的范围窗口、面要素内、点要素上或线要素沿线生成指定数量的随机点。例如,可以选择一个线要素类作为约束要素类,然后设置生成100个点,并指定两个点之间的最小距离为1米。这样就可以生成符合要求的随机样本点。\[3\]另外,如果需要在研究区内生成随机点,可以使用ArcGIS的空间叠加操作。通过选择研究区内的随机点数量,可以在研究区内随机选择所需的样本点。\[1\]无论是使用创建随机点工具还是空间叠加操作,都可以根据需要生成指定数量的随机样本点。 #### 引用[.reference_title] - *1* *3* [数据处理(12):Arcgis生成研究区域内随机点的方法](https://blog.csdn.net/ghgfsasxda/article/details/128936042)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ArcGIS基础:如何在大量数据里挑选随机样本(创建随机点工具)](https://blog.csdn.net/yuanYW7556/article/details/128061959)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jack Ju

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值