版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 课程设计(论文) 题 目 基于投影法的车牌定位方法的研究姓 名 * * *学 号 *专业班级 07电子信息工程2班指导教师 吴 成 玉分 院 信息科学与工程分院完成日期 2010年×月×日宁波理工学院摘 要车辆牌照自动识别系统(LPR 是智能交通系统的基础环节和重要组成部分,具有方便、快速和自动识别车辆牌照的特点,广泛应用于大型停车场、收费站、交通违章管理等领域。数字图像处理技术能将输入的车辆图像通过处理和识别,转换为车牌号的字符串形式,为后续的计算机处理奠定基础,在车辆识别中发挥了关键的作用。系统的难点在于首先需要获取高质量的车辆图像,这对于车牌识别的正确率有很大的影响
2、;其次,需要对车牌区域进行相应的处理;最后需要对车牌区域进行正确的定位。结合车辆牌照的结构特点及先验知识,通过对车牌特征和定位技术的深入研究,本文在对车牌图像进行灰度化、二值化等预处理操作的基础上,提出了基于水平投影和垂直投影的一种改进的车牌定位算法,并进行了仿真实验,实验结果表明:该算法对车牌定位具有精度高、速度快、鲁棒性好等优良特点,为本研究的后续工作车牌字符分割和识别打下了良好基础。关键词: 汽车牌照;图像定位;图像提取;灰度投影;边缘检测目 录摘 要. I第1章 绪论 . 11.1 研究意义 . 11.2 研究方法与技术路线 . 2第2章 预处理 . 52.1 图像复原 . 52.2
3、图像变换 . 62.3 边缘检测 . 9第3章 车牌提取 . 133.1 水平垂直投影 . 153.2 实验中的车牌提取 . 153.3 车牌提取失败的原因分析 . 16参考文献. 17附 录. 18第1章 绪论1.1 研究意义车牌识别系统的研究是和城市化进展、汽车普及、交通管理一起发展起来的。特别是计算机技术、数据通信技术、电子自动控制技术的发展使得交通运输管理体系逐步电子化,使人、车、路及环境密切配合、和谐统一,从而建立了全方位实时、准确的综合管理系统,也就是智能交通系统。车牌自动识别系统是智能交通管理系统的核心技术,在道路交通监控和管理中有很重要的作用。车牌自动识别系统应用于高速公路出入
4、口,结合自动校验身份以及自动控制闸门的功能,就能实现不停车收费的功能,车牌自动识别系统通过自动识别车牌来进行车辆的统计(记录下车牌号码、出入时间、违章情况 可以实现观测站或城市、单位卡口系统的功能,车牌自动识别系统可以广泛的应用在机场、港口、政府机关、军队的重要场所和公安部门、交警部门等公共场所。汽车牌照自动识别系统可安装于公路收费站、停车场、十字路口等交通关卡处。它在公共安全、交通管理及有关军事部门有着重要的应用价值。其广泛的用途包括:1. 交通监控利用车牌识别系统的摄像设备,可以同雷达测速器或其他的检测器配合使用,以检测违反限速值的车辆。当发现车辆超速时摄像机获取该车的图像,并得到该车的牌
5、照号码。然后通过数据库找出该车信息,给该车超速的警告信号、开出罚单,还可以配合自动扣费系统使用。2. 交通流控制指标参量的测量可以直接监视相应路段的交通状况,获得车辆密度、队长、排队规模等交通信息,防范和观察交通事故。为达到交通流控制的目标,一些交通流指标的测量相当重要。该系统能够测量和统计很多交通流指标参数,如:总的服务流率、总行程时间、总的流入量流出量、车型及车流组成、车流高峰时间段、平均车速、车辆密度等,这也为交通系统提供必要的交通流信息。3. 高速公路上的事故自动测报由于该系统能够监视道路情况和测量交通流量指标,能及时发现超速、堵车、排队、事故等交通异常现象。4. 对养路费交纳、安全检
6、查、运营管理实行不停车检查根据识别出的车牌号码从数据库中调出该车档案材料,可发现没及时交纳养路费的车辆。另外,该系统还可发现无车牌的车辆、黑车,若同车型检测器联用,可迅速发现所挂车牌与车型不符的车辆。5. 车辆定位由于能自动识别车牌号码,因而极易发现被盗车辆以及定位出车辆在道路上的行驶位置。这为防范、发现和追踪涉及车辆的犯罪,保护重要车辆(如运钞车 的安全有重大作用,从而对城市治安及交通安全有重要的保障作用。6. 海关进出车辆自动识别管理海关是境内与境外日益连接的桥梁和纽带,为国家肩负着安全和防走私稽查的重任,海关闸口车辆日通行量大,容易造成闸口瞬间堵塞,为关口的管理带来了不必要的麻烦。车辆自
7、动识别管理系统对通行车辆进行自动识别,能有效地提高闸口通行效率并对各种过关车辆进行追踪管理。1.2 研究方法与技术路线要对车牌号码进行自动识别,首要的问题是要将车牌区域从复杂背景中分割出来,在本文中,我们主要完成了拥有这部分功能的车牌检测部分的工作,以便进一步识别的技术,并将该技术应用于高速公路自动收费系统。车牌检测的方法可以很多,例如:第一,基于颜色和文理分析的车牌定位;第二,基于小波和形态学车牌定位;第三,基于彩色图像车牌定位;第四,基于图像处理的车牌定位;第五,基于数学形态学和神经网络的车牌识别等等。本文中我们选定了第四种方法基于图像处理的车牌定位。然而直接在原始图像中搜索车牌是很困难的
8、,所以需要进行一系列预处理(包括图像复原和图像变换),生成灰度图像,然后对其边缘二值化处理。对于二值图像,最后通过车牌进行水平、垂直投影,确定并提取出车牌所在位置的区域。选择用这种方法来处理方法简便,处理过程具有非常高的鲁棒性和实时性。预处理,处像处理,图像提取,车牌定位。由于是基于图像的处理对于处理好的图片,可以根据图像回放、检索来检验结果的准确,于及时发现并解决问题。这是一种针对于我国现有车牌种类的特点开发的车牌处理方法。车牌定位就是从复杂的车辆背景图像中准确的提取出车牌区域。如何从车牌序列图像中准确的获取车牌位置是车牌自动识别算法实现的关键。车牌定位作为复杂背景图像区域特征提取的一个应用
9、,有其特有的特点:1. 车牌区域在车辆图像中的位置不确定。由于摄像机的方位、车辆的不同型号、不同的拍摄角度等因素的影响,车牌区域在车辆图像中的具体位置是不确定的。2. 车牌区域只占整个车辆图像的一小部分。在整个车辆图像中,车牌所占有的区域大约只有车辆图像的1/40左右。3. 车牌区域的大小是不一样的,由于摄像机的拍摄位置等因素的影响,导致了车牌区域在车辆图像中的大小不一致。所以,不能以常规的车牌大小去判断车牌图像中车牌区域大小。4. 车牌区域可能发生畸变,由于摄像机在拍摄的过程中与车辆的有角度的影响,以及车牌本身的倾斜、歪曲、破损等因素的影响,导致车牌区域不规则,发生变形。5. 车牌区域的提取
10、,大多是在复杂的背景下提取的,在提取的过程中,必须排除复杂背景对车牌区域的影响。车牌自动识别系统从总体上可以分为几个重要的环节,分别是图像采集、预处理、边缘提取、车牌定位、车牌字符分割、字符识别以及为了实现这些环节的功能。车牌识别系统的构成: 图1.1 车牌的识别系统的构成1. 图像采集:通过安装在道路口或者是车辆出入通道的摄像机实时捕捉车辆视频图像,并传输到计算机上以便于实时的处理。2. 图像预处理:对采集到的处理图像进行图像增强、滤波去噪等处理来突出车牌的特征,以便于更好的车牌定位。3通过计算并选择合适的阈值,对灰度图像二值化处理,得到图像的边缘。4. 车牌定位:车牌定位是车牌识别算法流程
11、中的一个关键环节,定位的准确性直接影响到后续环节的实现。实际拍摄条件的影响,如天气、光照复杂背景都会对车牌定位产生影响。克服这些因素的影响,从车辆图像中准确提取出车牌区域是车牌定位的中心任务。实现方法:基于投影法的车牌定位方法主要包括车牌预处理和车牌的水平与垂直投影。而车牌预处理包括三部分:图像灰度变换、图像边缘检测、图像二值化。第2章 预处理在景物成像的过程中,受多种因素的影响,图像质量都会有所下降。这种图像质量下降的过程称为图像的退化。例如,成像目标物体的运动,在摄像后所形成的运动模糊。由于成像系统的光散射现象而导致图像的模糊。又如传感器特性的非线性,光学系统的像差,以致在成像后与原来景物
12、发生了不一致的现象,称之为畸变。再加上多种环境因素,在成像后造成噪声干扰。在LPR 系统中,由于季节的更替、自然光照度的昼夜变化、车辆自身的运动、采集图像的设备本身的因素等,都会引起牌照图像的退化,干扰了有关车牌的信息提取。所以为了改善退化了的牌照图像质量,必须对图像进行预处理。通常有两类方法:图像增强和图像复原。图像增强技术是不考虑图像退化的原因,只是将图像中感兴趣的特征有选择地突出,而衰减其不需要的特征,改善后的图像不一定要去逼近原始图像。图像复原技术则与增强技术不同。它需要了解图像退化的原因,需要根据图像退化过程的某些先验知识,建立模型,再借助该模型,按照某种处理方法,恢复或重建原来的图
13、像。但在LPR 系统中并不需要将图像恢复原样,只需突出其中的某些特征,以便后续处理,另外我们对牌照图像的退化过程也了解不全,无法建立较准确的模型。综上我们采用了以下图像增强技术。 预处理包括:1. 图像复原2. 图像变换3. 边缘检测4. 二值化。预处理中最重要的是第二步:图像变换。在这一步中,本文设计了一个处理函数,设计这个函数的目的就是为了突出车牌的最主要特征,以便更好地提取车牌。2.1 图像复原由于车牌位于汽车的下部,而且从实际应用中可以发现车牌一般位于整幅图像的下半部分。为了提高系统运行速度,减少背景的干扰,提高识别率,本文将图像的处理部分限定在某个范围。在本文中,均以450*250的
14、图像为例:水平处理范围为0450,既所有水平范围;垂直范围为30120(从图像下端起)。而且选择从下往上、从左到右的扫描方法,有效地避免了车上其它部位的影响。如图2.1为处理前图象。 图2.1 原图像在本文的算法中,由于车牌提取算法对原始图像的要求不严格,所以图像复原这部分工作主要是放在图像分割的前面进行,只是对车牌这一小部分图像进行复原,这样就大大地节省了整个系统的运行时间。2.2 图像变换在计算机图形学与图像处理中,数字图像的灰度是进行图像识别与处理的基础。由于受到运算速度,内存大小等多方面的限制一般都采用基于灰度图像的识别技术。我们需要先读取数字图像的灰度,然后对其进行下一步的分析与处理
15、。数字图像在计算机上以位图(bitmap 的形式存在,位图是一个矩形点阵,其中每点称为像素(pixel ,像素是数字图像中的基本单位。一幅m × n 大小的图像,是由m × n 个明暗度不等的像素组成的。数字图像中各个像素所具有的明暗程度由灰度值(gray level 所标识。一般将白色的灰度值定义为255,黑色灰度值定义为0,而由黑到白之间的明暗度均匀地划分为256个等级。对于黑白图像,每个像素用一个字节数据来表示,而在彩色图像中,每个像素需用三个字节数据来表述。彩色图像可以分解成红(R 、绿(G 、蓝(B 三个单色图像,任何一种颜色都可以由这三种颜色混合构成。在图像处理
16、中,彩色图像的处理通常是通过对其三个单色图像分别处理而得到的。为了简化处理我们先设计一个函数将彩色位图转换成灰度图像彩色汽车图像处理可得到图2.2。算法体现如下:BufB=fgetc(ImageDataFile;/得到每个像素的B 值BufG=fgetc(ImageDataFile;/得到每个像素的G 值BufR=fgetc(ImageDataFile;/得到每个像素的R 值BufY Index=(unsigned char(0.299*BufR+0.587*BufG+0.114* BufB;/得到灰度分量 图2.2 灰度图像由于考虑到算法的复杂性,处理时间等因素,必须把真彩图像转化为二值图像
17、。因此必须对图像进行二值处理,这种处理过程叫做图像的二值化。一幅数字化的灰度图像包括目标物、背景和噪声。从数字灰度图像中提取出目标物,最常用的方法是设定阀值,用此阀值将灰度图像的数据分成两部分,即大于阀值的象素群和小于阀值的象素群。二值化又称灰度分割(Threshold ),将一般灰度图分割成只有两种灰度值的图像,即二值图像(Binary Image)。亦即设定一个灰度值,凡是图像本身灰度大于它的便令其为亮点,而灰度低于设定值的,便令其为暗点,如此可得一个二值图像。一般来说,我们把二值图像中的暗(黑)点的灰度值设为0,目标;亮(白)点的灰度值设为1,背景。而在对二值图进行处理时,习惯上认为目标
18、的灰度值为1,背景的灰度值为0,这是对原图各点的灰度求反的结果。在一个灰度图中,设为图像在点处的灰度值,预将图像分割成二个群体(目标和背景),则选定适当的二值化阀值t ,令:f(x,y>t 则f(x,y设为1;f(x,y<=t 则f(x,y设为0;二值化算法的核心在于如何获得一个良好的灰度阀值t ,使得图像的二值化处理能达到最佳效果。如果阀值t 选得过大,那么图像就会在物体本身之外产生许多黑斑,达不到分辨的目的;如果阀值t 选得过小,又会使得待测物体的外形变小,导致信息丢失。由此可知,二值化的阀值是把图像和背景区分开的标尺,适当的阀值就是既要尽可能的保存图像信息又要尽可能的减少背景
19、和噪声的干扰,这是选择阀值的原则。为了得到理想的二值图像,一般采用阈值分割技术,它对物体与背景有较强对比的图像的分割特别有效,它计算简单而且总能用封闭、连通的边界定义不交叠的区域。所有灰度大于或等于阈值的像素被判决为属于物体,灰度值用" 255" 表示,否则这些像素点被排除在物体区域以外,灰度值为" 0" ,表示背景。这样一来物体的边界就成为这样一些内部的点的集合,这些点都至少有一个邻点不属于该物体。如果感兴趣的物体在内部有均匀一致的灰度值,并且其处在一个具有另外一个灰度值的均匀背景下,使用阈值法可以得到比较好的效果。如果物体同背景的差别不在灰度值上(比
20、如纹理不同),可以将这个性质转换为灰度的差别,然后利用阈值化技术来分割该图像。为了使分割适用性更强,系统应该可以自动选择阈值。基于物体、环境和应用域等知识的图像分割算法比基于固定阈值的算法更具有普遍性和适应性。这些知识包括:对应于物体的图像灰度特性、物体的尺寸、物体在图像中所占的比例、图像中不同类型物体的数量等。其中图像直方图就是一种灰度特性,通常被用来作为分割图像的工具。阈值分割法分为全局阈值法和局部阈值分割法。所谓局部阈值分割法是将原始图像划分成较小的图像,并对每个子图像选取相应的阈值。在阈值分割后,相邻子图像之间的边界处可能产生灰度级的不连续性,因此需用平滑技术进行排除。局部阈值法常用的
21、方法有灰度差直方图法、微分直方图法。局部阈值分割法虽然能改善分割效果,但存在几个缺点:(1)每幅子图像的尺寸不能太小,否则统计出的结果无意义。(2)每幅图像的分割是任意的,如果有一幅子图像正好落在目标区域或背景区域,而根据统计结果对其进行分割,也许会产生更差的结果。(3)局部阈值法对每一幅子图像都要进行统计,速度慢,难以适应实时性的要求。全局阈值分割方法在图像处理中应用比较多,它在整幅图像内采用固定的阈值分割图像。经典的阈值选取以灰度直方图为处理对象。根据阈值选择方法的不同,可以分为模态方法、迭代式阈值选择等方法。这些方法都是以图像的直方图为研究对象来确定分割的阈值的。另外还有类间方差阈值分割
22、法、二维最大熵分割法、模糊阈值分割法、共生矩阵分割法、区域生长法等等,根据多次实验最终得到, 这里选择100作为阈值效果为最好。根据车牌的本身特征,在图像的大部分区域图像的灰度值很小,只是在水平方向灰度变化较大的区域才会出现比较大的灰度值,这样图像的直方图就会出现两个比较大的峰值,而灰度较大的那些像素点正是要二值化为1 (高亮度 的点。由于车牌位置往往出现在图像的中部,所以在实际中需要对图像的中部区域做更加精确的二值化处理,这边我取图像纵坐标30到120的区域,这样车牌的区域就显而易见的呈现在我们的面前,如图2.3: 图2.3 二值化后的汽车图像2.3 边缘检测边缘能勾画出目标物体,蕴含了丰富
23、的信息,是图像分割、识别及分析中抽取图像特征的重要属性。边缘检测利用图像一阶导数的极值或二阶导数的过零点信息来提供判断边缘点的基本依据,是一类重要的图像分割方法。图像中的边缘是图像局部特性不连续(或突变)的结果,例如,灰度值的突变、颜色的突变、纹理的突变等。一幅带纵向边缘的图像,我们把每行像素灰度的变化用图A 来近似描述。根据微分原理,图A 的一阶导数和二阶导数分别为图C 和图D 的形状。从图C 可以看出,对于图像中变化比较平坦的区域,因相邻像素的灰度变化不大,因而其梯度幅值较小(趋于0);而图像的边缘地带,因相邻像素的灰度值变化剧烈,所以梯度幅值较大,因此用一阶导数幅值的大小可以判断图像中是
24、否有边缘以及边缘的位置。同样道理,二阶导数的符号可以用于判断一个边缘像素是在边缘亮的一边还是暗的一边,而且过零点的位置就是边缘的位置。 图A:每行相素的灰度剖面图 图B:一阶导数 图C:二阶导数图2.4 梯度算子的原理图梯度对应一阶导数,对于一个连续图像函数(y x f , ,它在点(y x f , 处的梯度是一个矢量,定义为: TT y f x f Gy Gx y x f = , ( (2-1其中,Gx 和Gy 分别为沿x 方向和y 方向的梯度。梯度的幅度 , (y x f 和方向角分别为:2/122 ( , ( , (y x G G y x f mag y x f += (2-2/arct
25、an( , (Gx Gy y x = (2-3 由上式可知,梯度的数值就是(y x f , 在其最大变化率方向上的单位距离所增加的量。对于数字图像而言,梯度是由差分代替微分来实现的,2-2式可以写为2/122 1, ( , ( , 1( , ( , (+-+-=y x f y x f y x f y x f y x f (2-4 公式2-4中的偏导数需要对每个像素位置进行运算,在实际中常用小区域模板进行卷积近似计算。对x G 和y G 需各用一个模板,所以需要两个模板组合起来构成一个梯度算子。下面介绍几种常用的边缘算子。令(y x f , 为输入图像,(y x g , 为输出图像,则Rober
26、ts 边缘梯度可以由下式求出:(2/122, 1, 1, 11, , , y x f y x f y x f y x f y x f y x g -+-+= (2-5 写成模板形式如下图所示: 图2.6 Roberts 算子边缘检测后的汽车图像 图2.7 二值化后的汽车图像第3章 车牌提取车牌提取就是要从摄下的汽车图像中找出一块具有某种特征的区域图像,即 车牌。这种特征也就是该区域本身区别于其它部分的特征。由于车牌自动识别系统具有巨大的商业实用价值,且车牌分割和定位技术是车牌自动识别技术的核心,直接关系到系统识别的速度和精度,因此国外技术成熟的国家都不公开该技术。而国内的车牌自动识别技术尚处于
27、研究阶段,还不成熟。目前国内使用图像处理进行车牌分割和定位方法一般有如下几种:(1 基于彩色图像中车牌色彩信息的定位;(2 基于阖值分割的方法;(3 基于字符笔划的方法;(4 基于多分辨率的方法;(5 基于灰度聚类的方法;(6 基于统计直方图的方法。方法(1 使用的是彩色图像,存储空间和计算量都很大,难以满足系统存储和实时性的要求;方法(2 要求先对整幅图像进行二值化,然后在二值图像中搜索字符串区域,此法由于要求先进行二值化,所费的时间较长,且对图像的清晰度和对比度有较高的要求,车牌自动识别系统是工作于户外场合的,受天气状况影响很大,所以先进行二值化再分割的方法不适合本系统;方法(3 要求字符
28、笔划连续性较好,但是实际系统中由于户外、光照等多种原因字符笔划污损、缺失情况较多;方法(4 一般是作为其他方法的辅助方法,而且也不适用于在复杂的背景中定位车牌;方法(5 仅仅考虑了图像的灰庶信竟而奴略了空间信息,难以解决背景复杂的图像分割定位问题;方法(6 通过对汽车图像在水平、垂直两个方向上的灰度投影直方图的分析来推断牌照的位置。本文使用就是方法(6 ,车牌定位实现比较简单,准确率高。采用的是统计的投影直方图的方法。通过对汽车图像的水平和垂直两个方向的灰度投影直方图的分析,来推断出汽车牌照的大致位置。用一个具体的例子介绍投影法: 图3.1 华盛顿纪念碑 图3.2 削波处理,将图3.1二值化
29、图3.3 作垂直方向投影仔细观察图3.1,可以发现,纪念碑上像素的灰度都差不多,而且和其他区域的灰度值不同。如果我们选取合适的阈值,做削波处理(这里选175到220)。将该图二值化,就可以把纪念碑突出显示出来。如图3.2所示。由于纪念碑所在的那几列的白色点比其他列多得多,如果把该图在竖直方向做投影,则如图3.3所示:其中黑色线条的高度代表了该列上白色的个数。图中的高峰部分就是要找的水平方向上纪念碑所在的位置。3.1 水平垂直投影首先对上述经过变换和二值化后的汽车图像在处理区域内进行垂直投影,然后在灰度投影直方图中,选择一条水平线x ,进行水平扫描。找一定宽度而且在扫描线上下变化剧烈的区域作为水
30、平候选区域。 图3.4 垂直投影接下来对汽车图像的处理区域进行水平投影,在水平灰度投影直方图中,选择一条水平线Y ,进行从下到上的水平扫描见图3.5。 图3.5 水平投影3.2 实验中的车牌提取经过实验操作中,对原始图象的一系列处理,最后提出的车牌如下图: 图3.6 Roberts 算子提取的车牌3.3 车牌提取失败的原因分析在测试的过程中我们测试了大量的图像,在大部分车牌被精确有效地定位的同时,我们也看到了有不少图像的车牌不能很好地定位出来,主要表现为漏失车牌的部分内容,或者前面或者后面不能充分在定位后的图像中显示出来。这种状况主要是由如下几种原因导致的:A. 系统实现流程中由于窗口大小固定
31、,不能自动适应车牌图片的大小而改变窗口的长度,也会导致车牌不能完全显示的情况。B. 利用牌照边框的灰度值高出背景灰度的得出平行四边形,再通过边缘提取,利用Hough 变换检测出平行线,但会造成参数空间峰值点的扩散甚至消失,这些都影响直线识别的准确性。C. 存在许多客观的干扰,如天气、背景、车牌磨损、图像倾斜等因素也会导致定位不十分理想。D. 系统算法对于文字区域水平且其周围干扰区域较少的情况下定位比较准确,但由于二值化所得结果中各种尺寸的干扰区域基本都保留了下来,对于倾斜度的正确估计有时会有较大偏差。E. 固定阈值的定位算法,使得车牌定位也受到阈值、参数的影响。参考文献1 于连杰,纪玉波基于C
32、AGH 检测和投影法的车牌定位算法J. 科学技术与工程,2008,第8卷,第14期:3988-3992.2 胡 英,陈 辉,王绪本基于分形与投影法的汽车牌照定位J河北工业大学学报,2004,第3卷,第5期:56-59.3 赵志图. 基于改进投影法的车牌精确定位算法研究J农业装备与工程,2008,第4卷,第1期:35-38.4 沈全鹏,林德杰,何爽. 基于像素分类的彩色车牌定位J自动化与信息工程,2002,第2卷,第2期:32-34.5 陈宏彩. 汽车牌照定位技术研究. 河北省科学院学报J,2007,第4卷,第3期:38-40.6 袁宝民,于万,魏小鹏. 汽车牌照定位研究综述J大连大学学报,20
33、02,第3卷,第2期:2-12.7 刘肃平,陈 强. 数字图像处理技术在车牌识别中的应用J计算机与现代化,第6卷,第8期:119-122.8 屠良平,张学东. 一种基于投影法和形态学梯度的车牌定位算法J. 鞍山科技大学学报,2005,第8卷,第3期:343-345.9 Cheng Zhang , Guangmin Sun ,Deming Chen ,Tianxue Zhao A rapid locating method of vehicle license plate based on characteristics of characters' connection and pro
34、jection. Industrial Electronics and Applications,2007,3(2:2546-2549.10 Ling Dong,Gao Jun,Cao Wei,Fu Qizhong and Zhao JingThe Location Algorithm of the Inclined License Plates Based on Mathematical Morphology and Orientation FieldChinese Journal of Electronics,2003,2(12:22-26.18 附 录void CHistView:OnE
35、zh( / TODO: Add your command handler code hereCHistDoc * pDoc = GetDocument(;ASSERT_VALID(pDoc;if (pDoc->BitCount != 24AfxMessageBox("本系统只处理24bit 图片!"return;POSITION Pos;CMultiDocTemplate* pDocTemplate;CChildFrame * pFrame;CHistDoc * pHistDoc;Pos = AfxGetApp(->m_pDocManager->GetFi
36、rstDocTemplatePosition(;pDocTemplate= (CMultiDocTemplate*AfxGetApp(->m_pDocManager->GetNextDocTemplate(Pos; pHistDoc = (CHistDoc *pDocTemplate->CreateNewDocument(;pFrame = (CChildFrame *pDocTemplate->CreateNewFrame(pHistDoc, NULL; pHistDoc->SetDocument(pDoc;Ezh(pHistDoc;pDocTemplate-&
37、gt;InitialUpdateFrame(pFrame,pHistDoc,TRUE;void CHistView:Ezh(CHistDoc* pHistDocint i, j, nWidth, yzh;nWidth = pHistDoc->nWidth;yuzhi YUZHI;YUZHI.DoModal(;yzh=YUZHI.m_yuzhi;for (i = 0; i < 30 ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +pHistDoc->pImagei * nWidth+ j*3 = 0;pHistDoc->
38、pImagei * nWidth+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0;19 for (i = 30; i < pHistDoc->BmpHeight-130 ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +if(pHistDoc->pImagei * nWidth+ j*3>yzhpHistDoc->pImagei * nWidth+ j*3 = 255;else pHistDoc->pImagei * nWidth+ j*3 = 0;pH
39、istDoc->pImagei * nWidth+ j*3+1 = pHistDoc->pImagei * nWidth+ j*3; pHistDoc->pImagei * nWidth+ j*3+2 = pHistDoc->pImagei * nWidth+ j*3; for (i = pHistDoc->BmpHeight-130; i < pHistDoc->BmpHeight ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +pHistDoc->pImagei * nWidth+ j*3
40、= 0;pHistDoc->pImagei * nWidth+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0;void CHistView:OnHuidu(/ TODO: Add your command handler code hereCHistDoc * pDoc = GetDocument(;ASSERT_VALID(pDoc;if (pDoc->BitCount != 24AfxMessageBox("本系统只处理24bit 图片!"return;POSITION Pos;CMultiDocTem
41、plate* pDocTemplate;CChildFrame * pFrame;CHistDoc * pHistDoc;Pos = AfxGetApp(->m_pDocManager->GetFirstDocTemplatePosition(;pDocTemplate= (CMultiDocTemplate*AfxGetApp(->m_pDocManager->GetNextDocTemplate(Pos;pHistDoc = (CHistDoc *pDocTemplate->CreateNewDocument(;pFrame = (CChildFrame *p
42、DocTemplate->CreateNewFrame(pHistDoc, NULL;pHistDoc->SetDocument(pDoc;20pDocTemplate->InitialUpdateFrame(pFrame,pHistDoc,TRUE; void CHistView:Huidu(CHistDoc* pHistDocint * Temp;int i, j;int nWidth;long nTemp;Temp=(int*LocalAlloc(LMEM_FIXED,pHistDoc->BmpHeight* pHistDoc->BmpWidth*4;nWi
43、dth = pHistDoc->nWidth;for (i = 0; i < pHistDoc->BmpHeight ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +nTemp = (int(0.114*(intpHistDoc->pImagei * nWidth + j*3 +0.587*(intpHistDoc->pImagei * nWidth+ j*3+1 +0.299*(intpHistDoc->pImagei * nWidth+ j*3+2 ;Tempi * pHistDoc->BmpWi
44、dth + j = nTemp;for (i = 0; i < pHistDoc->BmpHeight ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +pHistDoc->pImagei * nWidth+ j*3 = (BYTETempi * pHistDoc->BmpWidth + j;pHistDoc->pImagei * nWidth+ j*3+1 = (BYTETempi * pHistDoc->BmpWidth + j;pHistDoc->pImagei * nWidth+ j*3+2 =
45、 (BYTETempi * pHistDoc->BmpWidth + j;LocalFree(Temp;void CHistView:OnTouying(/ TODO: Add your command handler code hereCHistDoc* pDoc=GetDocument(;ASSERT_VALID(pDoc;TOUYING TY;TY .BitCount=pDoc->BitCount;TY .pImage=pDoc->pImage;TY .BmpHeight=pDoc->BmpHeight; TY .BmpWidth=pDoc->BmpWidt
46、h;21TY .DoModal(; void CHistView:Onchepai( / TODO: Add your command handler code hereCHistDoc * pDoc = GetDocument(;ASSERT_VALID(pDoc;if (pDoc->BitCount != 24AfxMessageBox("本系统只处理24bit 图片!"return;POSITION Pos;CMultiDocTemplate* pDocTemplate;CChildFrame * pFrame;CHistDoc * pHistDoc;Pos =
47、 AfxGetApp(->m_pDocManager->GetFirstDocTemplatePosition(; pDocTemplate=(CMultiDocTemplate*AfxGetApp(->m_pDocManager->GetNextDocTemplate(Pos;pHistDoc = (CHistDoc *pDocTemplate->CreateNewDocument(;pFrame = (CChildFrame *pDocTemplate->CreateNewFrame(pHistDoc, NULL; pHistDoc->SetDoc
48、ument(pDoc;chepai(pHistDoc;pDocTemplate->InitialUpdateFrame(pFrame,pHistDoc,TRUE;void CHistView:chepai(CHistDoc* pHistDocint i, j, nWidth;extern int shang,xia,zuo,you; / 车牌范围:左右上下坐标nWidth = pHistDoc->nWidth;for (i = 0; i < xia ; i +for(j = 0; j < pHistDoc->BmpWidth ; j +pHistDoc->p
49、Imagei * nWidth+ j*3 = 0;pHistDoc->pImagei * nWidth+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0; 22for(j = 0; j < pHistDoc->BmpWidth ; j +pHistDoc->pImagei * nWidth+ j*3 = 0;pHistDoc->pImagei * nWidth+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0;for (i =xia; i < shan
50、g ; i +for(j = 0; j < zuo ; j +pHistDoc->pImagei * nWidth+ j*3 = 0;pHistDoc->pImagei * nWidth+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0;for (i = xia; i < shang ; i +for(j =you; j < pHistDoc->BmpWidth ; j +pHistDoc->pImagei * nWidth+ j*3 = 0;pHistDoc->pImagei * nWidt
51、h+ j*3+1 = 0;pHistDoc->pImagei * nWidth+ j*3+2 = 0; void CHistView:OnPrewitt(/ TODO: Add your command handler code here CHistDoc * pDoc = GetDocument(;ASSERT_VALID(pDoc;if (pDoc->BitCount != 24AfxMessageBox("本系统只处理24bit 图片!"return;POSITION Pos;CMultiDocTemplate* pDocTemplate;CChildFr
52、ame * pFrame;CHistDoc * pHistDoc;Pos = AfxGetApp(->m_pDocManager->GetFirstDocTemplatePosition(; pDocTemplate=(CMultiDocTemplate*AfxGetApp(->m_pDocManager->GetNextDocTemplate(Pos; pHistDoc = (CHistDoc *pDocTemplate->CreateNewDocument(; pFrame = (CChildFrame *pDocTemplate->CreateNewF
53、rame(pHistDoc, NULL; pHistDoc->SetDocument(pDoc; Prewitt(pHistDoc;/锐化的模板算子 pDocTemplate->InitialUpdateFrame(pFrame,pHistDoc,TRUE; void CHistView:Prewitt(CHistDoc* pHistDoc int * Temp; int i, j; int nWidth, nTemp1,nTemp2; Temp=(int*LocalAlloc(LMEM_FIXED,pHistDoc->BmpHeight* pHistDoc->BmpW
54、idth*4; nWidth = pHistDoc->nWidth; for (i = pHistDoc->BmpHeight-1; i > 0 ; i - for(j = 0; j < pHistDoc->BmpWidth-1 ; j + nTemp1=(intfabs(pHistDoc->pImage(i-1*nWidth+j*3-3+pHistDoc->pImage(i-1*nWidt h+j*3+pHistDoc->pImage(i-1*nWidth+j*3+3-pHistDoc->pImage(i+1*nWidth+j*3-3 -pH istDoc->pImage(i+1 * nWidth + j*3-pHistDoc->pImage(i+1* nWidth + j*3+3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年人教版七年级英语上册词汇与语法专项练习(含答案)
- 婚礼策划618活动方案(3篇)
- 房车活动主题策划方案(3篇)
- 春季交通管理制度简报(3篇)
- 汽车文化馆管理制度(3篇)
- 燃气安全管理制度梳理图(3篇)
- 成品采购流程及制度
- 房地产采购部门管理制度
- 永辉超市采购结构制度
- 汽车配件采购出库制度
- 2026年及未来5年市场数据中国翻译机构行业市场需求预测及投资规划建议报告
- 消化内科炎症性肠病诊疗规范与实践指南(2025版)
- 新生儿体位管理课件
- GB/T 20151-2026光度学CIE物理光度系统
- GB/T 18570.9-2025涂覆涂料前钢材表面处理表面清洁度的评定试验第9部分:水溶性盐的现场电导率测定法
- 安徽省合肥市2025-2026学年上学期期末八年级数学试卷(含答案)
- 产品销售运营协议书范本
- 雨课堂学堂在线学堂云《自然辩证法概论( 武汉科技大)》单元测试考核答案
- 2025年支部存在的问题及整改措施
- 平面优化设计讲解课件
- 2025-2026学年五年级英语下册 Unit 2 Can I help you Lesson 11说课稿 人教精通版(三起)
评论
0/150
提交评论