计算机视觉技术的车型识别应用研究*

2017-06-27 08:08茅正冲韩毅
单片机与嵌入式系统应用 2017年6期
关键词:权值卷积神经网络

茅正冲,韩毅

(江南大学 物联网工程学院 轻工过程先进控制教育部重点实验室,无锡 214122)

计算机视觉技术的车型识别应用研究*

茅正冲,韩毅

(江南大学 物联网工程学院 轻工过程先进控制教育部重点实验室,无锡 214122)

针对目前立体停车库主要采用传统的传感器入库检测系统来识别车辆信息,存在施工周期长、器件损坏率较高,维护成本较高的问题,提出了一种应用计算机视觉技术的车型识别解决方案。应用卷积神经网络框架Caffe,基于CaffeNet模型,通过fine-tuning模型优化以及参数优化,最终得到了一个性能较优异的识别模型。实验结果表明,该模型可克服输入图片背景复杂多变,目标被遮挡的情况,对轿车车型识别这一问题鲁棒性好,具有一定的可行性及应用价值。

模式识别;车型识别;卷积神经网络;深度学习

引 言

随着城市汽车数量的与日俱增,停车难成为日益突出的问题,而立体停车库是解决城市停车难的有效措施。车辆入库检测系统为后期系统分配车库提供信息,同时系统的超限检测是车库良好运行的重要保证。传统的传感器检测系统[1]主要采用光电传感器采集车辆的尺寸、车型等信息,存在施工周期长、器件损坏率较高、维护成本较高的弊端。随着数字化技术的发展,计算机视觉技术在检测方面得到了广泛的应用。参考文献[2]中通过计算机视觉实现了道路识别,取得了满意的效果。参考文献[3]中同样采用SIFT算子提取特征,最近邻点搜索匹配,实现了移动机器人的目标识别。计算机视觉技术就是利用摄像机以及电脑替代人眼使得计算机拥有人类的双眼所具有的分割、分类、识别、跟踪、判别决策等功能[4]。

深度学习(Deep Learning,DL)是机器学习(Machine Learning,ML)领域的主要研究方向之一,近些年来在计算机视觉、语音识别等应用中取得了重大突破[5-7]。深度学习的概念最早由多伦多大学的Hinton[8]等人于2006年提出,该团队对传统的人工神经网络(Artificial Neural Network,ANN)算法进行改进,通过模拟人类大脑的多层抽象机制来对数据进行分类识别,其目的在于通过模拟人类大脑的神经结构分层处理图像、声音等信号。在图像识别应用领域,深度学习充分利用低层特征得到更加抽象的高层属性或特征,从而获得数据本质性特征。深度学习是相对于支持向量机(Support Vector Machine,SVM)、提升方法(Boosting)、最大熵方法等“浅层学习”方法而言的,深度学习所习得的模型中,非线性操作的层级数更多[9]。支持向量机方法的理论基础是统计学习理论中VC维理论结构风险最小原理,可根据有限的样本信息在模型的复杂度和学习能力之间取最佳折中,以求良好的泛化能力,支持向量机分类的性能依赖于特征的提取,而深度学习通过原始数据无监督地学习特征,将学到的特征作为后续层的输入。

典型的深度学习网络模型有三类:卷积神经网络(Convolutional Neural Network,CNN)模型、受限莫尔兹曼(Restricted Boltzmann Machines,RBM)模型以及堆栈式自动编码机(Stacked Auto-encoder Network,SAN)模型[10]。本文主要研究的是卷积神经网络。卷积神经网络是一种有监督学习的深度学习模型架构,它是带有卷积结构的深度神经网络,并在真正意义上第一次成功实现了多层网络的训练,尤其适合处理二维数据问题。卷积神经网络采用权值共享和非全连接,权值共享能在一定程度上避免过拟合,层与层之间非全连接可降低训练参数数目,二者使卷积神经网络在图像处理方面具有较明显的优越性。传统的车型识别方法主要包括车辆检测、特征提取、模式识别等处理,在复杂背景下分割出完整的目标车辆区域是识别处理过程中的难点。本文中采用的卷积神经网络直接采用原始图像作为网络的输入,输入图像主要通过卷积层、下采样层、全连接层以及损失函数层处理,将特征提取与分类识别过程同时进行,克服了两者在算法匹配上的困难。

1 卷积神经网络

卷积神经网络主要由卷积层(Ci)和下采样层(Si)交替重复来组成网络结构,图1为LeNet-5卷积神经网络结构图。

图1 LeNet-5卷积神经网络结构图

1.1 卷积层

卷积运算通过提取信号的不同特征对输入数据进行不同模式的观测,该观测模型称为卷积核,源于D.H.Hubel等[11]人研究猫的视皮层细胞而提出的局部感受概念。每一个卷积层一般包含多个卷积核,用来提取不同的特征。卷积核用于提取单个输入特征图上的特定特征,实现该输入特征图上的权值共享,再通过求取多幅输入特征图卷积核运算结果的加权和,并由非线性计算输出最终得到的输出特征图。传统非线性函数通常采用Sigmoid、tanh或者softsign等饱和非线性函数,近年来多采用ReLU不饱和非线性函数。ReLU(rectified linear units)函数在训练过程中可以获得更快的收敛速度。卷积过程用公式表示如式(1)所示。常见的激活函数如式(2)~(5)所示。

(1)

(2)

(3)

(4)

ReLU: S(x)=max(0,y)

(5)

1.2 下采样层

下采样是对输入特征图进行平均池化(average pooling)或者最大池化(max pooling)操作,平均池化操作是依据定义的领域窗口计算局部像素的均值PA,最大池化是将均值PA替换成最值PM。下采样可降低特征图的分辨率,减少特征维数。下采样过程如下所示:

(6)

式中,down(·)为池化函数,β为权重系数。

1.3 全连接层

全连接层中,每个节点与相邻层的所有节点都有连接关系,全连接层反映若干卷积层提取的特征。全连接层如下所示:

(7)

式中,x为输入节点组成的向量,W为权值矩阵,y为输出向量。

1.4 反向传播算法

反向传播算法用来求取网络权值,工程应用中大多采用随机梯度下降(Stochastic Gradient Descent,SGD)法,通过计算样本输出误差来计算样本平均梯度,再根据梯度调节权值,直到目标函数平均值停止下降才停止更新。计算过程中将输出特征图与期望值比较求取误差,通过导数链式法则将误差传递到每一个节点,根据下面的权值更新式更新权值。

(8)

式中,Xi为输入特征,α为学习率。对于最后一层:

(9)

式中,Tj为预期值,h′(X)为非映射函数导数。对于非最后一层:

(10)

式中,NL+1为输出特征的数目。

2 基于Caffe深度学习框架的识别系统设计

Caffe(ConvolutionalArchitectureforFastFeatureEmbedding)是一种快速特征嵌入的卷积结构,它是由伯克利视觉与学习中心(BerkeleyVisionandLearningCenter,BVLC)开发的。Caffe具有代码组织良好、可读性强、易于进行工程部署等诸多优点,因此,本文采用Caffe框架来实现车型识别系统。针对立体车库存放轿车的应用背景,本文将车型分为三个类别:运动型多功能车(SUV)、三厢小轿车以及两厢小轿车。

2.1 系统网络结构的构建

深度卷积神经网络应用中一般需要大量图片作为训练样本才可以得到满意的分类效果,但在实际应用中获取大量的图片是有难度的,fine-tuning微调网络是一个较理想的选择。参考文献[12]在图片风格检测中,微调网络获得了良好的分类效果。在本文的车型识别系统中,采用fine-tuning微调来构建识别网络,使用ImageNet预训练的CaffeNet模型参数作为权值初始化参数。CaffeNet模型如图2所示。

CaffeNet模型有5个卷积层,能有效提取输入图片的特征,采用ReLU函数作为激活函数,收敛速度快,并引入了新的规整化技术——dropout。在训练过程中,dropout将随机使网络中某些隐藏层节点权重不工作,保持当前权值不变,可有效防止模型过拟合。

Caffe框架提供了权值和模型参数的载体ProtoBuffer,可以通过描述文件高效便捷地更改模型结构及参数,将网络中数据输入层中文件路径修改为当前实验数据路径。本文中要求的分类类别为3,因此重新构造第二个全连接层,设置全连接层输出数目为3。该新构建的网络层相较于其他层可设置较大学习速率,得到更好的训练效果,设置该层学习速率倍乘因子为10。

2.2 网络参数的优化

在网络训练过程中,权值的增量由求解器控制,本文中采用随机梯度下降法。权值参数的求解是一个最小化损失函数的问题,对于给定的数据集D,损失函数是整个数据集中损失值的平均值[13],其定义如下所示:

(11)

其中,fw(X(i))为样本X(i)上的损失函数,r(W)为规整项,λ为权重系数。在工程上,一般使用式(12)来代替,其中,小批量数据N<<|D|。

(12)

(13)

(14)

表1 CaffeNet模型训练参数

伯克利视觉与学习中心的CaffeNet模型训练参数如表1所列,batch_size代表批量数据大小,test_iter指预测阶段迭代次数,二者的乘积应确保大于总的预测样本数,test_interval表示每训练1000次进行一次预测,base_Ir为学习速率,gamma为常量因子,是学习速率的衰减策略,momentum为遗忘因子,max_iter为训练阶段最大迭代次数。

对于本文中的fine-tuning微调网络,base_Ir取值不宜过大,否则容易导致网络不收敛,本文中取0.000 1可以得到满意的收敛效果,学习速率衰减策略保持不变,结合样本数量,最大迭代次数设为400。weight_decay权重衰减是防止网络过拟合的重要参数,它可以保证较小的网络权值w。一般地,在损失函数后加上正则化项,为了便于分析,相对于式(11)的表示如式(15)所示:

(15)

其中,C0为原损失函数,后一项为正则化项,求导后可得:

图2 网络模型结构图

(16)

(17)

(18)

表2 优化后的网络训练参数

奥卡姆剃刀法则指出,更小的权值w在一定程度上代表网络复杂度更低,对数据的拟合正合适。weight_decay具体取值可依赖于实验结果,在本文中,不同的权重衰减大小对应的网络训练误差曲线如图3所示,取值为0.0001和0.005时网络都有过拟合现象,经过对比,weight_decay取值为0.1时有满意的效果。优化后的网络训练参数如表2所列。

图3 不同权重衰减下网络训练误差曲线

3 实验结果及分析

3.1 实验数据

为了验证fine-tuning微调网络性能,本文采用高清摄像机采集了1200张汽车图片。在立体车库应用中,获取汽车侧面图片是最为方便的,与此同时,侧面也是轿车最具有分辨能力的角度,因此本文中均拍摄轿车侧面图片。为了更好地验证网络性能,实验数据为在不同光照条件下拍摄所得,如图4所示,部分图片存在遮挡、旋转等现象。实验过程中将800张作为训练样本,100张用于预测,另外300张用于测试最终模型。

图4 部分实验样本数据

3.2 实验结果及分析

实验过程中,网络训练采用交叉训练方法,训练每迭代25次进行一次预测,最终对训练好的模型进行样本测试。网络训练误差曲线如图2所示,参数优化后的网络收敛效果良好。由图3中可以观察到,参数优化前(图3(a)、3(b))训练最终误差较低,而预测最终误差仍然较高,网络训练良好但不能准确地进行预测,有过拟合现象,而参数优化后(图3(c))网络结构性能较好。

为了检验深度学习算法的性能,本文同时使用方向梯度直方图(Histogram of Oriented Gradient, HOG)提取特征,支持向量机分类对实验样本进行分析。在对支持向量机训练时,将其中一类作为正样本,其他两类作为负样本。最后测试所得分类正确率如表3所列。在样本数量不是很大的情况下,支持向量机取得了相对一般的分类效果,分析认为本文样本中车辆背景较复杂导致分类性能整体较差。

进一步验证本文深度学习训练所得模型的分类能力,将训练过程中预测准确率以及最终测试正确率绘图,得到的曲线图如图5所示。可以发现,参数优化前模型的泛化能力不足,对测试样本的分类表现较差,最终平均准确率仅为76.3%;参数优化后模型泛化能力较好,对三个类别的识别正确率如表4所列,最终总体准确率为95.6%。实验结果表明,fine-tuning优化后的模型可以较好地对未知样本进行分类,在图片存在遮挡、旋转、背景不断变换时仍然具有很强的分辨能力。

表3 HOG+SVM算法分类正确率样本类别准确率/%SUV73.3三厢轿车80.0两厢轿车66.7表4 深度学习模型 分类正确率样本类别准确率/%SUV96.7三厢轿车96.7两厢轿车93.3

图5 预测及测试阶段分类准确率

结 语

针对立体车库的应用场合,本文对轿车的车型

Application Research on Vehicle Recognition Based on Computer Vision Technology

Mao Zhengchong,Han Yi

(Key Laboratory of Advanced Process Control for Light Industry,School of IoT,College of Jiangnan,Wuxi 214122,China)

The current stereo garage equipment mainly adopts the traditional sensor detection system to identify the vehicle information,but exists the problems such as long construction period,high damage rate and high maintenance cost.So a model is proposed,which applies computer vision technology to solve the problems of Vehicle recognition.Applying Caffe convolution neural network framework,proceeding the fine-tuning model optimization and parameter optimization based on CaffeNet model,finally a recognition excellent model is achieved.The experiment results show that the model can handle the input image with complex background and the target obscured.The model has a good robustness to identify the type of the car and certain feasibility and application value.

pattern recognition;vehicle recognition;convolution neural network;deep learning

国家自然科学基金(No.60973095);江苏省自然科学基金(NO.BK20131107)。

TP391

A

猜你喜欢
权值卷积神经网络
一种融合时间权值和用户行为序列的电影推荐模型
基于3D-Winograd的快速卷积算法设计及FPGA实现
CONTENTS
神经网络抑制无线通信干扰探究
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用