点到点、点到线、点到线的ICP区别

区别主要是在于源点云src经过一个初始变换后,与target点云(或者说是模板)之间的差异定义上。

1. 点到点

首先,将待匹配点云中的每个点Pi,利用初始的旋转矩阵和平移向量转换到目标点云Q中.

在Q中找出与Pi最近的点(记作Qi),作为Pi的对应点,取Pi、Qi之间的欧式距离作为匹配误差。

2. 点到线

点-线的情况:

​ 首先,将待匹配点云中的每个点Pi,利用初始的旋转矩阵和平移向量转换到目标点云Q中。对于Pi利用KD树的算法寻找到最近的几个点,根据这几个点计算出协方差,将协方差进行奇异值分解,如果最大的奇异值比第二大的奇异值要大得多,则认为找到的这几个点是在同一条直线上。

匹配误差为点到直线的距离,即图中的向量dc的模。

3. 点到面

点-面的情况:

​ 首先,将待匹配点云中的每个点Pi,利用初始的旋转矩阵和平移向量转换到目标点云Q中。对于Pi利用KD树的算法寻找到最近的几个点,根据这几个点计算出协方差,将协方差进行奇异值分解,根据这几个点计算出协方差,将协方差进行奇异值分解,如果最小的奇异值比第二小的奇异值要小得多,则认为找到的这几个点是在同一个平面上。

匹配误差为点到面的距离,即图中的向量od的模。

4 对比

对于上述3种方法,哪一种最适合?其实是要看具体的点云场景的,它与点云的几何形态有关系。

有的点云适合使用点到点,有的适合使用点到线,有的适合使用点到面。脱离具体场景谈算法效果其实是不够科学的。

在普通常见场合,可以率先尝试点到面。

相关推荐
羑悻的小杀马特1 小时前
OpenCV 引擎:驱动实时应用开发的科技狂飙
人工智能·科技·opencv·计算机视觉
想跑步的小弱鸡4 小时前
Leetcode hot 100(day 3)
算法·leetcode·职场和发展
guanshiyishi4 小时前
ABeam 德硕 | 中国汽车市场(2)——新能源车的崛起与中国汽车市场机遇与挑战
人工智能
极客天成ScaleFlash4 小时前
极客天成NVFile:无缓存直击存储性能天花板,重新定义AI时代并行存储新范式
人工智能·缓存
澳鹏Appen5 小时前
AI安全:构建负责任且可靠的系统
人工智能·安全
xyliiiiiL5 小时前
ZGC初步了解
java·jvm·算法
爱的叹息6 小时前
RedisTemplate 的 6 个可配置序列化器属性对比
算法·哈希算法
蹦蹦跳跳真可爱5896 小时前
Python----机器学习(KNN:使用数学方法实现KNN)
人工智能·python·机器学习
视界宝藏库6 小时前
多元 AI 配音软件,打造独特音频体验
人工智能
独好紫罗兰6 小时前
洛谷题单2-P5713 【深基3.例5】洛谷团队系统-python-流程图重构
开发语言·python·算法