基于人工智能的文本检测识别技术应用
包艳艳 熊伟 焦永禄
1.西安翻译学院信息工程学院,陕西省西安市710105.西安讯飞超脑信息科技有限公司,陕西省西安市710076
1.引言
正文随着互联网金融的快速发展,金融行业也融入了人工智能、大数据等相关技术,为人们的日常消费提供了更加便利的支付方式。该技术的引入为我国的老龄化时代的银行业务做出了重要贡献。
当今的银行系统已经全面普及了APP 业务办理和手机支付,为当代的经济发展提供了更多惠民政策,但是我国目前在普及技术的同时不可忽略的是老龄化人群对手机支付和APP 网上银行的使用并不熟练,据银行实际测试可知,手动输入16-19 位银行卡号时速度慢,易出错,因此导致涉及到银行卡绑定的业务办理时效性低,用户体验性差,业务人员重复性工作量加重等问题的衍生[1]。
随着图像识别技术的不断发展,目前通过图像识别技术进行银行卡识别的方法受到了老年人一致的好评,目前该技术也被年轻用户所追捧,因此不断更新和提高银行卡识别技术是一项及其有必要的研究。
本文主要研究的银行卡识别技术是基于图像识别技术进行实现,据调研,目前的银行卡识别大多数是基于OpenCV 软件库进行系统开发,并结合C 语言或Python 语言实现视觉应用技术。
字符识别技术已经在车牌识别、银行卡识别和文本识别等领域,基于字符分割的技术通过预处理获取单个字符图像[2],以及将整个图片作为输入通过 CNN、多分类器、RNN 等形式直接获取的免分割方法[3][4]。本文选用字符分割的方式实现银行卡的识别技术。
很多学者使用了多种方法实现银行卡识别技术,其中深度学习方法主要使用文本检测,并通过反卷积提高检测的精度,但目前的难度在于字符间距的阈值确定。因此需要针对不同的银行卡提出不同的文本切割方法。本文将通过Sobel 算子和Canny 算子对本文进行轮廓提取,对比不同算法之间的差异[5]。
2.银行卡识别系统设计
关于银行卡识别系统的设计,应该先对数据集进行获取,并对获取到的银行卡信息进行数据分析。确定出能够准确对银行卡信息进行定位的方法。并对数据进行分割,根据分割的数据与模板数据进行匹配。通过设置不同的阈值,提高分割的精度。最终在旋转、缩放和视角恒定的情况下,能够通过模板匹配技术对数据进行识别,识别流程如图1 所示。

2.1 数据获取及分析
数据获取是银行卡识别中及其重要的技术,因此调研市场上不同的银行卡进行分析,由于不同的银行使用的银行卡数据分隔有所不同,本次以中国银行的信用卡为例,进行16 位的数据分割,其中数据的划分区域为4个区域,每个区域中包括4 个字符,银行卡由机器压印成的凹凸卡,该卡的长度为 85.60mm,宽 53.98mm,厚度1mm 的塑料卡片[6]。由于压印字符与背景颜色不同,因此可以通过不同的色差进行区分,银行卡数据分析的过程如图2 所示。

模板数据获取也是极为重要的数据,由于目前需要处理的是阿拉伯数字的 0-9,因此模型获取也需要对模型数据进行数据分析。模型数据的分析如图3 所示。

2.2 数据预处理
获取到的原始图片需要对图片进行预处理,主要在python 语言的基础上通过OpenCV 库进行图像处理,首先可以通过灰度化处理将彩色图片转化为灰度图,该原理是将图像三原色红绿蓝的RGB 三通道转化成等分量的灰度图,其中灰度值大的像素点比较亮,反之比较暗,该过程被称之为灰度化,将三通道数据转换成单通道,需要通过加权处理进行灰度值计算,本次实验参考相关经验设置权值分别为0.299、0.587、0.144[7]。灰度化的转换公式表示为:
gray=ω1*B+ω2*G+ω3*R
由于拍摄到的图片会受到光照和对比度等因素的影响,导致局部过亮或者过暗,可以通过算法进行灰度值的调整。为了使灰度值在一定区间变得较为平滑,更好的满足对比度的相关要求,为银行卡的识别技术提供更好的作用,采用形态学过程即滤波算法实现平滑处理的效果[8][9]。因此本次采用顶帽的方式提升轮廓的亮度。
二值化处理是将图像的灰度值处理为非黑即白的颜色,该处理能够提高计算的速度,但在该过程中若使用不当将会丢失很多信息。因此阈值的设置对图像二值化处理的效果有极大的作用。本次通过使用全值阈值二值化计算分布在每个区间的像素点数量,并对其进行归一化。经过实验进行对比,将根据自适应二值化和Otus 二值化进行最优选择的结果进行二值化的算法。两者算法优化处理能够减少光线对数据的影响,二值化结果如图4所示。

3.银行卡定位及识别技术
银行卡的准确定位是及其重要的一部分,边缘检测技术在定位中起到了先行作用,字符分割技术可以通过银行卡数据的间隔,总结其特征,根据宽度、高度和间距将字符准确分割,识别技术是关键的算法,可以根据模板匹配等算法实现银行卡号的识别技术。
3.1 边缘检测技术
由于图片信息中的边缘信号较为突出,因此在卡号定位过程中,可以分析边缘图片的数据,并通过数据对比发现边缘的灰度值变换较为明显,可以通过边缘检测实现银行卡的字符定位。分析调研可知Sobel 算子、Canny算子、Roberts 算子和Prewitt 算子是常用的一阶微分算子。
Canny 算子在边缘提取上的效果较好,能够处理白噪声影响引起的阶跃边缘效果俱佳。由于Canny 算子在检测过程中不会丢失重要的边缘信息,且定位的边缘信息与实际边缘结果差不 Z ,Canny 算子进行边缘定位的效果如图5 所示[10]。

Sobel 算子是通过小且是整数的滤 和垂 向上做卷积,因此需要的运算资源较少,对于图像中频率较高的地方,它所得到的梯度近 似 ],Sobel 算子进行图像处理的效果如图6 所示。

通过实验对比发现,在Sobel 算子的边缘提取过程中,数据的失真性较小,因此本文采用 Sobel 算子的垂直方向的亮度差分近似值对边缘信息进行提取,能够将边缘的信息准确的描述,然后将周围信息进行膨胀腐蚀的形态学操作可以提高识别的准确率。
3.2 字符分割
根据分析可知,银行卡的信息中包含有背景信息,因此需要根据数据分析,将背景等干扰项信息排除,得到只包含数字的四个区域。为了防止背景识别的情况 采用了循环遍历的方式进行了轮廓绘制,同时根据每个轮廓的宽高比进行过滤,允许信用卡从不相关换掉区域修剪数字,然后从左到右对分组进行排序,并使用阈值处理进行轮廓的查找和筛选。从而实现卡号的精准定位,重点区域分割如图 7 所示。

根据卡号精准定位将信息获取,然后通过分析,将该字符划分先划分为 4 个重点区域,并根据重点区域中的信息对4 个区域进行循环划分单个字符进行划分,本文划分的单个字符分割的大小为宽度45,高度77,划分完字符之后接下来要进行模板匹配的任务。
3.3 模板匹配
基于 OpenCV 的模板匹配技术能将已 的图像数据与预先导入且分割完整的模板数据进行对比运算。目前的模板匹配主要解 的对应关系,即通过图像匹配发现图像之间的差别或相似度。第二类 进 类似目标的查找。本文主要是实现第一类模板匹配。
目前比较常用的特征提取的方法有 HOG、LBP、SIFT 和Haar-like 等对字符的特征进行准确描述模板匹配,本文采用归一化相关系数法实现模板匹配的效果[12]。通过将分割好的字符与模板字符进行对比计算分割字符与模板字符的相似度高低进行评判。
使用模板匹配技术可以避免标注数据、训练对象检测器和调优超参数等繁琐的任务。模板匹配的计算方法如公式 2 所示,其中为模板图像,为目标图像[13]。

该方法能够将银行卡的数字区域从左到右依次遍历,对目标图像与模板图像进行计算对比。相关系数最大的值即为银行卡分割字符所对应的识别结果。
4.总结与展望
人工智能技术结合数字金融行业,为人们提供了更加便捷的支付方式。本文借助于目前已有的技术实现了银行卡的识别研究,编写了OpenCV 的图像识别技术,并结合了模板匹配实现了银行卡的准确识别,研究的过程中通过了多种对比和实验得出一套较为完整的银行卡识别系统。缩短了支付时间也提高了用户实用的便捷度。本文主要通过数据获取,图像预处理和模板匹配实现银行卡识别,在接下来的研究中将考虑加入Hough 变换、投影法和 Radon 变换等倾斜校正算法,通过对坐标系的变换实现复杂背景和复杂环境进行调整。
本文实验的方法是实用模板匹配的方法进行银行卡的识别技术,后期的研究中可以通过主流的分类算法和深度学习的网络模型实现更加精准化的识别技术。
致谢
本文研究工作受到人工智能翻译陕西省高校工程研究中心资助。
参考文献
[1] 涂亚飞. 银行卡号字符的分割与识别算法研究[D]. 北京交通大学, 2017.
[2] [2] Zhang L, Wang P, Li H, et al. A robust attentional framework for license plate recognition in the wild[J]. IEEE Transactions on Intelligent Transportation Systems, 2020, 22(11): 6967-6976.
[3] Li P, Nguyen M, Yan W Q. Rotation correction for license plate recognition[C]//2018 4th International Conference on Control, Automation and Robotics (ICCAR). IEEE, 2018: 400-404.
[4] 曾淦雄,柯逍.基于 3D 卷积的图像序列特征提取与自注意力的车牌识别方法[J].智能科学与技术学报,2021, 3 (3): 12.
[5] 谭诗雨, 杨玲, 师春香,等. 复杂背景下银行卡号识别方法研究[J]. 成都信息工程大学学报, 2021,36(3):6.
[6] 孟菲. 基于 Gabor 特征的银行卡号识别算法研究[D]. 大连海事大学, 2017.
[7] 邸平. 基于卷积神经网络的银行卡数字识别研究[J]. 电脑与信息技术, 2021, 29(
8] 赵慧敏. 基于深度学习的银行卡识别系统设计开发[D]. 华北电力大学(北京), 201
[9] 吴俊. 基于支持向量机的银行卡号识别系统设计与实现[D]. 扬州大学, 2020.
[10] 俞新星, 任勇, 史梦安,等. 基于数字图像处理的银行卡号识别算法研究[J]. 电脑与信息技术, 2020,28(3):5.
[11] 徐毓凯, 杨国平. 基于Sobel 算子的银行卡号识别研究[J]. 计算机与数字工程, 2021
[12] 郑琳,王福龙.改进 HOG 特征的车牌识别算法[J].软件导刊,2022,21(05):193-197.
[13] 贾树林, 郭磊, 马双宝,等. 基于模式匹配的银行卡卡号定位与识别算法[J]. 武汉纺织大学学报, 2021,34(6):6.......