3D Object Detection——Voxel based methods

VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection

 

VoxelNet

端到端的3D目标检测网络,且仅使用3D LIDAR 点云数据就可以得到很好的精度。

网络结构包含三个过程:

1. Feature learning network

  • 构造3D 网格,对输入的点云数据栅格化。整个点云的大立方体的深度、高度和宽度分别为 (D,H,W),每个体素的深高宽为 ( d  , h , w ) ,各个坐标上生成的体素格(voxel grid)的个数为D∗ = D/d,H∗ = H/h,W∗ = W/w,将所有点云按照划分好的网格分组;
  • 对每个栅格随机采样,当栅格内点云数量多于T时,采样为T,节省空间和计算,同时也保证栅格之间点云数据平衡;
  • 计算每个点的初始7维特征,原始的点云坐标和激光强度,以及减去均值后的坐标:
  • 点云特征编码:用级联的Voxel feature encoding (VFE) layer 提取每个点的point-wise concatenated feature;

3D Object Detection——Voxel based methods_第1张图片

  •    栅格特征编码:经过多层VFE以后,对体素格内所有点进行最大池化,得到一个体素特征 Voxel-wise feature。                                                     

                                                                                3D Object Detection——Voxel based methods_第2张图片

  •  4D 稀疏张量表示:C×D∗×H∗×W∗,C表示特征维度。设置随机采样的T=35,并且采用两个VFE层:VFE-1(7, 32) 和 VFE-2(32, 128),最后输出尺寸是128×10×400×352。
  •  

2. Convolutional middle layers

对4D tensor 进行3D 卷积,对D方向上的像素进行降采样,经过middle layers 之后得到 64×2×400×352的输出,然后reshape到 128 × 400 × 352 变成3D tensor, 与BEV视图上的栅格尺寸对应。

这一步相当于把3D 栅格拍扁,变成一个平面栅格,每个栅格是128维度特征。便于后续RPN进行2D卷积。

 

3. Region proposal network

RPN的输入与二维图像一样,128个通道的H' x W'图像,经过三次卷积+1次concate得到最后的特征,用于提取每一个anchor的概率值和回归值。三次卷积block的首次卷积都是步长为2的3x3的卷积,后续都是步长为1的3x3卷积。(输入通道,输出通道,kernel_size, stride_size, padding_size)。

3D Object Detection——Voxel based methods_第3张图片

loss

整体loss = 正样本分类loss+负样本分类loss+正样本回归loss

 

3D Object Detection——Voxel based methods_第4张图片

3D Object Detection——Voxel based methods_第5张图片

整体网络框架如下:

3D Object Detection——Voxel based methods_第6张图片

参考:https://blog.csdn.net/hit1524468/article/details/80023901

你可能感兴趣的:(3D点云处理)