基于深度学习的车标识别算法的研究与实现

2017-07-19 10:41陈小娥杨薇薇
关键词:车标分类器卷积

陈小娥,杨薇薇

(福建船政交通职业学院信息工程系,福州 350007)

基于深度学习的车标识别算法的研究与实现

陈小娥,杨薇薇

(福建船政交通职业学院信息工程系,福州 350007)

依据深度学习算法可以自主进行特征学习和识别的特点,提出一种基于Keras深度学习框架的车标识别算法。将该方法将ResNet50和Inception V3两模型相结合构建训练网络,以此建立分类器对车标图像进行识别。实验结果表明,该方法与传统的卷积神经网络分类进行比对,提高了车标识别的准确率。

深度学习;Keras框架;车标识别;特征提取

0 引言

随着我国社会经济的飞速发展,人们的物质生活水平越来越高,道路上机动车的数量也越来越多。汽车使人们的生活越来越便捷,但与此同时,随着汽车数量的增多,也产生了一些不利影响,如道路拥堵、交通事故频发等,给智能交通管理系统带来了巨大的挑战。

车辆识别是智能交通系统中的重要组成部分,目前车辆识别中的车牌识别技术已相对成熟,然而近几年套牌、车牌磨损以及车牌遮挡等现象的出现,需要我们进一步提高车辆识别技术。于是,车标作为车辆的一个重要特征,可以辅助人们进行车辆识别。因为车标是车辆所有特征中最难以更改的重要标志之一。将车标作为研究对象,对车标进行识别,然后再与车牌识别相互结合,可进一步提高车辆识别的准确性。车标识别技术为智能交通系统的发展和完善提供了一种新的理念和方向,成为近几年车辆识别中的研究热点,将对车辆识别技术研究具有重大的推动作用。

关于车标识别,国内外已有一些学者进行了相关研究。传统的方法主要以分析特征提取方法为主,然后采用一些分类工具进行分类识别,如文献[1]提出了一种基于SIFT描述子的车标识别算法,SIFT特征对旋转、尺度和一定视角与光照变化等图像变化都具有不变性,可以准确地表示车标图像,但计算量比较大。文献[2-3]通过计算图像的方向梯度直方图作为特征值,然后利用SVM作为分类器来实现车标识别;文献[4]通过Modest AdaBoost算法检测车标的位置,接着利用径向Tchebichef矩进行车标识别。以上这些算法的车标特征均是通过人工提取获得,特征选取得好坏直接决定了识别准确率的高低,有些图像的特征不好表达,操作起来也相对复杂。

近年来,深度结构学习(又称为深度学习或多层学习)作为机器学习研究的一个新的领域,深受人们的关注,深度学习是一种通过多层表示来对数据之间的复杂关系进行建模的算法,该算法可以有效利用复杂的非线性函数和非线性的复合函数来学习分布和分层的特征表示。文献[5]采用了深度学习的方法,通过卷积神经网络自主选取车标特征进行学习和识别。

本文提出一种基于Keras深度学习框架的车标识别算法。该方法通过ResNet50和Inception V3两模型导出特征向量,并将它们合并成一条特征向量进行训练建模,获得分类器,然后通过实验,将该算法与传统卷积神经网络分类器进行对比,分析它们识别的错误率情况。

1 深度学习

2006年Hinton[6-7]在研讨会上的两篇论文中介绍了一种高效的无监督学习算法,提出了“多隐层的人工神经网络具有优异的特征学习能力”这一观点。深度学习技术分为深度判别式模型(如深度神经网络DNN、递归神经网络RNN、卷积神经网络CNN等)和生成式/无监督模型(如受限玻尔兹曼机RBM、深度置信网络DBN、深度玻尔兹曼机DBM、正则化的自编码器等)。CNN可以以图像作为输入,在计算机视觉或者图像识别任务中非常有效。

1.1 传统卷积神经网络

深度学习在目标识别中的最初应用由Y.LeCun等[8]人提出,图1展示了文献[8]中所描述的CNN的基本结构。CNN的深度结构中,每个模块都是由卷积层(Convolution)和池化层(Max Pooling)组成。这些模块通常是逐个叠加而成,卷积层共享权值,池化层对卷积层的输出进行降采样,从而减少下面一层的数据率。由此可以把图像作为直接的输入,省去了烦琐的特征提取过程。

图1 初始卷积神经网络基本结构

1.2 ResNet50模型

文献[9]在现有训练深度网络的基础上,提出了一种减轻网络训练负担的残差学习框架,由此解决精准度下降问题。深度残差网络(ResNet)的出现为训练更深的网络提供了方法,其主要特色是跨层连接。让这些层不是通过每一个堆叠层直接适合一个所需的底层映射,而是适合残差映射。拟合残差由图2的跨层连接所示,网络试图将x映射为F(x)+x,那么网络的映射F(x)自然就趋向于F(x)=0。

1.3 Inception V3模型

Christian等[10]人发布了一个新版本的GoogleNet(Inception V3)模块和相应的架构,并且更好地解释了原来的GoogleNet架构。GoogleNet的原始思想包括通过构建平衡深度和宽度的网络,最大化网络的信息流,在进入池化层之前增加特征映射;当网络层数深度增加时,特征的数量或层的宽度也相对应地增加;在每一层通过增加宽度以增加下一层之前的特征的组合;大卷积分解为小卷积,如图3所示用两层3×3卷积核代替原本5×5卷积核的Inception模块示意图[10]。

图2 残差学习:一个构建模块

图3 Inception模块示意图(用2个3×3卷积核代替1个5×5)

2 车标识别

2.1 系统的构建

车标识别系统主要分两部分构成:一部分是训练模块,一部分是识别模块,如图4所示。训练模块包括训练图片的输入、深度网络的训练构建和最终分类器模型的形成;识别模块包括测试图片的输入、车标识别和最终结果的输出。

图4 车标识别系统流程图

2.2 网络的构建

为了提高识别的正确率,本文考虑综合各个不同网络模型,主要考虑ResNet50和Inception两种模型,如图5所示为本文构建的算法模型。ResNet50和Inception两种网络训练时导出特征向量的时间较长,因而算法具体实现时将导出的特征向量先保存下来,以便后续的识别,减少计算量。

图5 本文算法模型示意图

2.3 实验与结果分析

本文采用基于Keras的深度学习框架搭建车标识别网络。Keras是一个高层神经网络API,Keras由纯Python编写而成。Keras的底层库使用Theano或TensorFlow,这两个库也称为Keras的反端,默认使用Theano作用后端来进行张量操作。车标图片来自于交通监控拍摄、网上以及线下采集的车辆图片,共有10种车标图片合计1 078张,其中训练集700张,测试集378张。图6是部分车标实例,分别为奥迪、宝马、奔驰、大众、东风、丰田、福特、奇瑞、现代和雪佛兰。

图6 10类车标图片实例

首先,用本文算法对车标测试集进行了测试,识别结果见表1所示。由表1可以看出,10种车标整体的识别率达到了98.1%。对奥迪、宝马、奔驰、福特等几种常见的车标识别效果较好。

将本文算法与参考文献[5]的方法进行实验对比,即将本文和文献[5]共有的车别类型进行测试,测试结果见表2,从表中数据可以看出,本文对车标识别的正确率有了一定的提高。实验中,大众和东风车标的识别正确率较低,主要是因为测试集中较多大众和东风的车标图片大小较小且图片本身的分辨率较低,对识别结果产生了一定的影响。

表1 车标识别测试结果

表2 本文算法与文献[5]的实验对比结果

3 总结

本文提出了一种将ResNet50和Inception V3两模型相结合的深度学习网络。与传统的卷积神经网络相比,由多个模型导出的特征向量相结合进行分类器的设计,提高了车标识别的正确率。

[1] Psyllos AP,Kayafas E.Vehicle logo recognition using a SIFT-based enhanced matching scheme[J].IEEE Transactions on Intelligent Transportation Systems,2010,11(2):322-328.

[2] LLORCA D F, ARROYO R, SOTELO M A.Vehicle logo recognition in traffic images using hog features and SVM [C]//Proceedings of the 2013 16th International IEEE Conference on Intelligent Transportation Systems.Piscataway.NJ:IEEE, 2013:2229-2234.

[3] SUN Q, LU X, CHEN L, et al.An improved vehicle logo recognition method for road surveillance images [C] //Proceedings of the 2014 Seventh International Symposium on Computational Intelligence and Design.Piscataway.NJ:IEEE, 2014:373-376.

[4] SAM K-T, TIAN X-L.Vehicle logo recognition using modest AdaBoost and radial tchebichef moments [C] / / ICMLC 2012:Proceedings of the 2012 14th International Conference on Machine Learning and Computing.Singapore:IACSIT Press, 2012:91-95.

[5] 彭博,臧笛.基于深度学习的车标识别方法研究[J].计算机科学,2015,42(4):268-273.

[6] Hinton G,Salakhutdinov R.Reducing the dimensionality of data with neural networks[J].Science,2016,313(5786):504-507.

[7] Hinton G,Osindero S,Teh Y.A fast learning algorithm for deep belief nets[J].Neural Computation,2006,18:1527-1554.

[8] LeCun Y,Bottou L,Bengio Y,et al.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.

[9] 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.Las Vegas:IEEE,2016:770-778.

[10] Szegedy C,Vanhoucke V,Ioffe S,et al.Rethinking the inception architecture for computer vision[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE,2016:2818-2826.

The Study and Implement of Vehicle Logo Recognition Algorithm Based on Deep Learning

CHEN Xiao-e,et al.

(DepartmentofInformationEngineering,FujianChuanzhengCommunicationsCollege,Fuzhou350007,China)

According to the algorithm of deep learning,the characteristic study and the characteristics of recognition can be operated by themselves.An algorithm of vehicle logo recognition based on Keras deep learning frame is proposed.This algorithm uses the combination of ResNet50 and Inception V3 models to make the training network to establish the classifier to recognize the vehicle logo images.The experiment result show that compared with the traditional convolution neural network classification method,it increases the recognition accuracy.

deep learning;Keras frame;vehicle logo recognition;feature extraction

2017-05-22

福建省中青年教师教育科研项目(JAT160704)

陈小娥(1984-),女(汉),福建永春,硕士 主要研究图像处理。

10.3969/j.issn.1009-8984.2017.02.027

TP391.41

A

1009-8984(2017)02-0117-04

猜你喜欢
车标分类器卷积
劳斯莱斯“欢庆女神”车标换代升级
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
有趣的车标
基于傅里叶域卷积表示的目标跟踪算法
基于实例的强分类器快速集成方法
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
雷人的车标
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别