目录
- 写在开头
- 3D Object Detection
-
- 相关博客:
- Sliding window
- Two Stage
-
- Multi-View 3D Object Detection Network for Autonomous Driving (CVPR2017)
- RT3D: Real-Time 3-D Vehicle Detection in LiDAR Point Cloud for Autonomous Driving
- Frustum PointNets for 3D Object Detection from RGB-D Data (CVPR2018)
- Joint 3D Proposal Generation and Object Detection from View Aggregation (IROS2018)
- PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud (CVPR2019)
- VoteNet:Deep Hough Voting for 3D Object Detection in Point Clouds
- Multi-Task Multi-Sensor Fusion for 3D Object Detection
- GS3D: An Efficient 3D Object Detection Framework for Autonomous Driving
- Stereo R-CNN based 3D Object Detection for Autonomous Driving
- STD: Sparse-to-Dense 3D Object Detector for Point Cloud
- Part-A^2 Net: 3D Part-Aware and Aggregation Neural Network for Object Detection from Point Cloud
- Class-balanced Grouping and Sampling for Point Cloud 3D Object Detection
- BirdNet: a 3D Object Detection Framework from LiDAR Information(2018 ITSC)
- StarNet: Targeted Computation for Object Detection in Point Clouds
- PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection
- One Stage
-
- 3D Fully Convolutional Network for Vehicle Detection in Point Cloud (IROS2017)
- Complex-YOLO: An Euler-Region-Proposal for Real-time 3D Object Detection on Point Clouds(ECCV2018)
- YOLO3D: End-to-end real-time 3D Oriented Object Bounding Box Detection from LiDAR Point Cloud(ECCV2018)
- PIXOR: Real-time 3D Object Detection from Point Clouds (CVPR2018)
- HDNET: Exploiting HD Maps for 3D Object Detection (CoRL2018)
- Voxel-FPN: multi-scale voxel feature aggregation in 3D object detection from point clouds
- VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection (CVPR2018) (未完)
- LaserNet: An Effcient Probabilistic 3D Object Detector for Autonomous Driving Gregory (Arxiv2019)(未完)
- 3DSSD: Point-based 3D Single Stage Object Detector
- 另一种分类方式:Voxel or Image or Pointcloud?
- Loss的进化史
- 未完待续。。。
写在开头
有点总结不过来了,3D object detection这个领域从2019年文章数量急剧上升。我也没办法把所有文章都更新在这里,而且one-stage和two-stage的划分方法不太适用了。我看了的文章的详细解读都放在了一个专栏里,【论文阅读】【三维目标检测】,读者们可以自行从其中找感兴趣的文章。
3D Object Detection
2D Object Detection 的研究已经非常成熟了,代表作品有RPN系列的FasterRCNN和MaskRCNN,One Shot系列的YOLOv1-YOLOv3。这里推荐一个2D Object Detection发展过程和论文的github链接。
在2D Object Detection的基础上又提出了新的要求3D Object Detection。问题的具体描述检测环境中的三维物体,并给出物体的Bounding Box。相比于2D,3D的Bounding Box的表示除了多了一个维度的位置和尺寸,还多了三个角度。可以想象,一架飞机的Bounding Box的尺寸的是固定的,飞机的姿态除了位置之外,还有俯仰角、偏航角和翻滚角三个角度。
目前对于3D Object Detection有迫切需求的产业是自动驾驶产业,因为要想安全的自动驾驶,需要周围障碍物的三维位姿,在图片中的二维位姿不带深度信息,没有办法有效避免碰撞。所以3D Object Detection的数据集大多也是自动驾驶数据集,类别也主要是车辆和行人等,比较常用的有KITTI和kaist。由于自动驾驶针对车辆,所以障碍物的高度的检测对于安全行驶并没有十分重要,而障碍物都在陆地上,所以也不存在俯仰角和翻滚角两个角度。所以有些3D Object Detection方法将这三值忽略了。
接下来我将详细列几篇论文,以及我认为论文中比较关键的一些点。每篇论文具体的细节和解读还请读者自行搜索。3D Object Detection的方法很大程度上是借鉴了2D Object Detection的方法。
相关博客:
Sliding window
Vote3Deep: Fast Object Detection in 3D Point Clouds Using Efficien(IROS2017)
该方法使用三维滑动窗口的方法。首先将点云栅格化,然后使用固定大小的三维窗口,使用CNN判断该窗口的区域是否为车辆。由于栅格化的稀疏性质,该文章使用了稀疏卷积的操作,将卷积核做中心对称,将卷积操作变为投票操作,使得该投票操作只用在不为0的栅格点进行投票即可,减少了大量空卷积的操作。具体投票方式见下图。
具体投票为将中心对称过后的卷积核的中心与非零点对齐,然后相乘,即可得到改点的投票。将多点投票的重叠的区域相加,得到输出。
Two Stage
Multi-View 3D Object Detection Network for Autonomous Driving (CVPR2017)
MVNet使用点云和图像作为输入。点云的处理格式分为两种:第一种是构建俯视图(BV),构建方式是将点云栅格化,形成三维栅格,每一个栅格是该栅格内的雷达点最高的高度,每一层栅格作为一个channel,然后再加上反射率(intensity)和密度(density)的信息;第二种是构建前视图(FV),将雷达点云投影到柱坐标系内,也有文章叫做range view,然后栅格化,形成柱坐标系内的二维栅格,构建高度、反射率和密度的channel。
使用俯视图按照RPN的方式回归二维proposal,具有(x, y, w, l)信息,角度只分成0和90度两种,z和h的信息在这一步被设置为常量。然后将三维的proposal进行多个角度的ROI pooling,fusion过程可使用concatenation或summation。最后加上经典的分类头和回归头。
-
文章中强调使用俯视图的好处
“We use the bird’s eye view map as input. In 3D object detection, The bird’s eye view map has several advantages over the front view/image plane. First, objects preserve physical sizes when projected to the bird’s eye view, thus having small size variance, which is not the case in the front view/image plane. Second, objects in the bird’s eye view occupy different space, thus avoiding the occlusion problem. Third, in the road scene, since objects typically lie on the ground plane and have small variance in vertical location, the bird’s eye view location is more cru- cial to obtaining accurate 3D bounding boxes. Therefore, using explicit bird’s eye view map as input makes the 3D location prediction more feasible.” -
本文提出的俯视图的构建过程非常有参考价值,是后续多篇文章所参考的依据。
RT3D: Real-Time 3-D Vehicle Detection in LiDAR Point Cloud for Autonomous Driving
用R-FCN检测车辆。
详细解读传送门
Frustum PointNets for 3D Object Detection from RGB-D Data (CVPR2018)
该方法使用图像和激光雷达检测障碍物。
- 处理流程
利用2D Object Detection方法在image上进行车辆检测;
使用2D prop