一种基于深度残差网络的车型识别方法

2018-05-25 08:50刘敦强夏瀚笙贾燕晨
计算机技术与发展 2018年5期
关键词:残差卷积神经网络

刘敦强,沈 峘,夏瀚笙,王 莹,贾燕晨

(南京航空航天大学 能源与动力学院,江苏 南京 210016)

0 引 言

近年来,汽车厂商推出的车型日益丰富,国内汽车保有总量逐年攀升,导致汽车增长量与道路承载能力之间的矛盾愈发突出,道路堵塞、交通事故等问题层出不穷,一些重要路段的交通压力也越来越大。汽车车型识别已经成为了智能交通领域一个重要的研究内容,可以为核心路段的交通监控、交通事故责任判定等方面提供有力的技术支持。在实际的道路环境下,车辆图像往往存在着多角度、遮挡、光照变化等影响因素,如何提取到适应于不同背景下的车辆特征也就成为了车型识别问题的研究重点。

目前,基于视觉的车型识别方法主要包括2类:第一类是基于匹配的方法[1]。这类方法主要包括特征匹配和模型匹配,前者需要提取相应的车辆特征,后者则对车辆图像进行一个整体建模,最后使用对应的相似性准则判断待检测车辆的车型;另一类是基于统计分类的方法。文献[2-4]使用了目标的角点特征;文献[5-7]基于图像的纹理特征进行分类;文献[8-12]利用了图像的局部特征和边缘信息;文献[13-14]基于模糊理论重建目标特征;文献[15-16]以神经网络提取特征;文献[17]对特征进行奇异值分解。

传统车型识别方法提取的特征在复杂的背景下很难实现自适应,导致特征的可分性往往效果不佳,鲁棒性也较差。与传统的特征提取算法相比,卷积神经网络充分利用了多层次建模和大规模数据集训练的优势,其模型学习到的特征可分性更好,同时针对各种环境的鲁棒性也更强。

文中首先介绍卷积神经网络的结构和原理,然后分析深度卷积神经网络和深度残差网络对于卷积神经网络的改进思路,从而提出一种结合深度残差网络与类别中心正则化约束的车型识别方法。接着介绍数据集的选择、制作以及数据预处理的方式。最后在总结全文的基础上,指出下一步工作的研究方向。

1 卷积神经网络

卷积神经网络是一种典型的层次结构模型,主要包括输入层、中间层(例如卷积层、下采样层、全连接层)、输出层。为了实现非线性映射,层与层之间还需要相应的激活函数。卷积神经网络的整体结构如图1所示。

图1 卷积神经网络结构

卷积层使用的卷积核与输入特征的局部区域相连,这与传统的多层感知机[18]使用的全局连接机制有着显著的区别。当同一个卷积核在输入图像上滑动采样时,其参数一直保持不变,这种权值共享机制也是卷积神经网络区别于传统的多层感知机的一个重要特征。通过权值共享机制,卷积神经网络可以极大地减少模型的参数规模。为了增加卷积层提取的特征的类型,一般卷积层需要设计多个卷积核,每一个卷积核负责提取一组特征。卷积操作的示意图如图2所示。

图2 卷积示意

卷积操作的公式可以归纳为:

(1)

其中,f(·)表示激活函数;Xl表示输入特征;Xl+1表示输出特征,C(·)表示卷积运算;b表示偏置项;M表示卷积核;θ表示卷积操作的参数,包括卷积步长、卷积补零项等。以图2为例,其卷积步长为一个像素,卷积补零项为空。

下采样层是用于减少模型参数,降低特征维数的一种操作。池化层也需要使用卷积核对输入特征进行卷积运算,但是池化层使用的卷积核的参数是固定的,常用的池化操作包括均值池化和最大值池化。池化操作的公式为:

(2)

其中,Xl表示输入特征;Xl+1表示输出特征;D(·)表示下采样运算;b表示偏置项;M表示卷积核;θ表示卷积操作的参数,包括下采样步长、下采样补零项。

2 基于深度残差网络的车型识别

在早期研究中,学者们对卷积神经网络模型有过层数加深的尝试,但是由于梯度消失、参数易陷入局部极小值等诸多困难难以克服,导致卷积神经网络的研究也随之进入了低谷。直到Hinton等[19]提出了深度信念网络(deep belief networks)模型,深层网络模型才重新进入了发展的高峰期。

2.1 深度卷积神经网络

2012年,Hinton等[20]提出了AlexNet模型这一经典的深度卷积神经网络,其模型参数详见图3。

图3 AlexNet网络模型参数统计

图中,Conv代表卷积操作;FC代表全连接操作;Max Pooling代表最大值下采样操作。

相比于传统的卷积神经网络,AlexNet不仅增加了网络的层数,并且在以下4个方面做出了重要改进:

(1)使用线性修正单元作为新的数据非线性映射函数;

(2)设计了局部规范化网络作为新的数据规范化方法;

(3)定义了DropOut机制,忽略部分特征信息,降低网络在训练时发生过拟合的概率;

(4)在ImageNet数据集上进行训练,同时结合GPU进行模型的并行运算,实现硬件加速。

AlexNet相比于较浅的卷积神经网络模型如LeNet[21],在分类性能上的提升非常大。这表明了在模型训练完善的情况下,深层网络模型的性能比相对较浅的网络模型的性能更好。AlexNet的层数只有8层,还处在10层的量级,后续的一些研究工作在它的基础之上将网络深度拓展到20层的量级,这些模型的性能相比于AlexNet又有了较大的提升。

如果继续使用文献[22-23]中的拓展网络层数的方法,当模型的层数拓展到20层以上,训练完善的模型的性能根据之前的经验应该还会有一定的提升。为了验证这一猜测,He等在文献[22]的基础上设计了2个深度卷积神经网络,其中相对较浅的网络模型设计成20层,另一个较深的网络设计成56层,在ImageNet数据集上同时训练两个网络模型直到模型收敛,同时测试集上也没有出现过拟合的现象。最终的实验结果显示,更深层模型的分类损失反而比相对较浅的模型的损失要大,更深层模型在测试集上的精度也不如相对较浅的模型的精度高。

这种退化现象说明当深层网络模型的层数超过某一量级时,其优化过程比相对较浅的网络更加困难,即使在网络中使用适当的数据规范化操作也很难使得相对较深层网络模型收敛到合适的参数。

针对上述存在的问题,He等[24]提出了深度残差网络模型。深度残差网络以残差单元为组成单位,其结构如图4所示。

图4 残差学习单元示意

残差单元不仅将上一层的输入通过非线性函数映射到下一层,同时将上一层的输入也直接映射到下一层,相当于在原始的单分支模型的基础上增加了输入数据的恒等映射分支。当上一层的输入和下一层的输入的维度不一致时,深度残差单元需要以下一层的维度为基准对上一层的输入进行仿射变换。残差单元内部使用了Ioffe等[25]提出的批量正则化方法(batch norm)对数据进行规范化,同时需要结合尺度调整(scaling)操作一起使用。两个支路之间的数据的处理方法可以使用逐元素相加或者向量內积(inner product)运算。

深度残差网络使用的捷径连接(shortcut connection)没有增加新的参数,其计算复杂度与没有残差单元的普通深度卷积神经网络基本一致,因此深度残差网络的层数在很深的情况下也可以保持较快的计算速度;同时,残差单元的引入又可以很好地帮助深度卷积神经网络完成优化的工作,提高模型的性能。

2.2 深度残差网络用于车型识别

基于上述深度残差网络的基础结构,文中的深度残差网络使用了5个残差单元,共有34层,每一个残差单元的结构与图4所示的结构一致。接着使用2个全连接层以提取全局特征,最后的输出层测试时预测输入图像的类别,训练时作为类别损失项和中心化损失项的输入。整个深度残差网络模型的结构如图5所示。

图5 残差网络示意

实际的训练过程中,训练数据的分布十分复杂。在Softmax机制下,数据对应的特征空间的分布同样会比较复杂,同类别数据在特征空间中的距离比不同类别数据在特征空间中的距离更大的现象较为普遍。这种不利因素会削弱模型的分类性能。为此,文中在深度残差网络的基础上,借鉴了Wen等[26]提出的类别中心正则化约束,利用相关任务协调训练的方法进一步提高模型的分类性能。

3 实 验

3.1 数据集

整个训练过程使用两个不同的数据集分别进行训练。

首先,在网上搜集了100种国内常见车型共5 000张图像作为初始训练样本,包括宝马、奔驰、通用、丰田、长安等众多车系,且每一种车型的样本量在50张左右,避免了类别之间出现不够均衡的情况。

其次,使用斯坦福大学公开的车型数据集作为第二步训练的样本。该数据集整理了196种汽车品牌共16 185个样本,其中训练集有8 144张图像,测试集有8 041张图像。

3.2 数据预处理

在已有数据集的基础上,使用数据增强技术(data augmentation)进一步改善数据集的质量。

首先是对图像基础特征的增强,主要包括图像的颜色、饱和度、亮度和对比度等特征;其次是使用翻转、镜像等基本的图像处理技术来扩充数据集;接着使用随机剪切的方法在原始图像上切出一系列的子区域作为新的训练样本;最后,借鉴了AlexNet在数据处理时使用的PCA Jittering,即先计算整个训练集的RGB三个颜色通道的均值、标准差和协方差矩阵,再对输入数据添加一定的高斯扰动噪声。

3.3 训练参数与实验结果

在训练时使用了难分负样本挖掘方法。难分负样本挖掘方法首先设置负样本筛选比例,然后根据模型前向运算得到的损失挑选较大的损失样本继续训练,忽略对模型参数贡献较小的样本。实验中,分类损失任务的负样本筛选比例为0.7,损失比重设置为1;类别中心损失任务的负样本筛选比例为0.8,损失比重设置为0.008。

在训练模型时,使用批量梯度下降法作为模型的优化算法,其中每一批量的训练样本数为256个。总的迭代次数为20个epoch(1个epoch代表总的训练样本对1个训练批量的商),每经过1个epoch再次随机打乱训练样本。学习率参数采用阶梯下降策略,其初始值设为0.01,经过10个epoch和16个epoch时分别下降一次,下降因子为0.1。

Caffe是目前几种流行的开源深度学习框架中比较经典的一种,对于各种网络模型的支持性也比较好,操作的便捷性比较高。因此,选择Caffe作为实现整个算法的深度学习工具。

在对比实验中,选择了几种具有代表性的算法在斯坦福大学的车型数据集的测试集中进行了比较。其中,ResNet_Vehicle是指文中设计的深度残差网络,Center Loss指代中心化损失,SIFT算法使用了VLFeat开源库的代码,SVM算法使用了LIBSVM开源库的代码。最终的对比实验结果如表1所示。

表1 几种车型识别算法实验结果对比

4 结束语

在深度残差网络的基础上,文中设计了一种用于车型识别的深度卷积神经网络,充分利用了深层网络模型和残差学习单元的优势,实验结果也证明了模型对于车型识别问题的有效性。尽管最终的实验结果比较理想,但是文中的工作仍然存在着一些不足之处。第一个方面是数据集。首先,用于训练的样本量较少,还没有充分利用深层网络模型的学习能力;其次,样本中的车型图像大多是整车,且拍摄的角度绝大多数是正面和侧面,俯视角度的样本很少。第二个方面就是网络模型的设计。虽然深度残差网络模型在实验中已经达到了很高的精度,但是仍然存在着提升空间,还可以考虑在深度残差网络的基础上引入空间转换网络操作等新的功能层等。因此,接下的工作可以围绕上述两个方面展开进一步的研究。

参考文献:

[1] SULLIVAN G S, BAKER K D, WORRALL A D,et al.Model-based vehicle detection and classification using approximations[J].Image and Vision Computing,1997,15(8):649-654.

[2] 周爱军,杜宇人.基于视频图像Harris角点检测的车型识别[J].扬州大学学报:自然科学版,2008,11(1):67-70.

[3] 康维新,曹宇亭,盛 卓,等.车辆的Harris与SIFT特征及车型识别[J].哈尔滨理工大学学报,2012,17(3):69-73.

[4] 秦克胜.基于图像处理的车型识别技术研究[D].青岛:青岛科技大学,2010.

[5] 马 蓓,张 乐.基于纹理特征的汽车车型识别[J].电子科技,2010,23(2):94-97.

[6] RAHATI S,MORAVEJIAN R,KAZEMI E M.Vehicle recognition using contourlet transform and SVM[C]//Proceedings of the 5th IEEE conference on information technology.Washington DC,USA:IEEE Computer Society,2008:894-898.

[7] ZHANG G,AVERY R P,WANG Y.Video-based vehicle detection and classification system for real-time traffic data collection using uncalibrated video cameras[J].Transportation Research Record Journal of the Transportation Research Board,2007(1):212-216.

[8] 黄 灿.基于局部特征的车辆识别[D].上海:上海交通大学,2010.

[9] 文学志,方 巍,郑钰辉.一种基于类Haar特征和改进AdaBoost分类器的车辆识别算法[J].电子学报,2011,39(5):1121-1126.

[10] 万文利,胡加佩,刘学军.基于误差椭圆的车型识别算法[J].计算机工程,2012,38(5):183-185.

[11] ZAFAR I,EDIRISINGHE E A,ACAR B S.Localized contourlet features in vehicle makes and model recognition[C]//Proceedings of SPIE.[s.l.]:[s.n.],2009.

[12] FERRYMAN J M,WORRALL A D,SULLIVAN G D,et al.A generic deformable model for vehicle recognition[C]//British conference on machine vision.[s.l.]:[s.n.],1995:127-136.

[13] 宋 丹,徐蔚鸿.基于模糊理论的车型识别[J].计算机技术与发展,2006,16(3):47-49.

[14] 耿彦峰,马 钺.基于模糊模式识别的车型分类研究[J].计算机工程,2002,28(1):133-135.

[15] 刘怡光,游志胜.一种用于图像目标识别的神经网络及其车型识别应用[J].计算机工程,2003,29(3):30-32.

[16] 王 年,任 彬,黄 勇,等.基于神经网络的汽车车型图象自动识别[J].中国图象图形学报,1999,4(8):668-672.

[17] 魏小鹏,于万波,金一粟.奇异值方法用于汽车车型识别[J].中国图象图形学报,2003,8(1):50-53.

[18] RUCK D W,ROGERS S K,KABRISKY M,et al.The multilayer perceptron as an approximation to a Bayes optimal discriminant function[J].IEEE Transactions on Neural Networks,1990,1(4):296-298.

[19] HINTON G E,OSINDERO S,TEH Y W.A fast learning algorithm for deep belief nets[J].Neural Computation,2006,18(7):1527-1554.

[20] KRIZHEVSKY A,SUTSKEVER I,HINTON G E.ImageNet classification with deep convolutional neural networks[C]//International conference on neural information processing systems.[s.l.]:[s.n.],2012:1097-1105.

[21] LECUN Y,BOSER B,DENKER J S,et al.Backpropagation applied to hand written zip code recognition[J].Neural Computation,1989,1(4):541-551.

[22] SRIVASTAVA R K,GREFF K,SCHMIDHUBER J.Training very deep networks[C]//Advances in neural information processing systems.[s.l.]:[s.n.],2015:2377-2385.

[23] SZEGEDY C,LIU W,JIA Y,et al.Going deeper with convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.[s.l.]:IEEE,2015:1-9.

[24] HE K,ZHANG X,REN S,et al.Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.[s.l.]:IEEE,2016:770-778.

[25] IOFFE S,SZEGEDY C.Batch normalization:accelerating deep network training by reducing internal covariate shift[C]//International conference on machine learning.[s.l.]:[s.n.],2015:448-456.

[26] WEN Y,ZHANG K,LI Z,et al.A discriminative feature learning approach for deep face recognition[C]//European conference on computer vision.[s.l.]:Springer International Publishing,2016:499-515.

[27] LOWE D G.Object recognition from local scale-invariant features[C]//Proceedings of the seventh IEEE international conference on.[s.l.]:IEEE,1999:1150-1157.

[28] CORTES C,VAPNIK V.Support-vector networks[J].Machine Learning,1995,20(3):273-297.

猜你喜欢
残差卷积神经网络
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
基于递归模糊神经网络的风电平滑控制策略
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于残差学习的自适应无人机目标跟踪算法
卷积神经网络的分析与设计
神经网络抑制无线通信干扰探究
基于深度卷积的残差三生网络研究与应用
从滤波器理解卷积
基于神经网络的中小学生情感分析