滨海做网站找哪家好,建设网站dns如何设置,陕西省建设执业注册中心网站,群晖nas做网站目录
1. 为 NDT 设计一个匹配度评估指标#xff0c;利用该指标可以判断 NDT 匹配的好坏。
2. 利用第 1 题的指标#xff0c;修改程序#xff0c;实现 mapping 部分的回环检测。
3. 将建图结果导出为 NDT map#xff0c;即将 NDT 体素内的均值和协方差都存储成文件。
4.…目录
1. 为 NDT 设计一个匹配度评估指标利用该指标可以判断 NDT 匹配的好坏。
2. 利用第 1 题的指标修改程序实现 mapping 部分的回环检测。
3. 将建图结果导出为 NDT map即将 NDT 体素内的均值和协方差都存储成文件。
4. 实现基于 NDT map 的激光定位。根据车辆实时位姿加载所需的 NDT 体素并完成定位。
5. 给出上述结果相比于 PCL NDT 的性能、存储空间等关键指标
1. 为 NDT 设计一个匹配度评估指标利用该指标可以判断 NDT 匹配的好坏。 2. 利用第 1 题的指标修改程序实现 mapping 部分的回环检测。 下图是 PCL 版本 NDT 匹配在阈值设置 ndt_score_th 为 4.5 时的匹配结果 其中加载 的关键帧数目我删掉了一些因为实在是耗时有点久。。。 根据上面 PCL 版本的 NDT 检测结果来确定适配自定义指标的阈值 ndt_score_th 。 使用原来的阈值明显不对观察得分在 0.2 附近于是试着在这个范围寻找合适的阈值。 可见阈值设置为 0.15 和 pcl 版本的阈值为 4.5 时的结果差不多。 3. 将建图结果导出为 NDT map即将 NDT 体素内的均值和协方差都存储成文件。 这里参考 split_map.cc 代码的内容加载关键帧对应的点云对其进行滤波然后计算点 云中的每个点对应的地图区块 id 最后将区块索引和对应点云分别存储起来。 我们要导出 NDT map 需要构建 NDT 体素并计算均值和协方差这些在第七章的 ndt_3d.h 的 SetTarge 函数中已经实现。 保存的结果 4. 实现基于 NDT map 的激光定位。根据车辆实时位姿加载所需的 NDT 体素并完成定位。 原先基于点云地图的激光定位使用的是 PCL 版本 NDT 在 RTK 角度搜索中用到了 10 米 5 米 4 米 2 米的多分辨率 NDT 匹配来确定 RTK 的朝向所以实现基于 NDT map 的激光定位也需要加载多分辨率 的体素所以参照第 3 题重新修改为保存多分辨率的 NDT map 。代码如下 存储 NDT 体素中的均值和协方差矩阵信息。 ①首先在 fusion 初始化时配置要加载的 NDT map 路径并参考原来的 loadMapIdex() 函 数将多分辨率的 NDT 地图数据加载进来。 ②接下来就是定位流程 ProcessMeasurements(m) 。首先要确定 RTK 朝向加载多分辨率 NDT map 使用多分辨率来进行寻找。 当然同样也要准备卸载超出范围的 NDT 地图。 以上过程包含在 loadNdtMap 函数中。 RTK 初始化成功后后续定位流程在 LidarLocalization() 中进行。 至此实现了基于 NDT map 进行激光定位的功能。 ③实现效果 两者定位效果差不多。 5. 给出上述结果相比于 PCL NDT 的性能、存储空间等关键指标。 ①统计比较两者在加载地图和配准过程两方面的耗时情况。 可以发现基于 NDT map 的方法加载地图数据耗时要比加载点云要慢很多而配准方面 会快很多。 比较一下跑完一个 bag 总的耗时情况。 经过对比发现基于 NDT map 的激光雷达定位效率是基于 PCL NDT 的接近六倍。 ②统计比较两者需要加载的地图数据占存储大小。 原先加载的是以 100x100 大小地图区块索引命名的 pcd 格式点云数据而现在需要加载 4 种不同分辨率的 NDT 体素地图数据中仅存储了均值和信息矩阵。因此存储空间应该要小得多果然对比如下