文章标题:End-to-End Pseudo-LiDAR for Image-Based 3D Object Detection
文章源码: https://github.com/mileyan/pseudo-LiDAR_e2e
文章链接:https://arxiv.org/abs/2004.03080
文章主要内容:
- Pseudo-LiDAR运用了视差/深度估计网络生成深度图,并转换成伪激光雷达点云送入点云3D目标检测网络训练,大大缩小了基于图像的方法与基于激光雷达的方法之间的精度差距,但视差估计网络与点云3D目标检测网络是分开训练的,没有实现端到端的训练。
- 方法中两个网络的训练目标是不一致的,视差/深度估计网络的训练目标是全局深度估计,其损失针对所有像素点,不专注于感兴趣对象导致非对象像素被过度表示,目标检测网络的训练目标是输出目标检测框,更专注于感兴趣对象,二者训练目标的不同导致检测精度无法最大化。
- 因此,文章中提出了一个CoR模块,用于实现损失的完全反向传播,完成网络的端到端训练。
文章图片主要内容:
-
图一
绿色检测框:一台车辆的真实检测框
黄色点云:激光雷达真实点云
粉色点云:通过独立训练的深度估计网络生成的伪点云数据,大部分都在绿色检测框外
蓝色点云:深度估计加目标检测端到端训练得到的伪点云数据,比较贴合真实点云。
这张图片的目的是说明CoR模块的作用以及端到端训练的有效性,证明通过端到端训练,损失的完全反向传播能够提高生成的伪点云数据精度。 -
图二
展示点云数据里面各像素点类别的分布,像素分布:90%的像素属于背景,仅10%与汽车和人相关(人的像素点占比小于1%),且主要在20米的深度内。 -
图三
端到端训练的基本流程:
黑色箭头:表示前向传播过程
蓝色虚线箭头:表示目标检测损失的反向传播过程
红色虚线箭头:表示深度估计损失的反向传播过程
Change of Representation模块能够使得目标检测损失反向传播至深度估计网络指导网络的训练,保证生成的伪点云能够贴合真实点云。 -
图四
使用软量化或硬量化对输入伪lidar (PL)点云进行体素化。绿色体素是受PL点影响的体素。具有检测损失Ldet正梯度的蓝色体素施加一个力将点从其中心推到其他体素,而具有负梯度的红色体素施加一个力将其他体素的点拉到其中心。红色和蓝色体素上的这些力只能在PL点影响这些体素的情况下影响PL点。软量化增加了PL点的影响面积,从而增加了力,允许来自其他体素的点被推离或拉向。因此,更新后的PL点可以更接近地面真实激光雷达点云。 -
图五、图六
说明端到端训练之后生成的伪点云数据效果比较好,比较贴合真实点云数据,减少了检测误报的情况。