基于ARM的车牌识别系统界面设计毕业论文.docx

上传人:牧羊曲112 文档编号:3384828 上传时间:2023-03-12 格式:DOCX 页数:63 大小:74.52KB
返回 下载 相关 举报
基于ARM的车牌识别系统界面设计毕业论文.docx_第1页
第1页 / 共63页
基于ARM的车牌识别系统界面设计毕业论文.docx_第2页
第2页 / 共63页
基于ARM的车牌识别系统界面设计毕业论文.docx_第3页
第3页 / 共63页
基于ARM的车牌识别系统界面设计毕业论文.docx_第4页
第4页 / 共63页
基于ARM的车牌识别系统界面设计毕业论文.docx_第5页
第5页 / 共63页
亲,该文档总共63页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于ARM的车牌识别系统界面设计毕业论文.docx》由会员分享,可在线阅读,更多相关《基于ARM的车牌识别系统界面设计毕业论文.docx(63页珍藏版)》请在三一办公上搜索。

1、基于ARM的车牌识别系统界面设计毕业论文大连海事大学 装 订 线 业 论二一四年六月 1 文毕 基于ARM的车牌识别系统界面设计 专业班级:通信工程2班 姓 名: 雷 良 指导教师: 谭 克 俊 信息科学技术学院 2摘 要 车牌识别技术(VLPR)作为智能交通系统的重要方面,其和蓬勃发展的嵌入式系统相结合,有着重要的理论意义和广阔的应用前景。本文在实现了对嵌入式Linux图形用户界面设计的基础上,重点研究了车牌识别的各项关键技术,包括图像预处理、车牌定位、字符切割和字符识别。 本文首先对车牌识别系统的开发环境和嵌入式图形用户界面的设计方面进行了介绍,开发环境是基于OpenCV的Qt开发环境,在

2、Qt下设计并实现了用户自定义的图形化人机接口界面。 本文利用C+语言,通过调用OpenCV库函数实现了车牌识别中图像预处理、车牌定位、字符切割和字符识别等各种算法。在图像预处理方面,本文在对大量图片进行了综合处理的基础上,比较了各种预处理方法,最后采用基于HSV阈值化后进行滤波及形态学处理的预处理方法,该方法能很好的消除图形噪音。在定位方面,本文提出了轮廓检测并分级判断的策略。在字符切割方面采用的是基于投影的切割方法,而在字符识别方面采用的是弹性模板匹配法。经过定量实现表明,该系统能很好地解决实际应用中的车牌图像倾斜、光照不足等问题,并且有很好的识别率。 关键词:Qt;图像预处理;车牌定位;字

3、符分割;字符识别 I ABSTRACT License Plate number Recognition Technology (VLPR) as an important aspect of intelligent transportation systems (ITS), It is combining with the rapid growth of embedded systems, In addition that has the important significance and broad application prospects. This article is focus

4、es on some key technologies of license plate number recognition: include the image preprocessing and the license plate positioning and the character segmentation and character recognition, They are based on the design of Embedded Linux Graphic User Interface. Firstly introduce the design of Embedded

5、 Linux Graphic User Interface and the development environment of License Plate number Recognition., The development environment is based on the Qt of OpenCV, Then designing and implementing a graphical human machine interfaces of user-defined on the Qt. In the thesis, by Used C + + language, then ad

6、just using the OpenCV library functions to got some algorithms of the image preprocessing and the license plate positioning and the character segmentation and character recognition. For the image preprocessing through more images manipulation and compare of various pretreatment methods. Then through

7、 Pretreatment method of the filter and the morphological processing based on a HSV threshed image, This method is better to eliminate the graphical noise. For license plate positioning that Im make a strategy of contour detection and Classification judgment. For character segmentation that Im make a

8、 cutting method of based on the projection, and For the character recognition that Im making a matching method of the elastic template. After quantitative test that system can be better solve the issues of the licence plate image obliquity and the lack of light. And this system can be make a high le

9、vel of recognition. Keywords: Qt; Image Pretreatment; License Plate Location; Character Segmentation; Character Recognition II 目 录 第1章 绪论 . 1 1.1 课题研究的背景及意义 . 1 1.2 嵌入式系统概述 . 1 1.3 国内外车牌识别系统的研究现状与发展 . 2 1.4 本文主要研究的内容 . 4 第2章 相关技术和理论 . 5 2.1 开发工具简介 . 5 2.1.1 OpenCV . 5 2.1.2 QT软件 . 6 2.2 车牌特征 . 7 2.3

10、 系统评价指标 . 7 2.4 本章小结 . 8 第3章 车牌识别系统设计 . 9 3.1 系统设计原则 . 9 3.2 需求分析 . 9 3.3 概要设计 . 10 3.3.1 系统总体设计图 . 10 3.3.2 模块描述 . 11 第4章 车牌识别界面设计 . 12 4.1 宿主机上开发环境的配置 . 12 4.1.1 下载所需工具并安装 . 12 4.2 Qt应用程序开发 . 15 第5章 车牌识别算法研究 . 20 5.1 算法构成 . 20 5.2 预处理 . 20 5.2.1 HSV彩色分割 . 20 5.3 车牌定位 . 21 5.3.1 车牌轮廓粗略定位和分级判断 . 22

11、5.3.2 基于投影法的精确定位 . 23 5.4 字符切割 . 23 5.4.1 预处理 . 24 III 5.4.2 切割 . 24 5.4.3 字符归一化 . 25 5.5 字符识别 . 25 5.5.1 识别算法概述 . 25 5.5.2 弹性模板匹配算法 . 25 5.6 本章小结 . 26 第6章 系统调试 . 27 6.1 运行平台 . 27 6.2 系统功能测试 . 27 6.3 车牌识别结果展示 . 30 6.3.1正常情况 . 30 6.3.2倾斜及阴暗的情况 . 31 6.3.3 其他情况 . 33 结论 . 36 参 考 文 献 . 37 致 谢 . 39 附录1:英文

12、文献 . 1 附录2:英文翻译 . 13 IV 基于ARM的车牌识别系统界面设计 基于ARM的车牌识别系统界面设计 第1章 绪论 1.1 课题研究的背景及意义 随着国民经济的不断发展,汽车已经悄然进入人们生活,道路上的车辆也越来越多。汽车交通这个人类文明的象征,在为人们提供各种方便的同时,也给人民带来了种种困扰,向人类提出了巨大的挑战。现代化的交通需要现代化的交通管理,为解决城市及国道主要路段和路口的交通拥挤和阻塞状况,减少事故,建立现代化的交通指挥控制系统是非常必要的。如何更好的管理控制上路车辆以有效地减少违章交通事件频繁发生,已经成为交通监管部门的重要任务1。 在智能交通的各类系统中,一般

13、对产品工作的稳定性要求很高,嵌入式产品的工作稳定特性正好可以适应其在这方面的严格的要求。智能交通系统中使用的许多设备都运行在室外,必须考虑到设备在冬季严寒、夏季酷热、南方潮湿等恶劣气候和环境下能否保证正常稳定地工作,环境适应能力强将是智能交通系统设备选型工作中首先必须考虑的重要因素之一,而这恰恰正是嵌入式一体化产品的特点之一。各地智能交通系统发展状况不一,应尽可能地利用已有设备或系统,争取花费最小的代价对原有的系统进行功能升级或模块添加。对嵌入式一体化产品来说,其设备的独立性使其可以很灵活地嵌入到各类应用系统中,作为其中的一个功能模块,对新系统来说大大减少了整个系统的耦合性,降低了其复杂性和故

14、障发生概率,提高了系统的稳定性和易维护性;对旧系统改造和升级中,可以尽可能地利用原有系统或设备,添加或升级其中某一个功能模块,对整个系统也只需很小的改动(如接口部分等),从整体上大大节约了投资,增加了系统效益。由于智能交通系统对产品的要求与嵌入式系统产品的各种优势可以非常好地吻合,嵌入式一体化的智能化产品在智能交通领域内的应用己得到越来越多的入的认同。有越来越多的用户和专业人士看好智能交通领域的嵌入式一体化产品的应用前景,也有不少厂家进行了这方面产品的研究和开发。 1.2 嵌入式系统概述 嵌入式系统(Embedded System)是指以应用为中心,计算机技术为基础,并且1 基于ARM的车牌识

15、别系统界面设计 软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统;主要由硬件环境、嵌入式操作系统及应用软件系统等组成。其以计算机为基础,以通信技术为载体,以消费产品为对象,引入各类传感器,接入因特网,并适应应用环境。嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合的产物。 嵌入式系统是一种软件以固态化形式出现而又无多余软件,硬件亦无多余存储器,可靠性高,成本低,体积小,功耗少的非计算机系统。其又是技术密集,产品更新换代快,具有不断创新特性才能发展的系统。与通用型计算机系统相比,嵌入式系统性能高、价格低、工作稳定、工作模块化、

16、与用户的接口简单、可用电池供电、抗干扰能力强、适应于全天候应用、便于安装和隐藏、面向特定应用,可根据需要灵活定制。嵌入式计算机系统设计不同于桌面计算机系统设计的另一个重要方面在于;嵌入式系统非常受限于功能和具体的应用环境,如对外部事件必须保证在规定时间内进行响应,有体积、重量的限制,功率预算、散热必须符合环境要求,需要令人满意的安全性、可靠性、系统本身的成本需求等2。 嵌入式系统应用十分广泛,可以说在现代工作生活中无处不在。大到穿梭太空的火箭、卫星,小到手机、录音机,这都是嵌入式系统大显身手的地方。嵌入式系统是一个分散的工业,充满了竞争、机遇与创新,没有哪一个处理器或操作系统能够垄断全部市场。

17、即使在体系结构上存在主流,但各不相同的应用领域决定了不可能有少数公司、少数产品垄断全部市场。因此嵌入式系统领域的产品和技术留给各行业中小规模公司创新的余地很大研。 1.3 国内外车牌识别系统的研究现状与发展 在现代化交通系统中,如何快速准确地提取目标车辆的车牌信息一直是一个技术性难题,它一直制约着交通系统现代化、自动化、智能化的发展脚步。车牌识别技术的研究早在20世纪XX年代就已经开始了。技术的核心是通过对拍到的车牌图像进行分析,在非人工千预的情况下自动获取车牌信息,从而确定车辆牌号。在车牌识别系统研究中,许多的新技术和新方法被不断地提出并应用,例如图像处理技术、模糊数学理论、神经元网络算法等

18、等,也有人将一些传统方式和高新技术相结合来进行应用,但到目前为止,由于各种客观的不利环境因素存在,还没有一种解决办法可以作为最有效的方法,来解决应用中的所有技术难题,它们在系统的准确性和实时性方面虽都有其自己的解决办法和设计方案,但健壮性和鲁棒性均达不到理想要求。因此LPR系统虽然经历了20多年的发展,依然是一个能够被解决但一直没有被妥善解决的问题。 2 基于ARM的车牌识别系统界面设计 国外在这方面的研究工作开展较早。早在上世纪XX年代,英国就在实验室中完成了“实时车牌检测系统”,的广域检测和开发。同时代,还诞生了面向被盗车辆的第一个实时自动车牌监测系统。直至今日,国外对车牌检测的研究已经取

19、得了一些令人瞩目的成就,如YuniaoCul提出了一种车牌识别系统,在车牌定位以后,利用马尔科夫场对车牌特征进行提取和二值化,对样本的识别达到了较高的识别率。EunRyung等利用图像中的颜色分量,对车辆牌照进行定位识别,其中提到了三种方法:以Hough变换为基础的边缘检测定位识别;以灰度值变换为基础的识别算法;以HVS彩色模式为基础的车牌识别系统,识别率分别为81.25%、85%、91.25%。日本对车牌图像的获取也做了大量的研究,并为系统产业化做了大量工作。 目前,以色列的HiTeeh公司研制的多种see/CarSystem,适用于几个不同国家的车牌识别。新加坡的vLPRs只适合于新加坡的

20、车牌。此外日本、德国等发达国家都有适合自己本国车牌的识别系统。我国做得较好的产品是中科院自动化研究所的“汉王眼”,另外,亚洲视觉科技有限公司、深圳市吉通电子有限公司以及上海交通大学、清华大学等高校都做过类似的研究。从目前一些产品的性能来看,车牌识别系统的识别率和识别速度都有待提高。因此,研究高速、准确的定位与识别算法是当前的主要任务,图像处理技术的发展与计算机性能的提高都会促进车牌识别技术的发展,提高车牌识别系统的性能。 表1.1 国际上的车辆牌照识别系统 公司名 Hi_tech Ltd Optasia Ltd Asia Vision 产品名 See/Car Chinese VLPRS VEC

21、ON 识别率 93.0% 99.7% 95.0% 识别速度 500ms 400ms-2s 1s 关于车牌识别的研究,国内外学者己经作了大量的工作,但仍然存在一些问题,比如车牌图像的倾斜、车牌自身的磨损、光线的干扰都会影响到定位的精度。车牌字符识别是在车牌准确定位的基础上,对车牌上的汉字、字母、数字进行有效确认的过程。目前已有的方法很多,但其效果与实际的要求相差很远,难以适应现代化交通系统高速度、快节奏的要求。因而对字符识别的进一步研究也同样具有紧迫性和必要性。 3 基于ARM的车牌识别系统界面设计 1.4 本文主要研究的内容 车辆牌照是机动车唯一的管理标识符号,在交通管理中具有不可替代的作用,

22、因此车辆牌照识别系统应具有很高的识别正确率,对环境光照条件、拍摄位置和车辆行驶速度等因素的影响应有较大的容阈,并且要求满足实时性要求。 本文主要研究了以下几个问题: 1) 图形界面设计,配置好OpenCV的Qt开发环境,编译完成OpenCV函数库,在Qt上设计图形用户界面。 2) 在Tiny4412开发平台上,完成基于V4L2的视频驱动开发,实现了USB摄像头实时图像采集; 3) 预处理:进行HSV彩色分割,得到H、S通道图像,并把H、S图像点的像素值与阈值进行比较,进行阈值化,再进行滤波和形态学等处理; 4) 车牌定位:采用轮廓检测并分级判断的策略,得到最终的车牌区域图像,并且再进行精确定位

23、,得到去除边框,锚点的车牌照图像,最后进行归一化; 5) 字符分割:对已完成定位的车牌进行基于投影法的字符分割及归一化; 6) 字符识别:对分割出来的字符通过改进的模板匹配算法进行识别;4 基于ARM的车牌识别系统界面设计 第2章 相关技术和理论 车牌识别系统是多种技术的集合体,一般而言,它涉及到数字图像处理、计算机视觉、模式识别、数字视频处理等多项技术。本章将对本文采用的车牌识别系统相关的基础理论进行介绍 2.1 开发工具简介 本系统的设计开发过程中主要应用了OpenCV和QT软件。 2.1.1 OpenCV OpenCV 的全称是:Open Source Computer Vision L

24、ibrary。是于XX年由Intel建立的,是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效由一系列 C 函数和少量 C+ 类库构成,所有代码都经过优化,计算效率很高,因为,它更专注于设计成为一种用于实时系统的开源库。在多核机器上面,OpenCv运行速度会更快。它的一个目标是提供友好的机器视觉接口函数,从而使得复杂的机器视觉产品可以加速面世。该库包含了横跨工业产品检测、医学图像处理、安防、用户界面、摄像头标定、三维成像、机器视觉等领域的超过500个接口函数。 图2.1 OpenCV的结构 5 基于ARM的车牌识别系统界面

25、设计 OpenCV有以下特点:开放的C/C+源码, 基于Intel处理器指令集开发的优化代码, 统一的结构和功能定义,强大的图像和矩阵运算能力, 方便灵活的用户接口,同时支持MS-WINDOWS、LINUX平台。作为一个基本的计算机视觉、图像处理和模式识别的开源项目,OpenCV可以直接应用于很多领域,作为第二次开发的理想工具。 2.1.2 QT软件 Qt是一个跨平台的C+图形用户界面库,由挪威 TrollTech公司出品,它的目的是提供开发应用程序用户界面部分所需要的一切3,主要是通过汇集C+类的形式来实现这一目的。目前包括Qt、基于嵌入式的Qt/Embedded、快速开发工具Qt Desi

26、gner和国际化工具Qt Linguist等部分4 。Qt支持所有Unix系统,当然也包括Linux系统,还支持 Windows等系统。Qt是完全面向对象的,提供了丰富的窗口部件集,给应用程序开发者建立艺术级的图形用户界面所需的应用功能。而且很容易扩展,允许真正地组件编程。最为重要的是Qt使用“一次编写,随处编译”的方式来构建多平台图形用户程序。 Qt是一个支持多操作系统平台的应用程序开发框架,他的开发语言是C+。最初Qt主要是为跨平台的软件开发者提供统一的,精美的图形用户编程接口,但是现在它提供统一的网络和数据库操作的编程接口。由于Qt出现,使得UNIX和LINUX这些操作系统以更加方便精美

27、的人机界面走进普通用户。 Qt是以工具开发包的形式提供给开发者的,这些工具开发包包括了图形设计器,字体国际化工具,Makefile制作工具,Qt的C+类库等等。值得一提的是Qt的类库等价于MFC的开发库,但Qt的类库是支持跨平台的类库,就是说Qt类库封装了不同操作系统的访问细节。 Qt的特点: 优良的跨平台特性:Qt不仅应用于Unix、Linux和windows,而且还适用其他系统如Mac OS X、HP-UX等,真正的解决了跨平台的特性。 面向对象:Qt的良好封装机制使得Qt的模块化程度非常高,可重用性较好,对于用户开发来说是非常方便。Qt提供了信号和槽的安全类型来替代不安全的回调技术,这使

28、得各个元件之间的协同工作变得十分简单。各个对象之间可以相互不了解就可以捆绑在一起完成需要的功能。信号和槽机制也是Qt的核心机制; 支持 2D/3D 图形渲染,支持 OpenGL:可以开发复杂的二维动画和三维动画; 6 基于ARM的车牌识别系统界面设计 支持XML和网络:可以使主机图形界面与远端的网络进行通信; 支持数据库; 不断扩展的C+类库:使Qt的功能和效果更加强大。 2.2 车牌特征 车牌是安装在机动车特定位置具有特定大小的矩形金属牌,车牌号是机动车的唯一身份标识。根据中华人民共和国机动车登记办法,机动车前号牌安装在车辆前端的中间或偏右,后号牌安装在车辆后端的中间或偏左,无任何变形和遮盖

29、,横向水平,纵向基本垂直于地面并不得倒置,固定封装。 国内常见车牌主要分黄底黑字、蓝底白字、黑底白字三种其灰度图像则为白底黑字、黑底白字两种。标准的车辆牌照(军车、警车、教练车、领事馆车除外)上水平排列着7个字符,字符集中包含约50个汉字,25个大写英文字母(无字母“I”)及10个阿拉伯数字。这七个字符的首位为省名缩写(汉字),次位为英文字母,第三和第四位为英文字母或者阿拉伯数字,末三位字符均为数字。字符总长度为409毫米,其中单个字符统一宽度为45毫米,高90毫米,第二、第三字符间的间隔为34毫米(中间小圆点为10毫米宽,小圆点与第二、第三字符间的间隔为12毫米),其余字符间间隔为12毫米。

30、 车牌区域特征: 车牌区域内的边缘灰度直方图具有两个明显且分离的分布中心。 车牌的几何特征:现行的九二式机动车号牌国标尺寸蓝牌和黑牌是440mm140mm,大车牌(黄牌)前牌尺寸同,后牌为440220mm,即车牌的宽、高比例在一定范围内。 车牌区域的灰度分布特征:字符像素灰度值基本一致,背景灰度值也基本一致,且字符灰度值与背景灰度值差距较大,字符与背景交界处灰度变化较大,穿过车牌的水平直线其灰度呈现连续的峰、谷、峰的分布。 车牌形状特征和字符排列格式特征:车牌有矩形边框,字符位于矩形框中且间隔有规律。 2.3 系统评价指标 在系统设计时,必须给出评价系统性能的指标,这是我们设计和评价系统的标准

31、和依据。尽管现在用于识别车辆牌照号码的系统不断出现,所运用的具体方7 基于ARM的车牌识别系统界面设计 法都不尽相同,但是其目标都是达到一种令人满意的实用性指针。 准确性:这是车辆识别系统的第一要素。只有能够正确识别车辆牌照,系统才是有意义的。 快速性:现代化交通需要快节奏管理,尤其在路桥收费口等处,要求系统处理牌照的时间越短越好。 鲁棒性:光照条件、车牌自身的清洁程度等因素对准确性均有影响,一个优秀的识别系统应该对各种图像质量不至于过分敏感。 经济性:经济性与系统的软硬件配置密切相关,经济性良好的系统更具有市场生命力。 2.4 本章小结 本章主要介绍了车牌识别系统开发工具,描述车牌主要特征的

32、同时,还介绍了系统评价标准,为下一章的开始,奠定了理论基础。 8 基于ARM的车牌识别系统界面设计 第3章 车牌识别系统设计 3.1 系统设计原则 本系统设计遵循以下原则: 1.要遵循国内的牌照标准。国内与国外的汽车牌照在尺寸、字符的排列上都有很大的差别,为满足国内交通系统的要求,我们必须首先按照国内的牌照标准进行软件的设计。对于车前牌照的尺寸均为44 cm长,14 cm宽,共有7个或8个字符。民用汽车牌照上有省、直辖市、自治区的名称和发证照及监督机关的代号,编号是英文大写字母。接着是一个点“.”,后面的汽车编号,一般为5位数字,即从00001 -99999。编号超过10万时,就由A, B,

33、C等英文字母代替,第三至第七个字符可能是英文字母,也可能是阿拉伯数字。 2.考虑各种环境。行使的车辆是用摄像头获取图像,得到的图像往往存在着010度的倾斜,因而要考虑定位和识别的校正;由于阴天或光线不足还会产生图像较暗的情况;由于车牌长期的使用还会造成字符磨损、污染等情况,因而要考虑识别字符的容忍度。 3.模块化结构。本系统采用了五个模块,即选择图像模块、图像预处理模块、车牌定位模块、车牌字符分割模块和车牌字符识别模块。每个模块具有一定的独立性,可以分别编写,最后集成。 4.运行环境。本系统采用OpenCV进行程序设计,支撑的运行环境可以是PC机上的Windows 95/98/NT/2000/

34、XP、Linux系统和Tiny4412开发平台。本系统是基于嵌入式设计的,最终会在ARM端的Tiny4412开发平台上运行。 3.2 需求分析 需求分析的任务是确定待开发软件的功能、性能、数据、界面等要求,从而确定系统的逻辑模型。需求分析是软件生命周期中相当重要的一个阶段。由于开发人员熟悉计算机但不熟悉应用领域的业务,用户熟悉应用领域的业务但不熟悉计算机,因此对于同一个问题,开发人员和用户之间可能存在认识上的差异。在需求分析阶段,通过开发人员与用户之间的广泛交流不断澄清一些模糊的概念,最终形成一个完整的、清晰的、一致的需求说明。可以说,需求分析的好坏将直接影响到所开发软件的成败。 具体来说,本系统需要达到以下几个方面的要求: 9 基于ARM的车牌识别系统界面设计 (1)系统界面要求:本系统的操作界面必须能够描述软件系统的外部特性,即系统从外部输入哪些数据(图像),系统向外部输出哪些数据(图像)等,即软件的界面要友好; (2)系统的功能要求:本系统的三大主要功能模块,包括车牌定位、车牌字符分割以及字符识别。 (3)系统的性能要求:车牌识别系统在实际中需要有较强的适应性,本系统必须具有计算速度快、计算结果满足工程精度的要

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号