在自然场景下的监控视频中,由于拍摄距离和拍摄角度造成的车牌图像有效分辨率低问题,超分辨率(Super-Resolution, SR)技术可有效解决这个问题,然而还有很多车牌图像存在分辨率过低、模糊及光照问题,对于这些图像做超分辨率后仍存在无法识别的现象,且会占用计算资源和降低速度。针对该类问题,提出一种无参考图像质量评估系统以甄别出有效图像进行超分辩率和车牌识别。根据提出的场景需求,归纳出四种车牌图像质量评价因子:分辨率、清晰度、亮度及对比度,最后使用支持向量机(Support Vector Regression, SVR)来进行质量分数回归预测。实验表明本文算法在保证速度的同时可有效提高车牌识别准确率。 In the surveillance video in the natural scene, Super-Resolution (SR) technology can effectively solve this problem due to the low effective resolution of the license plate image caused by the shooting distance and shooting angle. However, there are still many license plate images with low resolution, blur and illumination problems. There is still an unrecognizable phenomenon after super-resolution of these images, which will occupy computing resources and reduce the speed. Aiming at this kind of problem, a non-reference image quality evaluation system is proposed to identify the effective image for super-variation and license plate recognition. According to the scene requirements presented, four license plate image quality evaluation factors are summarized: resolution, sharpness, brightness and contrast. Finally, support Vector Regression (SVR) is used to perform mass fraction regression prediction. Experiments show that the proposed algorithm can effectively improve the accuracy of license plate recognition while ensuring the speed.
李冬伟*,孙卓,常书林
中国矿业大学(北京)机电与信息工程学院,北京
收稿日期:2020年4月1日;录用日期:2020年4月16日;发布日期:2020年4月23日
在自然场景下的监控视频中,由于拍摄距离和拍摄角度造成的车牌图像有效分辨率低问题,超分辨率(Super-Resolution, SR)技术可有效解决这个问题,然而还有很多车牌图像存在分辨率过低、模糊及光照问题,对于这些图像做超分辨率后仍存在无法识别的现象,且会占用计算资源和降低速度。针对该类问题,提出一种无参考图像质量评估系统以甄别出有效图像进行超分辩率和车牌识别。根据提出的场景需求,归纳出四种车牌图像质量评价因子:分辨率、清晰度、亮度及对比度,最后使用支持向量机(Support Vector Regression, SVR)来进行质量分数回归预测。实验表明本文算法在保证速度的同时可有效提高车牌识别准确率。
关键词 :车牌甄别,SVR,图像质量评价,超分辨率,车牌识别
Copyright © 2020 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
车牌识别(License Plate Recognition, LPR)已广泛应用于各种特定的实际场合,如公共卡口、停车收费等。在这些特定场景中,影响车牌识别的因素单一且大多经过人为限定和优化,故车牌识别准确率较高。但在非限定场景中存在车牌的尺度变化、外界的光照变化及外界的噪声干扰等困难,简单的车牌识别算法难以适应,故算法的复杂度和硬件条件的升级是必然的,但也因此导致的车牌识别算法的速度下降和硬件要求的变高。故针对非限定的自然场景中不过度要求硬件条件的前提下,如何快速准确地识别车牌是车牌识别领域迫切需要解决的难点和热点 [
目前,影响车牌识别准确率的原因可以归为两个方面:识别系统中的误差和复杂环境干扰。误差包含系统原因造成的图像质量较差而导致的识别错误 [
在一些应用场景中,如小区街道、城市道路,摄像机和车辆之间距离的不确定性使得采集到的车牌图像大小多样化 [
本文针对城市交通监控视频中存在的车牌图像尺度变化问题,结合无参考图像质量评价算法和超分辨率技术,旨在保证识别速度的前提下提高车牌识别准确率。车牌识别算法流程如图1。
图1. 算法流程图
在非限定的自然场景中采集到的图像质量低下的因素有很多,如模糊、光照、图像采集距离及外界噪声干扰等等,采集到的图像可能包含一个或多个因素。根据对大量实际采集到的图像数据分析发现在摄像机拍摄车辆时,车辆属于由远及近的运动状态,故采集的部分图像普遍存在尺度过小和模糊的问题。同时由于时段不同,采集的图片也普遍存在光照和对比度的问题。这些问题对超分辨率技术和车牌识别均有很大的影响,故本文选取分辨率、清晰度、亮度及对比度这四个特征作为车牌图像质量的评价因子。
由于本文算法在车牌检测后再对图像进行质量评价,故车牌检测后获取的图像分辨率大小可有效反映出车牌尺寸大小,如式(1)。
A = w ∗ h (1)
式(1)中,A作为分辨率评价因子。
车辆运动状态及成像系统均是影响车牌图像清晰度的重要因素。在非限定的自然场景下获取的车牌图像可能存在运动模糊、离焦模糊或者两者均有,情况复杂。目前常用的且具有代表性的清晰度函数有灰度差分法、梯度算法及频域聚焦评价函数。频域聚焦评价函数速度慢,很难满足实时性要求。本文着重分析灰度差分法和梯度算法。
(1) 梯度函数
Brenner梯度算子是采用像素的垂直方向的梯度差之和来衡量清晰度,结果值越大,就表明图像的清晰度越高。Brenner函数如式(2):
D ( f ) = ∑ y ∑ x | f ( x + 2 , y ) − f ( x , y ) | 2 (2)
式(2)中, f ( x , y ) 表示图像f对应像素点 ( x , y ) 的灰度值, D ( f ) 为图像清晰度计算结果。
Tenengrad函数是基于Sobel算子来计算水平和竖直方向梯度值的清晰度评价函数,如式(4)。
S ( x , y ) = G x ∗ I ( x , y ) + G y ∗ I ( x , y ) (3)
T = 1 n ∗ ∑ x ∑ y S ( x , y ) 2 (4)
式(3)中, G x 和 G y 为Sobel卷积核, I ( x , y ) 为点 ( x , y ) 的梯度。式(4)中,n为图像像素总数。
方差函数,如式(5),可以作为评价函数,因为清晰聚焦的图像有着比模糊图像更大的灰度差异。
D ( f ) = ∑ y ∑ x | f ( x , y ) − μ | 2 (5)
式(5)中, μ 为整幅图像的平均灰度值。
(2) Vollath函数
公式如式(6),在图像噪声显著时表现较好。
D ( f ) = ∑ y ∑ x f ( x , y ) ∗ f ( x + 1 , y ) − M ∗ N ∗ μ 2 (6)
式(6)中, μ 为整幅图像的平均灰度值,M和N分别为图像的宽和高。
(3) 灰度差分法
图像越清晰,图像中的高频分量越多,图像包含的灰度变化就越多,故灰度变化可作为评价的依据。灰度差分法(Sum of Modulus of gray Difference, SMD)是对点 ( x , y ) 及其邻近点的灰度作差分运算,提取该点灰度值的变化大小,得出图像灰度差分绝对值之和算子,如式(7)。
D ( f ) = ∑ y ∑ x ( | f ( x , y ) − f ( x , y − 1 ) | + | f ( x , y ) − f ( x + 1 , y ) | ) (7)
式(7)中, f ( x , y ) 表示图像 对应像素点 ( x , y ) 的灰度值, D ( f ) 为图像清晰度计算结果。
SMD具有较好的计算性能,但存在焦点附近灵敏度不高,即该函数在极值点附近过于平坦,从而导致聚焦精度难以提高的缺陷。由此,李郁峰 [
D ( f ) = ∑ y ∑ x | f ( x , y ) − f ( x + 1 , y ) | ∗ | f ( x , y ) − f ( x , y + 1 ) | (8)
图像灰度均值计算简单,又能直观反映车牌区域的亮度信息。因此可将车牌区域图像灰度均值作为亮度评价函数,如式(9)。
G = 1 M N ∑ i = 0 N ∑ j = 0 M I ( x , y ) (9)
式(9)中, M × N 为车牌区域大小, I ( x , y ) 为车牌区域图像。
对比度表现为图像亮暗的拉伸对比程度,通常表现了图像画质的清晰程度。对比度评价函数如式(10)。
C = ∑ δ δ ( i , j ) 2 P δ ( i , j ) (10)
式(10)中, δ ( i , j ) = | i − j | 为相邻像素间的灰度差, P δ ( i , j ) 为相邻像素间的灰度差 δ 的像素分布概率。
由于本文将使用分辨率大小来量化实际检测到的车牌图像尺寸大小,故本文将对分辨率是否可有效量化进行验证。同时由于非限定自然场景下采集到的车牌图像的模糊影响因素很多,模糊类型复杂,故本文针对不同的清晰度评价函数进行分析,根据理想的清晰度评价函数特点:单峰性、无偏性、较好的稳定性且灵敏度高等来选取合适的清晰度评价函数。
(1) 分辨率
本文从城市监控视频中检测到的车牌图像中选取了分辨率从小到大再到小的共38张车牌图片,如图2。该38张图片几乎涵盖了采集到的车牌图像所有的分辨率大小。
图2. 不同分辨率的车牌图片
采用归一化数据方法进行数据处理,并归一化数据进行曲线图绘制,如图3所示。结合图2和图3可以看出车牌图像分辨率可有效量化车牌图像尺寸大小。
图3. 车牌图像尺寸分布
(2) 清晰度
为了验证不同清晰度评价函数对车牌图像的有效性和确定一个合适的清晰度评价函数,本文从城市交通监控视频检测到的车牌图像中选取了从模糊到清晰再到模糊共21张车牌图片进行测试验证,如图4。
图4. 车牌图像
利用Brenner函数,SMD函数,Tenengrad函数,Variance函数,Vollath函数和SMD2函数来获得图像清晰度评价值。比较不同函数计算的评价值。采用归一化数据方法进行数据处理,并归一化数据进行曲线图绘制,如图5所示,可明显比较出不同清晰度函数的评价效果。
图5. 不同评价函数归一化数据曲线图
从图5中可有看出,这几种清晰度评价函数对车牌图像均具有有效性,其中Brenner函数的效果最佳,相比较其他几种函数而言,该函数具有更好的无偏性且灵敏度较高等特点。故本文使用Brenner函数作为清晰度评价函数。
本文分别选择了上午、下午和傍晚三个不同时段录制的城市交通监控视频,对这三段视频分别进行车牌检测和车牌识别。由此随机获取了3200张车牌图像作为数据集,并对该数据集求取4个质量评价因子的评价值。最后利用这四个图像质量评价因子的评价值,使用支持向量回归机SVR来进行车牌图像质量分数回归预测。在本文实验中,训练测试过程重复进行1000次。
(1) 样本集的划分
本文先获取一定数量的车牌图像并进行车牌识别测试且标记可识别和不可识别的车牌图像。共获得3200张车牌图像作为数据集,其中可识别车牌图像和不可识别的车牌图像各占一半。本文将车牌图像数据集的80%作为训练样本集,20%作为测试样本集。训练样本用来训练SVR并建立模型,测试样本用来检验模型预测精确性。
(2) 参数选择
本文使用Python的第三方机器学习库Scikit-learn,里面提供了基于Libsvm [
① 核函数的选择
本文就径向基RBF核函数和Sigmoid核函数分别根据训练样本集建立模型并对测试样本集进行预测,分别计算误差并对比,结果如表1 (正则化参数C = 1e3,gamma = 0.1)。
从表1中还可以看出,RBF核函数的误差更小,故本文选择RBF作为内核函数。
核函数类型 | MSE |
---|---|
RBF | 0.210 |
Sigmoid | 0.296 |
表1. 核函数拟合误差比较
② 主要参数的选择
C是惩罚系数,即对误差的宽容度。C越高,说明越不能容忍出现误差,容易过拟合;C越小,容易欠拟合。本文在RBF核函数基础上,固定gamma = 0.1,考察C的取值对模型性能的影响,C的最优参数往往在两个范围[0, 1]和[1, 1000]内,为了保证搜索的全局性,参数C的搜索分为两个范围[0, 1]和[1, 1000]进行,如表2。
C值 | MSE |
---|---|
0.01 | 0.291 |
0.1 | 0.251 |
1 | 0.210 |
10 | 0.210 |
100 | 0.210 |
1000 | 0.210 |
表2. C值对模型性能的影响
从表2中可以看出,随着C值的增加,SVR的预测模型的性能不断提高,当C = 1时,性能达到稳定,本文选取C = 1。
参数gamma隐含的决定了数据映射到新的特征空间后的分布,gamma越大,支持向量越少,但预测精度会降低;gamma值越小,支持向量越多,而支持向量的个数影响训练与预测的速度。本文在RBF核函数的基础上,固定C = 1,考察gamma取值对模型性能的影响,如表3。
gamma值 | MSE |
---|---|
0.0001 | 0.178 |
0.001 | 0.199 |
0.01 | 0.209 |
0.1 | 0.210 |
1 | 0.211 |
10 | 0.211 |
100 | 0.211 |
表3. gamma对模型性能的影响
在实际应用中,gamma往往取相对较小的值。从表3中可以看出,可以选择gamma = 0.01。
以上是单独测试参数的性能影响,表4列出了组合测试的性能结果。
C | gamma | |||||||
---|---|---|---|---|---|---|---|---|
100 | 10 | 1 | 0.1 | 0.01 | 0.001 | 1e3 | 1e4 | |
0.01 | 0.291 | 0.291 | 0.291 | 0.291 | 0.291 | 0.289 | 0.271 | 0.191 |
0.1 | 0.251 | 0.251 | 0.251 | 0.251 | 0.251 | 0.238 | 0.191 | 0.147 |
1 | 0.211 | 0.211 | 0.211 | 0.209 | 0.209 | 0.199 | 0.178 | 0.143 |
10 | 0.211 | 0.211 | 0.211 | 0.210 | 0.209 | 0.199 | 0.193 | 0.152 |
100 | 0.211 | 0.211 | 0.211 | 0.210 | 0.199 | 0.199 | 0.195 | 0.156 |
1000 | 0.211 | 0.211 | 0.211 | 0.210 | 0.209 | 0.199 | 0.218 | 0.172 |
表4. 组合训练结果
从表4可以看出当gamma过于大时,那么C不管取什么值都无法避免过拟合,而gamma也不宜过小,否则任何一个支持向量都会影响到整个数据集。而当gamma适中但C值较大时也能取得和C较小时一样表现好的模型,但RBF核辐射范围即gamma比较合适时,C值较小时能够节省内存且速度较快,故不倾向于C值取得较大。故最后将两个参数的取值确定为gamma = 0.01或gamma = 0.1,C = 1。
(3) 训练模型与预测
使用核函数RBF、gamma = 0.1和C = 1及相应的训练样本集建模,并使用测试样本集进行测试。由样本集得到的数据分布图如图6(a)。且本文随机从测试样本集选取25张车牌图像使用本文训练出来的模型进行评估。预测结果与实际值对比如图6(b)。
图6. 模型拟合比较图
在图6(b)中,红色的点p表示预测值,蓝色的点r表示实际值。其中,实际值是由将可识别的车牌图像质量评价值设为1且不可识别的车牌图像的质量评价值设为0而得来。从图7中可以看出,SVR对于车牌质量评估预测的拟合效果良好。
本文基于由北京智云视图科技有限公司开发的开源的适用于中国车牌的车牌识别框架HyperLPR进行实验验证。HyperLPR算法识别率高、速度快且轻量化,卡口场景下车牌识别准确率在95%~97%左右。本文在实际录制的城市道路监控视频上进行测试,采用时间段为15:30~19:00的监控视频。分别在HyperLPR算法上和结合了超分辨率技术的HyperLPR算法上就截取的同一段视频进行测试验证,记录并保存视频的每帧识别结果,统计出车牌识别准确率,如表5。其中测试环境为ubuntu16.04,显卡为GeForce RTX 2080。
由表5可以看出,应用超分辨率技术可有效提高车牌识别准确率。
算法 | 识别准确率 | 平均单帧识别速度(s) |
---|---|---|
HyperLPR | 66.322% | 3.051 |
HyperLPR + 超分辨率 | 80.935% | 3.062 |
表5. 车牌图像的识别准确率比较
本文以NIQE算法为例进行验证,来论证通用的无参考图像质量评价系统无法很好的表征车牌图像的降质程度。本文在样本集中任意选取200张车牌图像,其中可识别的车牌图像和不可识别的车牌图像各100张。使用NIQE算法对这200张图片进行质量评估,分数越低代表图像质量越高。评估结果如图7。
图7. NIQE算法评估数据分布图
在图7中,红色的圆点y表示可识别车牌图像的评估分数,蓝色的五角星n表示不可识别的车牌图像的评估分数。针对各100张的车牌图像,理想的车牌图像质量评估算法得到的评估分数分布图应体现出两级分化的状态,但从图7中可以看出其评估分数分布相互交错,无法判断车牌图像的质量高低,故得以验证NIQE等算法的不适用性。
本文基于HyperLPR框架应用超分辨率技术结合本文提出的无参考图像质量评价系统,就车牌识别准确率和识别速度进行分析。本文提出的评估算法筛选车牌图像的阈值分别设为0.4、0.5、0.6、0.7以及0.8,在实际的城市监控视频上进行测试,以选取合适的阈值,实验结果如表6。
阈值 | 车牌识别率 | 识别速率(s) |
---|---|---|
0.4 | 81.916% | 3.085 |
0.5 | 86.516% | 2.991 |
0.6 | 90.183% | 2.78 |
0.7 | 90.183% | 2.778 |
0.8 | 90.183% | 2.778 |
表6. 本文算法不同阈值比较
从表6中可以看出,当选定阈值为0.6时,本文算法可在保证车牌识别速率的同时有效提高车牌识别准确率。
本文从实际场景常见的低分辨率车牌图像的角度探讨了提高车牌识别系统准确率的可能性,针对低分辨率的车牌图像无法有效识别问题,提出车牌识别算法HyperLPR结合超分辨率技术,在此基础上针对车牌图像的特征,提出了一种无参考车牌图像质量评价方法,旨在有效筛除低质量车牌图像,而选出高质量车牌图像送入识别系统从而提高识别准确率。本文提出的方法就速度上而言不需要改变硬件设备;就准确性而言,通过分辨率增强的预处理方式和本文提出的无参考图像质量评价算法有效提高了车牌识别准确率。
李冬伟,孙 卓,常书林. 基于低分辨率车牌识别系统的应用研究Research on Application of Low-Resolution License Plate Recognition System[J]. 计算机科学与应用, 2020, 10(04): 721-731. https://doi.org/10.12677/CSA.2020.104075