资讯详情

自动驾驶 知识点 Review 点云 感知算法 五(PointPillar,SECOND,RangeDet)

文章目录

  • 点云模型综述
    • 点视图
    • 网格(Voxel、Pillar、BEV)
    • Point Voxel
    • 前视图
  • PointPillar
  • VoxelNet
  • SECOND
  • RangeDet

点云模型综述

在这里插入图片描述

点视图

网格(Voxel、Pillar、BEV)

Point Voxel

前视图

PointPillar

Pillar Feature Net :用于提取特征。FPN和SSD头是传统的方法。 每个点有9个维度,r是强度。xc,yc,zc相对于每一点pillar所有点的平均偏差,xp,yp相对于每一点pillar中心点的偏差。c与整个相比pillar所有点的平均偏差,p是自己pillar中心点的偏差。Pillar表示称3维的tersor。N是点数,需要上下采样,保证每一个pillar点的数量是固定的。

第二步是通过全连接网络将D升至C维。max pooling会把pillar所有点N都取最大值,这样3维tersor将维度降低到2维。

最后一步是稀疏pillar映射回x,y平面,即2D网格。我们首先记录非空网格。pillar有了这个信息,我们可以映射回2D平面,得到2D网格数据,每个网格都有C维的特点。

以上就是pillar特征提取过程充分利用点视图忽略了非空区域的特征,并快速计算。通过俯视图,结构化数据,更有效地提取临域特征,完成以下物体检测。

因为它已经是一个图像结构,我们通过经典FPN和SSD首先进行物体检测。在拼接之前,生成不同分辨率的特征图。SSD是基于anchor回归的方法。输出每个anchor类别、位置、大小、角度。

点云和图像anchor设计机制有些不同。图像是透视结构,物体的大小会随着距离的大小而变化很大。不同角度的物体形状也会有所不同。不同物体类别的大小和长宽比也会有所不同。因此,需要设计不同的尺寸anchor,识别不同远近和类别的目标。 三种不同的长宽比。1:1,2:1,1:2。每个尺度不同。每个位置有9个anchor,适应不同类别、不同大小、不同长体。

但点云是俯视图,如果点云采用前视图,anchor设计类似于图像,但基于俯视图anchor设计会有点不同。俯视图,物体的大小和长宽比不变,对应于世界坐标系下的大小。同一个物体,基本上没有太大的区别。这时候设计anchor,就是根据不同类别设计anchor。比如车辆的anchor或者行人的anchor。一般定义0度anchor,和一个90度的anchor。anchor效果越好,计算量越大。anchor是3D的,有长宽高信息。在与gt在匹配时,我们忽略了高信息。如果anchor与gt高于IOU,就是positve的anchor,否则就是negative的anchor。

在俯视图下,不同类别,大小差别比较大。这对anchor的positive和negative差别会很大。所以车辆IOU的threshold会更高,行人threshold会更低。更容易找到正样本。

pointpillar是7维的tensor定义物体框。xyz 3D物体框的位置。wlh长宽高。theta是方向盘的转向角度。理论上还有两个角度。但是对于自动驾驶来说并不重要,这里就不写了。

xyz是中心点偏移的位置。

gama调整难样本和易样本的权重。alpha平衡正负样本的权重。

这里只写了positve的anchor的loss,加上整体negative的loss。 一些漏检及改进方法: 但请注意,特征图分辨率不能无限提高,硬件效果也有上限。 PointPillars,这是2019年工业界的一篇文章Paper。

该模型的主要特点是检测速度和精度的平衡。平均检测速度为62Hz,最快达到105Hz,其他模型确实遥遥领先。这里我们介绍一下CIA-SSD模型中的精度-速度图如下所示。

可见,截止日期CIA-SSD论文发表前,PointPillars检测速度遥遥领先,精度不低。

一些现有的研究喜欢以下两种方式处理不规则、稀疏的点云数据,然后引入RPN层进行3D Bbox Proposal,这两种方法是:

(1)将点云数据纳入个体元素(Voxel)构成规则密集分布的体素集。VoxelNet和SECOND,这已经在之前的文章中分析过了;

(2)从俯视角度处理点云数据,获取伪图片数据。常见的模型包括MV3D和AVOD,这也说了。

本文采用了不同于上述两种想法的点云建模方法。从模型的名称PointPillars可见,这种方法将是Point一个个转化Pillar(柱体),从而构成了伪图片的数据。

然后伪图片数据BBox Proposal很简单,作者采用了SSD网络结构络结构Proposal。

2 数据处理和网络结构 本文的亮点之一是将点云分成一个接一个Pillar,这构成了伪图片的数据。

如何构成这张伪图?作者在论文中给出了以下图片。

VoxelNet

先给3D在空间中画一个网格,然后将每个点分配到网格中。每个网格有不同数量的点和设定点的数量。如果一个网格点太多,则采样。如果点较少,则采样,以确保每个小网格的数量相同。

VFE:先用全连接层对点提取,3D升至64或128。要求所有点的平均值mean pooling,得到一个网格所有点的一个整体描述,灰色特征向量为之后的特征向量,将pooling后面的特征向量,然后与每个点拼接。然后每个点包含自己的特征和网格的整体特征,每个点包含临域信息。

stacked VFE:重复多次的VFE

我们的输出是4D的tersor,我们会用3D卷积对4D的tersor提取特征。空号内为x,y,z的分别stride。倒数第二层将高度与通道融为一体,高度信息融为128通道特征。这样,输出2D的图像 一个chanal,不是真实的图像,但结构是。

此时可使用2D目标检测的方法比较好。VoxelNet结构类似于FPN,和U-shape Net。 因为这个输入数据想要2D因此,可以使用传统的更好的网络结构。VoxelNet前两步后,后面可以用传统的。

但是Voxel有两个问题,网格数据效率相对较低,因为不是所有的数据都有点云,相对稀疏,许多网格都是空的。这将浪费大量的计算能力SECOND系数卷积。另一个问题是VoxelNet有很多3D卷积,3D卷积计算量相对较大,通过PIXOR改进,但是性能会降低。

SECOND

SECOND将VoxelNet用稀疏的卷积代替卷积。 密集网格只保留非空网格,记录非空网格3D索引(位置)。 卷积计算只在非空进行。 记录P1和P2.值和索引。

RangeDet

以机械旋转激光雷达为例。 64线激光雷达对应于64线垂直射线和垂直射线Elavation64个离散角度。Azimuth方向,扫描水平视野,长生多个离散角,假设水平为0.2度,然后360度产生1800个角度。 最后生成64*1800的2D前视图,可想而知,椭圆形用剪刀剪开平铺,椭圆底边1800,高64. 像素值定义为每个点的深度。距离传感器的距离。或使用每个点的反射强度作为像素值。 通过上述变化,可以使3D点云从视觉坐标系转向前视图坐标。 前视图 优点:与俯视图相比,网格更紧凑,每个网格可能都有数据。每个网格都有垂直和水平的扫描线,不收缩前视图,不会有定量损失。 缺点:由于透视的变化,不同的物体有很大的不同。但在俯视图或点视图下并非如此。响的,这两个都是基于世界坐标系,不论物体远近,大小都是一样的。另外前视图是一个2维图像的结构,需要在这个2D图像上提取2D的特征,这时候,物体的3D信息,或者说是深度信息是嵌入在特征的某一个channal里,因为在提取2d的特征时,3D物体的深度或者3D形状可能不能提取到。 LaserNet: 基于前视图,比较基础的一个算法。数据是2D的前视图,以及一些深度range前视图,以及光照强度前视图。然后过Conv,之后在特征图上直接需要bounding box的参数。bounding conner以及每一个点属于哪个class。所有预测都是像素级的。方法与CenterNet比较像,每一个点是不是物体还是背景,是哪个物体。这里细节还用到了自适应NMS。总的来说,LaserNet是前视图很标准的方式,也可以使用faster-rcnn, yolo, centnet等等方法。这里没有考虑到前视图和2D是有区别的,只考虑是相似之处。有一些channal是深度信息或者光照信息或者高度信息。这些可能会丢失。

RangeDet: 先来回顾一下前视图的问题。前视图就是一个2D的图像,如果我们只是当作普通的2D的图像做,前视图在不同距离,物体差别很大。俯视图就不需要考虑。另一个是前视图提取的是2D的特征,而最后的物体检测要在3D的坐标下的3D的结果。用标准卷积,无法提取3D信息,效果很差。RangeDet就对这两个问题进行了优化。提升了准确度。

输入也是多个channal的前视图图像,Meta-Kernel是用了提取深度信息。然后通过FPN的结构,不同尺寸进行物体检测。不同大小的物体,分配不同尺度的特征图上,RangeDet做了比较特别的设计。最后输出物体分类的结果和bounding box回归的结果。这个网络结构和2D的网络结构整体上讲一致。但是Meta-Kernal和不同大小物体不同分配做了改进。下面详细看下:

2D的特征图,每一个3*3卷积,找到红色中心点,其他点位在3D坐标下都是相对于红点的相对位置,这样可以算出一个权重值,这个权重值是可以在网络中学习的,权重值和原始点的值进行点积计算。这样就充分利用了不同数据,不同位置的集合特性。 传统是比较大的物体分配到分辨率比较低的特征图上,比较小的物体,分配到分辨率比较高的特征图上。但是这是传统目标检测的方法,基于同一个物体的大小是差不多的。但是在前视图中,同一个物体,因为距离的远近,大小差很多,前视图虽然是图像,但是是点云集合的信息。将物体按照距离划分,近距离,中距离,远距离。每一个距离,处理的物体都在一个层级。保证集合特征基本一致。保证每一层次不会处理差别太大的物体。

标签: zc01029950传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台