CN109784190A - 一种基于深度学习的自动驾驶场景关键目标检测提取方法 - Google Patents
一种基于深度学习的自动驾驶场景关键目标检测提取方法 Download PDFInfo
- Publication number
- CN109784190A CN109784190A CN201811558782.5A CN201811558782A CN109784190A CN 109784190 A CN109784190 A CN 109784190A CN 201811558782 A CN201811558782 A CN 201811558782A CN 109784190 A CN109784190 A CN 109784190A
- Authority
- CN
- China
- Prior art keywords
- frame
- target
- prior
- prediction
- detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 87
- 238000013135 deep learning Methods 0.000 title claims abstract description 21
- 238000000605 extraction Methods 0.000 title claims abstract description 9
- 238000012549 training Methods 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 23
- 230000006870 function Effects 0.000 claims abstract description 7
- 238000005457 optimization Methods 0.000 claims description 23
- 230000009467 reduction Effects 0.000 claims description 19
- 238000012360 testing method Methods 0.000 claims description 12
- 238000001914 filtration Methods 0.000 claims description 6
- 230000001629 suppression Effects 0.000 claims description 5
- 238000002372 labelling Methods 0.000 claims description 4
- 238000005065 mining Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 230000001133 acceleration Effects 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 description 17
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 101150055569 arc4 gene Proteins 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000009432 framing Methods 0.000 description 3
- 238000011897 real-time detection Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 101150106709 ARC1 gene Proteins 0.000 description 2
- 101150046212 ARC2 gene Proteins 0.000 description 2
- 101100013575 Arabidopsis thaliana FTSHI1 gene Proteins 0.000 description 2
- 101150108452 arc3 gene Proteins 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004438 eyesight Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005253 cladding Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012803 optimization experiment Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明涉及一种基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,该方法基于改进单次多框检测器进行驾驶场景中的关键目标检测、语义标注和目标框选,所述改进单次多框检测器的训练过程具体为:1)获取训练集;2)生成先验框,将先验框与对应图片的带有类标和框标注的真实目标进行匹配,形成正负样本;3)利用损失函数迭代更新单次多框检测器的模型参数,所述迭代更新基于动量优化的梯度更新实现。与现有技术相比,本发明具有检测精度高、能够对小目标进行检测等优点。
Description
技术领域
本发明涉及一种自动驾驶场景目标检测方法,尤其是涉及一种基于深度学习的自动驾驶场景关键目标检测提取方法。
背景技术
随着深度学习技术在图像与视频领域的飞速发展,一系列与深度学习相关的目标检测算法优势逐渐显现。在处理驾驶视野场景或者其他较为复杂的检测场景时,基于深度学习与视觉的目标识别与检测算法有相当大的应用空间。
无人驾驶视觉感知技术中已经有部分基于深度网络的目标检测算法被提出,将深度学习应用于驾驶场景下的目标检测已经成为当前的研究热点。早期的研究将多尺度卷积神经网络应用于交通标志分类任务中,取得高准确率。之后有大量研究针对单目视觉下,借助CNN(Convolutional Neural Network)特征提取框架与对象区域提议框,同时利用传统机器学习的各种分类器,基本实现自动驾驶下的目标识别。目前部分研究提出利用新的多任务学习(Multi-Task Learning,MTL)方法,用基于笛卡尔积的多任务组合策略对目标检测和距离预测联合建模,实现自动驾驶中的特定危险目标的检测。也有部分研究通过添加语义信息辅助检测,改进原始卷积神经网络的结构,提高行人检测的准确率与效率。最近有部分研究提出了利用较新的深度物体检测框架如R-FCN,并改进其网络结构,实现自动驾驶场景下的交通标志检测。基于深度神经网络的目标检测技术能够有效地自动的从图像中提取特征信息,并完成目标的识别与框选,因此该技术在无人驾驶视觉识别问题中取得了令人满意的实验结果。尽管如此,该技术目前还存在以下缺陷:
第一,现有研究大都针对行人、交通标志或障碍物等单类目标的检测,缺乏通用性的关键目标识别框架。
第二,部分将视觉深度学习应用于无人驾驶的视觉识别无法实现准确的目标自动框选,且针对远距离的小目标的检测效果并不理想。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于深度学习的自动驾驶场景关键目标检测提取方法。
本发明的目的可以通过以下技术方案来实现:
一种基于深度学习的自动驾驶场景关键目标检测提取方法,该方法基于改进单次多框检测器进行驾驶场景中的关键目标检测、语义标注和目标框选,所述改进单次多框检测器的训练过程具体为:
1)获取训练集;
2)生成先验框,将先验框与对应图片的带有类标和框标注的真实目标进行匹配,形成正负样本;
3)利用损失函数迭代更新单次多框检测器的模型参数,所述迭代更新基于动量优化的梯度更新实现。
进一步地,所述基于动量优化的梯度更新公式为:
v'dW=μvdW+(1-μ)dW
v'db=μvdb+(1-μ)db
W'=W-ηv'dW
b'=b-ηv'db
其中,W和b分别为当前的权重项和常数项,W'和b'分别为更新后的权重项和常数项,dW和db为加速项,vdW和vdb分别为当前权重项和常数项的动量项,v'dW和v'db分别为更新后的权重项和常数项的动量项,μ为动量因子,η为学习率。
进一步地,所述迭代更新过程中,采用三段阶梯式学习率下降策略获得学习率:
式中,d1、d2、d3分别为三阶段的学习率下降因子,ls为训练的初始学习率,t为训练的迭代步数,t1、t2分别为三阶段的学习率下降边界。
进一步地,所述生成先验框时,
针对大检测目标,Conv4_3、Conv10_2和Conv11_2层生成的特征图仅使用4个先验框;
针对小检测目标,Conv7、Conv8_2和Conv9_2层生成的特征图使用如下策略:
其中,r为增添或改变的长宽比对应的序号下标。
进一步地,所述大检测目标包括机动车、非机动车和人;
所述小检测目标包括交通信号灯、提示类交通标志、指路类交通标志和警示类交通标志。
进一步地,所述步骤2)中,通过以下方式形成正样本:
a)将与一类别的真实目标的交并比最大且同时大于阈值的先验框作为对应类别的正样本;
b)若一先验框与某些类别的真实目标的交并比大于阈值,则取交并比的那个真实目标作为该先验框的匹配框,先验框设为该类别的正样本。
进一步地,所述步骤2)中,采用难例挖掘方法获得负样本,具体地:
按照先验框的类别置信度进行降序排列,选取置信度最低的k个先验框作为负样本。
进一步地,所述改进单次多框检测器的测试过程具体为:
11)获取测试图片对应的先验框,每个先验框生成一个预测框;
12)对于每个预测框,将类别置信度最大的类别确定为其类别;
13)过滤属于背景的预测框和置信度值低于最低阈值的预测框;
14)对剩余预测框进行解码,获得各预测框的位置参数;
15)对各预测框进行缩减处理;
16)对各预测框按类别置信度降序排列,保留top-k个预测框;
17)采用非极大值抑制算法过滤重叠度大于设定值的预测框。
与现有技术相比,本发明针对自动驾驶场景下的关键目标检测任务,提出基于改进单次多框检测器(SSD_ARC)的关键目标检测方法,实现快速多目标识别、语义标注和定位框选,具有以如下有益效果:
第一,本发明提出采用基于深度卷积网络VGG的新型检测算法单次多框检测器(SSD)进行驾驶场景中的关键目标检测、语义标注和目标框选,最终达到提高检测精度的效果。
第二,本发明针对驾驶场景,提出了改进的SSD_ARC算法。通过优化梯度更新算法、学习率下降策略和先验框生成策略,在实际驾驶场景中9类关键目标检测中提高了检测精度,检测难度较大的小目标的检测结果得到提升。
第三,本发明在实际驾驶场景视频目标检测中取得良好效果,模型泛化性较强,能应对不同环境的检测任务,检测速度满足实时检测需求。
第四,本发明使用了GPU(Nvidia GTX 1060)加速处理计算的方式,使得模型处理数据的速度得到提升,同时采用Tensorflow 1.6.0(Windows)平台,使得深度网络的构建更为系统化,便于实验测试。
附图说明
图1为VGG16网络结构;
图2为SSD检测器网络结构;
图3为阶梯式学习率下降示意图;
图4为正负样本生成过程示意图;
图5为本发明优化训练过程示意图;
图6为测试过程示意图;
图7为实际检测效果图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本发明提供一种基于深度学习的自动驾驶场景关键目标检测提取方法,该方法基于改进单次多框检测器(SSD_ARC,Single Shot Multibox Detector on Aspect Ratiochanging)进行驾驶场景中的关键目标检测、语义标注和目标框选,针对驾驶场景,通过优化梯度更新算法、学习率下降策略和先验框生成策略,提高了检测精度。
一、SSD(Single Shot MultiBox Detector)
1、SSD网络结构
SSD本质上利用密集采样的思想,基于CNN网络和新增的多尺度特征图来进行目标检测。它借鉴Faster R-CNN中锚(Anchor)的概念,通过尺度不同的先验框来预测目标边界框(Bounding Boxes)。边界框预测同时包含目标类别预测和框选区域预测。
SSD采用VGGNet网络作为基础深度学习网络。VGGNet有六种不同的网络结构,但是每种结构都有含有5组卷积,每组卷积都使用3×3的卷积核,每组卷积后链接一个2×2池化层,接下来是三个全连接层(FC),全连接层的配置在所有网络中一致,最后一层是Soft-max层用于分类。所有隐藏层都采用非线性修正单元(ReLU)。另外网络基本都包含了局部响应归一化(LRN)。这个归一化主要用于增强在数据集上的泛化能力。VGGNet在训练高级别的网络时,可以先训练低级别的网络,用前者获得的权重初始化高级别的网络,可以加速网络的收敛。VGG16的网络结构如图1所示。
SSD网络结构如下图2所示,输入图像为300×300。SSD采用的VGGNet网络为VGG16,该VGG16网络是在ILSVRC CLS-LOC数据集进行预训练得到。SSD改进了VGG16,移除了丢包层(Dropout)和全连接层FC8,将Conv4_3层作为用于检测的第一个特征图,并在其后面增加了一个L2正则化层。为了缩减特征图大小,其池化层pool5由原来的滑动步长stride=2的2×2卷积核变成stride=1的3×3卷积核。将VGG16的全连接层FC6和FC7转换成卷积层Conv6和卷积层Conv7。SSD网络的新增卷积层Conv8_2、Conv9_2、Conv10_2和Conv11_2,都用于提取检测所用的特征图。Conv6采用空洞卷积(Dilation Convolution),在不增加参数与模型复杂度的条件下指数级扩大卷积的视野。Conv4_3、Conv7、Conv8_2、Conv9_2、Conv10_2和Conv11_2六个卷积层共提取了6个特征图,得到特征图后,通过对这些特征图分别进行3×3卷积,生成一系列不同尺度的先验框。6种尺度的特征图共产生6个不同的分支,这些分支中的所有特征图上生成的先验框就是整个SSD网络一次检测的边框数量。
在SSD中,生成的先验框与带有类标和框标注的真实目标(Ground Truth,GT)进行匹配,一方面形成正负样本,一方面通过框解码,完成边框回归(预测)。检测目标的类别置信率由Softmax分类器得到,并通过非极大值抑制筛选得到检测目标的预测框(最终框选区域)。SSD网络的损失函数为置信度误差与位置误差的加权和。
2、目标预测框的生成
1)框回归
框回归即生成检测目标的预测框。6个特征图经过3×3卷积后得到的先验框,往往和GT标注中的目标区域有一定的误差,还需要通过边框回归对每个先验框的四维坐标进行调整,使得预测框的位置与真实目标的位置更接近。
设C为待测目标的类别数。对于一个大小M×N的特征图,共有MN个单元。设边界框的4维输出为:(cx,cy,w,h),分别表示边界框的中心坐标以及宽、高。设每个单元的先验框数目为K,那么每个单元共产生(C+4)K个预测值,所有的单元共产生(C+4)KMN个预测值。
若先验框的位置用d=(dcx,dcy,dw,dh)表示,其对应的GT边界框用b=(bcx,bcy,bw,bh)表示,则边界框的预测值l是b相对于d的转换值:
lcx=(bcx-dcx)/dw (1)
lcy=(bcy-dcy)/dh (2)
lw=log(bw/dw) (3)
lh=log(bh/dh) (4)
上述这个转换过程称为边界框的编码。
框解码时反向这个过程,通过平移变换和尺度变换,寻找一种关系使得输入的窗口经过映射得到一个与真实窗口更加接近的回归窗口,即从预测值l中得到边界框的真实预测位置B。为了更逼近目标的真实位置,解码时设置超参数variance来进行调整,此时边界框解码由下式得到:
Bcx=dw(variance[0]*lcx)+dcx (5)
Bcy=dy(variance[1]*lcy)+dcy (6)
Bw=dwexp(variance[2]*lw) (7)
Bh=dhexp(variance[3]*lh) (8)
这样,将6个不同尺度的特征图分别输入独立的3×3大小的卷积层中,得到的输出维度为M×N×(4+6),表示6个特征图上的每个位置单元回归后,以每4个为一组(四维向量)产生24个偏移量。根据公式(1)-(8)计算出的24维特征即可确定预测框的位置和长宽。
2)框选择
SSD分别使用两个不同的阈值S1和S2来筛选可能包含目标物体的边框,并且去除包含同一个目标的不同边框。具体过程如下:
(1)SSD从所有回归产生的边框中,选择包含目标物体(非背景类别)且类别置信率TC大于阈值S1的边框。
(2)如果不同的边框包含同一个目标物体,采用非极大值抑制算法,去除掉包含同一目标物体且重叠区域较大的边框。
非极大值抑制是一个递归的过程,算法如下:首先对所有的边框,依据包含目标物体的类别置信率(由Softmax输出)从大到小进行排序。其次,从概率第二大的边框开始,与概率最大的边框进行比较,如果它们的交并比大于阈值S2,且包含的目标种类相同,则将该边框从候选边框列表中移除。依此类推,不断地更新候选边框列表,直到所有的边框都比较完成,则候选边框列表中的边框,就是最终得到的目标物体位置的边框。
3、损失函数
SSD损失函数定义为位置误差(localization loss,loc)与类别置信度误差(confidence loss,conf)的加权和:
其中,N是先验框的正样本数量。所谓正样本,即与GT能够成功匹配的先验框,为一个指标参数。当时表示第i个先验框与第j个真实目标匹配,并且真实目标的类别为p,c为类别置信度预测值,α为权重系数,l为先验框所对应的位置预测值,g是GT的位置参数。
对于位置误差,其采用Smooth L1 loss,定义为:
由于的存在,所以位置仅针对正样本进行计算。由于预测值l是编码值,也为对ground truth的g编码得到。
对于类别置信度误差,采用Softmax损失,如下式所示:
其中
二、本发明改进点
由于原始的训练条件设置并不适用于交通驾驶场景,因此直接采用SSD进行驾驶场景下目标识别和定位时,检测准确率并不理想。因此,针对交通驾驶应用场景,本发明对模型训练进行优化,通过优化梯度更新、学习率下降策略和先验框生成策略,实现SSD_ARC算法。优化梯度更新算法能够使训练参数快速收敛至局部极值,提升训练效果。优化学习率下降策略可以解决训练存在的不完全收敛问题,同时能加快收敛速度。先验框生成策略的优化使得模型前端生成的先验框能够对原图区域做更好的密集选取,对目标物体达到更细致的覆盖。
1、基于动量优化的梯度更新
SSD算法中采用VGG16训练时,使用的优化方法为随机梯度下降法(SGD)。SGD为每一次迭代计算最小批次(Mini-batch)的梯度,然后对参数进行更新,即:
Δθ=-η*gt (19)
其中,η是学习率,gt是梯度,θ为初始参数,t为训练时的迭代步数。SGD训练速度快,对于大数据集,也能够以较快的速度收敛,其缺点是容易收敛到局部最优。在实际训练过程中,预测框与GT的误差使得每一次迭代的梯度受数据增广(训练过程的预处理)和难例挖掘中的抽样的影响比较大,梯度含有比较大的噪声,不能很好的反映真实梯度。
本发明采用基于动量优化(Momentum)的SGD梯度优化策略,在面对大噪声对梯度的影响时,可以进行很好地加速学习。引入动量优化的梯度更新公式如下:
v'dW=μvdW+(1-μ)dW (20)
v'db=μvdb+(1-μ)db (21)
W'=W-ηv'dW (22)
b'=b-ηv'db (23)
其中,W和b分别为当前的权重项和常数项,W'和b'分别为更新后的权重项和常数项,dW和db为加速项,vdW和vdb分别为当前权重项和常数项的动量项,v'dW和v'db分别为更新后的权重项和常数项的动量项,μ为动量因子,η为学习率。
在一次训练过程中,μ是固定值。梯度下降初期,较大的μ能够使梯度更新加速;下降中后期,μ可以使梯度更新幅度增大,解决局部振荡。动量优化项能够加速梯度更新,抑制振荡,从而加快收敛速度。
2、学习率下降策略优化
SSD中,学习率下降采用含有下降因子的指数衰减,在此处训练过程中存在不完全收敛和收敛速度慢的问题。为此,提出采用三段阶梯式学习率下降策略,如图3所示,各阶段训练过程的学习率为固定值可用下式表示:
式中,d1、d2、d3分别为三阶段的学习率下降因子,ls为训练的初始学习率(即为η),t为训练的迭代步数,t1、t2分别为三阶段的学习率下降边界。训练过程学习率lr的选取,与学习率下降因子和初始学习率有关。
3、先验框生成优化
SSD模型对小物体不敏感,但是驾驶场景下需要对部分距离较远但对驾驶策略起到关键作用的目标进行检测,例如交通标志、红绿灯。因此需要优化先验框生成策略,来改善模型对小目标的检测效果。
先验框的生成,与尺度比例和长宽比两个参数有关。先验框的尺度比例可以通过线性插值得到,如下式所示:
式中,k是特征图序号,sk表示第k个特征图上的先验框大小相对于原图的尺度比例,smin和smax表示尺度比例的最小值与最大值。根据sk,得到6种先验框实际尺度值bk(k=1,...,6),用于表征先验框的大小。
SSD为每个特征图设置6种长宽比:默认a1=a'1=1。在先验框大小确定的情况下,对于某个特定的长宽比,按如下公式计算先验框的宽度与高度:
默认情况下,每个特征图都有1个a1=1且尺度为bk的先验框,和1个a1'=1且尺度为的先验框(即每个特征图都设置有两个长宽比为1但大小不同的正方形先验框)。最后一个特征图需要参考一个人为设定的虚拟值b7来计算b6'。
对于交通场景中的多检测目标,其长宽比相差较大,当检测类别较多、检测目标较小时,原长宽比数无法完全满足检测精度要求。通过分析发现,Conv7、Conv8_2、Conv9_2层后接3×3卷积,具有更小的检测“视野”,对于小目标的检测更加敏感。因此本发明提出在这三个卷积层上进行先验框生成长宽比策略优化。本发明提出的优化策略如下式所示:
(1)针对大检测目标,Conv4_3、Conv10_2和Conv11_2层生成的特征图仅使用4个先验框,不使用长宽比为的先验框,加快检测速度。
(2)针对小检测目标,Conv7、Conv8_2和Conv9_2层生成的特征图使用如下策略:
根据检测目标的情况,通过增添或者改变长宽比ar与实现策略组合,提高检测精度。r为增添或改变的长宽比对应的序号下标,以区分不同的策略对。
三、本发明SSD_ARC模型的训练和测试过程
1、训练过程
如图4-图5所示,在训练过程具体为:
1)获取训练集;
2)生成先验框,将先验框与对应图片的带有类标和框标注的真实目标进行匹配,形成正负样本;
3)利用损失函数迭代更新单次多框检测器的模型参数。
生成的先验框与训练图片的GT进行匹配,通过匹配获得正样本的原则包括:
a)将与一类别的真实目标的交并比(IOU)最大且同时大于阈值S3(一般是0.5)的先验框作为对应类别的正样本,交并比指产生的先验框与GT重叠部分与并集区域的面积比值;
b)若一先验框与某些类别的真实目标的交并比大于阈值S3,那么认为该先验框与这些GT初步匹配,则取交并比的那个真实目标作为该先验框的匹配框,该GT的类别为该先验框的类别,先验框设为该类别的正样本。
由于通常负样本数相对正样本数多,为了平衡正负样本,采用难例挖掘方法对负样本进行抽样。即按照先验框的类别置信度进行降序排列(先验框可与多个GT匹配),选取置信度较低的k个作为训练的负样本。抽样时,保证正负样本比例接近1:3。生成的正负样本送入网络训练后,再经过Softmax进行分类。如图5所示,模型训练过程结合优化梯度更新、学习率下降策略和先验框生成策略实现,在获得正负样本后依次进行梯度优化、学习率优化和先验框生成策略优化,进而获得优化后的模型参数。
2、测试过程
如图6所示,测试过程中,对于每个预测框,首先将类别置信度最大的类别确定为其类别;之后过滤掉属于背景的预测框和置信度值较低的预测框;对留下的预测框进行解码,得到其真实的位置参数。解码后一般还需要缩减,防止预测框位置超出图片;再根据类别置信度进行降序排列,仅保留top-k个预测框;采用非极大值抑制(NMS)算法,过滤掉那些重叠度较大的预测框;最后剩余的预测框就是检测结果。
四、实验数据及分析
1、实验数据与环境描述
实验一共收集了813张国内驾驶视野场景样本图像,其中包括665张训练图像,148张测试图像。选取对驾驶中最为关键的目标作出标注,分别为轿车、大巴车、其余大型车型、非机动车、人、交通信号灯、提示类交通标志、指路类交通标志、警示类交通标志共9大类,分别用序号O1-O9表示。交通信号灯与交通标志属于小目标。每类目标的图像数量下表1所示。
表1训练集与测试集描述
实验采用的CPU是Intel(R)Core(TM)i7-7700HQ,内存16G,GPU为Nvidia GTX1060,操作系统为Windows 10,开发环境为Spyder(Python 3.5)。
2、评价指标
本实验是多目标检测任务,涉及目标的分类与框选定位,采用mAP(各类别平均精度,mean Average Precision)作为评估检测结果的指标。mAP是对各目标类计算得到的AP(精度,Average Precision)取均值。某类目标的AP即为该类别检测结果的PR曲线(Precision-Recall)下的面积,如下式所示:
此处AP采用插值平均精度表示,通过取一组11个等间距的召回率值[0,0.1,0.2,…,1]所对应的精度值来代表PR曲线的形状。其中,是召回时的测量精度,即通过在每个插值r处获取其召回率值大于r的最大精度作为插值r处的插值精度ρinterp(r),以获得AP值。
3、实验结果及分析
实验一
本实验主要为了验证SSD目标检测算法应用于驾驶场景的可行性,以及采用基于动量优化的梯度更新后的检测器(SSD_M)性能改善。实验采用的动量因子μ取经典值0.9,实验结果如表2所示。
表2算法检测精度
从表2中可知,采用原始SSD算法,mAP为0.752。其中,除轿车与大巴车外,其余类别的AP均低于0.8。采用基于动量优化的梯度更新后,mAP指标为0.824,提高7.2%。除交通信号灯外,其他目标的AP均在0.8以上。
实验二
本实验主要为了寻找SSD_ARC算法的相关最优参数,动量因子μ固定为0.9。
(1)三阶段学习参数实验
SSD_ARC算法中三阶段学习率下降因子分别设置为1,0.1,0.01,终止学习率为0.000001,学习率下降边界分别为80000步与100000步。实验结果如表3所示。
表3不同学习率下的检测精度与训练时间
从表3可以看出,当初始学习率为0.001时,mAP值最高,为0.824,训练耗时40小时。适当降低学习率,可缩短训练时间。
(2)先验框长宽比优化实验
固定μ=0.9,lr=0.001,先验框长宽比生成策略选择包括 分别命名为SSD_ARC1,SSD_ARC2,SSD_ARC3,SSD_ARC4,分别表示为S1-S4实验结果如表4所示。
表4不同先验框长宽比生成策略下的检测精度
从表4可以看出,当采用SSD_ARC1,即改变a3,当a3=4时,mAP指标为0.819,与原始策略的测试结果相比精度更低。当采用SSD_ARC2,即保留原有比例,增加a4=4后,mAP提高2.6%,交通信号灯的AP提高5.8%。当采用SSD_ARC3,即增加a5=5时,mAP与原始策略相比提高2.2%,交通信号灯的AP提高5.9%。当采用SSD_ARC4生成策略时,增加a4=4与a5=5时,mAP为0.855,为四组策略中最高,交通信号灯的AP进一步提高。
可见,改进的SSD_ARC4算法性能最好,与原始SSD算法相比,平均精度提高10.3%。
轿车的AP提高7.8%,大巴车的AP提高9.6%,其余大型车型的AP提高9.5%,非机动车的AP提高9.8%,人的AP提高10.1%,交通信号灯的AP提高13.1%,提示类交通标志的AP提高10.9%,指路类交通标志的AP提高10.9%,警示类交通标志的AP提高10.4%。交通信号灯与三类交通标志的属于小目标范畴,其AP提升相对较大,均超过10%。小目标的检测精度提高更加明显。实验说明,通过增加不同长宽比的先验框的数量能提高小物体的检测精度。
实验三
本实验选取实际行车记录仪记录的视频对模型进行测试。实验采用SSD_ARC4模型,测试视频1为直行路段驾驶视频,帧数为200帧,检测重点为车辆、非机动车、人;视频2为十字路口弯道转向直道驾驶视频,帧数为250帧,检测目标包含交通信号灯与交通标识;视频3为直行路段驾驶视频,帧数为150帧,检测目标中三大类机动车辆数量较密集。实验结果如表5所示。
从表5中可以看出,在实际视频帧场景测试中,最为关键的车辆和交通信号灯检测效果均比较理想,AP均达到0.8以上。视频1、2中人和非机动车的检测精度较差,这是由于非机动车包含部分人的躯干,这两类存在一定的误检情况。同时视频1中,人的目标较小并存在重叠的情况。
表5实际驾驶场景检测精度
考虑远景目标对于驾驶的重要性相对较低,本发明方法适用于实际驾驶场景,检测帧率在20FPS左右,满足实时检测要求。实际驾驶场景视频帧检测效果如图7所示。
目标识别与框选是实现无人驾驶的关键技术。本发明提出采用基于深度网络VGGNet的新型检测算法SSD进行驾驶场景中的关键目标检测,可同时实现驾驶场景中的9类关键目标的识别、语义标注和目标框选。根据实际应用场景,提出了改进的SSD_ARC算法,通过优化梯度更新算法、学习率下降策略,先验框生成策略,提高了检测精度,特别是小目标的检测精度,检测速度满足实时检测需求。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (8)
1.一种基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,该方法基于改进单次多框检测器进行驾驶场景中的关键目标检测、语义标注和目标框选,所述改进单次多框检测器的训练过程具体为:
1)获取训练集;
2)生成先验框,将先验框与对应图片的带有类标和框标注的真实目标进行匹配,形成正负样本;
3)利用损失函数迭代更新单次多框检测器的模型参数,所述迭代更新基于动量优化的梯度更新实现。
2.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述基于动量优化的梯度更新公式为:
v'dW=μvdW+(1-μ)dW
v'db=μvdb+(1-μ)db
W'=W-ηv'dW
b'=b-ηv'db
其中,W和b分别为当前的权重项和常数项,W'和b'分别为更新后的权重项和常数项,dW和db为加速项,vdW和vdb分别为当前权重项和常数项的动量项,v'dW和v'db分别为更新后的权重项和常数项的动量项,μ为动量因子,η为学习率。
3.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述迭代更新过程中,采用三段阶梯式学习率下降策略获得学习率:
式中,d1、d2、d3分别为三阶段的学习率下降因子,ls为训练的初始学习率,t为训练的迭代步数,t1、t2分别为三阶段的学习率下降边界。
4.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述生成先验框时,
针对大检测目标,Conv4_3、Conv10_2和Conv11_2层生成的特征图仅使用4个先验框;
针对小检测目标,Conv7、Conv8_2和Conv9_2层生成的特征图使用如下策略:
其中,r为增添或改变的长宽比对应的序号下标。
5.根据权利要求4所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述大检测目标包括机动车、非机动车和人;
所述小检测目标包括交通信号灯、提示类交通标志、指路类交通标志和警示类交通标志。
6.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述步骤2)中,通过以下方式形成正样本:
a)将与一类别的真实目标的交并比最大且同时大于阈值的先验框作为对应类别的正样本;
b)若一先验框与某些类别的真实目标的交并比大于阈值,则取交并比的那个真实目标作为该先验框的匹配框,先验框设为该类别的正样本。
7.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述步骤2)中,采用难例挖掘方法获得负样本,具体地:
按照先验框的类别置信度进行降序排列,选取置信度最低的k个先验框作为负样本。
8.根据权利要求1所述的基于深度学习的自动驾驶场景关键目标检测提取方法,其特征在于,所述改进单次多框检测器的测试过程具体为:
11)获取测试图片对应的先验框,每个先验框生成一个预测框;
12)对于每个预测框,将类别置信度最大的类别确定为其类别;
13)过滤属于背景的预测框和置信度值低于最低阈值的预测框;
14)对剩余预测框进行解码,获得各预测框的位置参数;
15)对各预测框进行缩减处理;
16)对各预测框按类别置信度降序排列,保留top-k个预测框;
17)采用非极大值抑制算法过滤重叠度大于设定值的预测框。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811558782.5A CN109784190A (zh) | 2018-12-19 | 2018-12-19 | 一种基于深度学习的自动驾驶场景关键目标检测提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811558782.5A CN109784190A (zh) | 2018-12-19 | 2018-12-19 | 一种基于深度学习的自动驾驶场景关键目标检测提取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109784190A true CN109784190A (zh) | 2019-05-21 |
Family
ID=66497329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811558782.5A Pending CN109784190A (zh) | 2018-12-19 | 2018-12-19 | 一种基于深度学习的自动驾驶场景关键目标检测提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109784190A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110490156A (zh) * | 2019-08-23 | 2019-11-22 | 哈尔滨理工大学 | 一种基于卷积神经网络的快速车辆检测方法 |
CN110555371A (zh) * | 2019-07-19 | 2019-12-10 | 华瑞新智科技(北京)有限公司 | 一种基于无人机的野生动物信息获取方法和装置 |
CN110728316A (zh) * | 2019-09-30 | 2020-01-24 | 广州海昇计算机科技有限公司 | 一种课堂行为检测方法、系统、装置和存储介质 |
CN111178153A (zh) * | 2019-12-09 | 2020-05-19 | 武汉光庭信息技术股份有限公司 | 一种交通标志检测方法及系统 |
CN111217062A (zh) * | 2020-03-12 | 2020-06-02 | 河海大学 | 一种基于边缘计算和深度学习的垃圾箱垃圾识别方法 |
CN111241916A (zh) * | 2019-12-25 | 2020-06-05 | 苏州奥易克斯汽车电子有限公司 | 一种交通标志识别模型的建立方法 |
CN111292722A (zh) * | 2019-12-13 | 2020-06-16 | 中国科学院深圳先进技术研究院 | 异步联合架构的模型训练方法、终端、服务器及存储装置 |
CN111310660A (zh) * | 2020-02-14 | 2020-06-19 | 开易(北京)科技有限公司 | 用于adas场景的目标检测虚警抑制方法及装置 |
CN111339861A (zh) * | 2020-02-17 | 2020-06-26 | 南京工程学院 | 一种座位占用状态检测方法 |
CN111401210A (zh) * | 2020-03-11 | 2020-07-10 | 北京航天自动控制研究所 | 一种基于模板框增广的提高小目标检测稳定性的方法 |
CN111428859A (zh) * | 2020-03-05 | 2020-07-17 | 北京三快在线科技有限公司 | 自动驾驶场景的深度估计网络训练方法、装置和自主车辆 |
CN111580151A (zh) * | 2020-05-13 | 2020-08-25 | 浙江大学 | 一种基于SSNet模型的地震事件到时识别方法 |
CN111598175A (zh) * | 2020-05-19 | 2020-08-28 | 南京甄视智能科技有限公司 | 一种基于在线难例挖掘方式的检测器训练优化方法 |
CN112232263A (zh) * | 2020-10-28 | 2021-01-15 | 中国计量大学 | 一种基于深度学习的番茄识别方法 |
CN112307955A (zh) * | 2020-10-29 | 2021-02-02 | 广西科技大学 | 一种基于ssd红外图像行人检测的优化方法 |
CN113139559A (zh) * | 2020-01-17 | 2021-07-20 | 初速度(苏州)科技有限公司 | 一种目标检测模型的训练方法、数据的标注方法和装置 |
CN113158752A (zh) * | 2021-02-05 | 2021-07-23 | 国网河南省电力公司鹤壁供电公司 | 一种电力员工进场作业智能安全管控系统 |
CN113393411A (zh) * | 2020-02-26 | 2021-09-14 | 顺丰科技有限公司 | 包裹计数方法和装置、服务器、计算机可读存储介质 |
CN114373319A (zh) * | 2021-12-24 | 2022-04-19 | 上海东普信息科技有限公司 | 基于自动驾驶的路况提醒方法、装置、设备及存储介质 |
CN114758184A (zh) * | 2022-06-14 | 2022-07-15 | 福建南方路面机械股份有限公司 | 基于深度学习的渣土分类处理引导方法、装置及可读介质 |
CN114898325A (zh) * | 2022-07-12 | 2022-08-12 | 深圳市城市交通规划设计研究中心股份有限公司 | 一种车辆危险变道检测方法、装置及电子设备 |
CN115409818A (zh) * | 2022-09-05 | 2022-11-29 | 江苏济远医疗科技有限公司 | 一种应用于内窥镜图像目标检测模型的增强训练方法 |
-
2018
- 2018-12-19 CN CN201811558782.5A patent/CN109784190A/zh active Pending
Non-Patent Citations (13)
Title |
---|
"动量梯度下降法Momentum", pages 2 - 8, Retrieved from the Internet <URL:https://terrifyzhao.github.io/2018/02/16/动量梯度下降法> * |
JOE: "动量梯度下降法Momentum", 《JOE的个人AI技术博客》, 16 February 2018 (2018-02-16), pages 2 - 8 * |
冯宇旭 等: "深度学习优化器方法及学习率衰减方式综述", 《数据挖掘》, vol. 8, no. 4, 30 October 2018 (2018-10-30), pages 10 - 11 * |
冯宇旭 等: "深度学习优化器方法及学习率衰减方式综述", 《数据挖掘》, vol. 8, no. 4, pages 10 - 11 * |
叶虎: "目标检测算法之SSD", 《腾讯云开发者社区》, 6 March 2018 (2018-03-06), pages 1 - 28 * |
叶虎: "目标检测算法之SSD", pages 1 - 28, Retrieved from the Internet <URL:https://cloud.tencent.com/developer/article/1052779> * |
孙艳茹: "复杂场景下行人检测算法研究", 《中国优秀硕士学位论文全文数据库》 * |
孙艳茹: "复杂场景下行人检测算法研究", 《中国优秀硕士学位论文全文数据库》, 15 December 2018 (2018-12-15) * |
星智云图工作室: "SSD——样本正负比控制+多尺度检测 (目标检测)(one-stage)(深度学习)(ECCV 2016)", 《CSDN博客》 * |
星智云图工作室: "SSD——样本正负比控制+多尺度检测 (目标检测)(one-stage)(深度学习)(ECCV 2016)", 《CSDN博客》, 23 November 2018 (2018-11-23) * |
温捷文: "基于深度学习的目标检测算法研究", 《中国优秀硕士学位论文全文数据库》, pages 42 - 40 * |
钟传平: "基于深度神经网络的微小路标识别技术研究", 《中国优秀硕士学位论文全文数据库》 * |
钟传平: "基于深度神经网络的微小路标识别技术研究", 《中国优秀硕士学位论文全文数据库》, 15 October 2018 (2018-10-15) * |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110555371A (zh) * | 2019-07-19 | 2019-12-10 | 华瑞新智科技(北京)有限公司 | 一种基于无人机的野生动物信息获取方法和装置 |
CN110490156A (zh) * | 2019-08-23 | 2019-11-22 | 哈尔滨理工大学 | 一种基于卷积神经网络的快速车辆检测方法 |
CN110728316A (zh) * | 2019-09-30 | 2020-01-24 | 广州海昇计算机科技有限公司 | 一种课堂行为检测方法、系统、装置和存储介质 |
CN111178153A (zh) * | 2019-12-09 | 2020-05-19 | 武汉光庭信息技术股份有限公司 | 一种交通标志检测方法及系统 |
CN111292722A (zh) * | 2019-12-13 | 2020-06-16 | 中国科学院深圳先进技术研究院 | 异步联合架构的模型训练方法、终端、服务器及存储装置 |
CN111292722B (zh) * | 2019-12-13 | 2023-08-15 | 中国科学院深圳先进技术研究院 | 异步联合架构的模型训练方法、终端、服务器及存储装置 |
CN111241916A (zh) * | 2019-12-25 | 2020-06-05 | 苏州奥易克斯汽车电子有限公司 | 一种交通标志识别模型的建立方法 |
CN113139559A (zh) * | 2020-01-17 | 2021-07-20 | 初速度(苏州)科技有限公司 | 一种目标检测模型的训练方法、数据的标注方法和装置 |
CN113139559B (zh) * | 2020-01-17 | 2022-06-24 | 魔门塔(苏州)科技有限公司 | 一种目标检测模型的训练方法、数据的标注方法和装置 |
CN111310660B (zh) * | 2020-02-14 | 2024-05-17 | 开易(北京)科技有限公司 | 用于adas场景的目标检测虚警抑制方法及装置 |
CN111310660A (zh) * | 2020-02-14 | 2020-06-19 | 开易(北京)科技有限公司 | 用于adas场景的目标检测虚警抑制方法及装置 |
CN111339861A (zh) * | 2020-02-17 | 2020-06-26 | 南京工程学院 | 一种座位占用状态检测方法 |
CN113393411A (zh) * | 2020-02-26 | 2021-09-14 | 顺丰科技有限公司 | 包裹计数方法和装置、服务器、计算机可读存储介质 |
CN111428859A (zh) * | 2020-03-05 | 2020-07-17 | 北京三快在线科技有限公司 | 自动驾驶场景的深度估计网络训练方法、装置和自主车辆 |
CN111401210B (zh) * | 2020-03-11 | 2023-08-04 | 北京航天自动控制研究所 | 一种基于模板框增广的提高小目标检测稳定性的方法 |
CN111401210A (zh) * | 2020-03-11 | 2020-07-10 | 北京航天自动控制研究所 | 一种基于模板框增广的提高小目标检测稳定性的方法 |
CN111217062A (zh) * | 2020-03-12 | 2020-06-02 | 河海大学 | 一种基于边缘计算和深度学习的垃圾箱垃圾识别方法 |
CN111580151B (zh) * | 2020-05-13 | 2021-04-20 | 浙江大学 | 一种基于SSNet模型的地震事件到时识别方法 |
CN111580151A (zh) * | 2020-05-13 | 2020-08-25 | 浙江大学 | 一种基于SSNet模型的地震事件到时识别方法 |
CN111598175A (zh) * | 2020-05-19 | 2020-08-28 | 南京甄视智能科技有限公司 | 一种基于在线难例挖掘方式的检测器训练优化方法 |
CN111598175B (zh) * | 2020-05-19 | 2022-09-02 | 南京甄视智能科技有限公司 | 一种基于在线难例挖掘方式的检测器训练优化方法 |
CN112232263A (zh) * | 2020-10-28 | 2021-01-15 | 中国计量大学 | 一种基于深度学习的番茄识别方法 |
CN112232263B (zh) * | 2020-10-28 | 2024-03-19 | 中国计量大学 | 一种基于深度学习的番茄识别方法 |
CN112307955A (zh) * | 2020-10-29 | 2021-02-02 | 广西科技大学 | 一种基于ssd红外图像行人检测的优化方法 |
CN113158752A (zh) * | 2021-02-05 | 2021-07-23 | 国网河南省电力公司鹤壁供电公司 | 一种电力员工进场作业智能安全管控系统 |
CN114373319A (zh) * | 2021-12-24 | 2022-04-19 | 上海东普信息科技有限公司 | 基于自动驾驶的路况提醒方法、装置、设备及存储介质 |
CN114758184B (zh) * | 2022-06-14 | 2022-09-06 | 福建南方路面机械股份有限公司 | 基于深度学习的渣土分类处理引导方法、装置及可读介质 |
CN114758184A (zh) * | 2022-06-14 | 2022-07-15 | 福建南方路面机械股份有限公司 | 基于深度学习的渣土分类处理引导方法、装置及可读介质 |
CN114898325B (zh) * | 2022-07-12 | 2022-11-25 | 深圳市城市交通规划设计研究中心股份有限公司 | 一种车辆危险变道检测方法、装置及电子设备 |
CN114898325A (zh) * | 2022-07-12 | 2022-08-12 | 深圳市城市交通规划设计研究中心股份有限公司 | 一种车辆危险变道检测方法、装置及电子设备 |
CN115409818A (zh) * | 2022-09-05 | 2022-11-29 | 江苏济远医疗科技有限公司 | 一种应用于内窥镜图像目标检测模型的增强训练方法 |
CN115409818B (zh) * | 2022-09-05 | 2023-10-27 | 江苏济远医疗科技有限公司 | 一种应用于内窥镜图像目标检测模型的增强训练方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109784190A (zh) | 一种基于深度学习的自动驾驶场景关键目标检测提取方法 | |
CN111444821B (zh) | 一种城市道路标志自动识别方法 | |
Hassaballah et al. | Vehicle detection and tracking in adverse weather using a deep learning framework | |
Jung et al. | ResNet-based vehicle classification and localization in traffic surveillance systems | |
CN107016357B (zh) | 一种基于时间域卷积神经网络的视频行人检测方法 | |
CN110363104B (zh) | 一种柴油黑烟车的检测方法 | |
US8509478B2 (en) | Detection of objects in digital images | |
EP3690741B1 (en) | Method for automatically evaluating labeling reliability of training images for use in deep learning network to analyze images, and reliability-evaluating device using the same | |
CN107273832B (zh) | 基于积分通道特征与卷积神经网络的车牌识别方法及系统 | |
CN114299417A (zh) | 一种基于雷视融合的多目标跟踪方法 | |
CN111667512A (zh) | 基于改进卡尔曼滤波的多目标车辆轨迹预测方法 | |
CN108960074B (zh) | 基于深度学习的小尺寸行人目标检测方法 | |
CN114627447A (zh) | 基于注意力机制和多目标跟踪的公路车辆跟踪方法及系统 | |
Jurić et al. | A method for on-road night-time vehicle headlight detection and tracking | |
CN113129336A (zh) | 一种端到端多车辆跟踪方法、系统及计算机可读介质 | |
CN114627437A (zh) | 一种交通目标识别方法及系统 | |
CN115171001A (zh) | 基于改进ssd的增强热红外图像上车辆检测方法及系统 | |
CN114612506B (zh) | 一种简易高效抗干扰的高空抛物轨迹识别与定位方法 | |
CN116630904A (zh) | 融合非临近跳连与多尺度残差结构的小目标车辆检测方法 | |
CN115761667A (zh) | 一种基于改进fcos算法的无人车辆搭载摄像头目标检测方法 | |
CN115035429A (zh) | 一种基于复合主干网络和多预测头的航拍目标检测方法 | |
Guo et al. | An Effective Module CA-HDC for Lane Detection in Complicated Environment | |
Miao et al. | Infrared Target Classification Based on Single Shot MultiBox Detector | |
CN115861379B (zh) | 孪生网络基于局部可信模板进行模板更新的视频跟踪方法 | |
CN117746066B (zh) | 一种扩散模型引导的高速车辆检测集成学习方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190521 |