基于可变形部件模型的车牌检测
2015-05-29钱月晶
钱月晶
(浙江工贸职业技术学院,浙江 温州 325003)
0 引言
车牌是车辆身份的唯一凭证,对车牌的自动检测和识别技术在高速公路收费站、停车场管理、交通违规监控、肇事或盗窃车辆跟踪等智能交通领域具有极大的市场应用价值。车牌自动识别技术属于计算机视觉和人工智能的应用,是当今智能交通领域研究的重要课题之一,具有较高的科研价值。车牌检测方法很多,常见的有[1]:基于边缘检测的方法[2-4]、基于区域的方法[5]、基于数学形态学方法[6]、基于矢量量化的方法等等。这些方法大多都是基于车牌的一些独有特征,比如车牌的颜色特征、结构特征、纹理特征等。在光照较为理想和车辆姿态合适的条件下,这些方法能获得较快的检测速度和较高的准确率。但是实际的检测环境面临各种复杂背景、低分辨率、恶劣光照条件和各种不同的车辆姿态,这些传统方法不能获得较为理想的检测结果。
基于可变形部件模型的车辆检测算法将车牌作为一个未知任何特征的目标来进行检测,对背景、分辨率、光照和姿态具有较强的鲁棒性。算法首先提取各种复杂背景、低分辨率、不同光照和各种姿态下的车牌样本的HOG特征,并将这些特征采用隐支持向量机得到两种分类器:一种代表车牌整体轮廓,称为根滤波器;一种代表车牌的组成结构,称为部件滤波器。对于待检测图像,首先计算其HOG特征,然后分别计算根滤波器和部件滤波器的响应,并对部件滤波器的响应结果进行距离变换,最后将根滤波器的响应结果和距离变换后的部件滤波器的响应结果进行相加,根据相加的结果确定车牌的具体位置。
1 传统的车牌检测算法
传统的车牌检测算法主要是利用车牌独有的特征,通过边缘检测、霍夫变换、直方图分析或形态学操作等方法来对车牌进行定位。基于边缘检测的方法是最快和最简单的方法,但是在实际图像中会有很多的不在车牌区域的像素点被检测成边缘,进而误判成为车牌,所以该方法并不实用。霍夫变换利用车牌的边界信息可以获得较好的检测效果,但是该方法计算量很大,不利于实时检测。直方图分析的方法对不含噪声的非倾斜图像有很高的检测率,但是实际应用中,这种限制是无法避免的,因此该方法也不具有实用性。形态学操作的方法对噪声不敏感,但是实现速度较慢。目前较为实用的车牌检测方法是采用上述的多种方法的组合来实现对车牌的实时检测。具体实现过程可以简述为:
(1)提取灰度图像的边缘信息;
(2)结合一些先验知识,利用直方图分析找到车牌的候选区域;
(3)利用形态学操作得到最终的车牌区域。
实现框架见如图1。
图1 传统车牌检测算法流程
图2是利用传统车牌检测方法进行检测的效果图。
图2 传统车牌检测算法结果
2 基于可变形部件模型的车牌检测
传统的车牌检测算法主要是依靠车牌的一些几何信息来进行检测,在实际应用中,这些方法对复杂背景、低分辨率、恶劣光照条件和车辆姿态较为敏感。当遇到在这些情况时,这些传统的方法不能获得较为理想的检测结果。随着社会发展的需要和科技的进步,基于统计特性的目标检测算法得到了很大的发展,也获得了很好的检测效果。基于可变形部件模型的车牌检测算法就是结合一些最新的目标检测算法,利用车牌的统计特性进行检测,适用于各种复杂背景、低分辨率、恶劣光照和任意车辆姿态等较为特殊的环境。
2.1 HOG特征提取
HOG的英文全称是histogram of oriented gradient,中文称之为梯度直方图,是Navneet Dalal和Bill Triggs[7]首次提出的用于目标检测的特征描述算子,它能很好地刻画边缘特征,很好地描述局部目标外观和形状的梯度密度分布,对光照变化和较小的偏移不敏感。实验证明,基于梯度方向直方图的特征不仅适用于图像匹配,也能很好地适用于物体检测。
HOG特征的计算过程可以归纳为:
(1)利用下式计算图像的梯度:
梯度大小:
梯度方向:
(2)将图像分成若干相邻但不重叠的固定区域,每个区域称之为单元(cell)。将每个像素的梯度幅值按一定的权重投影到该像素所在及其相邻的四个单元的直方图,完成每个单元的梯度直方图的构造;
(3)把单元组合成大的区间把各个单元组合成大的、空间上连通的区间(blocks);
(4)在区间内进行归一化,得到最终的HOG特征向量。
可变形部件模型在两个尺度上提取图像的HOG特征:大尺度上提取的HOG特征代表车牌的整体轮廓,小尺度上的HOG特征代表车牌的组成部分。每个尺度上的HOG特征提取的具体实现流程可以分为七步[8]:
第一步:计算输入图像三个通道的梯度信息,将最大的梯度信息作为图像的梯度信息;
第二步:在每个单元中将像素特征投影到18个方向,并且通过线性插值映射到与其相邻的四个单元;
第三步:计算每个单元的梯度叠加,作为该单元的能量;
第四步:每四个单元构成一个块,对每一个块进行归一化和裁剪计算出对比度敏感特征和非敏感特征;
第五步:计算方向特征,即四个单元在该方向的和除以2;
第六步:计算纹理特征,即将18个方向各自累加后乘以一个常数(通常设置为0.2357)因子后得到;
第七步:添加封闭特征,即在边界处添加额外的0像素点。
2.2 可变形部件模型
可变形部件模型(DPM,Deformable Part Model)是P.Felzenszwalb[9]提出的一种基于隐支持向量机训练的、以混合的多尺度可变形的根滤波器和部件滤波器组合为基础的检测模型,能够检测姿态多样的目标,并且在连续在Pascal目标检测的挑战中获得很好的成绩。
如图3所示,这是一个人体的DPM模型。该模型包含三个部分:左边的是根滤波器,中间的是部件滤波器,右边的是变形关系。
图3 人体的DPM模型
检测步骤可以归纳成以下几个过程[10]:
(1)分别在两个尺度计算图像的HOG特征;
(2)在大尺度计算得到的HOG特征图中,计算根滤波器的得分;在小尺度得到的HOG特征中计算各个部件滤波器的得分,计算如下式:
其中R[x,y]表示(x,y)像素点的响应,F代表滤波器,G代表特征图。
式(3)的第二项表示形变损耗,即实际部件滤波器的位置和模型中的部件滤波器的差异,其中(dxi,dyi)由式(5)计算得到,表示第i个部件滤波器相对于其原始位置的偏移,而φd(dxi,dyi)则由式(6)定义:
(3)对部件滤波器的响应结果进行距离变换后与根滤波器的响应结果相加得到最终的检测结果,最后根据一定的阈值来分割出目标区域。
2.3 基于可变形部件模型的车牌检测
基于可变形部件模型的车牌检测算法流程可以归纳为:
(1)截取车牌样本,采用隐支持向量机得到车牌模型;
(2)加载模型和检测图片,并创建图像的特征金字塔;
(3)计算特征金字塔与模型中滤波器的卷积;
(4)根据式(3)计算各层特征金字塔的得分;
(5)根据得分和金字塔结构确定最终的检测区域。
检测过程如图4所示。
3 实验结果
为了提高检测速度,在训练车牌模型时只选取了其中的16维特征,1个组件和6个部分,采用3层金字塔结构。最终的检测模型如图5所示。
为了验证该模型的检测效果,在英特尔3.2G双核处理器,8G内存的硬件环境,和matlab2014软件环境中,选取复杂背景、低像素车牌、恶劣光照和随意姿态的图片,采用传统的基于形态学操作的方法、基于adaboost的方法和基于可变形部件模型的方法分别进行了测试,测试图片如图6所示。
图4 基于可变形部件模型的车牌检测过程
图5 车牌模型
图6 (a)为复杂背景图片,(b)为低像素图片,(c)为恶劣光照图片,(d)为任意姿态图片
三种方法的检测结果如图7~9所示:
图7 基于可变形部件模型的车牌检测结果
图8 基于adaboost的车牌检测
图9 基于形态学操作的车牌检测
三种方法的检测分析如表1所示,其中精确检测出车牌的效果为良好;检测出车牌了,但同时存在误检的为一般;没检测出车牌的为差。
表1 车牌检测分析对比
基于可变形部件模型的车牌检测时间见表2。
表2 车牌检测时间
由分析对比可知,基于可变形部件模型的车牌检测算法具有较高的准确率和较快的检测速度,对光照和姿态不敏感,能够适应各种条件下的车牌检测,具有一定的实用价值。
4 总结与展望
基于可变形部件模型的车牌检测能够在光照条件较差和车辆姿态各种各样的环境中准确较快地检测出车牌,为后期的进一步处理提供了较好的前提条件,但是该算法对模型的依赖性较强,检测结果很大程度上由模型的好坏决定,而模型的获取过程较为耗时,这样导致验证模型好坏的周期较长,后期可以进一步结合传统的检测方法,先粗略估计车牌可能的区域,然后仅仅对这些可能的区域进行车牌的搜索和检测,这样能进一步减少检测的时间。
[1]薄树奎,孙新德,丁琳.一种基于彩色图像分割的车牌检测方法[J].计算机科学,2009,36(4):261-267.
[2]Fong A C M,Hui S C.An intelligent online machine fault diagnosis system[J].Computing&Control Engineering Journal,2001,12(5):217-223.
[3]Hui S C,Fong A C M,Jha G.A web-based intelligent fault diagnosis system for customer service support[J].Engineering Applications of Artificial Intelligence,2001,14(4):537-548.
[4]Marzi R,John P.Supporting fault diagnosis through a multi-agent-architecture[J].Mathematics and computers in simulation,2002,60(3):217-224.
[5]Hossack J A,Menal J,McArthur S D J,et al.A multiagent architecture for protection engineering diagnostic assistance[J].Power Systems,IEEE Transactions on,2003,18(2):639-647.
[6]Liu Y,Miao D,Peng Y,et al.Remote fault diagnosis based on virtual instrument technology[C]//Computer Supported Cooperative Work in Design,2006.CSCWD'06.10th International Conference on.IEEE,2006:1-5.
[7]N.Dalal and B.Triggs,Histograms of oriented gradients for human detection,in IEEE Conference on Computer Vision and Pattern Recognition,2005.1:886-893.
[8]胡毅.基于部件的人体检测算法的实现及优化[D].天津大学,2012.
[9]P.Felzenszwalb,D.McAllester,and D.Ramanan.A discriminatively trained,multiscale,deformable part model,in IEEE Conference on Computer Vision and Pattern Recognition,2008.1:1-8.
[10]Felzenszwalb P F,Girshick R B,McAllester D,et al.Object detection with discriminatively trained part-based models[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2010,32(9):1627-164.