APP下载

基于深度学习的车辆目标检测算法综述

2022-08-03苏山杰陈俊豪张之云

汽车文摘 2022年8期
关键词:网络结构卷积神经网络

苏山杰 陈俊豪 张之云

(重庆交通大学机电与车辆工程学院,重庆 400074)

主题词:深度学习 车辆目标检测 卷积神经网络 轻量化网络

CNN Convolutional Neural Network

GPU Graphic Processing Unit

CPU Central Processing Unit

LRN Local Response Nor

VGG Visual Geometry Group

BN Batch Normalization

SVM Support Vector Machine

SPP Spatial Pyramid Pooling

ROI Region of Interest

RPN Region Proposal Networks

R-FCN RPN-Fully Convolutional Networks

IOU Intersection over Union

SSD Single Shot MultiBox Detector

FPN Feature Pyramid Network

PAN Path Aggregation Network

SVD Singular Value Decomposition

ReLU Rectified Linear Unit

1 引言

目标检测是计算机视觉技术、深度学习和图像识别领域下的基础研究方向,它是更为复杂的高层计算机视觉任务的技术前提,如在检测任务后对图像中物体行为进行预测;在物体识别后进行目标跟踪等等。其中,车辆目标检测任务作为计算机视觉和深度学习领域下的研究重点和热门任务,它的目的是在图像中定位出感兴趣的目标,然后根据特征信息正确定义出定位目标的类别,再利用检测的边框圈出定位目标,从而完成检测任务。在智能驾驶、行人检测和建立智能化的交通系统中有着重要的研究意义与价值,也是未来建立智慧城市的前提任务。近年来,以物联网技术、计算机视觉技术为代表的核心技术得到了蓬勃发展,基于深度学习的车辆目标检测算法得到了许多研究学者的青睐。

本文针对车辆目标检测任务,首先对深度学习车辆目标检测进一步探讨,提出检测任务的重点、难点及发展现状,以时间线对卷积神经网络下车辆目标检测算法进行概括,并对目前2 种主流的基于候选框和基于回归的车辆目标检测算法进行总结,最后对目前目标检测算法的发展前景进行展望。

2 车辆目标检测研究背景

2.1 车辆目标检测任务重点

基于深度学习的车辆目标检测算法任务是从一系列的图像或者视频中找出感兴趣的物体,同时根据特征信息确定车辆的大小和位置。但是,在实际的场景中,始终会有许多干扰因素,例如光照,遮挡,不同的尺度形状等情况,这会导致车辆目标检测任务进行中出现漏检和误检的问题,影响算法的精度。因此,如何能达到算法在精度上的要求是目标检测中的一项重点难点项目;同时,针对车辆检测在智能驾驶和违章检测领域中的应用,算法能够做到实时的检测也是目前研究重点。大量的研究人员在此两项任务上做了一系列卓越的贡献,尤其是深度学习算法的蓬勃发展,为车辆检测任务带来了更好的研究前景。

2.2 车辆目标检测任务难点

当前,车辆目标检测任务所面临的巨大挑战仍然是检测算法的实时性,精度上与检测需求之间的矛盾,如何更好的平衡它们一直是基于深度学习的目标检测算法的重要研究方向。而目前对以上2项指标的研究也在逐渐进行,但仍存在5项研究难点:

(1)无人驾驶车辆在行驶过程中会遇到不同的环境状况,因此所采集到的图像往往会受到不同光照条件,天气不断变化,以及出现目标物被大面积遮挡的情况影响,这会导致目标检测任务出现提取特征不足,漏检物体的情况,进一步加大检测难度。

(2)目前存在的数据集对象类别与现实世界中获取的图像中的部分类别存在一定的差距,这会导致在训练过程中,所标注的物体被识别为其它对象,或者识别为背景,这会大大降低检测结果的精度。

(3)在特定数据集训练后,更换新的数据集会出现较低的检测精度,因为检测算法的泛化能力不够好。

(4)目前采集的图像数量呈指数级增长,而处理设备的计算能力及储存能力可能无法做到更好的实时检测。

(5)未来的研究难点更注重分割图像中感兴趣物体的类别,甚至可以做到根据图像预测物体的行为及会出现的对象。

2.3 车辆目标检测发展现状

传统的车辆目标检测中,也有许多代表性的检测算法,占主要地位的就是基于人工特征提取的检测方法。这类方法一般都是用作特定的目标检测任务,在整个环节中,人工特征提取阶段对人的主观意识有较高的要求,扮演着重要的角色,对整个算法的性能有直接的影响。传统的车辆目标检测算法的缺点主要是数据量小,人工提取效果不好,可移植性较差,时间复杂度高,窗口赘余,面对环境多变性的鲁棒性差,只有在特定的环境下才有良好的性能,故并不适合在检测实时性要求较高和环境多变的场景中应用,在现实中也得不到大规模的应用。随着计算机视觉技术的快速发展,基于深度学习的车辆目标检测算法也逐渐成为主流算法,与传统的经典算法不同,此类算法克服传统算法的大部分缺点,同时在计算机GPU 和储存能力都大幅度提高的信息技术下,深度学习的运算速度比过去提高了2~24 倍,从而得到了越来越多的国内外学者认可。2012 年,基于卷积神经网络的分类网络被提出后,许多学者已经开始将深度卷积神经网络应用于目标检测任务,并提出了许多优秀的算法。目前,基于深度学习的目标检测算法在学术领域的主要关注点就是模型的精度和速度的实时性,从而产生了2 个不同发展方向:2 阶段目标检测算法和1 阶段目标检测算法,分别强调检测精度和检测速度。

3 基于深度学习的车辆目标检测算法研究现状

提出性能较好的深度学习下目标检测算法是近些年来计算机视觉技术领域的重要研究目标,特别是基于卷积神经网络的深度学习算法被国内外学者普通接受的环境下,对算法的创新使检测精度和实时性达到了一个新的高度。

3.1 卷积神经网络下车辆目标检测算法

卷积神经网络(Convolutional Neural Networks,CNN)经历了几十年的发展历程,现在已经在许多领域中得到应用,并进一步提高了许多任务的效率,目前对图像中目标进行分类、检测及语义分割的计算机视觉任务也逐渐成为一种高效率的检测方法,卷积神经网络在目标检测研究中的重要里程碑如图1 所示。卷积神经网络是由3部分组成,包括进行卷积操作的卷积层、采样的池化层和对向量进行处理的全连接层,这些模块最后堆叠形成一个深层架构,卷积神经网络在发展历史中演化出3个有借鉴意义的理念和方法:

图1 经典神经网络算法发展历程

(1)权值共享的理念;

(2)局部连接(稀疏连接)方法;

(3)平移不变性和等变性。

随着算法的发展,卷积神经网络也出现许多性能较好的算法,每一种网络结构都有其独特的结构和创新点,并对前人的工作做了对比分析,本节对这些结构进行总结和分析。

3.1.1 AlexNet

由LeCun 等提出的LeNet-5 卷积神经网络最初是应用在数字识别问题上,该网络模型的出现奠定了现代神经网络的发展基调,为后续新的网络模型的提出产生了深远的影响。2012年,针对前期各种卷积神经网络结构的不足,Krizhevsky等人通过大量的训练集训练网络,最终提出了一种全新的AlexNet 网络结构,在举办的ImageNet 大规模视觉识别挑战赛(ILS⁃VRC)中,网络具有最优的性能,在检测精度和检测速度都大幅度提升,该网络结构瞬间推动了神经网络的应用热潮,而深度卷积神经网络在计算机视觉领域的大规模应用,进一步推动了其主导地位的建立。AlexNet 的网络结构共有8 层,包括5 个卷积层和3 个全连接层,这样网络结构在增加深度和广度的同时,使其网络参数增加到了6 000 万个,网络结构通过两块GPU 运算,大大减少了CPU 训练的时间成本。AlexNet 有以下贡献:在ReLU 函数提出后,对其使用并没有发扬光大,作者经过大量数据分析发现ReLU函数解决了传统的Sigmoid函数在网络层数较深时会出现梯度弥散的问题。对比分析后,将ReLU 作为激活函数来提高网络性能;使用数据增强减少过拟合问题;由于参数量过大的问题,使用Dropout函数去随机选择一些神经元失去活性,在对试验的精度没有影响的同时,也避免了模型过拟合问题,之后的网络结构中该层成为全连接层之后的标配层;作者提出局部响应归一化(Local Response Nor,LRN)层是对模型泛化能力的进一步保障。

3.1.2 VGGNet

VGGNet是由牛津大学VGG(Visual Geometry Group)团队和Google Deep Mind 公司在针对AlexNet网络层数深度问题进行研究而提出来的,并取得了ImageNet 竞赛中定位检测的第一名和分类任务的第二名的好成绩,同时证明了算法的网络深度对目标检测性能有较大的影响。然而这种增加网络深度的改进方法并不是没有限制的,作者通过设定VGGNet 网络结构为11、13、16、19 层,验证了在恰当的网络深度的基础上继续添加网络的层数会出现训练差增大,而出现的网络退化的问题,故目前最佳的网络深度为16层和19 层,VGG16 的网络结构如图2 所示。VGGNet网络结构有以下特点:结构简洁,并在卷积层中采用多个小卷积核去替代较大的卷积核,这一方面减少了模型的参数,增大了网络感受野,另一方面进行了更多的非线性映射操作,增加网络层数加深时的拟合和表达能力,且模型采用了更小的2×2 池化核,并在测试阶段把3 个全连接替换为3 个卷积,该网络的突出贡献在于证明了使用小卷积核,能够增加网络的深度从而更好的提取特征。

图2 VGG16框架网络结构[8]

3.1.3 GoogleNet

GoogleNet 是Szegedy 等在2014 年提出的,网络最主要的就是Inceptionv1模块层,并在之后改进过程中出现包括Inceptionv2,Inceptionv3和Inceptionv4的3个版本,这些模块主要是由1×1,3×3,5×5的卷积核模块组成,目的是通过优化网络结构从而降低网络的复杂程度,减少了模型的参数量。由于该网络结构拥有较好的性能,在2014 年的ILSVRC 图像分类竞赛中,获得了第一名的佳绩,为后续网络结构的改进提供了新的思路。

3.1.4 ResNet

网络层数到了一定的深度,会不可避免的出现许多问题,如参数量增多,训练结果不理想等,学者对问题更深一步探讨,主要原因是网络层数深度的增加,数据集不充分,便会引起梯度弥散或梯度爆炸的问题。以上问题的是由何凯明团队提出的ResNet 网络改善的,主要工作是在主干卷积环节添加Residual结构模块,这种模块利用跳连的结构将输入的特征和经过卷积操作后的输出特征相加,共同成为输出层的一部分,模块结构如图3 所示。该网络在增加了网络深度的同时,对输入数据进行训练时也不会影响误差,取得了较好的效果,该网络设计特点是在非线性层后,激活函数前采用批标准化(Batch Normalization,BN)层加快网络的训练速度和收敛时的稳定性,用平均池化层代替全连接层。在同年的ILSVRC 和COCO的竞赛中,各个方面的性能实现了惊人的突破,几乎以碾压性的优势分别取得了分类、定位、检测和分割任务的第一名,该网络的提出进一步奠定了深度卷积神经网络在计算机视觉技术的主导地位,对后续网络的提出与改进有着较好的借鉴意义。

图3 Residual模块结构

3.1.5 DenseNet

2016年,Huang等为缓解梯度损失,加强网络中特征的传递,提出了轰动一时的DenseNet 网络结构,主要构建模块是稠密层和过渡层,稠密块主要是稠密连接的Highway 模块,过渡层为相邻2 个稠密块的中间部分,这样的连接方式大幅度减少了模型的参数,有效地对特征进行复用,甚至解决了在小样本上的过拟合问题。

3.1.6 MobileNet

2017年,随着计算机视觉技术和GPU的快速发展,神经网络模型的轻量化逐渐成为国内外学者争先研究的方向,常见的设计方法有2种:设计轻量化的网络模型和对训练好的复杂网络进行压缩处理。Google团队经过大量的研究,提出了一种当时最轻量化的网络模型:MobileNet,并且具有高效的性能。作者的初衷是为了减小参数量提升运算速度,使算法更适用小型设备,作者并没有采用传统的卷积网络,而用深度可分离卷积网络替代全部的卷积网络,进一步提出了Width Multiplier和Resolution Multiplier两个超参数,2个参数都可以进行调节,调节的结果会对不同的检测任务实现更好的检测性能,经历了多年的发展出现了许多的轻量化网络版本,如MobileNetV2、MobileNetV3。

3.1.7 ShuffleNet

轻量化神经网络热潮进一步得到推动,旷视科技提出了一种新的更加高效的移动端卷积神经网络,命名为ShuffleNet,主要有2个创新的应用:

(1)将逐点组卷积应用到网络结构中,去降低逐点卷积使用中的计算复杂度,同时可以消除多个卷积堆叠后产生的负面影响;

(2)采用通道混洗的操作,可以大大改善在跨特征通道中的信息流动。

2 种创新点的提出,使得该算法在ImageNet 竞赛和COCO 竞赛中取得了优秀的成绩,表现出了移动端先进网络的优越性能。

在计算机视觉技术的更新迭代中,卷积神经网络也得到快速发展。每一种卷积神经网络框架都有独特的优势,目前模型结构正在逐渐优化,向更深的网络结构、更轻量化的结构发展,模型性能也在逐渐提升。卷积神经网络由于存在优异的性能,在目标检测算法中具有更深层次的提升,使得目前许多领域在相关的研究中都采用了目标检测算法,并取得了较好的成绩。

3.2 基于候选区域的车辆目标检测算法

基于候选框的车辆检测方法通过2 个步骤实现,这类检测算法的优势是可以充分提取图像的细节特征,故该算法有更好的检测精度,但由于算法分为2个步骤,从而导致模型的运行速度较慢。

3.2.1 R-CNN

2014 年,Girshick 等对神经网络算法进行不断优化,进一步提出了R-CNN模型,是第一个将深度学习应用到目标检测的算法,该算法总共4 个部分获得检测结果,首先通过网络获取检测的图像;其次对输入的图像采用选择性搜素(Selective Search)算法,提出大约2 000 个区域候选框,并把不同大小的候选框缩放到相同大小;然后使用AlexNet 获得候选区域的特征;最后利用多个SVM分类器和回归器得到目标的类别和位置信息,结构如图4 所示。虽然该类算法的检测精度很高,但是还是有缺陷:

图4 R-CNN框架网络结构[16]

(1)网络的各个阶段都需要单独训练,这大大增加了算法的时间成本。

(2)卷积神经网络需要对所有的候选框进行特征的提取,且大量的重复区域会产生大量的运算,增加计算复杂度。

(3)该算法需要对输入图像进行缩放操作,会导致一定的细节信息丢失。

3.2.2 SPP-Net

2015 年,为了解决R-CNN 缺陷的部分问题,He等提出了一种新奇的卷积操作模型,该网络模型对输入的图像可以一次性进行卷积操作,没有多余的步骤,这样的操作大大减少了运算时间,且作者提出了一种新的池化策略,该策略主要思想是在网络模型的最后一个卷积层后、全连接层前添加金字塔空间池化结构(Spatial Pyramid Pooling,SPP),这样可以提取固定尺寸的特征向量,避免了在候选区域批量归一化的操作。该算法的检测速度相较于R-CNN快了24~102倍,但是该算法还是有缺陷:

(1)训练方式分阶段,每部分网络都需要训练,这样的方式导致需要储存大量特征,需要更多的空间成本。

(2)网络在池化层的加入后只更新了后面的全连接层,忽略前面层数对网络模型的影响,这会导致检测精度变差。

3.2.3 Fast R-CNN

2015 年Girshick 等提出了Fast R-CNN 算法,该算法融合了SPPNet的思想,将网络的SPP层设计成为单独的一层,即ROI Pooling 层,进一步解决了权值更新的问题。另外该算法引入SVD,将全连接层的输出分解,得到Softmax 函数分类得分和矩形窗口(Bound⁃ing Box)回归,将分类和回归问题进行合并处理,SVD的引入在不降低检测精度的同时,大大提升了了检测速度。其中使用Softmax 函数代替SVM,将卷积神经网络提取的特征都储存在显存中,减少了磁盘空间的占用,提升训练性能,加快训练速度。但是该算法还是存在一定的缺陷:

(1)依然使用Selective Search方法选取候选区域,这一步骤不可避免会包含大量计算。

(2)目前算法无论在检测精度和速度都有大幅度的提升,但是目前大多数领域在实时检测的需求要求更高,故针对实时性较高的目标检测问题,仍不能使用。

3.2.4 Faster R-CNN

对以上网络存在的不足,微软团队的Ren 等经过大量的改进试验,2015年正式提出了Faster R-CNN算法,算法主要是使用区域生成网络(Region Proposal Networks,RPN)网络替代Selective Search算法,成为了第一个真正意义上的端到端的网络,训练流程如5 所示。该算法的提出,大幅度提升了目标检测速度,但是该算法也存在一定的瑕疵:

(1)沿用ROI Pooling 层,网络特征失去平移不变性,导致最后目标检测中定位的准确性降低。

(2)Faster R-CNN 在特征图上使用锚点框去对应原图,而锚点框在网络上会经过多次下采样操作,这样会导致对应的原图是一块较大的区域,然后对小目标的检测变得不理想。

(3)存在重复运算。

图5 Faster R-CNN训练流程[19]

3.2.5 R-FCN

针对Faster R-CNN 存在的问题,Dai 等对网络进行一定的改进,提出了R-FCN。该算法主要是使用ResNet主干网络替换VGG网络,提升了网络的特征提取能力和分类的效果,同时提出了一种特定的卷积层,生成包含目标空间位置信息的位置敏感分布图(Position-sensitive score maps),解决了物体分类中平移不变性而物体检测要求有平移变化的矛盾。

3.2.6 Mask R-CNN

2017 年Facebook 的He 等在前人对Faster RCNN 的研究基础上,提出了Mask R-CNN 算法,网络框架如图6 所示,该算法主要应用于实例分割任务。算法主要提出了ROI Align 来代替ROI Pooling,从而实现更加精确的实例分割,然后提出增加一个Mask分支来预测每一个ROI上的分割掩码,这样的操作使分类分支、边框回归分支和Mask分支并行运行,在提高分割精度的同时,减少了运行时间,使得模型运行速度更快。该算法虽然运行速度较快,但不能满足实时检测的需求,且目前实例分割主要面临大量标注代价的问题。

图6 Mask R-CNN框架网络结构[16]

3.2.7 Cascade R-CNN

之前大多数网络结构都使用IOU 阈值来判断正负样本,在训练过程中,采用较低的IOU阈值训练目标检测器(Object detector),通常会出现噪声干扰;在逐渐提高阈值后,发现性能会有所下降。针对这一问题,2018 年Cai 等提出了一种级联结构的目标检测器Cascade R-CNN,该算法主要贡献是能够在低IOU值获得更多“高IOU”样本,且每一个阶段的Object de⁃tector 都不会出现过拟合的情况,因为都有足够满足阈值的条件样本。

3.2.8 TridentNet

在检测任务中,存在目标尺度多样化的问题,为了解决这个问题出现了许多经典的算法,如一阶段的SSD 算法,或者依赖于图像金字塔与特征金字塔FPN。2019 年,Li 等提出了一种利用空洞卷积构建的网络TridentNet,且使用并行多分支学习输入图像的不同尺度目标的特征。这种算法与SSD算法相比,对于小目标检测有更优越的性能。

目前,基于候选框的目标检测算法仍然在不断发展,虽然检测精度在不断提升,总体而言该类算法还是存在检测速度不能达到实时检测的需求。整个发展历史过程中,新的网络都是针对当前网络的缺点,进而提出改进的方法,把前者的不足进一步完善,但网络模型检测速度提升并不够,这也是该阶段算法需要重点关注的问题。在未来发展过程中,该类算法应借鉴基于回归的目标检测算法去提高检测速度,尽可能降低算法训练时间,减少模型参数数量来满足实时检测的需求。表1总结了基于候选区域的车辆目标检测算法的优缺点和适用场景。

表1 基于候选区域的车辆目标检测算法优缺点

3.3 基于回归的车辆目标检测算法

基于回归的车辆目标检测算法是针对图像的分类和定位转换回归问题,可以经过一次运算从图像中得到边界框和类别概率的预测,该类算法主要优势是模型的构建更为简单,且检测实时性更能满足需求,但在检测精度的方面还存在提升空间。

3.3.1 YOLO系列

目前基于候选区域的目标检测算法普遍存在实时性检测差的问题,2016 年,针对这个问题,Redmon等提出了YOLOv1 算法,主要的操作是将图片划分为S×S个网格,每一个网格检测中心落在当前网络的目标,预测出2 个尺度的Bounding Box 和类别信息,一次性预测出图像区域包含的所有目标的Bound⁃ing Box、目标的置信度以及类别概率,得到最终的检测结果,YOLO 的框架算法结构如图7 所示。该算法的检测速度非常快,达到了45 帧/s,但网络会产生更多的定位误差,在每一次特征提取后,使得网络最终的检测精度下降,且网格划分的操作是很粗糙的,每个网格只预测2个Bounding Box,且类别相同,因此对小物体的检测效果较差,对多物体环境下漏检也很明显。

图7 YOLO框架算法结构[16]

针对YOLOv1的问题,Redmon经过一段时间的尝试,最终提出了检测速度更快,精度更高的v2版本,主要创新是训练了一个Darknet-19 的网络作为主干网络,用于更好的提取特征,并减少模型的计算量,同时网络舍弃Dropout 操作,在每一个卷积层后添加BN层,加入新的K-Means 维度聚类方式,并进行多尺度训练。文献[26]还提出了YOLO9000,该算法应用WordTree 层次分类,能检测多达9 000 多类物体的检测。

2018 年,Redmon 等在YOLOv2 的基础上,提出了更优秀的V3版本,使用更深层次的Darknet-53残差网络,并结合特征金字塔网络进行多尺度的融合策略,使得算法能够在3个不同的尺度上进行检测,同时对于小目标的检测效果有更好的检测效果。

2020 年,Bochkovskiy 等融合各种调优技巧,使得模型实现了当时最优的试验结果,并命名为YO⁃LOv4。模型主要选用感受野更大,参数更多的CSP⁃Darknet53 作为主干网络,同时模型采用Mish 激活函数,Dropblock 模块也加入到主干网络中,起到了更好的检测效果;并加入了SPP 模块及FPN+PAN 结构让网络进行特征融合。YOLOv4较为突出的优点就是能够使用单GPU进行模型的训练,并不需要昂贵的训练设备。

同年也出现了YOLOv5 版本,总共有4 个模型YOLOv5s、YOLOv5m、YOLOv5l 及YOLOv5x,YOLOv5s是4 个版本中深度最小、特征图宽度最小的网络,其它3个模型就是在此基础上不断加深网络、加宽宽度后形成的模型。YOLOv5 主要创新是在输入端应用自适应锚框计算,在Backbone 加入了一种Focus 结构,在预测端提出了一种训练GIOU_Loss 函数。总体来说改进的网络模型YOLOv5 在检测精度和速度上都有一定的提升,对后续算法的改进有着较好的借鉴意义。

3.3.2 SSD

针对YOLO 算法容易造成漏检和对尺度变化较大物体的泛化能力较差的问题,2016 年Liu 等提出了SSD算法,该算法主要目的是有效地进行小目标和多尺度的检测,采用6 个不同尺度的FeatureMap 进行检测任务;同时结合Faster-RCNN 中的Anchor,提出了Default boxes 的生成,这些改进点都提高了算法的运行速度和检测精度,网络也得到了广泛的应用,虽然主要是针对小目标的检测,但浅层特征的特征图包含的语义信息较少,使得算法对小目标的检测仍达不到Faster R-CNN的精度。

3.3.3 RetinaNet

基于回归的目标检测算法的运行速度虽然很快,但是检测精度始终没有基于候选区域的目标检测算法高,针对这一问题,研究者发现主要原因是因为正负样本不平衡造成的。2017 年,Lin 等设计了一个简单密集型网络(RetinaNet),RetinaNet训练在保证速度的同时达到了精度最优。作者提出了使用Focal Loss解决负样本过多的问题,并使用RetinaNet网络证明Focal Loss 的有效性,同时试验证明了检测速度能够与单阶段的检测算法媲美,且检测精度超越了当时的最先进的两阶段的检测算法。

3.3.4 CornerNet

在单阶段的检测算法中,很多都是基于Anchor,但是这种方法也有许多缺点,大量的Anchor会产生很多超参数,如Anchor 的比例、数目、大小,同时也会带来正负样本不平衡的问题。针对以上不足,2018 年Law 等提出了CornerNet 算法,该算法没有沿用An⁃chor的方式,而是将目标检测的问题以另一种方式进行检测。对关键点检测,主要操作是通过检测目标框上的左上角和右下角2 个关键点得到预测框,进而得到检测结果,也为目标检测算法提供了一种新思路,且试验结果表明在精度上有一定的提升,但是该算法对于2个关键点的检测还是比较慢的,这一定程度上影响了检测速度。

3.3.5 CenterNet

针对CornerNet 在关键点检测过程较慢的不足,2019 年由Duan 等进一步做了大量的研究,提出了CenterNet 算法。该算法的主要目的是将目标检测问题转换为对一个中心点的检测,且无需后处理过程,CenterNet直接回归目标框尺寸,最后基于目标框尺寸和目标框的中心点位置就能得到预测框。算法的改进能够提高检测速度,且目前由于Anchor-free的大量应用,提高了研究人员将该算法扩展到其它目标检测任务类型的信心。

3.3.6 EfficientDet

目前各个领域都有使用目标检测技术,工业界更是把检测精度和检测速度作为最重要的指标,但提出的所有算法不能同时顾及这2 项指标,一项指标的提升会牺牲另一项指标,针对目前基于回归的目标检测算法速度较快,但检测精度相对较低的问题,Tan等提出了一种能够把检测速度和检测精度同时做到最优的算法EfficientDet,该算法网络结构如图8 所示。该算法主要将EfficientNet作为主干网络,提出了一种简单高效的加权特征金字塔网络BiFPN,同时提出了复合系数来改变网络的分辨率、深度和宽度。目前该网络在COCO 数据集上试验结果达到了51.0%的检测精度,且检测速度非常快,在嵌入式设备及移动端都能大规模的应用,也能为后续算法的提出与改进起到启发式的作用。

图8 EfficientDet框架算法结构[36]

基于回归的车辆目标检测算法的优缺点如表2所示。

表2 基于回归的车辆目标检测优缺点[41]

近3 年来,2 种主流算法的检测精度和检测速度都在不断提高,除此之外更多优秀的算法也在不断提出。对YOLO 系列算法改进后,在模型参数数量减少的同时,改善了对不同尺度目标检测的效果,对SSD系列算法进行改进后,小目标多尺度检测精度得到提高,也应用于复杂场景下的车辆目标检测;Effi⁃cientDet 网络算法用更少的参数量实现更高精度,模型更加精简;基于关键点的检测算法用全新的方式提高了算法的检测性能,有望成为下一阶段的研究重点。硬件设备的不断完善,给目标检测算法领域带来了不少的机遇和挑战,车辆目标检测算法性能的不断提高给智能驾驶和智慧交通系统带来了前所未有的新发展。

4 总结与展望

本文针对车辆目标检测任务,首先对深度学习的车辆目标检测进一步探讨,提出检测任务的重点、难点和发展现状,以时间线对卷积神经网络下车辆目标检测算法进行概括,并对目前2种主流的基于候选框和基于回归的车辆目标检测算法进行总结。总体来说,基于候选区域的车辆目标检测算法检测精度较高,由于候选区域的生成花费大量的时间成本,使得检测速度较慢,检测实时性尚不能满足要求。而基于回归的车辆目标检测算法虽然精度上普遍不如前者,但在检测速度上具有很大的优势,随着深度学习技术快速发展,检测精度也有大幅度的提升。目前基于深度学习的车辆目标检测算法处于一个快速发展的阶段,算法的创新和计算机视觉技术的发展提升了算法检测性能,轻量化的算法模型在嵌入式设备中得到了普遍使用,使得车辆目标检测任务效率进一步提高。目前基于深度学习的车辆目标检测算法仍有许多改进的空间,归纳如下:

(1)数据集场景和质量问题。数据集在获取中仍不完善,缺乏复杂场景下的车辆目标检测数据集,这导致算法在特定场景的检测鲁棒性较差;数据集的质量不够高,这将会导致算法检测精度下降,且构建数据集对人力需求较大。

(2)其它形式上的目标检测问题。目前车辆目标检测都是以图片形式进行检测,而3D检测、视频流检测的算法性能还有待提高。

(3)复杂场景下的多目标,小目标检测问题。目前车辆目标检测算法在复杂场景下的单目标检测效果较好,在对多目标检测时,会出现漏检、误检的问题,造成精度降低;而在尺度异常和群体小目标中的检测效果更差。

在未来自动驾驶和智能交通系统中,对于精确性和实时性的要求会更高,车辆目标检测的重要研究方向将会围绕以上3点进行不断优化,满足更高需求。

猜你喜欢

网络结构卷积神经网络
基于全卷积神经网络的猪背膘厚快速准确测定
基于人工智能LSTM循环神经网络的学习成绩预测
基于图像处理与卷积神经网络的零件识别
MIV-PSO-BP神经网络用户热负荷预测
基于深度卷积网络与空洞卷积融合的人群计数
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
卷积神经网络概述
试论分布式计算机网络结构分析与优化
带通信配网故障指示器故障监测方法及安装分析
非常规突发事件跨组织合作网络结构演化机理研究