FPFH 描述符的 3D 对象识别不起作用 - 有什么问题

问题描述

我正在尝试在特定数据上构建 3D 对象注册管道。目标是在给定的激光雷达场景中找到指定的 3D 模型,并估计其 6DOF 姿态。我无法获得匹配的功能,尽管它必须。我很感激任何关于调整描述符的提示,或者转向其他一些更有效的匹配管道。我不明白我做错了什么。

我的代码使用 PCL 并改编自:https://robotica.unileon.es/index.php?title=PCL/OpenNI_tutorial_5:_3D_object_recognition_(pipeline) 但是我使用两个合成点云而不是深度相机图像。它们都是从非常相同的 3D 网格合成的,如下所示:

enter image description here

一个云基本上是网格的均匀采样外表面,第二个是观察同一模型的 Velodyne 型激光雷达的模拟框架。我用了 Blensor 进行模拟,云彩看起来不错。这是对实际问题的简化。

当我使用带有一些预对齐的 ICP 时,云几乎完美匹配!

并且特征匹配失败。我尝试使用 FPFH 而不是 SHOT 描述符(以同样的方式失败),据我所知,它更准确一些。法线计算得很好(全部向内),关键点很好,但是点到点的对应关系很奇怪,没有找到全局对应关系。在图像上,每个点都作为关键点进行测试。我尝试对云进行下采样或使用 ISS 关键点,但没有成功。

Example of mismatching

大云(左)在点间0.1m左右采样,最大宽度约4m。小云(激光雷达模拟,右)沿射线线更密集,“射线”之间更稀疏。正常估计半径为0.3,FPFH描述符半径设置为0.7。

我做错了什么???

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)