时间:2024-05-04
李 哲 于梦茹
(西安邮电大学电子工程学院 西安 710121)
随着智能交通系统[1](Intelligent Transport Sys⁃tem,ITS)在城市交通监控中的飞速发展,ITS可根据拍摄的视频信息对车辆进行追踪、识别、检测等操作。车标作为车辆的重要信息而备受关注,为正确识别车辆提供了重要依据,特别是对套牌车辆的检测和识别有着重要的意义。车标识别作为车辆识别领域的一个新的切入点,研究方法可分为两大步骤:车标定位和车标识别。定位部分,文献[2]根据散热器栅格背景的纹理信息,对车标进行精确定位;文献[3]基于车牌定位算法粗定位车标区域,通过纹理特征提取车标的边缘信息,精确定位车标区域;文献[4]对基于边缘的方法进行了改进,根据车标特殊的纹理特征与车牌的相对关系,计算出多个权重矩阵最终精确定位到车标,对复杂环境有更强的适应性。识别部分,文献[5]提出一种基于HOG(Histogram of Oriented Gradient,HOG)和ASIFT(Af⁃fine scale-invariant feature transform,ASIFT)特征的车标二次识别方法;文献[6]提取车标图像的HOG特征,结合改进的SVM(Support Vector Machine,SVM)和随机森林算法进行车标识别;文献[7]采用两层卷积神经网络(Convolutional Neural Network,CNN)对车标进行分类,引入预训练概念,利用主要成分分析提高了训练速率和准确率。CNN分类不需要人为选择目标特征且准确率比其它传统的方法较高,但部署复杂且耗时长,不适用于工程应用。
本文拟先对车辆图像进行倾斜校正,基于车牌与车标的位置关系粗定位车标位置,利用边缘检测和投影法精确定位车标位置。其次选取改进的HOG特征和局部二值化特征(Local binary pat⁃tern,LBP)作为联合特征,训练BP(Back Propaga⁃tion,BP)神经网络分类器。最后,通过对5类车标样本进行测试,验证了改进算法的有效性和鲁棒性。
摄像机拍摄角度、道路坡度等外界因素导致图像中的车辆发生倾斜,这将会影响车标定位的准确率。考虑到这些特殊性,在车标定位之前需要进行车辆倾斜校正,以消除方向上的变形。车标定位分为两个步骤:车标粗定位和车标精确定位。车标定位整体流程图如图1所示。车标定位的候选区域如图2所示,蓝色的矩形框为车牌位置,绿色的矩形框为车标粗定位区域,红色的矩形框为车标精确定位区域。
图1 车标定位流程图
图2 车标候选区域
目前倾斜校正方法有很多种,基于霍夫变换(Hough Transform)的方法简单实用,对光照不敏感,抗干扰能力强,并且对于畸变的形状也有也有良好的校正效果。采用Hough变换对车辆图像进行倾斜校正,步骤如下。
1)车辆图像灰度化、Canny算子提取车辆边缘。
2)用霍夫变换检测直线,有效地提取车辆正面照底部、前挡分玻璃四周的边缘直线。
3)计算直线倾斜角度、保留不超过一定角度的直线,最后求倾斜角度的均值。
4)根据倾斜角度,对车辆图像进行旋转校正。
一般情况下,大多数的车标区域在车牌正上方(车牌上方的0.5~3.5个车牌高度的区域内),可粗略地估计出车标的候选区域。另外,车标比较小且它的宽度小于车牌外接矩形宽度。所以,粗定位的车标区域水平宽度等于车牌外接矩形的宽度。车标粗定位的结果如图3所示。
图3 车标粗定位
车标粗定位之后,进行灰度化、中值滤波等预处理。对预处理之后的灰度图像进行边缘检测时,车标的背景纹理会对检测结果造成很大的干扰。背景纹理大多为水平方向和垂直方向。通过对车标图像进行垂直边缘检测和水平边缘检测,并且两幅图像进行与操作,最终能消除背景纹理的影响。采用Sobel算子[8]对车标粗定位区域进行边缘检测。对雪铁龙车标进行边缘提取如图4(a)、(b)、(c)所示。最后,通过水平投影确定车标的左右边界,垂直投影确定车标的上下边界,可精确定位到车标位置,结果如图4(d)、(e)、(f)所示。
图4 车标精确定位
采用BP神经网络进行车标识别,并且加入非车标样本(即车辆图像的任意背景区域),使分类模型能够有效地识别出非车标样本,消除由于车标定位失败导致的传播误差;在识别之前,需要训练相应的模型。对常见的5类车标进行样本训练,样本训练过程如图5所示。
图5 样本训练流程图
在训练分类器时,首先对样本进行灰度化和归一化(64×64)处理,再对样本分别提取改进的HOG特征和LBP特征,联合两种特征形成最终特征,最后训练BP神经网络并优化参数得到最终的模型。
HOG[9]是一种描述图像本身梯度方向的特征,常用于物体检测。它的主要思想:通过计算图像局部区域的梯度直方图来表示图像局部的纹理信息和形状大小,并消除图像形变带来的不利影响。
HOG特征值的提取步骤。
1)采用一阶微分算子计算图像的像素点在水平和垂直两个方向的梯度(大小和方向)。
2)将图像均匀地划分为若干个小块,统计m个通道的直方图梯度。即统计m个方向的投影,生成梯度方向直方图。若m=9,像素的梯度方向为0°~20°,该特征向量为9维。
3)对组成图像区域中的小块进行梯度直方图归一化。
4)若HOG特征向量由n个窗口(2×2)中的小块直方图组成,则构成特征向量维度是为2×2×m×n。
在连续函数的传统整数阶微分的运算法则中可推导出分数阶微积分,把整数阶微分扩展到分数阶微分[10],分数阶微分表达式为
式中:a∈(0,1),微分步长:取h=1;Γ(n)为Gamma函数;t为分数阶微分上限;α为分数阶微分下限。
由此,推广到一元函数的分数阶微分的差分表达式[11]如下:
由于图像是二维空间,把分数阶微分应用到图像处理,需将分数阶微分的一元函数的差分表达式推广到二维空间,得到的二维分数阶微分在水平和垂直方向上的差分表达式分别为
在频域中表示图像,低频区域表示图像的能量,高频区域表示边缘和噪声,中频区域表示纹理细节。传统的sobel算子应用整数阶微分能够检测到高频区域的边缘,但中频区域的纹理信息被模糊化,且会增加图像的噪声强度。分数阶微分相比基于传统的整数阶微分的边缘检测算子可保留中频信号,达到增强纹理信息的目的,使边缘提取的信息更丰富。改进的HOG特征值的提取方法主要是把分数阶微分应用到边缘检测算子中,由此计算图像像素点的梯度。
根据上述式(3)、(4),在x,y方向构造的3×3的分数阶微分算子的掩模如图6所示,用此掩模来计算二维图像的梯度,可得到更好的边缘信息。其中a∈(0,1)表示微分变量,a<0时表示积分;a>0时表示微分;a=0时既不是微分也不是积分;通过大量的实验测试,a的取值为0.6。改进的HOG特征通过优化梯度算子,使图像获取了更多的特征点。
图6 x和y方向的分数阶数掩模
LBP特征[12]是一种用来描述图像局部纹理特征的算子,具有旋转不变性和灰度不变性等显著的优点。LBP算子定义在3×3的窗口内,以窗口中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,若周围的像素值大于中心像素值,则该像素点位置被标记为1,否则为0。因此,3×3邻域内的8个点经比较可产生8位二进制数,即得到该窗口中心像素的LBP值,并用这个值来反映该区域的纹理信息。
文献[12]改进后的LBP算子在半径为r的圆形区域内含有n个采样点。采用文献[12]的LBP算子进行特征提取,步骤如下,r表示半径,n表示采样点数。
1)计算整幅图像r=1,n=8对应的LBP值,算子如图7(a),LBP矩阵分成3×3个块存储,矩阵块之间重叠14个像素,统计每个矩阵块的直方图,最后将3个直方图连接起来构成LBP特征,特征维度为531。
2)计算整幅图像r=2,n=8对应的LBP值,算子如图7(b),并统计直方图构成LBP特征,特征维度为59。
3)计算整幅图像r=2,n=16对应的LBP值,算子如图7(c),并统计直方图构成LBP特征,特征维度为243。
4)将以上三个部分的直方图连接起来构成最终的LBP特征,特征维度为833。
图7 LBP特征三种算子
提取完基于分数阶微分的HOG特征及LBP特征后,联合两种特征作为车标样本的最终特征,进行样本训练。
具有单隐层的3层神经网络[13]虽然网络结构简单,但能够执行任意复杂度的函数映射关系。采用3层BP进行样本训练。车标特征维数为2597,组成输入层的神经元数目。待识别的车标种类数为6,组成输出层的神经元数目。如下公式(5)决定隐含层神经元个数,
式中HL_NUM是隐含层神经元个数,I_NUM是输入层神经元个数,O_NUM是输出神经元个数,b∈[1,6]。隐含层神经元个数为161。
BP神经网络[14]具有收敛的性质,它的激活函数必须是可微的,采用S(sigmoid)型函数,如下式所示:
BP网络在实验过程中,总是受到局部最小值的约束。因此,选择BP算法中的最速下降法[15],它是沿着梯度的最陡下降方向不断地修正BP权值。与其他梯度下降法相比,其收敛速度更快,通过变化的方向进行搜索,以降低陷入局部极小值的概率。
通过以上方法确定BP神经网络的结构参数,提取改进的HOG和LBP特征作为特征向量,然后输入BP神经网络进行样本训练。得到模型之后,利用模型对目标图片进行分类判断。
实验采用的开发工具为Visual Studio2013和Opencv2.4.9[16]。车标定位的原始图片来自道路交通监控视频和自己实际拍摄,原始图片尺寸为1920×1080,随机抽取200张车辆图片进行车标定位测试,准确率为92.42%,部分实验结果如图8所示。从实验结果可以看出,上述的定位方法对光照较弱、噪声复杂、图片模糊的真实场景定位效果很好。
图8 车标定位部分结果
车标识别涉及五类车标:大众、一汽、本田、东风雪铁龙和北京现代。通过对原始的车标样本进行平滑、锐化、旋转、放缩等操作,增大样本数量,使得训练的分类模型能适应各种环境。训练和测试样本数量如表1所示。
根据以上车标的定位结果,先手工将车标图像进行分类,得到每类车标的数目为200,输入分类的图片总数为1200。具体识别结果如表2所示。
表1 样本数量
表2 车标识别结果
从以上分类实验结果可看出:
1)将5个品牌的车标和非车标样本作为输入,经过车标识别系统分类后,输出结果的平均准确率为1121/1200=96.4%。
2)对于非车标样本,基本不会被判为车标。
为了比较算法的识别率,将本文方法和HOG与BP联合特征进行对比试验,测试样本及训练样本都采用本文构建的样本集。具体识别结果如表3所示。
表3 不同方法识别率
由以上实验结果可知,改进的方法的车标识别率大于HOG与LBP联合特征的识别率,优势非常明显,进一步丰富了车标图像的特征,对提高车标识别率效果显著。
基于改进的HOG与LBP特征值的车标识别方法,对得到的车辆图像进行倾斜校正,基于车牌与车标的位置关系粗定位车标,采用边缘检测和投影法精确定位车标,通过对其提取LBP和改进的基于分数阶微分的HOG特征,训练BP神经网络分类器,进行车标识别。实验结果验证了该方法的稳定性,识别率达到96.4%,解决了多数车标识别方法中定位难、适应性差的问题。下一步将研究如何在嵌入式系统上实现车标识别。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!