
摘要:为了快速准确的获取银行卡号信息,文章介绍了一种改进的LeNet-5神经网络结构。首先需要对原始数据预处理,通过数学形态学进行粗定位,最后通过卡行号的位置和特征进行精确定位。在卡号分割阶段,通过转换颜色空间对背景信息进行了去除,再使用了投影分析法对银行卡号分布形态做出了判断,最后使用K均值聚类算法对卡号行图像进行分割。在卡号识别阶段,先对数据进行数据增强,再用其对模型进行训练,将分割后的单独字符图像输入改进后的卷积神经网络LeNet-5对卡号进行识别,识别率达到了99.6%。
随着智能手机的发展,移动支付成为生活中不可或缺的部分。据中国互联网络信息中心(CNNIC)发布的第四十五次报告,截至2020年3月,我国网络购物用户规模达7.10亿,较2018年底增长16.4%,占网民整体的78.6%。我国2019年的移动支付交易金额超过300万亿元,在世界排行第一。运用微信、支付宝等移动支付手段的同时[1],必然需要进行个人账号与银行卡的绑定,手动输入16或19位银行卡号过程中,常发生输错或输漏的情况,需要反复核对信息,如果能通过图像识别直接扫描出银行卡号,会给人们的日常生活带来更多便利。
银行卡识别的核心是识别卡上的凹凸印刷字符,需要用到字符识别技术。从1929年陶舍克开创了光学字符识别(OpticalCharacterRecognition)[2]以来,它已经成为多个领域的研究重点,综合了图形数字学和神经网络等多学科知识,得到广泛运用。人脑对于手写字符的识别远胜于机器识别,而神经网络正是模拟人脑中的生物神经网络来进行识别工作的。神经网络的网络结构是分布式的,能够并行地处理大量信息,识别速度较高[3]。上世纪八十年代,日本科学家福岛邦彦(KunihikoFukishima)研究出了卷积神经网络的雏形,后来很多研究者也陆续发表了卷积神经网络相关的研究成果,在手写数字模式识别上卷积神经网络取得了较好的效果。卷积神经网络是一种前馈神经网络,网络层数越深,提取到的特征也会越多越抽象,卷积神经网络相邻两层之间的神经元可以通过权值共享使其具有更少的网络连接数和权值参数,从而降低模型学习的复杂度,使训练过程变得更容易,收敛速度较传统网络也更快[4],提高卷积神经网络的识别精度对于很多实际应用来说有非常重要的意义。
LeNet-5作为经典的卷积神经网络模型,对于手写字符的识别率可以达到99%。将卷积神经网络用在银行卡识别上,相对于特征提取与支持向量机或模板匹配,能达到更好的识别效果,会给移动支付提供更多便捷,也为卷积神经网络的其他方面实用化提供新的路线。
1、数据预处理和卡号行定位
银行卡的识别过程如下图1所示:
现实中银行卡的规格大多符合国际标准ISO/IEC7810中定义的ID-1标准,本文采用网上搜索素材和现实拍照的方法,收集了1084张卡号截图及标签,在卷积神经网络训练卡号识别环节,采取数据增强的方法。
1.1原始数据预处理
现在图片一般都是彩色的,为了加快处理速度,节省内存空间,将原始图像进行灰度化处理。图像灰度化处理的常见方法包括平均值法、最大值法以及加权平均值法。本文采用加权平均值法,该方法获得的图像边缘清晰,纹理明确。加权平均值法是通过对R、G、B值的加权计算,得出灰度值,即:
由于在人眼中,绿色反映最为强烈,蓝色最不敏感,为了取到较好效果,本文三个权值分别依次取0.299,0.587,0.144。由于拍摄条件不同,还需要对图像进行归一化处理,常见归一化图像缩放算法包括最邻近插值法、双线性插值和双三次插值[5]。本文选择双线性插值法,在x轴和y轴选取相邻四点,对于纵向和横向都进行线性插值,虽然速度相较最邻近插值法慢,但处理后的图像不会发生像素不连续现象,所得图像质量较高。双三次插值法相比双线性插值法对于图像中的高频分量保存更好,但运算量更大,耗费的时间更长。
噪声会导致图像的清晰度下降,因此除了灰度化和归一化处理,还需进行噪声处理。常用的噪声去除方法有均值滤波、高斯滤波和中值滤波,经过对比分析后,中值滤波处理后的图像边缘信息最大程度地得到了保留,边缘信息对于之后的卡号分割和识别都有着重要的作用,所以本文使用中值滤波来进行噪声处理。
1.2卡号行定位
本文通过灰度值的变化提取卡号,在字符的边缘,灰度值会剧烈变化,可以通过对银行卡号边缘的检测来提取字符信息。常用的边缘检测算子有Sobel算子、Laplacian算子和Canny算子[6],这几种边缘提取效果如下图2-图4所示:
由实验可知,Canny算子在提取边缘的效果上最好,它结合了高斯函数平滑和梯度运算,对于抗噪和边缘提取做出了较好的折中。本文采用Canny算子来进行边缘提取,参照车牌识别中使用数学形态学对车牌区域进行初步定位的方法[7],对卡号行进行粗定位。对提取边缘后的银行卡图像首先进行闭运算操作,消除卡号间的空隙;然后进行开运算操作来消除噪声,最后将卡号位置变成一个连通区域。
2、卡号分割
2.1背景处理
为了更好地对卡号进行分割,需要对无关背景信息进行消除,而对银行卡号的凹凸字符信息进行保存。本文将原图像的色彩空间从RGB转为YUV[8],Y、U、V三个分量分别代表图像的不同特征,表示颜色的U、V分量中包含着大量背景信息而卡号信息则被大大弱化,需要以此对照消除Y分量中背景的干扰,留下有用的卡号信息。对Y、U、V三分量进行canny算子边缘提取所得到的图像如下所示:
提取后的Y、U、V三通道的图像如下图5-图7所示:
如上图所示,U和V边缘提取后的图像保留了大量的背景干扰花纹。将U、V图像进行遍历逐像素点进行或运算,并对边缘进行膨胀处理,彻底清除背景信息。再在Y图像中进行像素点遍历,若Y图像中一个像素点存在经过膨胀处理的U、V图像的边缘并集中,则判定其为背景干扰点,从Y图中将这点进行清除。经过这些处理后,卡号图像中的背景干扰信息基本大致消除,留下的是比较清洗的银行卡字符图像了(如图8所示)。
2.2卡号分割
背景处理后,需要对定位出的银行卡号图像作字符分割处理,从而得到单个字符图像。本文选择K-means聚类方法来进行字符分割,该算法高效易用[9]。K-means算法本质是一个反复迭代的过程,使各类中所有数据对象到聚类中心欧氏距离的平方和最小。算法在最开始的初始中心点随机选取K值,接下来把其他的数据对象,根据和中心的距离,以最近原则分别把它们分送到对应中心所在的类中,然后根据拉格朗日定理,选择类中的数据点的均值为新的聚类中心,计算所有数据对象到其所在类的中心距离平方和,判断此时的聚类中心和距离平方总和是否有变动,若有变动则继续迭代,否则就完成迭代[10],应用K-means算法需要预先确定K值。
现实中银行卡号的位数一般是16或19位,分布模式为4-4-4-4和6-13两种。将定位出的卡号进行归一化处理,高度统一为80像素,对遍历定位出的卡号提取边缘后的图像进行垂直投影分析,如果字符所在位置和上一个字符位置距离为30像素,可认定此处有一个空隙。若空隙的数量大于等于3,说明卡号分布模式为4-4-4-4,对于卡号行图像先进行聚类分析分割为4组,再对单组进行聚类分割为4个,最后得到16个单独的卡号字符。若缝隙数量小于3个,将卡号行图像分割为两组,对第一组分割为6个单个的卡号字符,对第二组分割为13个单个的卡号字符,最后分割出的19位和16位银行卡号。
3、基于卷积神经网络的卡号识别
本文使用以TensorFlow为后台的Keras深度学习框架进行Python卷积神经网络代码编写。TensorFlow优势在于其灵活的架构,对于异步并行计算提供了多线程、异步操作的技术支持。Keras是一个Python的神经网络领域的接口平台,以模型作为基础的机器学习链接库,将TensorFlow作为后台运行,通过设置ImageDataGenerator函数就可以运用各种数据增强技术。本文通过缩放、旋转、亮度、颜色变化来对于原始图像进行数据增强,使每张原始图像最终增强到数十张。
3.1LeNet-5卷积神经网络结构与实现
LeNet-5是一种经典的卷积神经网络结构,对于图像特征提取分类上取得了良好的效果。它共有八层网络结构,对于1084张卡号截图进行分割之后共得到3413张卡号的单字截图,将其中的2405张作为训练集,1008张作为验证集。进行数据增强后,训练集增强到76800张,测试集增强到64000张,一个batch大小为64,每个epoch中训练集迭代1200次,验证集迭代1000次,最后模型在原版LeNet-5神经网络得到的准确率为83%左右。
虽然银行卡号是印刷体,但还是会有一些残存的背景花纹干扰,在背景去除环节会导致字符的边缘损失,为了提高识别率,可以对原有的LeNet-5神经网络结构进行改进,具体步骤如下:
(1)改变输入图像尺寸和卷积核大小,将输入图像尺寸改变为41*27,第一个卷积层的卷积核大小改变为6*4,第二个卷积层的卷积核为5*3。
(2)在全连接层后添加dropout层,以起到正则化的效果,防止其训练权值因为过度迎合训练集而导致泛化能力下降。
(3)激活函数采用Relu函数,减少计算量,提升了迭代速度,提升模型的稀疏性,缓解过拟合的问题。
(4)输出层使用SoftMax分类器,减少了计算量,更加有效分类。
在使用了改进的Le-Net5网络后,准确率达到了99.6%。
最终对于单张银行卡识别效果如图10所示:
4、结束语
本文通过真实拍照以及网上收集素材等手段采集了大量卡号截图数据,采用数据增强手段,通过对原始图像进行缩放、旋转、剪裁、灰度变化等操作扩大数据库样本数据。在对图像进行了灰度化、归一化和噪声去除的处理后,再以数学形态学为原理初步定位了卡号行所在位置并进行精确定位。通过凹凸字符的图像特点,把图像从RGB空间转到了YUV空间,使用K聚类分析法对卡号进行切割,使用了改进的LeNet-5对切割后的单个卡号字符进行了识别,识别效果良好,该改进算法同样适用于其他研究领域。
由于银行卡正面截图涉及到隐私问题,最后搜集的卡号图像数量十分有限,虽然采用了数据增强的方法,但是模型的泛化能力还有很大提升空间。数学形态学是通过卡号行矩阵的物理形态和位置来确定的,本文研究是基于拍摄图片信息是完整情况下进行的,如果拍摄质量不好或残缺,就有误判数据信息可能,这些也是后续可以继续深入研究的问题。
文章来源:邸平.基于卷积神经网络的银行卡数字识别研究[J].电脑与信息技术,2021,29(05):7-10.
分享:
综合布线是一种模块化、灵活性极高的建筑物内或建筑群之间的信息传输通道,在高校主要作用于网络基础设施、网络安全设备及多种教育信息系统的通联。通过它可以使话音设备、数据设备、交换设备及各种控制设备与信息管理系统连接起来,同时也使这些设备与外部通信网络相连。
2024-12-05随着5G技术的广泛应用,智慧医院作为医疗行业的重要创新方向,将极大地推动医疗服务的数字化、智能化和高效化。然而,与此同时,5G技术也给智慧医院的网络安全带来了新的挑战。5G背景下,智慧医院的医疗数据传输和存储变得更加便捷和高效,但同时也增加了网络攻击的风险。
2024-06-06随着各类信息化系统在医疗行业的广泛应用,数据已成为医疗卫生机构的重要资产。医疗行业关系国计民生,其中医疗数据包含健康状况、病例、处方等大量敏感个人信息,一旦遭到恶意人员篡改、破坏或泄露,会对医疗卫生机构的业务运行、病人隐私安全等构成严重威胁,破坏社会秩序及公共利益。
2024-06-065G技术以其高速、低延迟、高可靠性等特点为医疗行业带来了全新的发展空间。在5G时代,医疗信息化将不再局限于简单的数据传输和信息管理,而是能够更加深入地支持医疗服务的创新和优化。当然,5G时代也面临着一系列的挑战,比如基础设施建设、技术方面、人才不足等问题。
2024-06-06随着信息技术在医疗领域的广泛应用,医院信息系统(HIS)已成为现代医疗机构不可或缺的一部分。这些系统不仅提高了医疗服务的效率,还在病历管理、药物配送和患者监护等方面发挥了重要作用。然而,随着数据量和复杂性的增加,异常检测在确保医院信息系统的可靠性和安全性方面变得越来越重要。
2024-06-06虽然现有的信息安全评估可以协助信息安全决策,但大多数技术在评估中需要大量的定量分析和数值计算,一旦结果出现偏离,不仅会导致评估风险结果与实际风险结果的偏差,还会影响风险量化的实效。为了实现对现有研究的深化,我们将尝试引入堆栈式自编程深度神经网络作为本研究的支撑,并设计一种基于SAE网络的信息安全评估方法的算法设计。
2024-06-06信息技术的急速演进已经深刻改变了医疗行业的运作方式,将其引入数字化和网络化时代。然而,随着医院网络的广泛应用和医疗数据的数字存储,网络信息安全问题愈加凸显[1],直接涉及患者隐私保护和医院正常运营。解决医院网络信息安全问题不仅关系到医院声誉,还关系到患者个人信息的安全,甚至可能对患者的生命健康构成潜在威胁。
2024-06-06近年来,国家公共卫生事业不断发展,疾控机构各项业务信息化程度也不断提高,疾控中心网站也在越来越发挥其重要作用。但各地疾控中心网站规模、内容、质量参差不齐,且没有统一标准。特别是新冠疫情发生以来,公众对公共卫生的关注空前高涨,网站点击量、浏览量、转发量呈现爆发式增长,咨询留言每日激增。这些都对疾控中心网站建设和运营维护提出了更高的要求。
2024-06-06目前大多数中小型医院都已开展了电子病历、预约诊疗、智能导诊、电子支付、远程诊疗等网络技术的普惠应用,基本已建立起以本区域为主的健康医疗服务信息库,小到个人的敏感信息,真实的身份信息,大到群体性的健康数据的统计,甚至基因的信息,这些对实现医疗资源共享,为患者就诊、看病、住院等服务给予了极大的方便,提升了就诊诊疗的工作效率,提高了医院服务水平和核心竞争力。
2024-06-06企业的经营与发展,离不开信息化建设,信息化建设有助于提升企业生产质量,同时,网络信息安全问题一直是制约信息化建设的重要因素。为改变上述局面,企业需要探索解决措施,为可持续发展奠定基础。
2024-03-14我要评论
期刊名称:网络安全技术与应用
期刊人气:2028
主管单位:中华人民共和国教育部
主办单位:北京大学出版社
出版地方:北京
专业分类:科技
国际刊号:1009-6833
国内刊号:11-4522/TP
邮发代号:2-741
创刊时间:2001年
发行周期:月刊
期刊开本:大16开
见刊时间:1-3个月
影响因子:1.646
影响因子:0.693
影响因子:0.706
影响因子:1.052
影响因子:0.194
400-069-1609
您的论文已提交,我们会尽快联系您,请耐心等待!
你的密码已发送到您的邮箱,请查看!