自动驾驶(三十五)---------深度学习激光点云配准

      CVPR 2019 计算机视觉领域顶级会议,收录了百度无人车实现全球首个基于深度学习的激光点云自定位技术,现在深度学习真的是无孔不入了,相比较ICPNDT、特征匹配、时序优化都要变成传统方法了,不免好奇如何设计网络,下面来分析一下:

      地址: https://songshiyu01.github.io/pdf/L3Net_W.Lu_Y.Zhou_S.Song_CVPR2019.pdf

      整个算法的输入包括实时在线激光点云,定位地图以及来自惯性传感器的初始预测的定位位置和姿态,最后的输出则是定位算法优化之后的位姿结果。通过将传统方法中的各个流程使用不同类型的网络结构来进行改造,实现了开创性的基于深度学习技术的无人车激光自定位技术:L3-Net。

                  

      1. 对于每一帧在线点云,需要找到一系列的关键点,并以关键点为中心的收集局部点云块从中提取特征描述子。关键点的提取需要同时考虑局部和全局的几何结构关系。L3-Net 首先利用点云的密度找到了一些候选点。

      2. 接着对每个候选点使用经典点云 3D 结构特征估计其线性和散乱性的概率,最终综合考虑候选点之间的距离及其结构特性选取出关键点。

      3. 对于每个关键点,该方法收集了其局部范围内的点云信息,再通过 mini-PointNet 网络结构得到特征描述子。其中 PointNet 是 2017 年 CVPR 收录的直接作用于无序点云的深度学习网络结构,L3-Net 这里使用的 mini-PointNet 是其简化版本,由一个多层感知机和一个 Max-Pooling 层组成,这也是直接作用于无序点云的网络结构应用于高精度激光点云定位/匹配任务的首次尝试。

       4. 在获得了关键点的特征描述子后,需要对 2D 水平位置(∆x,∆y)和航向角结果进行求解,这等价于求解预测位姿和真值在水平位置和航向角上的偏移量。

       5. L3-Net 采用了搜索的方法,对预测位姿为中心的(∆x,∆y,∆yaw)三维状态空间进行离散化,取其中一定范围内的定位状态构成集合,通过计算集合中每种定位状态下在线点云与地图的匹配效果可以获得的 cost volume。

       6. 接着使用 3D CNNs 对 cost volume 进行正则化操作,这样做是为了抑制其中的异常值,提升匹配效果。正则化后,L3-Net 将所有关键点的 cost volume 相加并通过 softmax 层得到(∆x,∆y,∆yaw)定位空间的 probability volume,进而估计出(∆x,∆y,∆yaw)的定位结果。

       7. 在得到了每帧点云定位结果后,L3-Net 通过 LSTM 网络对车辆的运动模型进行建模,利用定位的时序关系提升定位结果,实验表明获得了更加平滑和精确的定位结果。

      特别的,L3-Net 定位网络各阶段输出化的可视化效果。。Cost Volume 栏中每一列表示一个关键点的匹配情况,其中每一行表示一种航向角状态,每个图片表示水平位置的 cost 分布。在把所有关键点的 cost volume 合并到一起后,可以看到匹配响应显著增强。最终估计的定位结果(0.538m, 0.993m, 1.001 度)和其对应的来自数据集的定位真值(0.524m, 0.994m, 1.044 度)在最右栏展示。

           

       针对自动驾驶中的自定位问题,百度提出了一套基于深度学习的激光点云自定位算法。百度使用不同类型的网络结构对传统方法中的各功能模块进行替代,并在一个包含多种场景路况和大尺度时间跨度的数据集上验证了算法效果,实现了厘米级的定位精度。该数据集包含了城市道路、园区道路和高速等多种富有挑战的路况场景,数据总里程达 380km,即将在百度 Apollo 平台开放。

发布了66 篇原创文章 · 获赞 115 · 访问量 82万+

猜你喜欢

转载自blog.csdn.net/zhouyy858/article/details/100551606