主要内容

开始使用pointpillar

PointPillars是一种使用二维卷积层进行三维对象检测的方法。pointcolumns网络有一个可学习的编码器,它使用PointNets来学习以柱(垂直列)组织的点云的表示。然后,该网络运行一个二维卷积神经网络(CNN)来产生网络预测,对预测进行解码,并为不同的对象类别(如汽车、卡车和行人)生成3-D边界框。

PointPillars对象检测

PointPillars网络有以下几个主要阶段。

  1. 使用特征编码器将点云转换为稀疏伪图像。

  2. 使用二维卷积主干将伪图像处理为高级表示。

  3. 使用检测头检测和回归3D边界框。

PointPillars网络

pointcolumns网络需要两个输入:作为P-by-2和支柱特征为P——- - - - - -N——- - - - - -K矩阵。P是网络中柱子的数量,N每根柱子的点数是多少K为特征维。

网络从一个特征编码器开始,这是一个简化的点网。它包含一系列卷积层、批处理范数层和relu层,后面是一个最大池化层。末端的散点层使用柱索引将提取的特征映射到二维空间。

接下来,该网络有一个由编码器-解码器块组成的二维CNN主干。每个编码器块由卷积层、批处理范数层和relu层组成,以提取不同空间分辨率的特征。每个译码块由转置卷积层、批处理范数层和relu层组成。

然后,网络将每个解码器块末端的输出特征连接起来,并将这些特征通过六个具有卷积和sigmoid层的探测头,以预测占用率、位置、大小、角度、航向和等级。

PointPillars网络图

创建PointPillars网络

您可以使用深层网络设计师(深度学习工具箱)app来交互创建point柱子深度学习网络。要以编程方式创建pointcolumns网络,请使用pointPillarsObjectDetector对象。

转移学习

方法重新配置预先训练的pointcolumns网络pointPillarsObjectDetector对象执行迁移学习。指定新的对象类和相应的锚框,以便在新的数据集上训练网络。

训练pointcolumns对象检测器并执行对象检测

使用trainPointPillarsObjectDetector功能来训练PointPillars网络。若要在经过训练的pointcolumns网络上执行对象检测,请使用检测函数。有关如何训练pointcolumns网络的更多信息,请参见基于pointcolumns深度学习的激光雷达三维物体检测

代码生成

要了解如何为PointPillars网络生成CUDA®代码,请参见基于pointcolumns深度学习的激光雷达目标检测代码生成

参考文献

郎,亚历克斯·H.,索拉布·沃拉,霍尔格·凯撒,周陆兵,杨炯,奥斯卡·贝博姆。PointPillars:用于点云对象检测的快速编码器2019 IEEE/CVF计算机视觉与模式识别会议(CVPR), 12689 - 97。美国加利福尼亚州长滩:IEEE, 2019。https://doi.org/10.1109/CVPR.2019.01298

Hesai和Scale。PandaSet。https://scale.com/open-datasets/pandaset

另请参阅

应用程序

对象

功能

相关的例子

更多关于

Baidu
map