文章快速检索     高级检索
  浙江大学学报(工学版)  2018, Vol. 52 Issue (4): 694-702  DOI:10.3785/j.issn.1008-973X.2018.04.012
0

引用本文 [复制中英文]

袁公萍, 汤一平, 韩旺明, 陈麒. 基于深度卷积神经网络的车型识别方法[J]. 浙江大学学报(工学版), 2018, 52(4): 694-702.
dx.doi.org/10.3785/j.issn.1008-973X.2018.04.012
[复制中文]
YUAN Gong-ping, TANG Yi-ping, HAN Wang-ming, CHEN Qi. Vehicle category recognition based on deep convolutional neural network[J]. Journal of Zhejiang University(Engineering Science), 2018, 52(4): 694-702.
dx.doi.org/10.3785/j.issn.1008-973X.2018.04.012
[复制英文]

基金项目

国家自然科学基金资助项目(61070134,61379078)

作者简介

作者简介:袁公萍(1992-), 男, 硕士, 从事计算机视觉与深度学习研究.
orcid.org/0000-0002-6489-7676.
Email: 1030617785@qq.com

通信联系人

汤一平, 男, 教授.
orcid.org/0000-0002-7128-2784.
Email: typ@zjut.edu.cn

文章历史

收稿日期:2017-01-12
基于深度卷积神经网络的车型识别方法
袁公萍, 汤一平, 韩旺明, 陈麒     
浙江工业大学 信息工程学院, 浙江 杭州 310023
摘要: 针对现有车辆车型视觉识别技术中的检测精度不高、难以适应天气环境变化、难以从视频图像中准确提取出用于识别的车辆图像、难以对车辆车型子类进行识别分类、难以兼顾识别精度和检测效率等不足,将深度卷积神经网络引入车辆目标定位、识别和分类(子类)问题中.利用深度卷积神经网络自动完成车型的深度特征学习,在特征图上进行逻辑回归,从道路复杂背景中提取出感兴趣区域;利用softmax分类器训练特征实现车型识别;为了优化softmax在深度卷积神经网络分类过程中出现的类内间距大的问题,引入中心损失函数对softmax损失函数进行优化,提高类间分散性与类内紧密性.在BIT-Vehicle车型数据集中的实验结果显示,提出方法的平均精度为89.67%,检测和识别时间为159 ms;与传统的分类方法相比,识别精度提高约20%,效率提高10倍以上,检测鲁棒性有明显提升;与未改进前的深度卷积神经网络相比,检测精度提高0.6%,速度提高0.29倍.
关键词: 深度学习    卷积神经网络    特征自动提取    中心损失    车型识别    
Vehicle category recognition based on deep convolutional neural network
YUAN Gong-ping , TANG Yi-ping , HAN Wang-ming , CHEN Qi     
School of Information Engineering, Zhejiang University of Technology, Hangzhou 310023, China
Abstract: A novel detection model was proposed to solve the problems of low detection accuracy, difficulty in adapting to changeable climate environment, extracting the vehicles from the video accurately, meeting fine classification based on visual method, and giving attention to both the recognition accuracy and the detection efficiency and so on in the existing vehicle identification and classification. The problems contain three consecutive stages:vehicle detection, features extraction and classification based on deep convolutional neural network. The deep learning network was used to automatically complete vehicle feature extraction and logical regression was performed on the feature map to extract the region of interest from the complex background. Then vehicle recognition was implemented to train the existing features through a softmax classifier. The central loss function was introduced to optimize this problem and improve inter-class dispension and intra-class compactness as much as possible in order to optimize the problem that softmax will cause large class spacing in deep convolutional neural network. Experiments on BIT-Vehicle dataset demonstrated that the identification average accuracy of our algorithm was about 89.67%, and the recognition rate was about 159 ms. The recognition accuracy increased by approximately 20% compared with conventional machine learning methods, and the rate increased by at least 10 times. Robustness was significantly improved. The recognition accuracy increased by approximately 0.6% and the rate increased by at least 0.29 times compared with the unimproved deep convolution neural network.
Key words: deep learning    convolutional neural network    feature automatic extraction    central loss    vehicle recognition    

基于图像的车型识别涉及图像处理、模式识别、计算机视觉等相关技术领域, 目前国内外对该技术的研究大致上可以分为3个方向:1)基于牌照的车型识别; 2)基于车标的车型识别; 3)基于外观特征的车型识别.

基于外观特征的车型识别技术主要通过以下3个步骤来完成[1]:车辆分割、车辆的特征提取和车辆的分类.传统车型识别的方法主要有模板匹配法[2-3]、统计模式识别法[4]、神经网络识别方法[5-6]、仿生模式(拓扑模式)的识别方法[7]和支持向量机的方法[8-10].这些方法都存在各自的缺陷, 无法同时满足车型分类的速度与准确度两个最重要的指标.

目前, 在图像识别领域中常用的特征提取方法很多, 如SIFT[11]和HOG[12-13], 结合后续的分类器分类, 取得了良好的识别率.目前, 上述技术基本上需要人工来完成特征抽取, 更大的问题如下:1)受具体应用环境的影响太大, 各类检测算法要求的条件太苛刻, 鲁棒性差; 2)车辆种类繁多但差别不大, 没有明显的区别特征, 分类困难; 3)复杂背景多车辆特征的同时提取问题, 复杂背景多车辆的检测, 较容易实现, 但是多车辆的特征同时提取比较困难, 实现多车辆特征的同时提取, 对以后的分类识别、跟踪等都有很大的帮助.

最近几年, 深度学习在计算机视觉领域中的技术得到了迅速发展, 深度学习能够利用大量的训练样本和隐藏层逐层深入地学习图像的抽象信息, 更全面直接地获取图像特征.围绕着提高检测精度和检测速率两项重要指标, 卷积神经网络技术从R-CNN[14]、Fast R-CNN[15]到Faster R-CNN[16]的逐步发展, 具体表现为进一步精度提升、加速、端到端及更实用化, 几乎覆盖了从分类到检测、分割、定位各个领域.

利用深度卷积神经网络对图像具有极强的特征表达能力[17], 尝试采用深度学习方法进行车辆检测和车型识别.在构建车型识别网络时, 有以下3个问题值得探究.

1) 深度卷积神经网络能否有效地学习到高区分度的车型特征.深度卷积神经网络技术从R-CNN发展到Faster R-CNN, 在物体的分类上都取得了非常好的效果, 且在人脸识别上取得了非常高的精度[18].车型识别和人脸识别都是对图像进行精细分类, 因此构建深度卷积神经网络的车型识别方法必然是可行的.

2) 如何有效地化解深度卷积神经网络的学习能力与自己车型数据集偏小的矛盾.在车型识别问题上, 图像的样本数量和类别数量都很难达到千万级数量要求.如何在数据量受限、类别数量少的情况下, 有效发挥深度卷积神经网络在车型识别中的作用的问题非常值得考虑.

3) 如何兼顾深度卷积神经网络的检测精度与检测速率的矛盾.深度卷积神经网络的深度与检测精度成正比, 与检测速率成反比.

针对上述问题的思考, 本文提出改进的深度卷积神经网络的车型识别方法, 主要贡献如下.

1) 为了解决自己的车型数据集小、难以发挥深度学习网络优势和训练难收敛的问题, 利用大规模图像数据ImageNet[19]训练得到的模型对本文的网络结构进行参数初始化和调优.

2) 利用选择性搜索网络, 对道路上车辆进行定位和分割, 克服了穷举法导致的低效率的问题.

3) 为了解决Faster R-CNN的ZF[20]网络中使用在softmax损失函数学习特征时存在特征分布的类内间距大的问题, 引入中心损失函数, 实现中心损失函数与softmax损失函数的联合训练, 使得类间距离的最大化与类内距离的最小化, 提高特征的区分度和车型识别的精度.

4) 为了使得两种损失函数的联合训练最优化, 对基于Faster R-CNN的ZF网络进行改进.综合考虑精度和速率, 提出改进的基于深度卷积神经网络的车型识别方法.实验表明, 该方法的精度与速度两个重要指标都得到明显提升.

1 基于深度卷积神经网络的车型识别系统的设计

为了实现端对端的车辆检测与车型识别, 设计车辆对象的快速视觉分割算法, 即对车辆对象进行区域选择和定位; 研发一种深度学习方法, 实现无监督的车型特征提取; 针对车型识别工程的实际应用需求, 实现基于深度学习的车型识别系统.下面简单介绍该技术方案.

1.1 深度卷积神经网络结构设计

提出的深度卷积神经网络的整体框架如图 1所示, 主要由2个网络模型构成.第1个模型是生成感兴趣区域(region of interest, RoI)的选择性搜索网络(region proposal network, RPN[16]), 此处RoI是车辆对象, 由图 1中下部区域的短虚线框给出; 第2个模型是Fast R-CNN目标识别网络, 由图 1中上区域的双点划线给出, 两部分的共享部分如图 1的单点划线所示.中心损失层如图 1的右上区域的虚线框所示.

图 1 设计的深度卷积神经网络整体框架 Fig. 1 Designed overall framework of deep convolutional neural network
1.2 选择性搜索网络—RPN

RPN网络将一个任意尺度图像作为输入, 输出矩形目标建议框的集合, 每个框包含4个位置坐标变量和一个得分.为了生成区域建议框, 首先输入图像经过卷积共享层生成特征图; 然后, 在特征图上进行多尺度卷积操作, 具体实现过程为:在每一个滑动窗口的位置使用3种尺度和3种长宽比, 以当前滑动窗口中心为中心, 并对应一种尺度和长宽比, 则可以在原图上映射得到9种不同尺度的候选区域, 如对于大小为w×h的共享卷积特征图, 则总共有w×h×9个候选区域.最后, 分类层输出w×h×9×2个候选区域的得分, 即对每个区域是目标/非目标的估计概率, 回归层输出w×h×9×4个参数, 即候选区域的坐标参数.

在训练RPN网络时, 给每个候选区域分配一个二进制的标签, 以此来标注该区域是不是目标.具体操作如下:1)与某个真正目标区域(ground truth, GT)有最高的IoU(intersection-over-union, 交集并集之比)重叠的候选区域(也许不到0.7);2)与任意GT包围盒有大于0.7的IoU交叠的候选区域.分配负标签给与所有GT包围盒的IoU比率都低于0.3的候选区域; 3)介于两者之间的舍弃.

遵循Faster R-CNN[16]中的多任务损失, 最小化目标函数.对一个图像的损失函数定义为

$ \begin{align} &L\left( \left\{ {{p}_{i}} \right\}, \{{{t}_{i}}\} \right)=\frac{1}{{{N}_{\text{cls}}}}\sum\limits_{i=1}^{{{N}_{\text{cls}}}}{{{L}_{\text{cls}}}}\left( {{p}_{i}}, {{p}_{i}}^{*} \right)+ \\ &\lambda \frac{1}{{{N}_{\text{reg}}}}\sum\limits_{i=1}^{{{N}_{\text{reg}}}}{{{p}_{i}}^{*}}{{L}_{\text{reg}}}\left( {{t}_{i}}, {{t}_{i}}^{*} \right). \\ \end{align} $ (1)

式中:i为第i个候选区域的索引, Pi为候选区域是第i类的概率.若候选区域的标签为正, 则pi*为1;若候选区域标签为0, 则pi*为0.ti是一个向量, 表示预测的包围盒的4个参数化坐标, ti*为对应的GT包围盒的坐标向量.NclsNreg分别为分类损失函数与位置回归损失函数的归一化系数, λ为两者之间的权重参数.分类损失函数Lcls是两个类别(目标vs.非目标)的对数损失:

$ {{L}_{\text{cls}}}\left( {{p}_{i}}, {{p}_{i}}^{*} \right)=-\text{log}~\left[{{p}_{i}}^{*}{{p}_{i}}+\left( 1-{{p}_{i}}^{*} \right)\left( 1-{{p}_{i}} \right) \right]. $ (2)

对于位置回归损失函数Lreg, 用以下函数定义:

$ {L_{{\rm{reg}}}} = \left( {{t_i}, {t_i}^*} \right) = R\left( {{t_i}-{t_i}^*} \right). $ (3)

式中:R为鲁棒的损失函数,

$ R\left( x \right) = \left\{ \begin{array}{l} 0.5{x^2}, \left| x \right| < 1;\\ \left| x \right|-0.5, {其他}. \end{array} \right. $ (4)
1.3 Faster R-CNN

采用的Fast R-CNN[15]网络的各层具体结构如下:第1个卷积层(Conv1)的卷积核个数为96, 大小为7×7×3, 卷积步长为2;第1个池化层(Pool1)的池化核为7×7×3, 池化步长为2;第2个卷积层(Conv2)有256个卷积核, 大小为5×5×96, 步长为2;第二池化层(Pool2)的池化核为7×7×96, 步长为2;第3个卷积层(Conv3)有384个卷积核, 大小为3×3×256;第4个卷积层(Conv4)有384个卷积核, 大小为3×3×384;第5个卷积层(Conv5)有256个卷积核, 大小为3×3×384;RPN网络的第1个卷积层(Conv1/rnp)有256个卷积核, 大小为3×3×256;RPN网络的第2个卷积层(Conv2/rnp)有18个卷积核, 大小为1×1×256, RPN网络的第3个卷积层(Conv3/rnp)有36个卷积核, 大小为1×1×256.RoIpooling层是一层的金字塔池化层, 将特征都池化为6×6的特征图.这些卷积层以及层之间的连接都与文献[16]的结构相同.

1.4 改进的Faster R-CNN

本文的网络结构设计在Faster R-CNN的ZF[16, 20]网络结构的基础上进行了改进.首先, 采用文献[16]的ZF网络结构框架; 然后将中心损失层融入网络中, 虚线框部分, 以实现多损失函数的联合监控; 最后, 依据本文的算法思路对ZF网络进行修改, 在加入中心损失层后探索和设计不同网络结构, 尝试实现精度与速度的双重提升.与原ZF网络相比, 本文融入了中心损失函数, 并与softmax损失函数实现对网络的联合监控.此外, 为了优化两种损失函数的联合监控, 对ZF网络的全连接层进行重新设计, 具体设计如下:1)删除ZF网络中的一个全连接层; 2)全连接层的输出参数由4 096改为512.设计得到的网络结构图如图 1所示.

在改进的Faster R-CNN网络中, 输入图像经过共享卷积层可得特定维度的卷积特征图, 然后通过RPN网络可得大量的候选区域.将共享得到的特征图与通过RNP网络的候选区域同时输入RoIPooling层, 提取出对应候选区域的特征向量.将得到的特征经过一层全连接层, 使特征向量合并成512维; 最后经过逻辑回归和分类器, 则可以完成车型的检测与分类.

2 中心损失函数 2.1 引入中心损失函数有助于改善类间分散性和类内紧密性

在ZF网络中, 利用softmax配合对数似然代价函数训练最后一层的特征, 实现图像分类.softmax损失函数定义如下:

$ {L_{\rm{S}}} =-\sum\limits_{i = 1}^m {{\rm{log}}} \frac{{{\rm{exp}}\left( {\mathit{\boldsymbol{W}}_{ji}^{\rm{T}}{\mathit{\boldsymbol{x}}_i} + {b_{yi}}} \right)}}{{\sum\nolimits_{j = 1}^n {{\rm{exp}}(W_j^{\rm{T}}{\mathit{\boldsymbol{x}}_j} + {b_j})} }}. $ (5)

式中: xi为第i深度特征, Wj为最后一个全连接层中权重的第j列, b为偏置项, mn分别为处理的样本数量与类别数.

虽然softmax在深度卷积神经网络中有着广泛的应用, 但是这种形式不能够有效地学习得到使得类内较紧凑、类间较离散的特征.原因如下.

softmax的更新函数为

$ {\nabla _{\theta j}}J\left( \theta \right) =- \frac{1}{m}\sum\limits_{i = 1}^m {[{x^{(i)}}(1\left\{ {{y^{(i)}} = j} \right\}-p\left( {{y^{(i)}} = j|{x^{(i)}};\theta } \right))]} . $ (6)

式中:θ为需要训练的参数, 即权重与偏置; m为样本数量; x(i)为输入特征; y(i)为第i标签, p(y(i)= j|x(i); θ)为x(i)被分为第j类的概率.从式(6)可以看出, 在更新参数时, 它只顾及当前j类, 而惩罚其他类, 从而使得特征具备可分性, 但是没有对类内距离进行约束.最终出现的结果是学习到的特征虽然可分, 但是存在类内间距过大的缺点.

利用MNIST[21]数据集进行实验研究.为了便于显示, 将与中心损失层相连接的全连接层的输出设置为2, 结果如图 2(a)所示.图中, f1f2分别为第1个神经元特征值和第2个神经元特征值.从图 1(a)可知:1)学习得到的特征是可分的; 2)特征的类内间距较大.该类型特征不适合直接使用这些特征进行识别, 还具有改进空间.

图 2 利用不同方法学习的特征图 Fig. 2 Characteristic graphs of different learning methods

为了解决上述问题, 引入中心损失函数对softmax损失函数进行约束, 以达到缩小类内间距的目的.将中心损失函数定义为

$ {L_c} = \frac{1}{2}\sum\limits_{i = 1}^m {\left\| {{x_i}-{c_{yi}}} \right\|_2^2} . $ (7)

式中:cyi为第i类的特征中心, xi为输入特征.

将中心损失函数与softmax损失函数联合起来, 定义为

$ \begin{array}{l} L =-\sum\limits_{i = 1}^m {{\rm{log}}} \frac{{{\rm{exp}}\left( {\mathit{\boldsymbol{W}}_{ji}^{\rm{T}}\mathit{\boldsymbol{x}}{_i} + {b_{yi}}} \right)}}{{\sum\nolimits_{j = 1}^n {{\rm{exp}}(\mathit{\boldsymbol{W}}_j^{\rm{T}}{\mathit{\boldsymbol{x}}_j} + {b_j})} }} + \\ \;\;\;\;\;\;\frac{\lambda }{2}\sum\limits_{i = 1}^m {\left\| {{x_i}-{c_{yi}}} \right\|_2^2} . \end{array} $ (8)

式中:λ为权重参数, λ∈(0, 1).

使用联合损失函数后的效果图如图 2(b)所示.实验对比表明:利用联合损失函数进行训练, 使得学习到的特征具有更好的紧凑性, 即缩小了类内差, 这是非常有益于车型分类的, 能够有效地提升识别精度, 减小误识别率.

引入中心损失函数, 学习每类数据的深层特征的中心, 同时惩罚深层特征和它们对应的类中心间的距离; 有效地弥补了softmax损失函数的不足, 实现联合监控.

2.2 中心损失函数的训练及优化

引入中心损失函数前softmax损失函数被用作训练深度模型的监控信号.引入中心损失函数后, 它将与softmax损失函数联合起来, 监控训练深度模型.如何训练中心损失函数来实现高的类间分散性和类内紧密性.

训练深度模型时, 需要对最后一层的全连接层进行中心聚类.由于网络中的全连接层不宜过多, 即全连接层中的输出参数不宜太多.如果过多的输出参数不但会造成过拟合的现象, 而且不利于中心的聚合, 同时会影响车型检测和识别的效果和检测的速度.对后面的全连接层的层数和输出进行探索.

全连接层:原ZF网络有2个全连接层, 本文将最后一个全连接层删除, 保留前一个全连接层, 并将输出参数个数由4 096改为512.

中心损失层:该层的输出设置为7个类别, 分别为道路卡口上的各种类型车辆, 有轿车、SUV、卡车、客车、面包车、小型汽车和背景, 其值为7.将损失权重设置为0.004, 下一层为全连接层, 上一层为标签层.softmax损失层与Fc-score层连接.

在网络的初始化阶段, 利用文献[19]的预训练模型对参数没有改变的各层参数进行初始化.提出的网络Fc层和中心损失层的初始化使用期望为0、标准差为0.001的高斯函数进行初始化.

在训练网络时, 网络中的参数随输出和样本标签计算所得的损失函数不断更新.将初始学习率设置为0.001, 学习率调整策略设置为阶梯方式, 步长为5 000, 总训练次数为20 000, 训练方法采用文献[16]的端到端训练方式.

实验研究表明:中心损失函数是可训练的, 在CNN中非常容易优化.

3 实验研究

为了评估提出改进的Faster R-CNN的有效性, 在BIT-Vehicle[22]的车型数据集上进行实验研究.

3.1 实验环境

深度学习框架的选择与搭建, 目前可选择的环境有Caffe、Torch、Theano和TensorFlow.选择Caffe环境, 主要考量Caffe环境与Python语言的绑定, 具有良好训练或调整前馈模型, Fast R-CNN和Faster R-CNN内部有Caffe, 便于配置.实验环境如表 1所示.

表 1 实验软硬件环境 Table 1 Software and hardware environment of experiment
3.2 BIT-Vehicle车型数据集

BIT-Vehicle数据库是车型识别中的常用数据库, 其中的图像都是来自于实际路段的卡口高清图像, 与实际情况非常切合.数据集的具体内容和实验分配如表 2所示, 图像总数合计9 850.如图 3所示为该数据集中各种车型的示例图像.

表 2 BIT-Vehicle数据集 Table 2 BIT-vehicle data set
图 3 数据集中各车型图像示例 Fig. 3 Examples of various vehicles image of datasets
3.3 中心损失层融合及网络结构修改实验分析

为了验证中心损失层融入到深度卷积神经网络结构后中类间分散性和类内紧密性的改善情况, 既能有效缩小内类间距, 提高检测精度, 保证模型的识别性能, 又能减少特征向量的维度, 以减少特征的冗余性和算法的复杂度, 保证检测速度.本文主要验证不同的网络结构设计.

改进后Faster R-CNN网络与原ZF网络结构的前5层完全相同[16].对是否加入中心损失层, 加入中心损失层后全连接层的层数和神经元数量等参数进行详细对比实验, 在BIT-Vehicle数据集上开展实验, 结果如表 3所示.表中, Fc为神经元数.

表 3 不同卷积神经网络结构的分类准确率 Table 3 Classification accuracy of convolutional neural networks with different structures

表 3中, 每种网络结构包含有该层用“√”表示, 其后的数值(分母)表示该层的输出个数, “×”表示网络中不使用该层.Central这一列用“√”表示引入中心损失函数, “×”表示没有引入中心损失函数.

实验结果表明, 如表 3所示, 在无引入中心损失函数时, 随着全连接层数的减少, 精度降低, 特征是在样本数较少、相似度较高的类别上, 如微汽车类(表 3的第2行数据).当在网络中有两层全连接层时, 添加中心损失层后, 精度几乎没有提升(表 3的第3行数据).当引入中心损失层且减少一层全连接层时, 精度相比于两层全连接层时有所降低(表 3的第4行数据).

当引入中心损失层后, 随着全连接层参数的降低, 识别精度提高(表 3的第5~8行数据).特别地, 在样本数较少、相似度高的类别中, 如SUV、微汽车, 精度提升明显.当全连接的参数为512时, 引入中心损失层后, 识别率最高.

为了合理地联合中心损失函数与softmax损失函数, 对式(8)的损失权重参数λ∈(0~0.01)在上述的数据集中开展多组实验.在采用表 3的最终方案的前提下, 实验结果如图 4所示.图中, pa为精度.单独使用softmax损失函数(λ=0)不是最优方案, 当将中心损失函数与softmax损失函数进行联合之后, 精度有一定程度的提升; 当λ较大时, 会出现负作用.除此之外, 中心损失权重参数对训练数据较少的微汽车类别的敏感度较大, 对大数据量类别轿车的影响很小.

图 4 中心损失权重-精度曲线 Fig. 4 Central loss weight-accuracy curve

综合考虑准确率和特征维数, 选择最后一组方案, 即全连接的参数为512, 引入中心损失层作为车型识别的网络结构.Fc层的维度较低, 利于车型检测的速度.在检测速度上, 原网络的检测速度为205 ms, 改进后的网络检测速度为159 ms, 提高了0.29倍.

3.4 不同检测识别方法的实验对比

为了验证深度卷积神经网络在车型识别上的应用效果, 对某卡口所拍摄的视频图像进行检测识别实验研究.

将设计的卷积神经网络与传统的特征提取方法进行实验对比, 精度和速度分别用表 45所示.首先利用Selective Search[23]和Edge Boxes[24]两种不同的方法测试图像中的可能性目标区域, 然后分别对可能性目标区域进行Hog、Sift特征提取, 最后使用KNN、支持向量机SVM、逻辑回归softmax分类器实现车型识别.

表 4 BIT-Vehicle数据集上精度对比实验 Table 4 Accuracy contrast experiment based on BIT-Vehicle datasets
表 5 BIT-Vehicle数据集上的速率对比实验 Table 5 Speed contrast experiment based on BIT-Vehicle datasets

表 4前两行数据可知, 应用于文中数据集的车型检测时, Edge Boxes优于Selective Search, 使得检测到的可能性目标区域更接近真实标签, 从而总体识别精度更高.该方案与Fast RCNN结构类似, 即先检测出可能性区域, 再逐一进行识别.引用Faster RCNN的RPN网络结构, 实现检测网络与识别网络权值共享的多任务网络结构, 最终实现检测与识别同步开展, 添加中心损失函数进行优化.

表 4的实验结果表明, 与提取单一特征的传统方法相比, 如Hog、Sift特征, 本文的深度特征学习具有明显的优势.使用单一特征的车型识别方法存在特征表达的不足, 这是导致识别精度低的一个非常重要的因素.深度卷积神经网络是一种自上而下、自低向高的逐层学习策略, 能够学习到车辆对象的各级特征, 从而使得识别精度高.与文献[22]的两阶段深度学习网络方法相比, 本文方法不仅精度更佳, 而且将目标检测网络与识别网络合并, 实现检测与识别同步进行.

表 34表明, 本文提出的车型识别方法准确率最高, 平均为89.67%.在识别效率方面, 本文方法相比于Hog特征与支持向量机相结合的方法具备显著性的优势, 如表 5所示.表中, v为识别速度.

总体来说, 不论是识别精度还是识别速度, 提出的深度学习方法都优于传统特征提取的方法.如图 5所示为本文的部分实验测试结果展示图.

图 5 提出方法得到的不同场景识别结果 Fig. 5 Different scene recognition results based on proposed method

图 5给出不同时间段和不同场景中的实验验证结果.如图 5(a)所示为在光线较暗、车量数量较少的情况下的检测结果.结果显示, 光线较暗或灯光的小幅度干扰不会严重影响车型的识别, 但是概率输出会下降.

图 5(b)所示为在车辆数量较少、光线很强且有一些反光或阴影情况下的实验验证结果.结果表明, 无论是强光照环境还是阴影环境, 算法都能够有效地检测与识别车辆, 鲁棒性强.

实验结果表明, 提出的方法能够更好地适用于各种场景的车型视觉检测, 具有很高的鲁棒性、识别率.

4 结语

从车型识别的精度和检测效率出发, 对现有的深度卷积神经网络进行改进, 提出应用于车型识别的更加精确、高效的深度卷积神经网络.

利用深度卷积神经网络提取图像特征, 解决了传统的人工提取特征难的问题, 可以自学习地提取出目标对象的深层特征和可区分性特征.利用深度卷积神经网络可以找出目标的可能性区域, 代替了费时的穷举策略, 加快了目标检测的精度和效率.与其他策略搜索方法相比, 使用卷积操作的RPN网络, 使得检测和识别能够更加高效地结合, 进一步提高检测效率.

在现有网络结构的基础上加入中心损失层, 使得学习到的特征之间的内类间距缩小, 然后对网络的全连层进行重新设计.与ZF网络相比, 设计的网络结构更加简单, 但精度更高, 检测速度更快.与传统的分类方法相比, 本文的优势更加明显.

今后的研究工作展望是对车型进行更加的细分类, 识别出车辆的品牌、系列、车身颜色等更多的信息.另一方面是将车型、车牌和车标在同一深度卷积神经网络中开展并行处理, 即实现视觉多任务的并行计算, 以提高车辆身份识别水平.

参考文献
[1]
YIN Q, CAO Z M, JIANG Y N, et al. Learning deep face representation: U. S. Patent 20150347820[P]. 2015-12-03. http://www.freepatentsonline.com/9400919.html
[2]
WEI W, ZHANG Q S, WANG M J. A method of vehicle classification using models and neural networks[C]//IEEE 2001 International Conference on Semiannual Vehicular Technology 2001 Spring Conference (VTC). Israel: IEEE, 2001: 3022-3026. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=944158
[3]
LI L Y, HUANG W M, GU I Y H, et al. Foreground object detection from videos containing complex background[C]//11th ACM International Conference on Multimedia. Berkeley: ACM, 2003: 2-10. http://dl.acm.org/citation.cfm?id=957017
[4]
张旭东, 钱玮, 高隽, 等. 基于稀疏贝叶斯分类器的汽车车型识别[J]. 小型微型计算机系统, 2005, 26(10): 1839-2841.
ZHANG Xu-dong, QIAN Wei, GAO Jun, et al. Vehicle model recognition system based on sparse Bayesian classification[J]. Journal of Chinese Computer Systems, 2005, 26(10): 1839-2841. DOI:10.3969/j.issn.1000-1220.2005.10.035
[5]
XIA L M. Vehicle recognition using boosting neural network classifiers[C]//Proceedings of the 6th World Congress on Intelligent Control and Automation (ICA). Dalian: [s. n. ], 2006: 9641-9644. http://ieeexplore.ieee.org/document/1713873/
[6]
SIDDIQUE M N H, TOKHI M O. Training neural networks: backpropagation VS. genetic algorithms[C]//International Joint Conference on Neural Networks. Washington, DC: IEEE, 2001: 2673-2678. https://www.researchgate.net/publication/3906879_Training_neural_networks_Backpropagation_vs_genetic_algorithms?_sg=FvlpSmN4uryje4zIqvK6p_D4K7xFeaNFsGuqpg40cO_cG6I_hrYbtXQ_zas9eBRGSEqnUtL7ayeiUOQ1EylBiA
[7]
王守觉. 仿生模式识别(拓扑模式识别)一种模式识别新模型的理论与应用[J]. 电子学报, 2002, 30(10): 1417-1420.
WANG Shou-jue. Bionic (topological) pattern recognition a new model of pattern recognition theory and its applications[J]. Acta Electronica Sinica, 2002, 30(10): 1417-1420. DOI:10.3321/j.issn:0372-2112.2002.10.001
[8]
陈爱斌. 基于支持向量机的车型识别[D]. 湖南: 中南大学, 2004: 32.
CHEN Ai-bin. Vehicle identification based on support vector machine[D]. Hunan: Central South University, 2014: 32. http://www.wanfangdata.com.cn/details/detail.do?_type=degree&id=Y673466
[9]
YANG K H, SHAN G L, ZHAO L L. Application of least squares support vector machine on vehicle recognition[C]//International Conference on Intelligent Systems Design and Applications (ISDA). Jinan: IEEE, 2006: 217-221. http://ieeexplore.ieee.org/document/4021438/
[10]
武宏伟, 马钱. 一种基于支持向量机的车型自动分类器设计方案[J]. 计算机应用, 2005(4): 10-12.
WU Hong-wei, MA Qian. A design scheme of automatic vehicle classification based on support vector machine[J]. Journal of Computer Application, 2005(4): 10-12.
[11]
MA X, GRIMSON W E L. Edge-based rich representation for vehicle classification vision[C]//10th IEEE International Conference on Computer Vision (ICCV). Beijing: IEEE, 2005: 1185-1192. http://doi.ieeecomputersociety.org/10.1109/ICCV.2005.80
[12]
GE F X, SHI Y, SUN B, et al. Sparse representation based classification by using PCA-SIFT descriptors[C]//IEEE International Conference on Information Science and Technology (ICIST). Guangdong: IEEE, 2014: 429-432. http://ieeexplore.ieee.org/document/6920509/
[13]
HAN F, SHAN Y, CEKANDER R, et al. A two-stage approach to people and vehicle detection with hog-based SVM[C]//Performance Metrics for Intelligent Systems Workshop in conjunction with the IEEE Safety, Security, and Rescue Robotics Conference (PerMIS, SSRR). Washington, D. C: IEEE, 2006: 133-140. http://ci.nii.ac.jp/naid/10029056034
[14]
GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Columbus: IEEE, 2014: 580-587. http://arxiv.org/abs/1311.2524
[15]
GIRSHICK R. Fast R-CNN[C]//Proceedings of the IEEE International Conference on Computer Vision (ICCV). Boston: IEEE, 2015: 1440-1448. http://adsabs.harvard.edu/abs/2015arXiv150408083G
[16]
REN S Q, HE K M, GIRSHICK R, et al. Faster rcnn: towards real-time object detection with region proposal networks[C]//Advances in Neural Information Processing Systems (NIPS). Montreal: [s. n. ], 2015: 91-99. http://ieeexplore.ieee.org/document/7485869
[17]
HE K M, ZHANG X Y, REN S Q, et al. Deep Residual Learning for Image Recognition[C]//Computer Vision and Pattern Recognition (CVPR). Las Vegas: [s. n. ], 2016: 770-778. http://ieeexplore.ieee.org/document/7780459/
[18]
WEN Y D, ZHANG K P, LI Z F, et al. A discriminative feature learning approach for deep face recognition[C]//European Conference on Computer Vision (ECCV). Amsterdam: [s. n. ], 2016: 499-515. https://link.springer.com/chapter/10.1007%2F978-3-319-46478-7_31
[19]
KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]//International Conference on Neural Information Processing Systems (NIPS). Lake Tahoe: [s. n. ], 2012: 1097-1105. http://dl.acm.org/citation.cfm?id=2999257
[20]
ZEILER M D, FERGUS R. Visualizing and understanding convolutional neural networks[C]//European Conference on Computer Vision. Springer International Publishing (ECCV). Zurich: [s. n. ], 2014: 818-833. https://link.springer.com/chapter/10.1007%2F978-3-319-10590-1_53
[21]
LECUN Y, CORTES C, BURGER C J. The mnist database of handwritten digits. 1998-11. http://yann.lecun.com/exdb/mnist/. https://www.researchgate.net/publication/247931959_The_mnist_database_of_handwritten_digits
[22]
ZHEN D, WU Y W, PEI M T, et al. Vehicle type classification using a semisupervised convolutional neural network[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(4): 2247-2256. DOI:10.1109/TITS.2015.2402438
[23]
UIJLINGS J R R, SANDE K E A V D, GEVERS T, et al. Selective search for object recognition[J]. International Journal of Computer Vision, 2013, 104(2): 154-171. DOI:10.1007/s11263-013-0620-5
[24]
DOLLAR P, ZITNICK C L. Structured forests for fast edge detection[C]//IEEE International Conference on Computer Vision (ICCV). Sydney: IEEE, 2013: 1841-1848. http://dl.acm.org/citation.cfm?id=2587325