基于联合特征和压缩字典学习的车辆类型识别算法∗
2018-04-11施顺顺张小瑞
孙 伟,施顺顺,张小瑞
前言
车型识别是智能交通系统的重要组成部分,合理利用车型识别系统不仅给交管部门进行车辆管理带来便利,且对于解决交通拥堵问题和规划城市交通系统等都具有重要战略意义。
目前,基于计算机视觉的车型识别主要集中于研究车辆特征提取和分类器构建。在特征提取方面,灰度共生矩阵[1]可描述车辆图像不同灰度像素相对位置的空间信息,但该特征无法完全抓住局部灰度图形特点,对于较大的局部,提取的纹理特征无法很好的进行车型识别。Gabor小波[2]可对图像信号空间域和频率域进行较好的描述,且具有良好的类别表征能力,但Gabor特征维数高,计算量大,不适用于实时车型识别。利用几何边缘特征[3]进行车型识别时,计算成本低,但易受外界环境干扰,识别准确率低。在分类器构建方面,支持向量机(support vector machine,SVM)[4]、神经网络[5]均具有良好的分类效果,但SVM在特征维数较高情况下,车型识别率低,而神经网络模型训练时间长,计算量大,分类稳定性不足,且这两种分类模型在训练过程中都需要额外的参数训练,训练复杂,在参数优化时易陷入局部最优。
为提高车型识别准确率和实时性,本文中提出基于联合特征和压缩字典学习的车型识别算法。首先利用SIFT算法[6]提取车辆原始图像的纹理特征和边缘图像的形状特征,生成更具差别性的联合特征;然后构建特征字典并进行字典学习,将特征字典分成大小相同的数据块,利用非常稀疏随机投影矩阵[7],降低样本数据块的维度,通过稀疏编码和字典更新,生成最终的压缩特征字典;最后建立稀疏表示分类模型[8],通过类别线性重构误差最小化,实现车型识别。相对于常用车型识别方法计算量大、识别准确率低,该算法能快速准确地识别车型。
1 车辆纹理和形状特征的提取与联合
在车型识别中,单一特征往往缺少足够的差别信息,不利于车型分类。本文中提出联合车辆纹理和形状特征的特征表示方法,可实现信息互补,弥补利用单一特征进行分类时辨识性不足的缺点,提高车型识别的准确率。本文中车型识别系统框架图如图1所示。
图1 本文系统框架图
1.1 车辆纹理特征的提取
车辆纹理特征可描述车辆结构信息,是车型识别的一个重要区分信息。SIFT特征能够有效描述图像外观纹理信息,且具有良好的旋转不变性和抗干扰能力,本文中利用SIFT算法提取车辆纹理特征。对于一幅W×H大小的图像I,运用SIFT算法提取原始车辆图像的纹理特征为 AS,AS=[aS1,aS2,…,aSn],式中,S表示SIFT特征,n表示图像中SIFT特征描述符的数目。
1.2 车辆形状特征提取
SIFT特征在描述车辆原始图像纹理特征时有较好效果,但它很难捕捉车辆原始图像的形状信息。为此本文中利用罗盘算子[9]提取车辆边缘图像IE:
式中 ei,j为像素点(i,j)处的灰度值。
在对原始车辆图像进行边缘检测后,车辆大部分纹理信息被筛除而边缘信息被保留,在边缘图像上运用SIFT算法可描述车辆形状特性。本文中运用SIFT算法提取边缘图像形状特征AE,AE=[aE1,aE2,…,aEm],式中,下标 E 表示 Edge-SIFT 特征[10],m表示图像中Edge-SIFT特征描述符的数目。
1.3 特征联合
经特征提取后,每幅图像得到一个纹理特征AS和一个形状特征AE。尽管这两种特征来自两种不同类型的图像,但SIFT特征和Edge-SIFT特征均通过梯度直方图获得,在对应维度上具有相同物理意义。为此,本文中直接将两种不同类型的特征串联生成具有特征互补性的联合特征A,A=AS∪AE,式中,A表示车辆图像的联合特征,A中数量为p,p=n+m,两种特征的联合过程如图2所示,4种车型的SIFT特征图和边缘SIFT特征图如图3所示。
图2 两种特征联合过程
图3 4种车型SIFT特征和边缘SIFT特征图
2 压缩字典学习
经过特征提取与联合,将所有联合特征构造成稀疏表示字典。由于构造而成的稀疏表示字典维度过高,运用传统的K-SVD字典学习算法[11]进行字典训练,必然会导致计算繁杂问题。本文中在字典学习过程中加入块结构思想,将样本数据集分成大小相同的数据块,并利用非常稀疏随机投影矩阵,降低数据块维度,减少字典学习计算量,来增强字典学习有效性。具体的数据处理过程如下。
(1)对样本数据进行分块处理,假设原始训练数据样本集为X,将其分为大小相同的L个数据块,即 X=[X(1),X(2),…,X(l),…,X(L)],其中,X(l)为训练数据样本集的第l个数据块。
(2)运用非常稀疏随机投影矩阵 Rl∈Rp×m,m<p,与训练样本集的第l个数据块做内积,有
式中Y(l)为X(l)经过非常稀疏随机投影矩阵降维后的第l个数据块。{Rl}Ll=1中的每一个独立随机变量rij满足分布:
式中:i,j为独立随机变量的行和列;参数s控制随机投影矩阵的稀疏性。{Rl}Ll=1中的每一列上平均含有个非零元素。
2.1 稀疏编码
在稀疏编码阶段,固定字典D,采取有效的块结构,在每个样本数据块上运用Batch-OMP[12]方法,求取训练样本Y(l)在字典D上的最优稀疏系数矩阵C(l)。稀疏编码过程可概括为解决如下优化问题:
式中:c(il)为第l块系数矩阵C(l)中的第i个训练样本参数;D =[d1,d2,…,dK]为训练字典;C =[C1,C2,…,Cn]为稀疏系数矩阵;‖c(il)‖0为控制稀疏系数向量中非零值的数目。
2.2 字典更新
字典更新的目的是更新字典中每一列原子以及与其对应的稀疏系数。在字典更新阶段,假设字典D中的原子dj固定,j≠k,则对字典D中的原子dk进行迭代更新,重复k+1次,直到k=K,使字典和稀疏系数得到同步更新。字典更新过程可概括为解决如下最优化问题:
为有效求解Gk,串联所有随机投影矩阵为R,R≜[R1,R2,…,RL]∈Rp×(mL),定义对角矩阵 Sk为
式中:diag(z)表示对角方阵,求得 Gk,Gk=RSkRT,通过求解Gkdk=bk,得到更新的第k列字典原子dk,最后利用最小二乘法求出最优稀疏参数 c(l)i,k,c(l)i,k=一列原子更新结束后,继续更新下一列原子,直到字典中原子全部更新完毕。 生成优化后新字典 D′=[d1′,d2′,…,dK′]。
综上所述,本文中压缩字典学习算法归纳如表1所示。
表1 压缩字典学习算法
3 基于稀疏表示的车型识别
稀疏表示分类(SRC)用训练样本稀疏线性地表示测试样本,并根据类别线性重构误差最小化进行分类。本文中利用压缩特征字典,建立稀疏表示分类模型,通过计算待测目标在字典中的最小重构误差,实现大客车、货车、小客车和轿车4种车型识别。运用稀疏表示进行车型分类步骤如下。
(1)假设经过压缩字典学习后获得的特征字典为 D′=[d1′,d2′,…,dK′]∈Rp×n,其中,di′为第 i类训练样本特征矩阵,i=1,2,…,K,p 为数据样本维度,n为训练样本总个数。
(2)根据线性空间原理,假设来自训练样本中的任一待识别样本y∈Rp可由该训练样本线性组合来表示,在稀疏系数的值x足够稀疏的情况下,可利用l1范数最小化问题求解最优解,其目标函数为
式中λ为标量常数。
(3)定义特征函数δi,用于保留稀疏系数x^中与第i类相关的元素,而其余项设置为0,利用该特征函数将待识别样本近似表示,比较其与待识别样本的重构误差,将待识别样本分在最小重构误差对应类别中:
式中 ei=‖y-di′δi(x^)‖2表示待识别样本与第 i类样本的重构误差,x^= [x^1;x^2;…;x^K],x^i表示与第 i类样本相关的系数向量。
4 实验
为验证算法的有效性,进行如下实验。在道路天桥上架设智能交通相机采集车辆图像,将采集到的图像旋转±3°,模拟车辆角度变化,同时增加样本数目,并对采集到的图像作灰度化处理,手动分割车辆图像与背景图像。共有大客车、货车、小客车和轿车4类车型,每类车型取150幅图像作为样本,经过旋转处理后每类车型包括450个样本,每幅图像的尺寸统一为100×100像素。本文中所有实验均在配置为Intel Core i7 CPU,主频为3.4GHz,内存为16G计算机上进行,所有程序通过MTALAB R2014a编译实现。
4.1 联合特征与单个特征的比较
为验证联合特征对于车型分类具有很好分类效果,通过实验分别得到纹理特征、形状特征和联合特征在不同数据维度下的车型识别结果,如图4所示。由图可见:只利用SIFT特征或Edge-SIFT特征进行车型识别的平均准确率都低于利用联合特征进行车型识别平均准确率,这是因为相比于联合特征而言,单个特征受到外界环境干扰时对准确率产生的影响更大,特别是光照过强时,车辆表面易产生反射,采集到的车辆图像缺少足够的纹理特征;而光照强度过弱时,相机获得的车辆画面模糊不清,这种情况下不易捕捉到车辆形状特征信息,因此在此种场景下利用单一的纹理特征或者形状特征进行车型识别,识别效果不理想;而对车辆纹理和形状特征进行联合,两种特征可以起到互补作用,保证在外界环境干扰下,联合特征仍具有足够的辨识信息进行车型分类,车型识别的平均准确率最高达到96.01%,高于其余两种利用单一特征的车型识别平均准确率。
图4 单个特征与联合特征对识别准确率的影响
4.2 字典学习算法的比较
为验证压缩字典学习算法的效率和准确率,将本文算法与经典的K-SVD字典学习算法进行对比,比较在不同训练样本数下算法运行时间和车型识别平均准确率,实验结果如表2和图5所示。从表2可知,训练样本较少时,两种算法的运行时间非常接近,因为训练量较少时,数据维度对计算时间影响较小,算法所需时间相近,但随着训练样本数增加,运用压缩字典学习算法进行字典训练所消耗时间比经典K-SVD字典学习算法有明显减少,这是因为当训练样本增加时,数据维度对计算时间产生影响增大,本文算法对样本数据集进行分块处理后,运用Batch-OMP算法求解稀疏系数,计算速度更快,并且在字典学习中加入非常稀疏随机投影矩阵,能有效降低样本数据维度,大大减少训练过程中的计算量,缩短算法运行时间。从图5可知,本文算法在训练样本数较少的情况下,平均准确率略微低于经典KSVD字典学习算法,这是因为在对数据进行降维时,会丢失一部分信息,因此在训练样本数较少的情况下,准确率略微低于经典K-SVD算法。但随着训练样本数增多,本文算法的准确率优于经典K-SVD算法。
表2 字典训练时间
图5 字典学习算法对识别率的影响
4.3 同其他车型识别方法的比较
为验证本文算法的有效性,在车辆数据集中选取180幅车辆图像作为测试样本,其余作为训练样本。将本文算法与SIFT算法、PCA-SIFT算法和稀疏SIFT算法(S-SIFT)从平均准确率和漏检率两个方面进行比较,实验结果如表3所示。由表可见,本文算法漏检率最低,而准确率最高,平均准确率可达到96.01%,比S-SIFT算法略高0.26个百分点,但明显高于SIFT算法和PCA-SIFT算法。根据得到的准确率和漏检率证明本文算法优于其余3种车型识别算法,具有更好的分类效果。
表3 4种算法性能比较 %
为进一步验证本文算法鲁棒性,对复杂场景下车辆图像进行测试。图6为雨雪天气、有遮挡和光照不足情况下的车辆图像。每种情况下的车辆图像均采集40幅图像作为测试集,训练集仍采用正常场景下的车辆图像。将本文算法与SIFT算法、PCASIFT算法和稀疏SIFT算法(S-SIFT)进行对比,给出复杂场景下各种方法车型平均准确率,实验结果如表4所示。由表可见,与表3相比,4种方法在复杂场景下的准确率均有所下降,尤其在有遮挡情况下,准确率较低,其中,前3种方法只考虑了单一特征,准确率下降较明显,而本文算法因联合了纹理特征和形状特征进行车型识别,在部分车辆信息受到遮挡情况下,联合特征包含的辨识信息更加丰富,仍具有很好的识别能力,准确率虽有一定程度下降,但下降并不明显,仍高于其余3种算法,且对比雨雪天气和光照不足情况下的识别效果,本文算法准确率仍超过94%,高于另外3种对比算法。因此,通过实验表明,本文算法在复杂场景下仍具有较强的鲁棒性。
图6 复杂场景下的车辆图像
表4 复杂场景下的车型平均准确率 %
5 结论
为克服因单个特征缺少辨识信息而易造成分类错误和样本数据维度高带来的计算耗时问题,本文中提出并实现了一种基于联合特征和压缩字典学习的车型识别算法。首先,利用SIFT算法分别提取车辆原始图像的纹理特征和车辆边缘图像的形状特征,并将其串联成更具差别性的联合特征,解决单个特征在车型识别时存在特征辨识性不足的问题;然后,进行压缩字典学习,采用有效的块结构方法并结合非常稀疏随机投影矩阵进行数据降维,解决了高维特征导致的计算复杂问题,缩短字典学习时间;最后,运用稀疏表示分类方法实现车型识别。实验结果表明,本文算法可有效提高车型识别准确率,缩短算法运行时间,即使在雨雪、有遮挡或光线不足的复杂交通场景下仍具有较强的鲁棒性。
[1] LEE H J.Algorithm based on texture for the recognition of vehicles’ model[J].The LIPS Transactions:Part B,2005,12B(3):257-264.
[2] ZHANGZ H,YUX C,YOUF,et al.A front vehicledetection algorithm for intelligent vehicle based on improved Gabor filter and SVM[J].Recent Patents on Computer Science,2015,8(1):32-40.
[3] DE F M,SOUSA M,SOUZA R M.An image vehicle classification method based on edge and PCA applied to blocks[C].IEEE International Conference on Systems, Man, and Cybernetics, 2012:1688-1693.
[4] ABDUL J, SIDDIQUI, ABDELHAMID M, et al.Real-time vehicle make and model recognition based on a bag of SURF features[J].IEEE Transactions on Intelligent Transportation Systems,2016,17(11):3205-3219.
[5] FANG J,ZHOU Y,YU Y,et al.Fine-grained vehicle model recognition using a coarse-to-fine convolutional neural network architecture[J].IEEE Transactions on Intelligent Transportation Systems,2016,99:1-11.
[6] LOWE D.Distinctive image features from scale-invariant keypoints[J].International Journal of Computer Vision,2004,60(2):91-110.
[7] FARHAD P A,STEPHEN B,SHANNON M H.Efficient dictionary learning via very sparse random projections[C].2015 International Conference on Sampling Theory and Applications(Samp-TA),2015:478-482.
[8] WRIGHT J,YANG A Y,GANESH A,et al.Robust face recognition via sparse representation[J].IEEE Transactions on Pattern A-nalysis and Machine Intelligence,2009,31(2):210-227.
[9] RUZON M A,TOMASI C.Color edge detection with the compass operator[C].IEEE Computer Society Conference on Computer Vision and Pattern Recognition,1999,2(2):166.
[10] FIDALGOE,ALEGRE E,GONZÁLEZ-CASTRO V,et al.Compass radius estimation for improved image classification using Edge-SIFT[J].Neurocomputing,2016,197:119-135.
[11] AHARON M,ELAD M,BRUCKSTEIN A.K-SVD:An algorithm for designing overcomplete dictionaries for sparse representation[J].IEEE Transactions on Signal Processing,2006,54(11):4311-4322.
[12] RUBINSTEIN R,ZIBULEVSKY M,ELAD M.Efficient implementation of the K-SVD algorithm using batch orthogonal matching pursuit[R].CSTechnion,2008.
[13] 张鹏,陈湘军,阮雅端,等.采用稀疏SIFT特征的车型识别方法[J].西安交通大学学报,2015,49(12):137-143.