APP下载

基于深度学习的三维目标检测方法研究

2020-12-14

计算机应用与软件 2020年12期
关键词:激光雷达卷积特征

王 刚 王 沛

1(中国科学院电子学研究所 北京 100190)2(中国科学院大学 北京 100190)

0 引 言

近年来,随着智能化技术以及无人化技术的发展,传感器技术蓬勃发展。作为三维环境感知传感器的激光雷达自然也受到了越来越多的关注,其在无人驾驶、测绘、军事等领域都有很多运用。激光雷达的数据产品是三维点云,即三维坐标系下的点的数据集,它包含三维坐标(x,y,z)和反射强度等丰富的信息。利用激光雷达产生的点云数据,可以获得三维目标的三维信息,比图像具有更好的深度信息;而图像具有RGB值,具有目标的更多的细节信息。因此在自动驾驶领域,感知模块的潮流就是将激光雷达数据和二维图像相结合,进行目标检测,获得汽车的周围环境信息。

在自动驾驶的感知算法方面,主要有三种思路:

(1)利用相机产生的二维图像进行目标检测。传统的图像目标检测算法采用方向梯度直方图(Histogram of Oriented Gradient,HOG)[1]、尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)[2]等手工特征对图像进行特征提取,得到目标的边缘信息,再用支持向量机(Support Vector Machine, SVM)[3]或AdaBoost[4]算法对目标特征进行分类检测。在神经网络发展之后,RCNN[5]、Fast RCNN[6]、Faster RCNN[7]等算法将目标检测提升到了一个新的高度。但由于相机图片是二维的,如果在自动驾驶场景中完全利用图像信息,很难获得三维空间目标的精确位置。

(2)利用激光雷达的点云数据进行目标检测。激光雷达点云数据具有三维空间丰富的深度信息,利用激光雷达点云的这一特点,可以进行三维目标检测。Zhou等[8]利用类似于图像像素的方法,将点云数据体素化,每个体素取值0或1(判断体素是否含有目标),再将三维卷积神经网络运用到点云的体素网格。但是由于空体素的存在,这种方法消耗了大量的内存并且需要大量的计算量。PointNet[9-10]系列算法与PointCNN[11]直接对点云进行处理,进行点云分类,但是这些算法只能适用于室内环境这些小场景,对于自动驾驶这种复杂场景难以适应。

(3)利用激光雷达点云数据与相机图像融合进行目标检测。百度提出的MV3D[12]将激光雷达点云数据投影成俯视图与前视图,在点云俯视图上进行候选区域生成,再将生成的候选区域分别映射至RGB图像、点云俯视图和点云前视图上进行感兴趣区域(Region of Interest)的特征提取与特征融合,最后进行位置回归和目标分类。但是这种方法只利用俯视图生成候选区域,会造成分类和定位的不准确。Qi等[13]对二维图像利用区域候选网络生成候选区域,并将生成的候选区域映射至三维点云中,运用PointNet++进行点云分类。这种方法只利用了图像信息进行候选区域生成,也会造成分类与定位的不准确。Ku等[14]提出了AVOD算法,其利用深度卷积网络分别对三维点云数据的俯视图与二维图像进行特征提取,并分别将二者得到的特征图送入区域候选网络进行候选区域生成,最后进行目标分类和位置回归。

本文提出自动驾驶场景下的三维目标检测改进算法,利用点云和图像融合的方法,检测目标,并获得目标物体的三维位置信息与类别信息。本文提出的算法具有以下创新点:

(1)对激光点云进行预处理,得到具有高度通道、点云密度通道以及反射强度的俯视特征图。

(2)在区域候选网络之后,对点云的俯视图特征与图像特征的ROI使用ROI Align进行池化,避免了ROI Pooling的两次量化造成的误差。

1 整体网络结构

本文将Faster RCNN[6]运用到点云和图像融合的三维目标检测上,其为了加强对小目标的检测准确性,在生成特征图时,引入了特征金字塔网络[15],使其生成的特征图与输入图像具有同样的尺寸,并融合了各个卷积层所提取的特征,使网络对小目标召回率提高。整体网络结构如图1所示。

图1 整体结构图

1.1 Faster RCNN网络

Faster RCNN算法是2015年提出的两阶段目标检测算法,是目标检测的经典框架,其提出了区域候选网络。目标检测具有两个任务:目标分类和位置回归。基于区域候选网络的方法能够很好地完成这两个任务。其主要分为两步:

Step1将图像作为输入,使用深度网络提取输入图像的特征图,区域候选网络对前面生成的特征图进行裁剪,使其生成一定量的anchor,然后区域候选网络再对这些anchor作分类(判断是不是目标)和位置回归(粗定位),生成一定量的候选区域。区域候选网络如图2所示。

图2 特征候选网络

Step2将生成的候选区域映射至输入图像生成的特征图,得到感兴趣区域,并进行ROI Pooling,得到固定大小的候选区域特征图。最后用全连接层进行分类(具体类别)和位置回归(精确定位)。

1.2 特征金字塔网络

特征金字塔网络通过简单地改变网络的连接,在几乎不增加网络计算量的情况下,提升了网络对小目标的检测性能。在深度卷积神经网络中,网络的层数越深,得到的特征图的分辨率越低,但语义信息却越丰富。特征金字塔网络通过将卷积网络底层的高分辨率、低语义信息的特征图与网络上层的低分辨率、高语义信息的特征图进行由上到下的连接,使各个尺度下的特征图都具有较为丰富的语义信息。特征金字塔网络主要分为三个部分:自下而上的卷积特征提取网络,自上而下的上采样过程,以及同一层间特征的横向连接。自下而上的卷积特征提取网络为卷积网络的前向过程,得到语义信息逐渐增强,分辨率逐渐变小的特征图。自上而下的上采样过程将上层特征图逐渐向下一层上采样,得到与下一层相同尺寸的特征图。横向连接将上采样得到的特征图与下一层特征图进行融合,使得到的特征图既具有高层语义信息,又具有低层的定位细节信息。特征金字塔网络如图3所示。

图3 特征金字塔网络

2 点云数据预处理

图4 点云俯视图

3 ROI Align

在Faster RCNN中,区域候选网络生成候选区域后,网络将候选区域映射到前面卷积网络生成的特征图中,然后使用ROI Pooling对目标区域进行池化,但是这个步骤会有两次量化操作,如图5所示。由于在卷积过程中,图像进行了下采样,所以在将候选区域映射至卷积特征图的过程中,也需要将候选框下采样同样的倍数,如果对候选框下采样不能够除尽,将其量化为整数,这就出现了第一次量化操作。在池化过程中,需要将候选区域平均分割为k×k个单元,同样,如果不能整除,这就会产生第二次量化操作。经过这两次量化后,回归出来的目标框与量化后的目标框发生了一定的偏差,因此会导致检测精度下降。

图5 ROI Pooling

采用ROI Align[16]解决这个问题,如图6所示。

图6 ROI Align

取消两次量化操作,使用双线性插值获得坐标为浮点数的像素点上的图像数值。具体过程如下:

(1)将目标候选区域映射至卷积特征图上,映射过程中不做量化处理。

(2)将候选区域划分为k×k个单元,每个单元的边界也不做量化处理。

(3)对每个单元取四个固定的坐标点,用双线性插值的方法计算出这四个点的坐标,然后对其进行最大池化操作。

在ROI Pooling操作中,反向传播公式为:

(1)

式中:xi表示在池化操作之前卷积特征图上的像素点;yrj表示ROI Pooling之后的第r个候选框的第j个点;i*(r,j)代表点yrj池化之前的坐标点。由式(1)可以看出,只有在ROI Pooling之后的点的像素值在Pooling操作中使用了当前点xi的像素值(即当i=i*(r,j))时,xi的梯度才反向传播。

ROI Align的反向传播公式为:

(2)

4 实 验

4.1 实验数据集

本文实验采用KITTI数据集,它是自动驾驶领域最出名的数据集之一,目前自动驾驶领域的大量算法都在此数据集下进行实验。本文利用其三维点云数据集和图像数据集,包含7 481个三维点云文件和图像文件。点云文件被裁减到以激光雷达为原点,横纵坐标分别为[-40,40]×[0,70]m的范围内。

4.2 实验环境

本文是在Ubuntu 16.04系统下,采用TensorFlow 1.9深度学习框架,CPU为Intel(R)Core(TM)i7-3770,GPU为MSI 1080Ti,开发工具为Pycharm+Anaconda,Python版本为3.6。训练大约需要15 h。

4.3 实验结果分析

在训练集,测试集与验证集的分割与目前两种基于激光雷达点云数据和图像融合的算法分割相同的情况下,由表1与表2可以看出,在KITTI数据集中,本文算法在加入反射强度信息后,3D平均精度(AP-3D)和俯视图平均精度(AP-BEV)都有一定的提升,说明反射强度信息对神经网络的特征提取具有一定的帮助。在用ROI Align替代ROI Pooling后,3D平均精度和俯视图平均精度也有一定的提升,特别是在检测小目标方面,其中容易、中等、困难为目标检测的难度。检测结果如图7所示。

表1 各方法3D平均精度(AP-3D)对比(Car)

表2 各方法俯视图平均精度(AP-BEV)对比(Car)

(a)2D车辆检测结果

5 结 语

本文提出基于深度学习的三维目标检测改进方法,并且实现改进的检测网络。通过将激光雷达点云数据与图像相结合,使检测网络不仅能够提取激光雷达点云的深度信息,还可以提取图像的颜色细节信息,减少单一输入形式对目标检测准确率造成的影响。将反映目标材质信息的反射强度引入点云俯视图的信息通道中,对特征的提取有一定的帮助;将候选区域网络得到的候选区域映射至卷积特征图之后,采用ROI Align,避免了原来池化过程中的两次量化操作。本文提出的对三维目标检测的改进方法,在使用激光雷达点云与图像融合的前提下,三维目标检测效果有一定的提升。

猜你喜欢

激光雷达卷积特征
离散型随机变量的分布列与数字特征
激光雷达实时提取甘蔗垄间导航线
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
法雷奥第二代SCALA?激光雷达
从滤波器理解卷积
抓特征解方程组
不忠诚的四个特征
基于傅里叶域卷积表示的目标跟踪算法
Velodyne激光雷达宣布将GaN技术用于小型化低成本固态激光雷达传感器的新设计