一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种银行卡的OCR识别方法、装置、设备和介质与流程

2022-05-18 16:49:59 来源:中国专利 TAG:

一种银行卡的ocr识别方法、装置、设备和介质
技术领域
1.本发明涉及计算机技术领域,特别涉及一种有效识别银行卡的ocr识别方法、装置、设备和介质。


背景技术:

2.ocr(optical character recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。
3.在光学字符识别领域,很多方法都是通用字符识别,要求的场景都是不存在色彩复杂的背景,光照强度变化不明显的情况。但是在银行卡识别中,不同的拍摄手法和背景图片都会对文字的检测和识别产生影响。
4.现有的ocr识别方法,存在如下缺点:
5.1、现有ocr识别针对都是通用模型,所需要识别的字体大多是白纸黑字的标准字体。若需要识别像银行卡这样的复杂背景,且各银行的字体不一样,往往不会有很好的识别效果。
6.2、ocr识别需要先定位再检测。当前的检测模型均是针对单行文字,且若两个文字之间的间隔较大,会得到两个检测框,影响识别结果。


技术实现要素:

7.本发明要解决的技术问题,在于提供一种银行卡的ocr识别方法、装置、设备和介质,即使银行卡背景复杂,以及摄取图像时因光照强度、拍摄角度等情况的干扰,也能准确、高效地识别相关信息。
8.第一方面,本发明提供了一种银行卡的ocr识别方法,包括下述步骤:
9.s1、检测角度模型检测银行卡图片的输入角度,若输入角度不是正确角度,则将输入角度旋转为正确角度;
10.s2、文本检测模型检测处于正确角度的银行卡图片,先识别出银行卡图片各个可能存在文字的图像区域,利用fpn网络结构关注银行卡图片中的细节信息和语义信息,得到感兴趣区域;
11.s3、文本识别模型对感兴趣区域通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果;
12.s4、全连接层对识别结果进行多字符的分类,得到不同图像区域的字符串;
13.s5、对得到的不同图像区域的字符串,利用模板匹配的方式获取银行卡信息。
14.第二方面,本发明提供了一种银行卡的ocr识别装置,其特征在于:包括:
15.检测角度模型,用于检测银行卡图片的输入角度,若输入角度不是正确角度,则将输入角度旋转为正确角度;
16.文本检测模型,用于检测处于正确角度的银行卡图片,先识别出银行卡图片各个可能存在文字的图像区域,利用fpn网络结构关注银行卡图片中的细节信息和语义信息,得到感兴趣区域;
17.文本识别模型,用于对感兴趣区域通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果;
18.全连接层,用于对识别结果进行多字符的分类,得到不同图像区域的字符串;
19.模板匹配模块,用于对得到的不同图像区域的字符串,利用模板匹配的方式获取银行卡信息。
20.第三方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
21.第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
22.本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:先经过文本检测模型识别出银行卡图片各个可能存在文字的图像区域,图像经过fpn网络结构提取图像中包含文字的得到感兴趣区域,由于fpn网络结构的向上通道层采用的是卷积核较小(1*1)的卷积层,从而可用较小的感受野关注银行卡中的单字信息,向下通道将向上通道和向下通道对应层特征叠加,使得同一层的特征即包括上层的语义信息又包括下层的细节信息,且向下通道采用的是卷积核较大(3*3)的卷积层,从而拥有更大的感受野,使得上下文的语义信息更加丰富。再将文本检测模型输出的感兴趣区域输入到文本识别模型,通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果。由于文本识别模型用5层3*3的卷积层提取复杂场景下更深层次的信息,再利用双向lstm对分割的图像区域获取上下文信息,因而即使银行卡背景复杂,以及摄取图像时因光照强度、拍摄角度等情况的干扰,也能准确、高效地识别相关信息。
23.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
24.下面参照附图结合实施例对本发明作进一步的说明。
25.图1为本发明实施例一中方法中的流程图;
26.图2为本发明各个模型的原理框架示意图;
27.图3为本发明实施例二中装置的结构示意图;
28.图4为本发明实施例三中电子设备的结构示意图;
29.图5为本发明实施例四中介质的结构示意图。
具体实施方式
30.本技术实施例通过提供一种银行卡的ocr识别方法、装置、设备和介质,即使银行卡背景复杂,以及摄取图像时因光照强度、拍摄角度等情况的干扰,也能准确、高效地识别相关信息。
31.本技术实施例中的技术方案,总体思路如下:文本检测模型利用fpn网络结构提取银行卡图像中包含文字的得到感兴趣区域,由于fpn网络结构的向上通道层采用的是卷积核较小(1*1)的卷积层,从而可用较小的感受野关注银行卡中的单字信息,向下通道将向上通道和向下通道对应层特征叠加,使得同一层的特征即包括上层的语义信息又包括下层的细节信息,且向下通道采用的是卷积核较大(3*3)的卷积层,从而拥有更大的感受野,使得上下文的语义信息更加丰富。再将文本检测模型输出的感兴趣区域输入到文本识别模型,通过五个卷积层获取复杂场景下更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果。因而即使银行卡背景复杂,以及摄取图像时因光照强度、拍摄角度等情况的干扰,也能准确、高效地识别相关信息。
32.另外,为了能更加精准的识别,在模型的训练中,可添加更加复杂背景和生成包含银行卡字体的图片作为训练样本,包括摄取图像时受光照强度或拍摄角度干扰的图片,从而使模型在实际应用中能做更精准的识别预测和校验。
33.实施例一
34.如图1所示,本实施例提供一种银行卡的ocr识别方法,包括下述步骤:
35.s1、检测角度模型检测银行卡图片的输入角度,若输入角度不是正确角度,则将输入角度旋转为正确角度;
36.s2、文本检测模型检测处于正确角度的银行卡图片,先识别出银行卡图片各个可能存在文字的图像区域,利用fpn网络结构关注银行卡图片中的细节信息和语义信息,得到感兴趣区域;
37.s3、文本识别模型对感兴趣区域通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果;
38.s4、全连接层对识别结果进行多字符的分类,得到不同图像区域的字符串;
39.s5、对得到的不同图像区域的字符串,利用模板匹配的方式获取银行卡信息。
40.其中,作为本实施例的一种更优或更为具体的实现方式,所述方法还具有如下特点:
41.如图2所示,所述文本检测模型依次包括向上通道、向下通道和拼接层;通过卷积、池化、激活函数提取图片中存在文字的感兴趣区域。所述向上通道对银行卡图片的特征进行郑积得到四个不同大小的特征图,分别为1/4、1/8、1/16、1/32大小,所述向下通道将四个特征图分别上采样为同一大小,即无均为1/4大小;所述拼接层将上采样后的四个特征图进行拼接;其中:
42.所述向上通道包括一层输入层和四层卷积层,五层卷积层的卷积核较小,用于关注银行卡中的单字信息;四层卷积层中,相对低层网络用来关注银行卡的细节信息,相对高层网络用于关注银行卡的语义信息;相对低层是指一个卷积层相较于另一卷积层而言为低
层网络,相对高层网络是指一个卷积层相较于另一卷积层而言为高层网络,而非绝对的低层或高层,如第三层卷积层相对第四层卷积层而言为低层网络,但相对第二层卷积层而言为高层网络。
43.所述向下通道的各卷积层整合与所述向上通道中同层的数据和本卷积层的上一卷积层的数据,获得不同尺度的信息,将向上通道和向下通道对应层特征叠加,使得同一层的特征包括上层的语义信息和下层的细节信息;
44.所述拼接层用于拼接所述向下通道的各卷积层输出的不同维度数据,根据不同维度数据采集不同粒度的信息,首先用一层卷积层整合不同维度的数据,再用两层空洞卷积层做特征筛选,得出目标区域文字中最符合的感受野尺度特征,并得到感兴趣图像区域。
45.所述向上通道的具体构成为:
46.第一层是输入层,用于输入图像;
47.第二层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为512;
48.第三层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为256;
49.第四层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为128;
50.第五层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为64;
51.第二层至第五层得到四个特征图,分别为1/4、1/8、1/16、1/32大小;1*1的卷积层拥有更小的感受野,从而可用较小的感受野关注银行卡中的单字信息使得上下文的语义信息更加丰富。
52.所述向下通道的具体构成为:
53.第一层是所述向上通道的第五层;
54.第二层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的1倍;
55.第三层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的2倍;
56.第四层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的4倍;
57.第五层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的8倍;
58.第二层至第五层将四个特征图分别上采样为1/4大小,由于四个特征图的特征大小不同,所以要上采样把小的特征扩大为与大的特征大小相同以拼接下采样的卷积层的特征;采用3*3的卷积层拥有更大的感受野,使得上下文的语义信息更加丰富。
59.所述拼接层的具体构成为:
60.第一层是卷积层,卷积核为3*3,填充为1*1,通道数为64,归一化方法为bn,激活函数为relu;
61.第二层是空洞卷积层,卷积核为2*2,步长为2*2,通道数为64,归一化方法为bn,激活函数为relu;
62.第三层是空洞卷积层,卷积核为2*2,步长为2*2,通道数为64,激活函数为sigmoid。
63.如图2所示,所述文本识别模型包含文字的感兴趣区域,经过一系列卷积、池化和
激活函数后,再通过双向lstm层获取上下文信息帮助识别,比如当识别出“银”字的时候,“行”字就紧跟其后被识别,具体构成为:
64.第一层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为64,用来提取特征;
65.第二层是最大池化层,滑动窗口为2*2,步长为2*2,用2*2的滑动窗口来捕捉长宽比近似的文字,并增加特征维度;
66.第三层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为128,用来提取特征;
67.第四层是最大池化层,滑动窗口为2*2,步长为2*2,用2*2的滑动窗口来捕捉长宽比近似的文字,并增加特征维度;
68.第五层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为256;
69.第六层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为256;
70.第七层是最大池化层,滑动窗口为1*2,步长为2*2;用1*2的滑动窗口出来捕捉长宽比较大的数字,并增加特征维度;
71.第八层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为512,归一化方法为bn;
72.第九层是最大池化层,滑动窗口为1*2,步长为1*1,用1*2的滑动窗口出来长宽差别较大的数字;
73.第十层是卷积层,卷积核为2*2,步长为1*1,通道数为512;
74.第十一层是前向长短期记忆网络层,隐藏单元数为512,获取当前文字的下文信息;
75.第十二层是反前向长短期记忆网络层,隐藏单元数为512,获取当前文字的上文信息。
76.基于同一发明构思,本技术还提供了与实施例一中的方法对应的装置,详见实施例二。
77.实施例二
78.如图3所示,在本实施例中提供了一种银行卡的ocr识别装置,包括:
79.检测角度模型,用于检测银行卡图片的输入角度,若输入角度不是正确角度,则将输入角度旋转为正确角度;
80.文本检测模型,用于检测处于正确角度的银行卡图片,先识别出银行卡图片各个可能存在文字的图像区域,利用fpn网络结构关注银行卡图片中的细节信息和语义信息,得到感兴趣区域;
81.文本识别模型,用于对感兴趣区域通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果;
82.全连接层,用于对识别结果进行多字符的分类,得到不同图像区域的字符串;
83.模板匹配模块,用于对得到的不同图像区域的字符串,利用模板匹配的方式获取银行卡信息。
84.其中,作为本实施例的一种更优或更为具体的实现方式,所述装置还具有如下特
征:
85.所述文本检测模型依次包括向上通道、向下通道和拼接层;所述向上通道对银行卡图片的特征进行卷积得到四个不同大小的特征图,所述向下通道将四个特征图分别上采样为同一大小;所述拼接层将上采样后的四个特征图进行拼接;其中:
86.所述向上通道包括一层输入层和四层卷积层,五层卷积层的卷积核较小,用于关注银行卡中的单字信息;四层卷积层中,相对低层网络用来关注银行卡的细节信息,相对高层网络用于关注银行卡的语义信息;
87.所述向下通道的各卷积层整合与所述向上通道中同层的数据和本卷积层的上一卷积层的数据,获得不同尺度的信息,将向上通道和向下通道对应层特征叠加,使得同一层的特征包括上层的语义信息和下层的细节信息;
88.所述拼接层用于拼接所述向下通道的各卷积层输出的不同维度数据,根据不同维度数据采集不同粒度的信息,首先用一层卷积层整合不同维度的数据,再用两层空洞卷积层做特征筛选,得出目标区域文字中最符合的感受野尺度特征,并得到感兴趣图像区域。
89.所述向上通道的具体构成为:
90.第一层是输入层,用于输入图像;
91.第二层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为512;
92.第三层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为256;
93.第四层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为128;
94.第五层是卷积层,卷积核为1*1,步长为1*1,填充为1*1,通道数为64;
95.第二层至第五层得到四个特征图,分别为1/4、1/8、1/16、1/32大小;
96.所述向下通道的具体构成为:
97.第一层是所述向上通道的第五层;
98.第二层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的1倍;
99.第三层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的2倍;
100.第四层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的4倍;
101.第五层是卷积层,卷积核为3*3,填充为1*1,通道数为64,上采样方式中,输出为输入的8倍;
102.第二层至第五层将四个特征图分别上采样为1/4大小;
103.所述拼接层的具体构成为:
104.第一层是卷积层,卷积核为3*3,填充为1*1,通道数为64,归一化方法为bn,激活函数为relu;
105.第二层是空洞卷积层,卷积核为2*2,步长为2*2,通道数为64,归一化方法为bn,激活函数为relu;
106.第三层是空洞卷积层,卷积核为2*2,步长为2*2,通道数为64,激活函数为sigmoid。
107.所述文本识别模型的具体构成为:
108.第一层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为64,用来提取特征;
109.第二层是最大池化层,滑动窗口为2*2,步长为2*2,用2*2的滑动窗口来捕捉长宽比近似的文字,并增加特征维度;
110.第三层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为128,用来提取特征;
111.第四层是最大池化层,滑动窗口为2*2,步长为2*2,用2*2的滑动窗口来捕捉长宽比近似的文字,并增加特征维度;
112.第五层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为256;
113.第六层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为256;
114.第七层是最大池化层,滑动窗口为1*2,步长为2*2;用1*2的滑动窗口来捕捉长宽比较大的数字,并增加特征维度;
115.第八层是卷积层,卷积核为3*3,填充为1*1,步长为1*1,通道数为512,归一化方法为bn;
116.第九层是最大池化层,滑动窗口为1*2,步长为1*1,用1*2的滑动窗口来长宽差别较大的数字;
117.第十层是卷积层,卷积核为2*2,步长为1*1,通道数为512;
118.第十一层是前向长短期记忆网络层,隐藏单元数为512,获取当前文字的下文信息;
119.第十二层是反前向长短期记忆网络层,隐藏单元数为512,获取当前文字的上文信息。
120.由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
121.基于同一发明构思,本技术提供了实施例一对应的电子设备实施例,详见实施例三。
122.实施例三
123.本实施例提供了一种电子设备,如图4所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任一实施方式。
124.由于本实施例所介绍的电子设备为实施本技术实施例一中方法所采用的设备,故而基于本技术实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本技术实施例中的方法不再详细介绍。只要本领域所属技术人员实施本技术实施例中的方法所采用的设备,都属于本技术所欲保护的范围。
125.基于同一发明构思,本技术提供了实施例一对应的存储介质,详见实施例四。
126.实施例四
127.本实施例提供一种计算机可读存储介质,如图5所示,其上存储有计算机程序,该
计算机程序被处理器执行时,可以实现实施例一中任一实施方式。
128.本技术实施例提供的方法、装置、系统、设备及介质,先经过文本检测模型识别出银行卡图片各个可能存在文字的图像区域,图像经过fpn网络结构提取图像中包含文字的得到感兴趣区域,由于fpn网络结构的向上通道层采用的是卷积核较小(1*1)的卷积层,从而可用较小的感受野关注银行卡中的单字信息,向下通道将向上通道和向下通道对应层特征叠加,使得同一层的特征即包括上层的语义信息又包括下层的细节信息,且向下通道采用的是卷积核较大(3*3)的卷积层,从而拥有更大的感受野,使得上下文的语义信息更加丰富。再将文本检测模型对感兴趣区域输入到文本识别模型,通过五个卷积层获取更深层次的信息,并在五个卷积层之后添加双向lstm层以获取当前图片区域的上下文信息,利用上下文信息对图片区域做更精准的结果预测和校验,得到识别结果。由于文本识别模型用5层3*3的卷积层提取复杂场景下更深层次的信息,再利用双向lstm对分割的图像区域获取上下文信息,因而即使银行卡背景复杂,以及摄取图像时因光照强度、拍摄角度等情况的干扰,也能准确、高效地识别相关信息。
129.本领域内的技术人员应明白,本发明的实施例可提供为方法、装置或系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
130.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
131.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
132.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
133.虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献