制作外贸网站开发,域名注册局,广州网站开发定制公司,沈阳网站提升排名平面拟合 1、算法简介2、参考文献3、实现效果4、相关代码 1、算法简介 RANSAC 是在给定模型和距离阈值 T T T的情况下#xff0c;通过寻找最小代价 C C C来确定内点数据并拟合模型。如式#xff08;1#xff09;所示的代价函数#xff0c;当点到模型的距离 e e e小于阈值 T… 平面拟合 1、算法简介2、参考文献3、实现效果4、相关代码 1、算法简介 RANSAC 是在给定模型和距离阈值 T T T的情况下通过寻找最小代价 C C C来确定内点数据并拟合模型。如式1所示的代价函数当点到模型的距离 e e e小于阈值 T T T时该点被判定为内点且权重为0否则为外点。由于所有内点的权重为0所以RANSAC选取的最优模型是内点最多且权重和最小的模型。如果用于区分异常值的阈值 T T T过大则会造成RANSAC 拟合误差增大。 ρ ( e , T ) { 1 , T ≤ e 0 , T e (1) \rho(e,T) \begin{cases} 1,\quad T\leq e\\ 0, \quad Te \end{cases} \tag{1} ρ(e,T){1,T≤e0,Te(1) MSAC 是RANSAC 的一种改进方法目的是降低算法对于距离阈值 T T T选取的依赖。修改后的代价函数如式1所示当点到模型的距离 e e e 小于阈值 T T T时该点被判定为内点且权重为 e e e 否则为外点且权重为 T T T 。 ρ ( e , T ) { T , T ≤ e e , T e (2) \rho(e,T) \begin{cases} T,\quad T\leq e\\ e, \quad Te \end{cases} \tag{2} ρ(e,T){T,T≤ee,Te(2) 由于使用更加精确的距离表达代价函数因此MSAC 不仅可以得到更好的模型还可以降低阈值的敏感度以及提高收敛速度。利用MSAC 进行局部基准面拟合的具体步骤如下
从数据集中不重复地随机选择用于平面模型拟合的最小数据集 Q Q Q。利用最小二乘法和数据集 Q Q Q拟合平面模型 S S S 得到模型参数。计算所有点到平面模型 S S S的距离在允许误差阈值范围内的点标记为“内点”并计算该平面模型的代价 C i C_i Ci 。比较当前模型的代价 C i C_i Ci 与之前最好模型的代价 C b C_b Cb的大小记录较小者作为新的最好模型的代价并记录对应的“内点”和模型参数。重复步骤①-④直到迭代结束并得到“内点”数据。利用“内点”数据通过最小二乘法拟合平面模型得到最佳的平面模型参数。
2、参考文献 [1] 马新江;岳东杰;沈月千;刘如飞;王旻烨;俞家勇;张春阳. 基于车载激光点云的路面坑槽检测方法 [J/OL]. 中国激光, 1-25[2023-11-25] http://kns.cnki.net/kcms/detail/31.1339.TN.20230817.1814.022.html. 3、实现效果
1、标准模拟数据 2、模拟数据的平面参数 3、添加高斯噪声点 4、高斯噪声点添加结果 5、MSAC拟合结果
平面模型系数coeff(a,b,c,d): 0.00987843 -0.714149 0.699925 17.943偏差有点大神奇
4、相关代码
matlab 点云最小二乘拟合平面(PCA法)matlab 点云最小二乘拟合平面(PCA法详细过程版)matlab 最小二乘拟合平面并与XOY平面对齐Open3D 最小二乘拟合平面PCA法 python详细过程版Open3D 进阶12PCA拟合平面