基于MATLAB的车牌智能识别设计
来源:用户上传
作者:高强
摘要:为了提高车牌识别的准确率,在MATLAB平台中设计出一种车牌识别系统,该系统主要工作流程有:对车牌进行形态学预处理、车牌定位、字符分割、字符识别。在处理过程中,通过优化算子、算法和对大量的不同形态的车牌图像进行测试,得到车牌定位的最佳自适应坐标算法,并采用改进迭代阈值算法对定位车牌后的图形进行二值化处理,在车牌精确定位中取得了较好的效果。实验结果表明,该系统对车牌识别的准确率达97qo,效果较好。
关键词:MATLAB;车牌定位;车牌识别
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2020)05-0194-03
开放科学(资源服务)标识码(OSID):
截至2019年上半年,我国汽车保有量已达3.4亿,人工汽车管理难度日益增加,对汽车自动精确识别提出很大的需求。汽车车牌的自动识别技术作为现代智慧交通重要组成部分,通过图像识别技术对汽车车牌进行自动精确识别,在汽车进出管理、汽车交通违章、汽车布控巡查等情境下有着广泛的应用]1,2]。
自动汽车车牌识别系统是基于图像识别技术,对监视器所拍摄的图像进行研究。常见的车牌识别主要是依据车牌图像不同部分的有效信息不同,通過研究有效信息,对有效信息进行检测,如有对车牌特有的颜色对车牌进行定位识别[13];有使用车牌特有的纹理特征对车牌定位识别[4,5];有多种混合特征对车牌定位识别[6,7]。但在实际车牌识别中,有少量的车牌边缘特征无法捕捉,有识别速度和精度不协调,有车牌识别率不高等缺点。
针对上述情况,本文在充分考虑国内车牌大量为蓝底、矩形、7个字符的基础上,在MATLAB平台设计出车牌识别系统。该系统是对监视器拍摄带有车牌的车辆图片进行识别,从而提取车牌信息,对汽车进行精确识别,其主要工作流程有:拍摄汽车图像、对汽车图像形态学预处理、车牌定位、字符分割、字符识别、车牌号码输出。该识别系统在预处理中加入中值滤波来抑制噪声;在车牌定位中,优化算子和算法,在精确定位车牌的基础上减少车牌边缘丢失的缺点;考虑算法的数据处理时间,协调识别速度和精度,做到高效率的快速识别。
1 研究方法
1.1 车辆图像形态学预处理
图像的形态学处理指使用数学形态学提取图像有用的重要分量,例如边界、骨架等[8]。车辆图像的形态学预处理是对车牌进行精确定位的第一步,其具体流程有:灰度化处理、中值滤波、边缘检测、腐蚀边缘、闭运算、去除小面积区域,最终得到车牌的二值图像。本文使用图1作为车牌识别的最初图像。
因Sobel算子[9]在图像边缘检测中对像素位置的影响有加权处理效果,有效降低了图像边缘模糊程度,故使用Sobel算子对车辆图像进行边缘检测。图2所示为对灰度化处理、中值滤波后的车辆图像进行Sobel算子边缘检测后得到的图像。在图2中可发现,边缘检测后基本保留了车牌的边缘,但同时也有无用背景的边缘信息。为去除无用边缘信息,本设计使用lmer-ode(image,[1;1;1])命令对图1进行腐蚀,腐蚀后得到图3。从图2可发现,背景无效信息大部分被去除,但车牌所在位置的有效信息也有部分被去除。若想对车牌位置进行精确定位,车牌所在位置有效信息必须较多,为解决图2问题,使用闭运算对图3进行有效信息填充,同时使用bwareaopen函数对无效信息的填充进行去除,为高效率保留有效信息的填充和去除无效信息的填充,本设计在大量测试的基础上,得到去除无效信息填充和保留有效信息的最佳阈值,最终得到图4。从图4可发现,车牌所在位置有效信息均被保留,其他无效信息均被去除。
1.2 车牌定位
在车牌识别中,最重要的就是对车牌所在图像位置进行定位。我们通过寻找图4,这一二值图像中车牌所在位置的具体坐标来确定车牌的位置。因车牌形状为矩形,所以只需要计算出车牌的两个具体坐标,即左上点坐标和右下点坐标。
图4为二值图像,有效信息在MATLAB软件工作区中表现为矩阵元素中的1。本设计采用找到矩阵元素中所有1的坐标,并将其横坐标和纵坐标进行相加,相加结果最小的横纵坐标即为车牌所在位置的左上点坐标,相加结果最大的即为车牌所在位置的右下点坐标。通过左上点坐标和右下点坐标确定的矩形,可以从图1的灰度图像中分割出车牌。
分割出的车牌如图5所示。
根据本系统的工作流程,得到精确车牌定位图像后,将对车牌进行分割,分割成为7个字符的图像,以便对字符进行识别。为方便分割,就必须对图5进行二值化处理,本文使用改进迭代阈值算法对图5进行二值化处理。二值化处理结果后发现,车牌的分隔点和固封螺丝出现在图像中,会对车牌分割造成较大的干扰,故使用bwareaopen函数对固封螺丝和分隔点信息进行清除,得到二值化处理后车牌图像,如图6所示。
1.3 车牌分割
车牌分割的主要工作是对图6进行分割,分割为7个字符。我们对图6,这一二值化图像的列元素进行相加,相加后发现需要进行分割区域的列元素相加值均为0,字符有效信息所在区域的列元素相加值均不为0。基于这一结果,对图6按照横坐标顺序,依次相加列元素值,当相加结果从0转变为非0时,记录下非0所在的横坐标;当相加结果从非0转变为0时,再次记录下此时非0所在的横坐标,依据记录出的这两个横坐标分割出第1个字符。然后以此类推,通过相同的方法,依次分割出其他6个字符,并对分割出的分割出图像结果进行归一化处理,最终的结果图像如图7所示。
1.4 车牌字符识别
字符识别的主要工作就是对图7分割好的7个字符依次进行字符识别有效信息输出。本设计采用模板匹配算法对字符进行识别[10.11]。将归一化处理后的字符图像与模板字符图像进行减法运算,并对相减结果进行比较,比较出的最小值即为最佳匹配结果。依次对7个字符分别进行匹配,得到最佳匹配结果并输出。最终输出车配的信息,显示结果图8。从图8中可发现,显示原始图像的识别结果为晋LAX795,字符识别成功。 2 小结
车牌图像的形态学预处理和车牌定位算法对车牌图像精确识别的成功率意义重大。本文所設计车牌识别系统在形态学预处理中,优化部分函数的算子;在车牌定位算法中,提出寻找预处理后有效特征的坐标点,成功提取出车牌,解决了车牌定位不精确,边缘信息容易丢失的情况。同时,在车牌字符分割中,精确分割出车牌的7个字符,并结合模板匹配算法对字符进行识别,结果显示,车牌被正确识别出。结合大量实验的基础上,本系统对车牌确定识别的成功率在97%以上,若想再提高识别的成功率,可以结合神经网络算法,在深度学习的基础上,发现新的车牌定位和字符识别算法,来提高车牌识别的准确率。
参考文献:
[1]毛啟,张治荣,杨国荣.一种基于MATIAB的车牌提取研究[Jl.电脑知识与技术,2019,15(16):189-190.
[2]钟彩,唐婧,杨兴耀,车牌智能识别技术的应用研究[Jl.电脑知识与技术,2019,07(11):189-190.
[3]赵亮.基于特征匹配的彩色车牌定位算法研究[D].长沙:湖南师范大学,2013.
[4]杨鼎鼎,陈世强,刘静漪,基于车牌背景和字符颜色特征的车牌定位算法[Jl.计算机应用与软件,2018,12(12):216-221.
[5]李学顺,魏宗寿.基于彩色边缘检测和Edge Boxes的车牌定 位方法[J].电脑知识与技术,2019,07(11):187-188.
[6]陈宏照,谢正光,卢海伦.颜色与边缘纹理相结合的车牌定位方法[J].现代电子技术,2018,11(05):67-70.
[7]张曦元.基于OpenCV的智能车牌检测系统[J].电脑知识与技术,2019,13(14):225-226.
[8]胡学龙,数字图像处理[Ml.北京:电子工业出版社,2014:125 -130.
[9]胡徐怡,王超,厉丹,基于改进Sobel算子的边缘检测算法研究[J].福建电脑,2018,09(25):235-238.
[10]张倩蓓,车牌字符识别算法研究[Dl.郑州:郑州大学,2019.
[11]王娜.一种基于BP神经网络的车牌字符识别算法[J].电脑知识与技术,2017,32(29):201-202.
【通联编辑:唐一东】
收稿日期:2019 -11-15
作者简介:高强(1988-),男,山西临汾人,助教,硕士,主要研究方向为计算机视觉。
转载注明来源:https://www.xzbu.com/8/view-15180445.htm