基于bp网络的车牌识别系统的设计毕业设计论文(编辑修改稿)内容摘要:

真彩色车辆图像 图 23 灰度图 边 缘检测 边缘是指图像灰度发生空间突变或者在梯度方向上发生突变的像素的集合,也可定义为图像局部特征的不连续性,例如灰度的突变,颜色的突变,纹理结构的突变等等。 边缘通常意味着一个区域的终结和另一个区域的开始。 边缘的检测常借助空域微分算子进行,通过微分模板与图像卷积完成。 用摄像机采集到的机动车图像由于受到噪声干扰以及车辆本身的影响,使得获得的图像质量不理想。 因此,再进行汽车牌照的定位及字符识别之前需要先对车辆图像进行边缘检测处理提高图像的质量,使其易于后面的分割与识别。 通过良好的边缘检测可以大幅度的降低噪声、分离 出复杂环境中的车辆图像,保留完好的车牌字符信息,方便后面的车牌精确定位与字符识别。 由于车牌识别系统摄像头安装位置固定以及机动车车牌的固有属性,可以发现机动车车牌图像都处在水平的矩形区域,在图像中位置较为固定,车牌中字符都是按水平方向排列,所以经过适当的图形变换便可以清晰地呈现出车牌的边北京理工大学 20xx 届本科生毕业设计(论文) 6 缘。 对车牌图像进行边缘检测,有若干种方法可以使用,其中大多数是基于导数掩模求卷积的方法。 本文采用经典的 Sobel算子来对图像进行边缘检测,如图 24 和图 25 所示。 图 24 轮廓图 图 25 Sobel 边缘检测后的图像 车牌定位 摄像头拍摄的图片不仅仅只有车牌部分的图片,而且还有车身等区域的图片,但只有车牌部分是有用区域,其他部分都是无用区域。 所以我们要对照片进行车牌定位,然后把车牌部分分割出来。 车牌定位和分割是从经过图像预处理后的灰度图像中确定牌照位置,并将车牌部分从整个图像中分割出来,从而进行字符识别。 车牌定位和分割的精确度直接关系到最后的字符识别质量的好坏。 牌照区域剪切 到如今人类已经在车牌定位方面进行了很多的研究,总结起来主要有以下几种: ( 1)基于数学形态学的车牌定位方法。 这种方法基本上是利用数学形态学进行图像处理,寻找到一个合适结构元素来探测一幅图像,确定这个元素是否能够合适的放置在这幅图像内部,并检验这种填方元素的方法是否合理有效。 数学形态学的基本运算包括服饰、膨胀、开启和关闭。 ( 2)基于车牌颜色的定位方法。 这种方法是利用车牌上的特征进行定位,包括形状、颜色和纹理特征,不如车牌的底色和字符的颜色有明显的反差来进行识别定位。 ( 3)基于水平灰度变化的方法。 这种方法需要将彩色图像转换为灰度图像,北京理工大学 20xx 届本科生毕业设计(论文) 7 根据车牌灰度图像的边缘特征的水平方向的 特征进行定位。 ( 4)基于边缘检测的车牌定位方法。 在车牌的边缘部分蕴含了丰富的信息特征,边缘检测就是充分利用这些特征来达到定位的目的。 可以进行边缘检测的算法有多种, 如 Roberts 边缘算子、 Sobel 算子和拉普拉斯边缘检测都可以完成边缘检测。 这些方法各有优缺点,要实现快速准确地定位车牌,应该综合利用车牌的各种特征,仅靠单一特征难以达到目的。 车牌图像经过灰度化和边缘检测的处理后,边缘得到了加强,牌照区域已经非常明显。 本文采用的是水平灰度变化和 Sobel算子来进行图像处理。 在本系统中,用水泡方向的差分算子 对汽车图像求梯度。 1nnX X X    对二维图像而言水平梯度为: 1( , ) ( , ) ( , )n n n n n nG x y f x y f x y 对图 23 求水平梯度,取阈值为 81 的效果如图 26所示。 图 26 车辆图像水平梯度图 通过选定一个阈值,对梯度图上大于此值的点记为边缘点,把一段连续的边缘点取其第一点,定义这一点为跳变点。 对水平方向边缘点的扫描,可以得出此行上跳变点的分布,对整幅图进行扫描就得到全部的跳变点的分布。 通过求牌照区域的算法可以看出,会找到牌照大致可能在哪行,所 以通过定牌照左右边界算法得到分割后的车牌。 如图 27 所示。 北京理工大学 20xx 届本科生毕业设计(论文) 8 图 27 分割后的车牌 牌照几何位置的调整 当摄像机在一定高度而水平方向不与汽车正对是拍照会左右方向的倾斜。 当从左向右照时,会右倾且右面比左面更倾斜,如图 28 所示。 当从右向左照时,会左倾且左面比右面更倾斜,如图 29 所示。 任何一种倾斜都会影响牌照字符的切分,所以有必要对其进行矫正。 图 28 向右边倾斜的牌照 图 29 向左边倾斜的牌照 矫正的方法是采用 Hough 变换,其原 理如下: 极坐标中直线的方程为: cos si n rs x y 式中 s 是直线离原点的法线距离,  是该法线对 x 轴的角度,如图 210 所示。 图 210 Hough 变换原理图 左右倾斜算法如下:首先对牌照区域进行扩展,使其包含左右边框,然后对北京理工大学 20xx 届本科生毕业设计(论文) 9 此区域作水平 Sobel变换,对 Sobel 变换图求出其水平方向的跳变图,然后对其进行 Hough 变换。 二值化 由于得到的图像为灰度图像,而 在车牌识别系统中,要求处理的速度高、成本低、信息量大,采用二值图像进行处理,能大大地提高处理效率。 所以为了便于对图像的处理,首先需要将图像进行二值化操作。 二值化是指把整幅图像画面转换为仅黑、白二值的图像。 在数字图像处理中,二值图像占有非常重要的地位。 在实际的车牌处理系统中,进行图像二值变换的关键是要确定合适的阈值,使得字符与背景能够分割开来,二值变换的结果图像必须要具备良好的保形性,不丢掉有用的形状信息,不会产生额外的空缺等等。 二值化后的牌照图片如图 211 所示。 图 211 牌照二值化图 字符分割 字符分割是将车牌图像的七个字符分割成一个个独立的字符图像,以供下一步神经网络识别用。 字符分割是识别的基础,分割的好坏直接影响到识别的效果。 图像去噪 车牌图像去噪目的是为了改善车牌图像的质量,减少图片上的噪声干扰。 在获取到的车牌二值化图像中要先消除噪声干扰。 经常影响图片质量的噪声源可分为三类,一是在感光片上的图像会受到感光颗粒噪声的影响;二是图像从光学到电子形式的转换是一个统计过程,这是因为每个图像像素接收到的光子数目是有限的;三是处理信号的电子放大器会引入热噪声。 这三种噪声都 有相应的数学模型,主要是要对噪声进行滤波,滤波的方法有许多种,例如中指滤波、变换域滤波、小波去噪等。 去噪后的图像如图 212 所示。 北京理工大学 20xx 届本科生毕业设计(论文) 10 图 212 去噪后 的牌照 牌照字符分割 字符分割算法是以垂直投影、字符间距尺寸测定、字符的长宽比、轮廓分析技术的组合为基础的。 由于二值化的原因,可能会产生粘连、断裂的字符。 此时要根据牌照的大致宽度,结合各字符的轮廓,利用分割、合并的方法正确地分割字符。 采用一个目标函数搜索合并字符内的各个断裂点是一种有效的方法。 该目标函数是垂直投影函数 ()xV 与 ( 1)xV 二次差分的比率,即: ( 1 ) ( ) ( 1 )()2x x xxV V VV 分割目标函数的最高值看作是可能出现的断裂点。 本文中字符分割的算法如下,如图 213 和图 214 所示。 图 213 牌照二值化图 图 214 图 213 的点阵水平投影图 从投影图 214 可以看出字符与字符的分界处往往是投影比较少的地方,并且字符与字符的分界处投影往往接近零或者为零,所以取初始阈值 t=1 对投影图进行扫描,过程如下: ① “while(project[i]t) i++。 ”,记下位置 a; ② “while(project[i]=t) i++。 ”,记下位置 b; ③ 得到一个分割区,区数加 1,重复步骤 ① ; ④ 如果区数小于 7,则 tt (  自定); ⑤ 重复 ①。 分割效果如图 215 和图 216 所示。 北京理工大学 20xx 届本科生毕业设计(论文) 11 图 215 牌照二值化图 图 216 t=1 时图 215 的点阵水平投影图的分割图 从图 216 可以看出经过一次分割已经把那些明显分开的区域分割开了,但是有些区域过大,并且只有 6 个区域(两条竖线间的区域)。 所以让 t=t+2,结果如图 217 和图 218 所示。 图 217 牌照二值化图 图 218 t=3 时图 217 的点阵水平投影图的分割图 从图 218 中可以看出那些过宽的区域中又分开了一块,但是有一块区域还是过大,但是区域数已经达到要求。 分割出的牌照字符图像如图 219 所示。 图 219 分割出的字符图像 字幅图像归一化 字符分割处理后得到的单个数字、字母和汉字图像,还必须进行归一化处理,以消除因牌照倾斜带来的字符在位置和大小上的变化。 归一化处理主要包括位置归一化和大小归一化,甚至笔划(粗细)归一化。 对于汉字识别,汉字点阵的归一化是十分重要的,因为汉字识别主要基于汉字的图形结构,如果不能将汉字点阵在位置和大小上归一化处理一致起来,汉字点阵的相似性比较久无法正确进行。 归一化后的牌照图像如图 220 所示。 图 220 归一化处理后的牌照图像 细化处理 对图像的细化过程是求图像的骨 架过程。 骨架是二维二值目标的重要描述,它指图像中央的骨骼部分,是描述图像几何及拓扑性质的重要特征之一。 细化算法有很多,按照迭代方分为两类,一类是非迭代过程,一类是迭代过程。 非迭代算法有基于距离变换的方法等,迭代方法是通过重复删除像素边缘,直到得到单独像素宽度的图像为止。 现在用的比较多的细化算法有 Hilditch、 Pavlidis、 Rosenfeld 细化算法和索引表细化算法等。 车牌图像进行预处理后,细化处理是关系到后面能否正确提取字符特征值的关键,本文使用 Rosenfeld 骨架细化的方法,细化处理后可以得到图 像中字符的基本骨架,不会破坏原来的连通性。 细化后的效果图像如图 221 所示。 北京理工大学 20xx 届本科生毕业设计(论文) 12 图 221 细化处理后的牌照 第三章 BP 神经网络 人工神经网络 人工神经网络( Artificial Neural Network, ANN)也称为神经网络( Neural Networks, NN),即从生物学神经系统的信号传递而抽象发展成的一门学科。 在神经网络中,最基本的单元就是神经元。 人工神经元 神经元由三部分组成:树突、细胞体、轴突。 树突是树 状的神经纤维接受网络,它将电信号传递给细胞体,细胞体对这些输入信号进行整合并进行阈值处理。 轴突是单根长纤维,它把细胞体的输入信号导向其他的神经元。 神经元的排列拓扑结构和突触的连接强度确立了神经网络的功能。 形象的说,神经网络是由大量处理单元(神经元)广泛连接而成的网络,是对人脑的抽象、简化和模拟,反映人脑的基本特性。 它能够通过学习过程从外部环境中获取知识,并且它内部的很多神经元可以用来存储这些已经学到的知识。 人工神经元模型是生物神北京理工大学 20xx 届本科生毕业设计(论文) 13 经元的模型与抽象。 图 31 为一种典型的人工神经元模型。 图 31 人 工神经 元模型 人工神经元相当于一个多输入单输出的非线性阈值器件。 这里的 nXXX ,2,1  表示的为它的 n 个输入; nWWW ,2,1  表示与它相连的 n 个突触的连接强度,其值成为权值;iXiW 称为激活值,表示这个人工神经元的输入总和,对应于生物神经细胞的膜电位; O表示这个人工神经元的输出;  表示这个人工神经元的阈值。 如果输入信号的加权和超过  ,则人工神经元被激活。 这样,人工神经元的输出可描述为 )(  iXiWfO ( 31) 式中 , )(f 是表示神经元输入 输出关系的函数,称为激活函数或输出函数。 设 XTW是权与输入的矢量积(标量),相当于生物神经元由外加刺激引起的膜内电位的变化。 这样激活函数可以写成 )(f。 这里为了表达简单没有写出阈值 θ。 通常我们假设神经元有 n1个突触连接,实际输入变量为 1,2,1 nXXX 。 那么可设 1nX , nW ,这样就加入了阈值这个量。 阈值  一般不是一个常数,它是随着神经元的兴奋程度而变化的。 因细胞在每次放电之后都需要一定的时间恢复,也就是说神经元的兴奋存在不应期,即相邻二次兴奋之间需要的时间间隔(大约为 ) ,在此期间阈值会升高,即绝对不应期内的阈值。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。