APP下载

基于手持设备图像的车牌定位与车牌识别系统设计

2022-01-04孙鹏李赛寇鹏朱佳俊韩喜瑞张天奕

软件工程 2022年1期
关键词:车牌识别边缘检测人工神经网络

孙鹏 李赛 寇鹏 朱佳俊 韩喜瑞 张天奕

摘  要:自动车牌识别技术在智能交通系统中发挥着重要作用,针对智能手持设备拍照分辨率低、角度不定等问题,设计和优化了车牌识别中的步骤,包括:(1)基于形态学的车牌定位;(2)基于边缘检测的车牌倾斜校正;(3)基于人工神经网络的车牌字符分割与识别等步骤。对手机拍摄的车牌照片进行实验,所提出的算法利用神经网络匹配识别精度达到95.2%,平均运行时间为2.015 s,无论识别精度还是时间都能够达到应用需求。

关键词:智能手持设备;车牌定位;边缘检测;人工神经网络;车牌识别

中图分类号:TP311.5     文献标识码:A

文章编号:2096-1472(2022)-01-29-04

Abstract: Automatic license plate recognition technology plays an important role in intelligent transportation systems. Aiming at the problems of low resolution and variable angles of smart handheld devices, this paper proposes to design and optimize the steps in license plate recognition. The optimized steps include (1) Morphology-based license plates location; (2) License plate tilt correction based on edge detection; (3) License plate character segmentation and recognition based on artificial neural network. Experiments on license plate photos taken by mobile phones show that the proposed algorithm achieves a recognition accuracy of 95.2%, and an average running time of 2.015 s, which can meet the application requirements of both the recognition accuracy and time.

Keywords: smart handheld device; license plate positioning; edge detection; artificial neural network; license plate location

1 引言(Introduction)

随着我国汽车数量不断增加,现代城市需要建立高效的智能交通系统,自动车牌识别技术在其中起着重要作用,已经应用于交通执法管理、小区停车管理等领域[1-4]。

移动摄像机相对于静态摄像机识别方法更复杂,因为背景是不断变化的,而且车牌在照片中的位置没有固定的位置。王唯一等[5]提出了基于K-means算法的手持设备车牌识别技术,利用颜色的聚类确定车牌的位置信息。姚东卉[6]设计了一套基于神经网络的手持设备车牌识别系统,实现了违停车辆的信息管理。张军平等[7]提出了一种基于OpenCV的智能手机车牌识别方法,识别率达到了90%以上。然而,因为不同应用场景车牌识别系统的参数和阈值不同,所以本文提出了一种基于智能手持设备的车牌识别系统,在实际应用中具有较高的识别率与实时性,包括基于形态学的车牌定位、基于邊缘检测的车牌倾斜校正、基于人工神经网络的车牌字符分割与识别等步骤。

2  基于智能手持设备的车牌识别系统(License plate recognition (LPR) system based on smart handheld device)

车牌识别是一种通过图像处理提取车牌号的技术,包括图像预处理、目标检测、字符分割和字符识别等步骤。在现实应用中,车牌识别系统必须应对各种挑战,如车牌类型不同、车牌字体不同和车牌颜色不同等,增加了车牌检测和识别的难度。传统的车牌识别系统通常安装在固定点摄像机上,这种摄像机不便携,价格昂贵,需要高分辨率的摄像机和复杂的图像处理算法来处理图像。利用高质量图像进行车牌检测与识别的准确率往往高于低质量图像,现在的智能手机配备了高性能的处理器和高质量的摄像头硬件,可以拍摄出高质量的图像,从而使得实现基于智能手持设备车牌识别成为可能。

从拍摄的图像中提取车牌号码的车牌识别系统可分为五个步骤[8]。第一步是利用智能手持设备拍摄车牌图像;第二步是基于形态学的车牌定位;第三步是基于边缘检测的车牌倾斜校正;第四步是分割车牌字符;最后通过神经网络算法对提取的字符进行识别。总体车牌识别系统如图1所示。

2.1   基于形态学的车牌定位

在车牌定位阶段,我们的目的是使用基于边缘的图像处理技术根据原始图像确定车牌区域。通过识别原始图像中亮度急剧变化的点而获得二值边缘图像。车牌区域的亮度变化比原始图像中的其他区域更为明显和频繁。矩形车牌区域比其他区域包含更丰富的边缘和纹理特征。因此,该信息可以用于确定车牌区域,我们使用了形态学方法。

首先对真彩色的车牌进行灰度化处理,然后进行高斯模糊处理,再进行基于Sobel算子的边缘检测,再运用形态学开、闭、膨胀等操作找出候选的区域,最后进行车牌定位切割操作。车牌定位流程如图2所示。

为了提高运行速度和便于计算,通常需要将真彩色车牌图像灰度化,灰度化之后要进行边缘检测,但是Sobel算子对噪声比较敏感,所以我们先进行高斯模糊处理,消除掉噪声同时模糊一下非车牌的边缘。Sobel算子结合了微分求导和高斯平滑算法,通过这种算法来计算图像中灰度的近似梯度。边缘也是图像的显著特征之一。Sobel算子包含两个3×3的矩阵,分别为水平与垂直模板,因为车牌中垂直边缘比较多,所以我们用垂直边缘检测模板与车牌图像进行卷积操作;然后将边缘检测的结果进行闭运算,填充孔洞;再进行开运算,去除小的噪声,平滑边界;之后进行移除小对象与膨胀操作,得到车牌的位置;最后根据获得的车牌区域进行车牌定位裁剪。车牌定位实验部分中间结果如图3所示。

可以看到,经过灰度化和高斯模糊操作后,车牌图像变得模糊,这一步操作能够消除噪声对后续处理的影响。边缘检测结果通过闭运算后只有几个包括车牌区域的面积分割出来,经过开运算和去除噪声之后,只有车牌区域被提取出来,然后通过膨胀操作定位裁剪后,可以得到包含车牌的区域图像,易于后面的车牌倾斜校正和字符识别处理。

2.2   基于Hough变换的车牌倾斜校正

首先对车牌定位裁剪后的结果进行灰度化操作,然后利用Sobel算子进行边缘检测。边缘检测后进行膨胀操作利于Hough变换检测车牌上下两条平行的边框,检测到两条平行的边框后就可以知道车牌倾斜的角度,通过旋转角度便可以完成车牌的倾斜校正。Hough变换是数字图像处理中的一种特征提取技术。Hough变换最初由Paul Hough在1962 年提出。Hough变换用于通过查找图像上的特定形状对象来提取该对象,Hough变换方法也适用于校正。车牌倾斜校正的流程如图4所示。

车牌倾斜校正算法的前三步与车牌定位相同,不过运行的是车牌定位裁剪后的图像,然后利用Hough变换进行图像的旋转调整,检测车牌上下边框两条平行直线,便可以知道车牌倾斜的角度,之后进行车牌的倾斜校正。图像校正的公式如式(1)所示。

基于Hough变换的车牌倾斜校正部分实验中间结果如图5所示。

通过图5可以发现,经过边缘检测处理后,包括上下边框的区域被提取出来,通过膨胀操作和计算车牌上下边框两条平行直线的角度,再经过图像旋转操作,就可以得到车牌倾斜校正的结果。

2.3   基于人工神经网络的车牌字符分割与识别

一般来说,人工神经网络由处理单元形成,人工神经细胞彼此关联,每个神经细胞之间的连接结构决定了神经网络的结构。如何改变连接以实现预期目标,取决于人工神经网络中的学习算法。直到系统结果和期望结果之间的错误率降低到足够接近于零为止,根据学习规则改变网络权重。因为没有经验法则来确定需要多少隐藏层,我们在本实验中使用反向传播学习算法构建了一层前馈人工神经网络,并且在字符中使用此人工神经网络确定字符的识别阶段。在前馈神经网络中,神经细胞(神经元)被组织成层,层中细胞的输出通过权重作为下一层的输入。输入层接收来自外部环境的信息,并将其传输到隐藏层中的节点,而不进行任何更改。网络输出通过处理隐藏层和输出层中的信息来确定。在神经网络的训练阶段利用反向传播学习算法。

车牌字符分割与识别流程如图6所示。

首先对倾斜校正后的车牌图像进行灰度化操作;然后进行Sobel边缘检测,再进行图像腐蚀、平滑与移除小对象操作,裁剪得到只包含车牌字符的图像;然后进行直方图均衡化、中值滤波等操作得到车牌字符切割结果;最后训练神经网络,基于BP神经网络的模板匹配得到最终识别结果。实验的部分中间结果如图7所示。

将人工神经网络应用于车牌字符识别中,可以大大简化识别过程,提高识别质量,同时获得良好的识别效果。在车牌识别中使用神经网络的另一个好处是系统的可扩展性,即能够识别比最初定义的更多的特征集。在基于神经网络的字符识别算法中,利用反向传播算法对神经网络进行训练,调整神经网络的权值,每个字符的大小是28×18 像素。为了训练神经网络,我们采集了804 幅车牌字符分割后的图像作为训练集,包含从0到9的数字与包括山东简称鲁在内的10 个省份的简称。反向传播算法是一种应用广泛的算法,是一种训练多层人工神经网络的系统方法,它可以映射非线性过程。反向传播网络是一种有一个或多个隐藏层的前馈网络,它的基本结构有三层。使用神经网络具有现有相关性和统计模板技术的优势,可以使字符对噪声具有稳定性。

3   实验与分析(Experiment and analysis)

我们使用MATLAB 2020b版本进行算法的实现,软件界面如图8所示,并且能够人机交互更改算法阈值与参数。个人计算机配置包括Windows 7、GTX960独立显卡、16 GB运行内存。软件中包含获取图像、图像预处理、字符分割与识别等功能按键。在边缘检测算法中,可以人机交互修改边缘检测的阈值;在图像腐蚀操作中,可以修改图像腐蚀的结构元素大小;在平滑处理操作中,可以修改平滑处理结构元素大小;在移除小对象操作中,可以人机交互修改联通像素的临界值,使得车牌识别算法的识别效果更好,更有鲁棒性。

对手机拍摄的6 幅车牌照片进行对比实验。如表1所示为不同车牌的识别率与识别时间对比,可以看到相对于模板匹配,本文方法识别率更高,时间上也能满足应用需求。

从本文方法和模板匹配法对比实验结果可以看到,本文方法识别平均精度达到95.2%,相对于模板匹配方法识别平均精度有大幅度的提高,运行时间2 s左右,可以达到实际应用的要求。

4   结论(Conclusion)

本文旨在建立一个高效率的智能手持设备的车牌定位与车牌识别系统,设计和优化了车牌识别中的步骤,包括基于形态学的车牌定位、基于边缘检测的车牌倾斜校正、车牌字符分割、基于人工神经网络的车牌字符识别等。通过与模板匹配算法对比实验,本文方法对6 幅车牌识别平均精度有大幅度的提高,达到95.2%,运行时间2 s左右,达到了实际应用的要求。不足之处是车牌实验样本比较少,后续会多采集车牌图像与训练图像,提高识别精度与算法运行时间。

参考文献(References)

[1] 张俊峰,尚振宏,刘辉.基于颜色特征与模板匹配的车牌识别系统设计与实现[J].软件导刊,2018,17(1):212-215.

[2] 楚天鸿,唐瑞尹.基于MATLAB平台下的车牌识别系统设计[J].科技与创新,2020(14):20-22.

[3] 林哲聪,张江鑫.一种基于GMP-LeNet网络的车牌识别方法[J].计算机科学,2018,45(6A):183-186.

[4] 杨洪臣,党京,蔡能斌,等.BP神经网络车牌识别技术优化研究[J].中国刑警学院学报,2019(3):120-124.

[5] 王唯一,祝振中.基于智能手持設备的车牌识别系统研究[J].计算机测量与控制,2016,24(07):200-204.

[6] 姚东卉.基于手持车牌识别设备的违停车辆信息管理系统[D].济南:山东大学,2018.

[7] 张军平,徐衍胜.Android平台下基于OpenCV的车牌号识别技术[J].兰州交通大学学报,2021,40(03):57-62.

[8] HENRY C, AHN S Y, LEE S W. Multinational license plate recognition using generalized character sequence detection[J]. IEEE Access, 2020, 8:35185-35199.

作者简介:

孙   鹏(2000-),男,本科生.研究领域:智能制造.

李   赛(1991-),男,博士,讲师.研究领域:计算机视觉.

寇   鹏(1990-),男,本科,工程师.研究领域:地理信息系统.

朱佳俊(2001-),男,本科生.研究领域:智能制造.

韩喜瑞(2000-),男,本科生.研究领域:智能制造.

张天奕(2001-),女,本科生.研究领域:地理信息系统.

猜你喜欢

车牌识别边缘检测人工神经网络
利用人工神经网络快速计算木星系磁坐标
人工神经网络实现简单字母的识别
唐卡图像边缘提取
基于支持向量机的车牌字符识别方法
水下大坝裂缝图像分割方法研究 
车牌识别系统设计与实现
基于车牌识别的机器视觉课程研究
基于BP神经网络的车牌识别技术算法分析
基于声发射和人工神经网络的混凝土损伤程度识别
波信号的解调和人工神经网络的损伤识别算法