ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:806.68KB ,
资源ID:47708      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/47708.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于opencv的银行卡号识别学士学位论文.docx)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于opencv的银行卡号识别学士学位论文.docx

1、20本科毕业论文(科研训练、毕业设计)题目:基于 opencv 的银行卡号识别姓名:邹诚志学院:信息科学与技术学院系:自动化系专业:自动化年级:2009 级学号:23220092204453指导教师(校内): 彭洪职称:讲师年月日1目录摘要3 英文摘要4 引言5 第 1 章 绪论6 1.1 引言6 1.2 银行卡号识别的研究现状6 1.3 识别的目的和意义6 1.4 opencv 开源图像库7 1.5 程序的模块7 第 2 章 图像预处理模块8 2.1 引言8 2.2 灰度化处理8 2.3 二值化处理10 第 3 章 字符定位模块11 3.1 引言11 3.2 膨胀和腐蚀11 3.3 轮廓提取

2、13 3.4 垂直投影14 第 4 章 字符分割模块16 4.1 引言16 4.2 字符分割16 4.3 图像归一化17 第5章 字符识别模块18 第6章 结论19 致谢语20 参考文献202基于 opencv 的银行卡号识别摘要 银行卡号是由 19 位数字编号组成的一串号码。由于每一张银行卡的卡号都具有唯一性,所以通过确定银行卡卡号就可以识别银行卡,得到银行卡的相关信息。银行卡卡号的自动识别对实现银行卡的有效管理和进行银行卡的相关服务具有重要的理论意义和实际应用价值。本论文设计了一个银行卡卡号自动识别程序,这个程序基本上可以完成银行卡卡号的自动识别。该程序是在对图像进行图像预处理的基础上,对

3、图像处理得到的二值图进行膨胀和腐蚀变换,利用 X/Y 方向投影定位卡号字符位置;采用投影法分割卡号字符并进行归一化处理;最后采用模板匹配法识别字符得到银行卡卡号。实验结果表明,程序具有较高的识别速率和准确率,并且具有一定的稳定性。关键词银行卡卡号字符识别模板匹配图像处理3Reasearch On Bank Card Number Identification Program Based OnTemplate MatchingAbstractThe serial number of bank card is a number consists of 19numbers.As the serial

4、 number of each bank card is unique,so by the bank card serial number we can be sure of the bank card and get the information of the bank card.The automatic recognition of bank card serial number has important theoretical significance and practical value to realize effective management of the bank c

5、ard and bank card services.This paper designed a bank card serial number automatic recognition program, this program can basically complete the automatic recognition of bank card serial number.The program is based on image processing of the image, the image processing of the two value image dilation

6、 and erosion using X/Y transform, the direction of projection sequence number character position; the sequence number and character segmentation are normalized by projection method; finally, using template matching method to recognize character of bank card serial number. The experimental results sh

7、ow that, the program has a high recognition rate and accuracy, and has certain stability.Key Wordsbank card serial number; Character recognition;Template matching; Image processing4引言 随着国民经济的高速发展,银行卡的使用越来越频繁。每一张银行卡都有着它的一个唯一的 19 位编号,只要通过银行卡的卡号号码就可以确定相应的银行卡。所以,对银行卡卡号进行识别在进行银行卡服务时有着重要意义。传统银行卡服务时的人工识别银行

8、卡号码太过费时费力。所以银行卡号的自动识别变得越来越重要。本文依据银行卡号字符的特点,研究并实现了一种基于模板匹配的银行卡号识别系统,可以快速而准确地识别银行卡号。该系统对研制或改进银行卡自动服务系统具有一定的指导作用和参考价值。5第1章 绪论1.1 引言银行卡号的识别涉及多个领域,包括模式识别、图像处理、计算机等多门学科,是一门综合性的应用技术。随着国民经济的高速发展,银行卡的使用越来越频繁。每一张银行卡都有着它的一个唯一的 19 位编号,只要通过银行卡的卡号号码就可以确定相应的银行卡。所以,对银行卡卡号进行识别在进行银行卡服务时有着重要意义。传统银行卡服务时的人工识别银行卡号码太过费时费力

9、。所以银行卡号的自动识别变得越来越重要。本系统可以根据银行卡图片自动识别银行卡号码,可以广泛的应用在各个领域。1.2 银行卡号识别的研究现状在图像字符识别方面,现在大多采用的是神经网络1、差别不等式2、模板匹配3等技术。神经网络具有推广能力、并行处理和自组织性等特性,因此它适合用于图像识别4。特别在图像进行特征提取和识别时,神经网络明显优于传统的识别方法5。目前使用最为广泛的神经网络是 BP 网,它对样本的识别率虽然很高。但网络训练比较麻烦,需要选择大量的样本才能保证最终的识别结果。同时,在实现过程中,由于受参数初始化的影响,它时常会无法收敛,或陷入局部极值。差别不等式需要每一张纸币的特征差别

10、点和选取合适的阈值,这些需要专家根据经验来选择,因此具有较大的主观性。1.3 识别的目的和意义本文根据银行卡号的特点,设计了一个基于模版匹配的银行卡号识别程序, 经过实验发现,这个程序可以比较快速而准确地识别银行卡号,并且基本上可以保证银行卡号识别功能要求。本文通过对图像处理与模式识别中已有算法的分析研究,设计并实现了基于模板识别的银行卡号识别系统。不仅可以识银行卡号, 其相关技术也可应用到车牌号码、护照号、身份证号或其他印刷体字符的识别。61.4 OpenCV 开源图像库本程序采用了在 C+6.0 上采用了 OpenCV 工具(OpenCV 版本 1.0)实现了银行卡号的识别。OpenCV

11、的全称是:Open Source Computer Vision Library。OpenCV 是一个基于(开源)发行的跨平台计算机视觉库,可以运行在 Linux、Windows 和 Mac OS 操作系统上。它轻量级而且高效由一系列C 函数和少量C+ 类构成,同时提供了 Python、Ruby、MATLAB 等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。Opencv 避免了 VC 代码对图像进行处理的繁琐细节,而且由于 opencv 包含大量的开源图像处理函数,可以方便的对其进行修改和应用,在保证精度的同时大大减少识别的时间。1.5 程序的模块银行卡号的自动识别主要包含图 1

12、的几个模块。图 1 银行卡号识别流程图图像预处理模块是用来进行银行卡卡号识别的前期准备工作的模块。图像处理模块的要求就是把原始图像处理为适合后续模块处理要求的图像。一般用来去除图像中不需要的信息。字符分割模块是对预处理后的图像进行卡号字符的准确定位与分割,它是卡号识别系统中一个较为关键的模块,卡号定位与分割的准确与否将直接影响系统的识别率。字符分割的准确性依赖于卡号定位和图像的清晰度。如果图像中有着较为明显的干扰和噪声,二值化图像中可能出现字符粘连,需要特殊处理。字符定位是在分割出的图像中找到卡号各个字符所在位置并将其从中分离出来,为后面卡号字符识别作准备。特征提取的主要目的是从那些已分割出来

13、的单个卡号字符图像中提取出用于区分不同字符的本质特征,用来识别。字符识别是在数字模板库中找到和待识字符匹配的字符。模板库是在银行卡号识别系统实现后创建的数字模板库。7第 2 章图像预处理模块2.1 引言整个识别系统主要由图像预处理模块、字符分割模块、字符定位模块、字符识别模块几个模块组成。下面详细介绍这几个模块是如何用 opencv 的函数实现的。以一张编号为 9559981090571602515 的银行卡为例来介绍系统的整个识别过程。图像预处理模块是用来进行银行卡号识别的前期准备工作的模块。图像处理模块的要求就是把原始图像处理为适合后续模块处理要求的图像。本系统的原始图像采用 RGB 图像

14、,系统的图像处理模块主要对原始图像进行灰度化、二值化等处理。银行卡原始图像如图 2 所示。图 2 原始图像2.2 灰度化处理图像灰度化处理就是将指定图像每个像素点的 RGB 三个分量通过一定的算法计算出该像素点的灰度值,使图像只含亮度而不含色彩信息。本程序中一开始得到的采集的银行卡图像是彩色图像,其中包含了大量颜色信息,但识别卡号并不需要关心这些颜色信息,这些颜色信息反而会对银行卡卡号的识别造成干扰并且颜色信息浪费了大量数据空间储存。所以可以通过对原始图像进行灰度化处理来去掉银行卡的颜色信息,这样有利于后续模块的处理并且可以节约大量的系统的存储空间。8一般有以下四种方法对彩色图像进行灰度化。1

15、)分量法将彩色图像中的三分量的亮度作为三个灰度图像灰度值,可根据需要选取一种灰度图像。f1(i,j)=R(i,j)f2(i,j)=G(i,j)f3(i,j)=B(i,j) 其中 fk(i,j)(k=1,2,3)为转换后的灰度图像在(i,j)处的灰度值。2. 最大值法将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。f(i,j)=max(R(i,j),G(i,j),B(i,j) 3. 平均值法将彩色图像中的三分量亮度求平均得到一个灰度值。f(i,j)=(R(i,j)+G(i,j)+B(i,j) /3 4. 加权平均法根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,按下式对 RGB 三分量进行加权平均能得到较合理的灰度图像。f(i,j)=0.30R(i,j)+0.59G(i,j)+0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1