APP下载

基于超分辨率图像重构技术的车牌号识别助手

2023-06-02舒高成鹏李卢曦唐海云

计算机应用文摘 2023年10期
关键词:Python语言

舒高 成鹏李 卢曦 唐海云

关键词:Python语言;图像预处理;图像灰度化;模板匹配

1概述

随着道路上汽车数量的增加,人们越来越关注安全问题。在校园内识别车牌是迈向构建更全面的停车管理系统的一步。该车辆识别系统的整体架构由超分辨率图像预处理、图像灰度、边缘检测、尺寸调整、车牌插入与处理、字符分割与识别以及Matlab训练实践方法组成。

2汽车车牌号识别原理

2.1数据预处理

大多数情况下,拍摄车牌照片的环境并不理想。车辆的速度和天气等因素会对图像产生重大影响,在拍摄照片的过程中,照片的质量会有轻微的变化,因此需要进行某种形式的数据预处理[1-2]。

2.1.1尺寸调整

将图像缩放到合适的大小。在这种情况下,为了提高识别的效率和有效性,直接使用了调整大小功能。这样做是为了提高识别的效率和功效。

代码如下:

2.1.2图像灰度化处理

灰度图像由白色和黑色之间的色调组成,以一定的顺序完成,并划分为预定数量的层次。

2.2目标定位

定位包括确定整个感兴趣的区域,并确定该区域的确切帧,然后从原始图像中提取它。如果放置不正确,其余的工作将受到影响,在最坏的情况下,整个过程将失败。为了使计算机准确定位目标的轮廓,定位算法准确识别对象最明显和相关的属性是至关重要的。

3基于Python的识别系统程序设计

3.1字符分割

要进行字符分割,必须手动从图片中提取每个单独的图形。字符分割包括将车牌分割成各个组成部分,并决定哪些部分与每个字符相关,根据这些特征计算每个字符的开始和结束位置,最后从图像中提取字符。这一步將在一定程度上决定后续字符识别的质量。

3.2模板匹配识别字符

这项工作的前提是模板字符和需要识别的字符都是由黑色背景与白色字符组成的二进制图片。为了生成公共部分imageV,我们将首先对需要识别的字符的imageU以及存储在字符模板库中的字符的imageT进行预处理。这将允许我们同时使用公共部件图像和需要为“不同或”逻辑操作识别的字符。计算每个模板图片imageM中出现白色像素的数量,包含待识别字符的imageU中出现白色像素的数量,imageV中出现白色像素的数量,imageW中出现白色像素的数量,以及imageX中出现白色像素的数量。

4车牌号识别实际应用

如图1所示,图片为在正常情况下拍摄到的汽车图片。

4.1读取图像

利用TensorFlow提供的数据集API,它为数据集提供了一个健壮的包装器,并支持批量加载、预处理、批量读取、变换和预取等操作。其中,预取操作有内存需求,不预取也可以使用不足的内存。由于本实验后续的网络结构比较深,对显存的要求比较高,这里只设置了30个批量大小,可以根据显存是否充足或不足进行调整。

4.2图像预处理

基于确定的轮廓特征识别和分割车牌的具体位置,对图像进行缩放及灰度处理,在中间位置滤波,并检查边缘。结果如图2所示。

在图像裁剪完成后,将对板的位置进行旋转和修改,并将处理板的方向定位。接下来需要对图片进行灰度化和二值化,最终的成品如图3所示。

4.3车牌号分割及识别

由于之前的操作结果都在允许的范围内,字符分割过程的结果使每个字符异常明显。车牌号分割图像结果如图4所示。

图5是使用模板匹配识别并处理最终项中的字符后产生的最终输出图像。然后在PIL库的帮助下,将结果绘制在原始图片的顶部。

5结束语

自动车牌阅读器,或车牌阅读器辅助,是智能交通系统的一个组成部分。计算机和数字图像技术的迅速发展,是本项目创建的灵感来源。车牌识别技术可能有几种不同的应用。例如,在下雨、黑暗、昏暗等复杂情况下,可以实现车辆进出的无卡、无人员自动化、标准化管理。这可以显著降低人工费用,并提高管理效率。将其应用于现场监控,在发生违反车辆识别的情况下,对犯罪嫌疑人的身份验证以及夜间、微光下发生具有挑战性的现场车辆识别,都有很大的帮助。车牌识别系统已经在各个领域得到广泛应用:它的出现是时代进步的必然结果,同时对情报领域产生了重大影响。

猜你喜欢

Python语言
关于面向非计算机专业开设Python语言的几点思考
计算思维培养视域下《Python程序设计》课程的教学改革实践
在高中信息技术课中培养学生计算思维的有效方法探讨
基于KNN算法的手写数字识别
Python语言教学中问题解决能力和创新能力的培养实践
Python语言程序设计教学体系建设
面向计算生态的Python语言入门课程教学方案
基于Python语言和支持向量机的字符验证码识别
论Python程序设计语言
基于Python语言的面向对象课程实践教学探讨