人工智能|深度学习——基于数字图像处理和深度学习的车牌定位

news2025/4/7 14:24:55

1.研究背景及研究目的和意义

车牌识别Vehicle License Plate Recognition VLPR) 是从一张或一系列数字图片中自动定位车牌区域并提取车牌信息的图像识别技术。车牌识别 以数字图像处理、模式识别、计算机视觉等技术为基础,是现代智能交通系统的重要组成部分,广泛应用于日常生活中,如 停车场收 费管理,车辆出入管理,自动放行,交通流量控制指标测量,车辆定位,汽车防盗,高速公路超速自动化监管、闯红灯电子警察、公路收费站等。

据公安部交管局统计,截至2016年底,全 国机动车保有量达 2.9亿辆,其中汽车 1.94亿辆 2016年新注册登记的汽车达 2752万辆,保有量 增 加了 2212万辆。全国有 49个城市的汽车保有量超过百万辆, 18个城市超 过 200万辆, 6个城市超过 300 万辆。 面对迅猛增长的汽车 保有量和高密度的城市汽车保有率,车牌识别对于维护交通安全和城市治安,防止交通堵塞,实现交通自动化管理有着重要的现实意义。

生活中应用的自动车牌检测系统往往包括车辆检测、图像采集、车牌识别三个部分,其硬件基础包括触发设备(如地感线圈、红外线)、摄像设备、照明设备、图像采集设备、识别车牌号码的处理机(如计算机)等,其软件核心包括车牌定位算法、车牌字符分割算法和光学字符识别算法等 。它的基本 原理为,车辆检测部分检测到车辆到达后触发图像 采集单元,采集当前的视频图像。车牌识别单元对图像进行处理,定位 牌照位置 ,再将牌照中 的字符 进行 分割 和 识别,组成 号牌信息 输出 。

这种方法使得车牌区域在图像中的位置和大小较为固定,车牌往往不存在倾斜和形变的情况,并且图片中没有太多干扰物体,图像大小和清晰度以及成像系统的参数特性都是已知的,这些先验知识大大降低了数字图像处理的难度,但却增加了系统对硬件的要求。近十年来,人们通过移动设备获取了大量的图片信息,这些信息公布在网络社交中,蕴含了大量潜在价值,但由于生活场景比生产场景包含更为丰富信息,需要识别的对象呈现形式更为自由,导致传统的图像处理方法效果不佳。这两个问题都迫使我们寻找更为智能的车牌识别方法。

2006年, Geoffrey Hinton和他的学生 发表了深度学习的里程碑式的 文章 [自此沉寂多年的神经网络复兴,人工智能取得了突破性进展。近些年来 阿里巴巴、百度、腾讯、华为都在进行这方面的研究,江苏卫视《最强大脑》 的人机对战也 引起了广泛地关注, 2017年的政府工作报告也提到了人工智能 。 不可否认, 人工智能确实取 得了很快发 展,它将 引领经济社会发展。

车牌识别作为人工智能中一个细小的分支,一方面,它既涉及许多新兴学科的基础知识,也可以验证多种理论方法的应用效果,而且由于车牌种类相对单一,特征比较明显,数据获取也很方便,是入门机器学习的良好 素材。另一方面,车牌识别还有很大的提升空间,面对复杂的成像环境,多样的光照条件和不同的成像距离,以及一定的失真、遮挡、污损,如何提高车牌识别的准确率仍然是个问题。

现如今很多场合下的车辆身份识别采用的是IC卡识别技术或者条形码识别技术,这种技术比基于图像识别的技术可靠性 好,准确度高,但无法核对车辆与 IC卡是否相符,需要司机停车刷卡,而基于图像的方法可以对运动中的车辆实现非接触性信息采集和实时识别,使车辆无障碍通行。不可否认,这两种方法各有优缺点,但随着数字图像处理 技术的 发展,基于图片的识别方法会被越来越多的 人认可。

基于车牌识别不应该局限于处理固定视角的摄像监控图片这个的出发点,本次毕业设计希望研究出一个更加通用的中文车牌识别方法。这里的“通用”指的是基于多种背景,视角,大小,光照条件和来源的中文车牌识别,当然这个“通用”也只是一个相对的概念,它依然有自己的局限性。

2.车牌识别技术发展概况

车牌识别的概念 最早 在 1976年 由英国的公安科学发展处( Police Scientific Development Branch)提出,它的第一个实验室原型诞生于 1979年,同年,第一相关行业生产标准在英国沃金厄姆颁发。车牌识别早期的试验系统部署在英国最长的编号公路 A1公路和达特福德隧道, 然而由于硬件设备 价格 昂贵 和处理器计算能力有限 ,直到上世纪 90年代 VLPR才开始快速发展, 许多复杂的算法得以应用,程序处理的对象 也 由黑白图片、灰度图片转变为彩色图片和视频,车牌识别率和识别速度均得到显著提高。

在我国,该项研究虽然起步较晚,但在高水平期刊中不乏优秀的研究团队发表文 章 ,在市场中也有像“文通科技”、“汉王科技”这样的杰出企业 存在 。中华人民共和国交通运输部 于 2011年 公布的《交通运 输“十二五”发展规划》明确提出“推进交通信息化建设,大力发展智能交通,提升交通运输的现代化水平”,自此 在我国 智能交通由理论研究向实践阶段 快速 转型,车牌识别 技术 在公共交通中得以大围应用。目前,无论是国内还是国外,均 有 文献报道 实现 了 90%以上的 整体识别
正确率 和单张图片平均 处理时间 低于 300ms的 处理速度 [2,3]。

车牌识别技术一方面需要稳定可靠的识别效果,以满足 全天时和全天候的工作要求,另一方面需要快速的处理能力,以实现实时 处理。 在不同国家和地区,车牌尺寸、颜色、字符、编码方式都有明显差异,在实际应用中,不同国家和地区的车牌识别方法会略有不同。 虽然在学术研究中,多种先进的图像处理方法被应用在市场上,也有很多产品宣称自己达到了 99%的识别率, 然而这些方法大多是在特定条件下才会取得很好的效果,比如特定的光照条件,特定的成像距离和视角,特定的背景,有限的车速,甚至特定的成像设备 ,一旦条件改变 车牌识别效果将会变得很差 [4]。而且由于没有统一的测试 集和评估方法,明确指出哪种方法 优于其他方法是不恰当的 [5]。

车牌识别技术最大的挑战 在于车牌和环境的多样性,其中车牌的多样性主要体现在 以下几点:


(1)车牌区域在图片中的呈现形式多样 。车牌区域可以出现在图片中的任意位置,一张图片也可以包含多个车牌区域。由于拍摄距离和相对位置的不同,同一车牌在特定大小的图片中,面积不固定,而且由于视角的不同,像与真实物体之间存在扭曲和形变,使得角度和长宽比发生改变。


(2)车牌种类 繁多。不同款式的车牌拥有不同的背景和字符颜色,不同地区车牌使用的 号牌编码方式 不同,使用相同语言的国家 在 车牌 上使用的字体 有所差异,同一国家,不同款式的车牌,字符的排版方式也不同。

(3)车牌固有属性可变。随着使用时间的增加 车牌会 发生老化,使得颜色和纹理信息发生改变。车牌区域会存在污渍和损坏,不同款式的车安装车牌的方式也有所不同,有的车牌存在外框架,有的车牌为了与车头相匹配存在人为扭曲。

环境的多样性主要体现在光照和背景两个方面:
(1)光照干扰。在白天,户外的成像设备往往依靠自然光,但由于太阳照射角在一天内 不断改变 ,会出现顺光和逆光的情形,顺光时车牌区域会有反光现象而逆光会导致阴影的产生。在夜间和室内, 往往采用补光设备,保证机器的正常工作,然而由于车灯的干扰,成像 存在 模糊的问题。过强和过弱的光照条件均会使得车牌的颜色发生一定程度 的失真。


(2)背景干扰。背景中往往存在许多与车牌区域具有相似特征的对象,比如颜色特征相似, 纹理特征相似的区域,在算法不够聪明的情况下,处理器会将这些区域 作为车牌区域处理,有时会影响到真实车牌 区域 的识别,而为了充分滤除这些干扰,需要使用更多的的特征和智能的过滤器,这会拖累处理速度 ,影响 实时性。目前,这些困难还不能得到有效地解决。

在我国,标准汽车牌照是由汉字、英文字母和阿拉伯数字共7个字符组成, 根据不同车辆、车型、用途规定了多种 款式的 牌照 可以 分为普通车轿车、使馆车、警车、军车等,通常汽车牌照中也分大车和小车 ,并且存在临时车牌。我国汽车牌照的底色和字符颜色有多种组合, 日常生活中常见的有蓝底白字车牌、黄底黑字车牌、以及白底黑字车牌 三种 ,而自 2016年 12月 1日起,上海、南京、无锡、济南、深圳 5个城市率先试点 绿 底白字的 新能源 车 牌。 由于多数汉字不连通(苏,川,吉),结构复杂(赣,浙,藏),车牌识别 的难度较大,对图像处理的技术要求高,国外许多成功的车牌识别方法 不能直接应用在中文车牌识别中。


2017年发表的 一篇论文 [6],阐述了一种基于改进的卷积神经网络的中文车牌识别方法,通过对 2189幅不同背景下的包含车牌的日常生活图片的车牌识别,达到了 93.74%的识别率和平均每张图片 318ms的处理速度。

3.主要研究内容

主要阐述了一种更加“通用”的中文车牌识别方法及其程序实现,该方法针对于识别多种背景,视角,大小,光照条件和来源的车牌图片,它的基本流程如图 1-2所示, 输入需要 识别的图片,通过分析边缘或者颜色特征,得到车牌区域候选人,通过对车牌区域候选人进行字符分析,判断它的字符数是否为七,是 则将字符分析的结果输入字符识别中,输出车牌号,否则认为它不是车牌。

本研究的关键点在于实现一种“通用”的中文车牌识别方法,“通用”指的是基于多种背景,视角,大小,光照条件和来源。虽然中文车牌种类繁多,但由于图片数量的限制以及个人精力有限,本文只研究了生活中最为常见的小型汽车车牌,也就是 蓝底白字白框线 的尺寸为440mm××140mm的车牌,本文的“通用”不涉及各种类型的中文车牌识别。

 (4)图片没有较大的水印和人为的涂画,天气状况均为晴天 。

本文主体部分共有五章,分别是建立图片集、提取车牌区域候选人、字符分析、字符的识别、程序综合与分析。

  • 图片集的建立是本研究开展的基础工作,也是研究中相比其他各项工作 人力消耗最大的部分 ,数据集的质量和数量,是整套方法建立的依据 。 数据集的制作 分为 5个部分: 获取包含车牌的数字图片集;获取车牌区域候选人的数据集;建立字符判断的数据集;建立数字和字母识别的数据集;建立中文字符识别的数据集。
  • 车牌区域候选人的获取章节的 主要内容是对 图片集进行分析并探讨适用的定位方法, 传统的车牌定位即使结合了多种图像处理的技术,也是用一套方法去处理不同环境下的图片,实际上不同的场景适合不同的处理方 法,细化分类才能帮助机器更好的理解决策 。
  • 字符分析章节 的处理对象是 车牌区域候选人,主要分为字符候选人的提取,字符判断和文本提取 三个部分,该部分可以实现非车牌区域的滤除和车牌区域字符分割两大功能。字符候选人的提取采用改进的最大稳定极值区域( Maximally Stable Extremal Regions MSER)的方法,字符判断使了基于 20个字符特征的支持向量机(Support Vector Machine SVM)作为分类器。字符候选人的提取和字符判断只针对车牌上的数字和字母,不包括汉字。字符聚类搜索可以解决字符嵌套和字符遗漏的问题,完成字符外接矩形校正,最终得到完整的车牌字符序列。
  • 字符的识别章节分为 汉字和非汉字 识别两部分 ,其中汉字为 31个省份的简称,分类器使用 是自主设计的 10卷积神经网络( Convert Neutral Network CNN 模型MyLeNet 分类器 输入是大小为 32*32的黑白图片;非汉字指的是车牌上使用的 10种数字和 24种英文大写字符,它们的识别使用了 BP神经网络( Back Propagation Neutral Network),分类器的输入是基于纹理的金字塔梯度方向直方图Pyramid of Histogram of Oriented Gradients PHOG)的维度为 180的特征向量。为了充分说明所用分类器的合理性,本章对比了 BP神经网络和 CNN的汉字识别效果以及 SVM和 BP神经网络对数字和字母的识别效果。
  • 程序综合 章节 简要 说明了项目平台的搭建过程和程序的框架结构 ,介绍了本次研究所使用的开发工具集 Visual Studio和主要使用的计算机视觉库 OpenCV和卷积神经网络框架 Caffe,阐述了程序如何综合前几章节的研究成果实现 自动识别一张或多张 图片的功能 ,展示了程序的运行效果 。

4.建立图片集

5.车牌候选人提取

6.编程环境

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1459811.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QEMU源码全解析 —— virtio(20)

接前一篇文章: 上回书重点解析了virtio_pci_modern_probe函数。再来回顾一下其中相关的数据结构: struct virtio_pci_device struct virtio_pci_device的定义在Linux内核源码/drivers/virtio/virtio_pci_common.h中,如下: /* O…

【Spring】IoC容器 控制反转 与 DI依赖注入 XML实现版本 第二期

文章目录 基于 XML 配置方式组件管理前置 准备项目一、 组件(Bean)信息声明配置(IoC):1.1 基于无参构造1.2 基于静态 工厂方法实例化1.3 基于非静态 工厂方法实例化 二、 组件(Bean)依赖注入配置…

【经验分享】分类算法与聚类算法有什么区别?白话讲解

经常有人会提到这个问题,从我个人的观点和经验来说2者最明显的特征是:分类是有具体分类的数量,而聚类是没有固定的分类数量。 你可以想象一下,分类算法就像是给你一堆水果,然后告诉你苹果、香蕉、橙子分别应该放在哪里…

MKS射频RF电源Elite系列匹配器MW-2513功能电源操作使用说明中文

MKS射频RF电源Elite系列匹配器MW-2513功能电源操作使用说明中文

代码随想录算法训练营第二十三天 | 669. 修剪二叉搜索树,108.将有序数组转换为二叉搜索树,538.把二叉搜索树转换为累加树 [二叉树篇]

代码随想录算法训练营第二十三天 LeetCode 669. 修剪二叉搜索树题目描述思路递归参考代码 LeetCode 108.将有序数组转换为二叉搜索树题目描述思路参考代码 LeetCode 538.把二叉搜索树转换为累加树题目描述思路参考代码 LeetCode 669. 修剪二叉搜索树 题目链接:669. …

认识K8S

K8S K8S 的全称为 Kubernetes (K12345678S) 是一个跨主机容器编排工具 作用 用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。 可以理解成 K8S 是负责自动化运维管理多个容器化程序(比如 Docker)的集群…

Android Studio基础(下载安装与简单使用)

1、搭建Android开发平台 1.1 Android Studio 下载地址及版本说明 Android 开发者官网: https://developer.android.com/index.html(全球,需科学上网) https://developer.android.google.cn/index.html(国内&#xff…

【Java程序员面试专栏 数据结构】三 高频面试算法题:栈和队列

一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,因为栈和队列这两哥们结构特性比较向对应,所以放到一篇Blog中集中练习 题目题干直接给出对应博客链接,这里只给出简单思路、代码实现、复杂度分析 题目关键字…

详解AT24CXX驱动开发(linux platform tree - i2c应用)

目录 概述 1 认识AT24Cxx 1.1 AT24CXX的特性 1.2 AT24CXX描述 1.2.1 引脚 1.2.2 容量描述 1.2.3 设备地址 1.3 操作时序 1.3.1 写单个字节时序 1.3.2 写page字节时序 1.3.3 读取当前数据时序 1.3.4 随机读取数据 1.3.5 连续读取多个数据 2 驱动开发 2.1 硬件接口…

小清新卡通人物404错误页面源码

小清新卡通人物404错误页面源码由HTMLCSSJS组成,记事本打开源码文件可以进行内容文字之类的修改,双击html文件可以本地运行效果,也可以上传到服务器里面,重定向这个界面 蓝奏云:https://wfr.lanzout.com/i6XbU1olftde

发电机项目 2/19

MQTT 一.MQTT是什么? MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议…

【Python】OpenCV-图片添加水印处理

图片添加水印处理 1. 引言 图像处理中的水印添加是一种常见的操作,用于在图片上叠加一些信息或标识。本文将介绍如何使用OpenCV库在图片上添加水印,并通过详细的代码注释来解释每一步的操作。 2. 代码示例 以下是一个使用OpenCV库的简单代码示例&…

2023年全球前端大技术大会(GMTC北京站2023):核心内容与学习收获(附大会核心PPT下载)

此次峰会是一次内容丰富、有深度和广度的技术盛会。参会者不仅可以了解前端技术的最新发展和未来趋势,还可以与业界专家交流心得,提升自己的技能和能力。同时,此次大会也促进了全球前端社区的交流和合作,推动了前端技术的创新和发…

仪表板展示|DataEase看中国:历年研究生报考数据分析

背景介绍 在信息时代的浪潮中,研究生教育作为培养高层次专业人才的重要通道,不断吸引着广大毕业生和在职人士的关注。今天我们结合2018年~2024年的研究生报考数据,以数字为镜,深入了解近年来研究生培养态势。 本文将…

爬虫在网页抓取的过程中可能会遇到哪些问题?

在网页抓取(爬虫)过程中,开发者可能会遇到多种问题,以下是一些常见问题及其解决方案: 1. IP封锁: 问题:封IP是最常见的问题,抓取的目标网站会识别并封锁频繁请求的IP地址。 解决方案…

C#开发AGV地图编辑软件

C#自己开发AGV地图编辑软件: 1、自由添加和删除站点、停车位、小车、运行路径。 2、编辑得地图以XML文件保存。 3、导入编辑好地图的XML文件。 4、程序都是源码,可以直接在此基础上进行二次开发。 下载链接:https://download.csdn.net/d…

Linux:sed进阶(12)

Linux:shell脚本:基础使用(5)《正则表达式-sed工具》_linux脚本表达式s-CSDN博客https://blog.csdn.net/w14768855/article/details/132347574?ops_request_misc%257B%2522request%255Fid%2522%253A%252217084222871680019707523…

普中51单片机学习(定时器和计数器)

定时器和计数器 51单片机有两组定时器/计数器,因为既可以定时,又可以计数,故称之为定时器/计数器。定时器/计数器和单片机的CPU是相互独立的。定时器/计数器工作的过程是自动完成的,不需要CPU的参与。51单片机中的定时器/计数器是…

nginx的功能以及运用

nginx与apache的对比 nginx优点 nginx使用场景 编译安装nginx过程 1.先清空opt文件夹 2.关闭防火墙,关闭防护 3 安装依赖包,可以通过本地yum去安装 首先就是挂载,随后切换到配置文件中修改 4本地配置文件配置内容 5 随后安装环境包 yum -y …

【大厂AI课学习笔记】【2.2机器学习开发任务实例】(9)模型优化

模型训练后,就要进行模型优化了。 一般来讲,很简单,优化就是不换模型换参数,或者直接换模型。 换了之后来对比,最后选个最好的。 比如在本案例中,选择LinearRegression后,MSE从22下降到12&am…