一种快速的车型识别方法*

2018-06-05 11:39:55许晓珑
网络安全与数据管理 2018年5期
关键词:分类器卷积神经网络

胡 鹏,白 天,许晓珑

(1.中国科学技术大学 软件学院,安徽 合肥 230027; 2.福建省厦门市公路局 信息处,福建 厦门 361008)

0 引言

随着计算机硬件技术和计算机视觉技术的发展,智能交通(ITS)也得到快速的发展。自动交通事件检测系统是智能交通系统很重要的一部分,也越来越受到广大学者们的关注。一个好的自动交通事件检测系统,车辆检测是关键。传统的车辆检测方法很多,但其鲁棒性都不够好,基于交通视频的车辆检测以其检测范围大、工程量小、安装简单、成本低、信息丰富而逐步取代传统的检测方法。利用视频进行车辆的识别,涉及两个主要技术:车辆的检测定位和车辆的识别。

车辆的检测定位是车辆识别的基础。车辆的检测定位主要有两种方法:一种是使用高斯对背景建模[1],然后使用视频帧画面减去背景即可得到前景运动车辆;另一种针对交通视频采集器是固定的,可以使用帧差法得到运动目标。而目前车型分类主要有两种方式:(1)利用特征提取算法提取图像的特征,然后使用传统机器学习分类器进行分类。例如:提取车辆图像Harr-like特征[2],然后使用Adaboost[3]做特征选择并进行分类;提取尾灯和车辆尺寸等特征[4],然后使用混合动态贝叶斯网络(HDBN)[5]进行车型的分类;使用车辆边缘信息作为特征[6],并使用Adaboost进行分类;通过高斯背景建模[7],提取背景,进而得到前景车辆,然后提取车辆宽高比、宽度等特征,并使用支持向量机[8](SVM)进行分类。(2)使用深度学习进行端到端的学习,模型自动具有特征提取能力。例如:使用神经网络进行端到端的学习[9];使用深度置信网络[10](DBN)进行车辆、行人的识别。然而,第一种方法识别正确率普遍低于第二种方法,第二种方法又具有很高的时间复杂度,不具有实时性。

针对以上方法存在的问题,本文提出一种改进的卷积神经网络模型,在满足准确率的前提下,提高了测试效率。

图2 改进的卷积神经网络

1 相关工作

在本部分中,将从运动目标的检测[11]和对检测出的运动目标进行识别两个方面整体介绍车型分类系统。

1.1 运动目标检测

目前做运动目标检测的主流方法有相邻帧差法[12]、光流法、背景消去法、基于统计学习方法等几种。由于本文中车型分类系统的输入视频的采集器具有固定位置不变性,并且为达到实时性的需求,计算量不宜过大,故采用改变的帧差法[13]进行运动目标的检测。改变过的帧差法流程图见图1。

详细检测流程如下:

(1)通过边缘检测算子Candy算子计算视频流中的连续两帧图像Fk和Fk-1对应的Ek和Ek-1两张边缘图像;

(2)差分两张边缘图像Ek和Ek-1得到Dk;

(3)将Dk划分为多块,并统计非0的块记为Sk;

(4)根据阈值对Sk进行二值化,从而可以得到整个图像块对应的矩阵M;

(5)对矩阵M中的非0值进行连接,并刨去过小且独立的区域;

图1 目标检测流程图

(6)获取包含运动目标的最小外接矩形。

1.2 运动目标的识别

本文使用改进的卷积神经网络进行目标的识别,卷积神经网络相比传统机器学习分类器,例如SVM和AdaBoost,具有以下优点:

(1)传统机器学习分类器对图像进行分类,需要人工提取特征,如SIFT、SURF、PCA-SIFT、HOG、Harris等;得到这些特征的特征向量一般需要很大的计算量,且还需对图像进行预处理操作,而卷积神经网络的卷积层具有自动抽取特征能力,直接将原图像输入网络即可分类。

(2)卷积神经网络的不同卷积层可以提取不同层次的特征,且在一定层数内,层数越深,可以抽取越高层的特征。

(3)同一辆车辆在不同环境下外观表现很复杂,采集器距离、高度、角度、光照等都对其影响很大,人工设计特征算子无法考虑所有的情况,而卷积神经网络对缩放、平移等仿射变换具有很好的抵抗力,从而可有效克服环境带来的影响。

2 改进的模型

卷积神经网络的卷积层可以抽取多量且丰富的图像特征,并且这些特征一般具有抗仿射变换、平移不变性、旋转不变性、尺度不变性等,而且随着卷积层数的增加可以抽取到越来越高层次的特征,故卷积神经网络相比浅层网络在目标识别领域具有很大的优势。然而卷积神经网络的模型计算量主要集中在卷积层的计算,因此卷积层数的增加必然导致计算量的增加直至无法满足实时性需求。譬如经典的目标识别网络AlexNet[14]具有5个卷积层,其卷积层计算时间占整个网络前传时间的0.841;ResNet-50[15]具有48个卷积层,其卷积层计算时间占整个网络前传时间的0.999。

由于目标识别任务中,不同目标之间的差异性不一样,有的目标之间具有颜色、形状等明显差异,有的目标之间只有纹理差异,从而识别过程中可以考虑具体情况对于不同类别目标的识别采用提取不同层次的特征进行比较的策略来减少大量的卷积计算。由此本文针对车型识别应用,改进卷积神经网络模型,模型如图2所示。

2.1 模型介绍

本模型在原始卷积神经网络的基础上改进而来,模型主要由多个卷积层(包括池化和激活函数等)和两个分类器组成(原始卷积神经网络只有一个分类器)。其中分类器1和分类器2分别负责不同的任务,分类器1负责对低层特征进行分类,分类器2负责对高层特征进行分类,且分类器1与分类器2共享模型前面的卷积层;最终分类结果由分类器1和分类器2共同决定,计算公式如下:

(1)

式(1)中,Pres为最终分类结果,Pclass1和Pclass2分别为分类器1和分类器2的输出结果,且都是n维的概率列向量(n对应n个类别)。Fclass1,Max为Pclass1列向量中的最大值,Fclass1,Sec为Pclass1列向量中的次大值。ε为阈值,控制最终结果是否考虑分类器2的结果。sign(x)函数是符号函数。

图2中的模型:分类器1对两个卷积层提取的特征进行分类,分类器2对5个卷积层提取的特征进行分类,公共卷积层是前两个卷积层。模型也可看成两个卷积神经网络,分别对应粗黑体实线框中的子模型和虚线框中的子模型,两个子模型之间共享部分卷积层且相互牵制。

2.2 模型训练过程

(1)使用数据集前向传播和反向传播训练虚线框中的子模型(即一个普通的卷积神经网络);

(2)将数据集通过前面的公共卷积层,得到特征数据集,使用特征数据集训练分类器1,并反向传播时微调公共卷积层参数。

2.3 模型测试过程

(1)对于一个测试用例test,经过两层卷积层时,得到的是低层特征;

(2)进程1将低层特征输入到分类器1进行分类操作;

(3)进程2继续高层特征的提取;

(4)若分类器1分类完成,输出的概率列表中,最大概率与次大概率之间的差值大于某个阈值,即很大置信度相信低层特征即可分类正确,此时输出最大概率类,并终止进程2的计算,进行下一测试用例,即式(2):

Ctest=P1test

(2)

(5)否则,即辨认不出是最大概率类还是次大概率类,则等待虚线框子模块测试结果,最终结果将由分类器1与分类器2按权重共同决定,即式(3):

(3)

上式中(假设分为5类,向量为5维),第一个向量为分类器1输出的概率向量且只保存最大值与次大值,其他概率项置0(假设类1和类3分别为最大、次大概率);第二个向量为分类器2输出的概率向量;α和β分别为向量1和向量2的权重系数;由于分类器1无法高置信度地辨认最终结果为最大概率类还是次大概率类,且分类器2对更高层次特征进行分类,因此最终结果将更偏向于分类器2的结果,即保证α<β且α+β=1;最终结果Ctest取向量1与向量2的加权和。

3 实验

为了验证所提方法的有效性和可行性,利用OpenCV和Caffe分别进行车辆检测和车型识别的实验。处理器选用因特尔Core i7,8 GB内存,显卡选用英伟达GEFORCE GTX850M。实验数据为厦门各路口监控视频,有白天、阴雨天和黑夜的视频,视频分辨率为1 280×720,帧率为30帧/s。

3.1 实验系统架构

系统架构如下:系统输入为交通视频,输出为5种分类类别,分别为小轿车类别、巴士类别、卡车类别、摩托车类别、非机动车类别。系统工作流程为:系统先通过运动目标检测模块获取交通视频中的运动目标所在区域的外接矩形图像,然后进行人工标注,最后训练和测试分类模型。系统架构如图3所示。

图3 系统架构图

3.2 实验数据集

本文以厦门公路局提供的厦门各路段监控视频为系统实验数据,所有视频均为公路实际监控过程中的真实视频。监控视频来自于三个镜头,每个镜头大约有45 h的监控视频;三个镜头视频采集角度如图4所示。

图4 三个镜头信息

实验中将三个镜头统一起来工作,所有视频经过运动目标检测模块后,检测到的有效车辆图片并人工标记的有40 000张。其中各种车型对应的数量如表1所示。

表1 车辆检测模块检测结果

从巴士车、小轿车、摩托车、卡车中各抽取50%的数据作为测试集;各类剩余50%作为原始训练集。由表1可知,由于巴士车数量只有小轿车的1/10,直接将原始训练集进行分类模型的训练会有严重的类别不平衡问题,故执行下列操作:将剩余的1 000张巴士车图片使用旋转、复制、翻转等操作增加到10 000张,其他各类类比此操作,从而生成新的训练数据集,见表2。非机动车类型包括自行车、行人、背景等。各车型部分样本见图5。

表2 运动目标分类模块数据集

图5 各车型部分样本

3.3 实验结果及分析

由于实验效果需要对比,故实验中不仅训练本文提出的模型,还需训练经典的AlexNet模型(原模型输出1 000类,改变模型输出5类)与之形成对比。

在实验中,训练数据集由于类别不平衡做了一些数据集扩大操作,但是最终训练集也只有50 000张图片;然而本文提出的模型具有5个卷积层以及两个分类器,从而训练集太小会导致模型过拟合,故本实验中使用迁移学习[16]的思想,迁移经典模型卷积层参数作为本实验模型的初始化参数。使用ImageNet庞大的数据集训练的AlexNet模型具有很强的图像特征抽取能力,故本实验中迁移此模型卷积层的参数到实验模型上,然后使用训练集finetune[17]实验模型。

图6和图7分别描述了实验模型和AlexNet模型测试集上的错误率和测试时间与ε取值的关系,其中错误率由式(4)计算。随着ε取值由0到1,错误率整体呈下降趋势,最终趋于AlexNet模型的错误率;批量测试时间整体呈上升趋势。由分析可知,当ε=0时,实验模型等价于图2中粗体实线框中对应模型,整个模型只有两个卷积层加分类器1,因此模型准确率较低,但批量测试时间较短;当ε=1时,实验模型等价于图2中虚线框中对应模型,也就是经典的AlexNet模型,因此模型准确率较高,基本等于AlexNet模型的正确率,但批量测试时间很长,稍微高于AlexNet模型的测试时间(这是由于两个模块占用更多计算机资源导致的)。联合图6和图7分析可得,当0<ε<1时,取合适的ε可以使得准确率基本等于AlexNet模型,但是时间效率高于AlexNet模型。

表3展示了ε=0.35时实验模型与AlexNet模型在分类准确率和效率上的对比。实验模型准确率不仅稍高于AlexNet模型,而且批量测试时间比AlexNet模型降低了21.99%,因而,模型具有很高的测试效率。

(4)

4 结束语

本文针对车型识别应用,改进卷积神经网络模型。改进的模型中,具有5个卷积层和2个分类器,2个分类器分别负责对不同层次的特征进行分类,由于提取不同层次特征即分类,故可以节省部分高层特征提取的时间。在车型分类的实验中,本模型分类的正确率不仅不低于AlexNet模型,而且批量测试效率得到了大幅度的提升。由于本模型准确率稍高于AlexNet模型,故笔者将在提高准确率方面做进一步研究。

图6 错误率与ε取值的关系图

图7 批量测试时间与ε取值的关系图

车型改进的AlexNetAlexNet分类/测试正确率分类/测试正确率巴士车964/1 0000.964962/1 0000.962小轿车9 923/10 0000.9929 891/10 0000.989摩托车3 924/4 0000.9813 920/4 0000.980卡车4 635/5 0000.9274 674/5 0000.935非机动车4 690/5 0000.9384 685/5 0000.937合计24 136/25 0000.965 4424 132/25 0000.965 28总测试时间/s845.31 083.7

[1] ZIVKOVIC Z. Improved adaptive Gaussian mixture model for background subtraction[C]//Proceedings of the 17th International Conference on Pattern Recognition. IEEE, 2004: 28-31.

[3] KAFAI M, BHANU B. Dynamic Bayesian networks for vehicle classification in video[J]. IEEE Transactions on Industrial Informatics, 2012, 8(1): 100-109.

[4] MURPHY K P. Dynamic bayesian networks: representation, inference and learning[D]. Berkeley: University of California, 2002.

[5] KHAMMARI A, NASHASHIBI F, ABRAMSON Y, et al. Vehicle detection combining gradient analysis and AdaBoost classification[C]//Proceedings of the IEEE Intelligence Transportation Systems, 2005: 66-71.

[6] CHEN Z, PEARS N, FREEMAN M, et al. Road vehicle classification using support vector machines[C]// IEEE International Conference on Intelligent Computing and Intelligent Systems. IEEE, 2009: 214-218.

[7] SUYKENS J A K, VANDEWALLE J. Least squares support vector machine classifiers[J]. Neural Processing Letters, 1999, 9(3): 293-300.

[8] Liu Yiguang, You Zhisheng. A neural network for image object recognition and its application to car type recognition[J]. Computer Engineering, 2003, 29(3): 30-32.

[9] WU Y Y, TSAI C M. Pedestrian, bike, motorcycle, and vehicle classification via deep learning: deep belief network and small training set[C]//2016 International Conference on Applied System Innovation (ICASI). IEEE, 2016: 1-4.

[10] HINTON G E. Deep belief networks[J]. Scholarpedia, 2009, 4(5): 5947.

[11] 万缨, 韩毅, 卢汉清. 运动目标检测算法的探讨[J]. 计算机仿真, 2006, 23(10): 221-226.

[12] SUN Z, BEBIS G, MILLER R. On-road vehicle detection: A review[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2006, 28(5): 694-711.

[13] Zhan Chaohui, Duan Xiaohui, Xu Shuoyu, et al. An improved moving object detection algorithm based on frame difference and edge detection[C]//Fourth International Conference on Image and Graphics. IEEE, 2007: 519-523.

[14] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet classification with deep convolutional neural networks[C]//Advances in Neural Information Processing Systems, 2012: 1097-1105.

[15] He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770-778.

[16] PAN S J, YANG Q. A survey on transfer learning[J]. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10): 1345-1359.

[17] OQUAB M, BOTTOU L, LAPTEV I, et al. Learning and transferring mid-level image representations using convolutional neural networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2014: 1717-1724.

猜你喜欢
分类器卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
神经网络抑制无线通信干扰探究
电子制作(2019年19期)2019-11-23 08:42:00
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
基于傅里叶域卷积表示的目标跟踪算法
BP-GA光照分类器在车道线识别中的应用
电子测试(2018年1期)2018-04-18 11:52:35
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
基于神经网络的拉矫机控制模型建立
重型机械(2016年1期)2016-03-01 03:42:04
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定