尹其畅数字图像处理大作业.docx
- 文档编号:8507515
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:14
- 大小:447.85KB
尹其畅数字图像处理大作业.docx
《尹其畅数字图像处理大作业.docx》由会员分享,可在线阅读,更多相关《尹其畅数字图像处理大作业.docx(14页珍藏版)》请在冰豆网上搜索。
尹其畅数字图像处理大作业
《数字图像处理》大作业
——车牌识别
<车牌定位和字符分割部分)
学院:
电子与控制项目学院
专业:
交通信息项目及控制
学号:
2018132029
姓名:
尹其畅
任课教师:
丁爱玲
车牌识别系统
1车牌识别系统
1.1车牌识别系统的概述
目前随着科技和经济的日益发展,智能交通系统在世界范围内引起重视,我国已经将其列入科技计划重点实施。
智能交通系统是交通发展的必然趋势,而车牌识别系统是智能交通系统中的重要组成部分。
该系统可以记录十字路口违章车辆,实现高速公路,收费路口,停车场等地的收费。
既减少了人力,又节约了时间,还提高了效率。
车牌识别系统的主要任务是分析和处理摄取到的复杂背景下的车辆图像,定位分割牌照,最后自动识别汽车牌照上的字符,LPR是利用车辆牌照的唯一性来识别和统计车辆,它是以数字图像处理、模式识别、计算机视觉等技术为基础的智能识别系统。
在现代化交通发展中车牌识别系统是制约交通系统智能化、现代化的重要因素,LPR系统应该能够从一幅图像中自动提取车辆图像,自动分割牌照图像,对字符进行正确识别,从而降低交通管理工作的复杂度。
车牌字符识别的实质是对车牌上的汉字、字母和数字进行快速准确的识别并以字符串的形式输出识别结果,字符识别技术是整个车牌识别系统的关键。
车牌识别系统与其它图像识别系统相比较而言要复杂的多,在字符识别中,汉字识别是最难也是最关键的部分,很多国外较为成熟的车牌识别系统无法进入中国市场的原因就在于无法有效的识别汉字。
1.2车牌识别系统的结构和工作原理
车牌识别技术的任务是处理、分析摄取的车辆图像,实现车牌号码的自动识别。
典型的车辆牌照识别系统是由图像采集系统、中央处理器、识别系统组成,一般还要连接相应的数据库以完成特定的功能。
当系统发现(通过埋地线圈或者光束检测>有车通过时,则发出信号给图像采集系统,然后采集系统将得到的图像输入识别系统进行识别,其识别结果应该是文本格式的车牌号码。
区域搜索与分割
预处理
图像输入
单字识别
字符特征提取
归一化
字符分割
图1.1车牌识别系统原理图
车牌整体识别过程大体可分为四个步骤:
图像预处理、车牌定位和分割、车牌字符分割和车牌字符识别。
图1.2车牌识别流程图
图像预处理,在外界光照不均匀,光照强度不稳定的情况下,通过摄像机采集到的车牌原始图像会模糊不清,因此需要对其进行图像增强的处理;在外界环境噪声以及电子器件自身产生的噪声干扰下,车牌图像质量会有所下降,因此需要对原图像进行去噪处理;当摄像头摆放位置与车辆牌照悬挂位置存在一定角度,或者在摄像头进行拍摄的过程中,因为车辆发动机的震动导致摄像头抖动从而使摄取到的车牌图像具有一定程度的倾斜,因此需要对车牌图像进行倾斜矫正等等。
以上所做的这些处理均属于图像预处理的工作。
车牌定位分割,在一张完整的车辆图像中,大部分区域都是背景图像,对识别工作毫无意义,我们可以将背景区域视为无用区域,并设法将其去除,即从复杂的背景图像中准确的定位并分割出车牌区域图像,从原图像中提取出需要的部分舍弃不需要的部分,以便节省系统识别时间,这也是车牌定位分割的目的及意义所在。
在定位分割的过程中要保证不能把非车牌区域误判为车牌区域,也不能漏检车牌区域,否则后继的工作将无法进行。
车牌字符分割,被分离出的车牌区域图像,系统并不能直接对其进行识别,还需要将车牌上的每一个字符都独立的完整的分割出来,即从车牌区域图像中将车牌上所包含的每一个字符都切分出来,使其成为不具有任何相关性的单个字符图像,再由系统分别对每个字符进行识别,在对字符进行切分时,要注意保证每个字符的完整度。
字符识别:
车牌字符识别是系统的最后一个步骤,也是最为关键的一步,前面对车牌图像所做的处理都是为了完成最终的识别。
系统输入的是单个的字符图像,输出的却是文本格式的完整的车牌号码,车牌字符识别的准确率直接反映出车牌识别系统性能的好坏。
对于车牌识别系统而言,以上的每一个步骤都是必不可少的,并且后一步骤均是建立在前面步骤的基础之上进行的,因此,只有确保做好每一步才能顺利完成系统最终的识别工作。
本文采用VS2005与opencv1.0相结合对车牌定位过程进行处理。
2车牌定位
车牌定位是将通过前方摄像头采集的图像经过预处理后,根据车牌的区域特征来判断车牌的位置。
采集是指从摄像头读入一幅图像或者打开本地现存的一幅彩色位图文件。
而预处理包括灰度化,二值化,灰度拉伸及边缘提取等过程。
这些过程包含将待处理图像彩色信息转换成灰度信息,较少处理过程中的信息量,节约了时间。
而且过滤图像噪声使图像区域特征明显,根据区域特征确定车牌区域。
车牌定位的流程图如图2.1所示:
图2.1车牌定位的流程图
2.1车辆图像采集与预处理
车辆图像的采集是车牌识别的第一步工作,只有采集到合理的车辆图像,并使当地预处理,才能够进行后续的字符分割与识别工作。
2.1.1车辆图像采集
当与摄像头外设相连时,通过捕捉含有车辆的一帧图像进行处理.也可以直接打开一幅计算机本地存储的位图文件,本文采用此方法,在PlateIdentify项目里的资源视图的菜单资源中,为【文件】I【打开】菜单项在PlateIdentifyDoc类中添加响应函数onOpenducument。
车辆图像采集结果如图2.2所示:
图2.2车辆图像采集结果图
2.1.2车辆图像预处理
<1)灰度化
通常情况下,实际的车牌识别系统中由摄像机采集到的原始图像是彩色图像,所有的彩色图像都是由红(R>、绿(G>、蓝(B>三基色组合而成,在数字图像中每一个基色都被分为256个等级,即0~255。
由R、G、B三基色不同级别的组合方式,可以计算出一幅彩色数字图像最多可包含2563=16777216种颜色。
在灰度图像中R=G=B,因此灰度图像中只有一种灰度颜色,同彩色图像中的三基色一样,灰度色也被分成0~255,共256个等级,同理可以计算出一幅灰度图像最多只包含256种颜色。
由此可见,一幅彩色图像所包含的信息量远远大于一幅灰度图像,它不仅需要大量的存储空间还需要复杂的图像处理算法,这使得整个车牌识别系统操作时间过长,无法达到其实时性的要求。
所以,应将采集到的彩色图像转换成一幅灰度图像,这个过程便是图像的灰度化。
令g为转换后灰度图像在某一点的灰度值,R、G、B分别为转换前该点的R、G、B分量。
常用的灰度化处理方法有以下三种:
最大值法(Maximum>
g=max(R,G,B>(2-1>
这种方法处理后灰度图像的亮度会偏高。
平均值法(Average>
g=
(2-2>
这种方法处理后灰度图像的亮度较柔和。
加权平均值法(WeightedAverage>
g=
(2-3>
式<2-3)中,WR、WG、WB分别为R、G、B的权值,当其权值取不同的值时,能够形成不同灰度的灰度图像,因为人眼对绿色的敏感度最高,红色次之,蓝色最低。
因此当WG>WR>WB时,所产生的灰度图像更符合人眼的视觉感受,通常WR=0.9,WG=1.77,WB=0.33时图像的灰度最合理,即
g=0.3R+0.59G+0.11B<2-4)
式(2-4>中:
R表示原图像中每个像素点的红色分量的值,G表示原图像中每个像素点的绿色分量的值,B表示原图像中每个像素点的蓝色分量的值。
g表示灰度变换后图像中每个像素点的颜色值。
本文使用加权平均值法对彩色汽车图像进行灰度化处理。
本章选择加权法来对图像进行灰度化。
灰度化处理同样采用opencv提供的库函数。
灰度化预处理结果如图2.3所示:
图2.3灰度化预处理结果图
<2)二值化
二值图像是指整幅图像内仅有黑,白两个值。
为了加快处理速度并能够将车牌字符与车牌背景分开,通过阈值的设定将灰度值小于阈值的像素直接设置为0,灰度值大于阈值的像素直接设置为255.因此阈值的选择至关重要,阈值分为全局阈值与局部阈值。
全局阈值方法速度比较快,但是容易受到光线条件,背景亮度及车牌背景的影响从而引起笔画的丢失。
局部阈值可能引起伪影或笔画断裂。
本章采用全局阈值的方法实现。
选择的阈值如下:
<2-5)
其中,
和
为最高和最低灰度值,二值化处理同样采用opencv提供的库函数。
二值化预处理结果如图2.4所示。
图2.4二值化预处理结果图
<3)灰度拉伸
有时因为光线问题会造成图像局部过亮或过暗,这就需要对图像进行拉伸,使之覆盖较大的取值区间,使得亮的区域更亮,暗的区域更暗,提高图像的对比度,从而使图像边缘明显,车牌的信息能表现更加清楚。
灰度拉伸是将灰度图像进行分段性变化。
若源图像
灰度变化为[a,b],希望变换后图像g(x,y>的灰度范围扩展到[c,d],变换公式如下:
<2-6)
灰度拉伸后的效果如图2.5所示。
图2.5灰度拉伸后的效果图
<4)边缘增强
边缘主要存在于目标与目标,目标与背景之间,是分割目标,提取纹理的重要特征。
通过边缘增强的方法突出车牌丰富的纹理信息,使得车牌定位更加快速,准确。
常用边缘检测算子检测每个像素的点的邻域,并对灰度化率进行量化。
常用的边缘检测算子有:
Roberts算子,Sobel算子,Prewitt算子,Laplacian算子,Gauss-Lapcian算子及Canny算子等。
本文采用opencv提供的Canny算子来实现。
边缘增强后的效果如图2.6所示。
图2.6边缘增强后的效果图
2.2车牌区域定位
车牌定位是根据对经过预处理后的图像中的车牌进行准确的位置确定。
车牌定位在整个车牌识别系统中至关重要,只有准确定位车牌才能为后续的识别工作提供有力的保障。
目前车牌的定位有很多种方法,本节采用水平投影和垂直投影相结合的方法来定位车牌的位置。
1.水平投影定位
通常车牌靠近整幅图像的下半部分,因此由下向上扫描。
对前面处理过的图像的像素沿着水平方向累加产生一个车牌图像的投影分布,车牌位置应该对应投影分布的某个峰值,波峰的宽度所包含的区域就应该对应的车牌所在的水平位置。
对每一个波峰进行检测,当测定的高度与车牌投影高度相近时,即可认为是车牌的上下边界,就能准确的定位出车牌的水平位置。
2.垂直投影定位
垂直投影定位与水平投影原理相似。
首选对图像做垂直投影,对得到的水平投影从左到又的扫描,当超过一定的跳变时,即认为是车牌区域,若扫描的宽度符合车牌的宽高比约为3:
1的区域,即认为是车牌的垂直区域。
水平扫描区域与垂直扫描区域相交汇的区域,即为车牌区域。
车牌区域定位的结果如图2.7所示:
图2.7车牌区域定位图
3字符分割
字符分割是根据已经确定的车牌位置提取每一个字符的过程。
因为在拍摄的过程中车牌的位置很可能是倾斜的,所以首先将车牌的图像二值化,然后将二值化的车牌图像进行水平校正,最后通过车牌区域内的垂直投影确定每一个字符的位置。
分割流程图如图3.1所示:
车牌倾斜校正
分割字符
车牌图像二值化
图3.1分割流程图
3.1图像二值化
对车牌图像的二值化与前面所提到的图像预处理中的二值化原理和实现相同。
车牌图像二值化的结果如图3.2所示:
图3.2车牌图像二值化的结果图
3.2倾斜校正
因为拍摄原因造成车牌的图像有一定的倾斜,为了使字符处于同一水平位置,提高字符的识别和分割的准确率,要对倾斜的车牌进行校正。
本节通过车牌两端的斜率来重新调整组织图像。
倾斜校正的结果演示如图3.3所示:
图3.3倾斜校正的结果图
3.3字符分割
一幅定位准确的车牌包由一个字母和六个字母或数字组成。
要能够成功识别每一个字符必须把这七个字符独立的分割出来。
车牌的垂直投影上存在字符与字符间的空隙和跳变,可以根据字符书写格式,尺寸等分割出每一个字符。
为了能够将字符分割的结果清晰地显示出来,在分割出的字符上加上边框。
字符分割的结果如图3.4所示:
图3.4字符分割的结果图
4总结
本次大作业运用VC++所实现的车牌识别程序,只完成车牌定位和字符分割的这两部分,因为自己所掌握的知识不足,所以没法在实验中完成车牌识别系统中最后环节车牌识别部分。
并且识别定位和字符分割效果在有的图片比较理想,但在有的图片中并不是很理想。
这次从中我学到了很多关于图像处理的知识,把课堂上所学到的图像处理的知识运用到了实验当中。
在这次大作业的过程当中,我不仅学到了很多东西,而且也了解到关于数字图像处理的知识我还很欠缺,还有很多东西要学习,因此在今后,我会继续关注和学习有关图像处理的知识,逐步完善自己的程序。
最后,感谢丁老师这一学期来的谆谆教导,感谢您。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字图像 处理 作业
![提示](https://static.bdocx.com/images/bang_tan.gif)