预测模型构建方法、装置、系统及银行卡卡号识别方法与流程

文档序号:19948010发布日期:2020-02-18 09:47阅读:415来源:国知局
预测模型构建方法、装置、系统及银行卡卡号识别方法与流程

本发明属于计算机技术领域,尤其涉及一种预测模型构建方法、装置、系统及银行卡卡号识别方法。



背景技术:

线上支付已经成为大多数人的首选,而很多具有支付功能的金融机构app会需要用户绑定银行卡。手动地输入银行卡号在用户体验上并不是最优,而银行卡光学字符识别(opticalcharacterrecognition,以下简称ocr)功能能提供给用户一个快捷、方便的输入银行卡卡号的功能,用户只需要对着银行卡进行扫描,即可自动识别卡号,很好的提升了用户体验。然而,传统的ocr的方法,通常都需要预先进行字符分割及图像处理工作,获得的银行卡卡号受到银行卡组织标记四边形、相对位置等限制,容易被图像分割等过程影响从而造成识别误差。



技术实现要素:

为了解决现有技术的问题,本发明提出一种预测模型构建方法、装置、系统及银行卡卡号识别方法,本发明不同于大多数ocr的方法,无需额外进行字符分割、图像处理等工作,是一种端到端的方法,可以避免图像切割等过程带来的识别误差。

本发明实施例提供的具体技术方案如下:

第一方面,本发明提供一种预测模型构建方法,所述方法包括:

获取银行卡的银行卡样本图像并对所述银行卡样本图像进行计算处理以得到候选区域;

将所述银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与所述分类标签对应的回归位置以及所述fast-r-cnn模型输出的分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型。

在一些实施例中,将所述银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与所述分类标签对应的回归位置以及所述fast-r-cnn模型输出的分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型具体包括:

提取输入的所述银行卡样本图像的特征以得到特征图像;

将输入的所述候选区域映射至所述特征图像上并对所述候选区域进行池化,得到固定大小的候选区域的特征图像;

对所述候选区域的特征图像进行分类及回归预测,得到分类预测结果、与所述分类预测结果对应的回归位置预测结果;

根据预设的分类标签、与所述分类标签对应的回归位置以及所述分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行更新,将更新后的fast-r-cnn模型确定为预测模型。

在一些实施例中,提取输入的所述银行卡的银行卡样本图像的特征以得到特征图像包括:

提取输入的所述银行卡样本图像的特征,结合上下文特征信息,对所述银行卡样本图像的特征进行特征增强以得到特征图像。

在一些实施例中,所述方法还包括:

对所述银行卡的银行卡样本图像进行去均值处理。

第二方面,本发明提供一种银行卡卡号识别方法,所述方法包括:

获取待识别银行卡的银行卡图像并对所述银行卡图像进行计算处理以得到候选区域;

将所述银行卡图像和候选区域输入至所述预测模型,预测得到待识别银行卡的银行卡卡号以及所述银行卡卡号的位置。

第三方面,本发明提供一种预测模型构建装置,所述装置包括:

获取模块,用于获取银行卡的银行卡样本图像并对所述银行卡样本图像进行计算处理以得到候选区域;

建模模块,用于将所述银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与所述分类标签对应的回归位置以及所述fast-r-cnn模型输出的分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为银行卡卡号识别模型。

在一些实施例中,所述建模模块包括:

特征提取模块:提取输入的所述银行卡的银行卡样本图像的特征以得到特征图像;将输入的所述候选区域映射至所述特征图像上并对所述候选区域进行池化,得到固定大小的候选区域的特征图像;

分类与边界回归模块,用于对所述候选区域的特征图像进行分类及回归预测,得到分类预测结果、与所述分类预测结果对应的回归位置预测结果;

模型更新模块,用于根据预设的分类标签、与所述分类标签对应的回归位置以及所述分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行更新,将更新后的fast-r-cnn模型确定为银行卡卡号识别模型。

在一些实施例中,所述特征提取模块还用于提取输入的所述银行卡的银行卡样本图像的特征,结合上下文特征信息,对所述银行卡样本图像的特征进行特征增强以得到特征图像。

在一些实施例中,所述装置还包括:

处理模块,用于对所述银行卡的银行卡样本图像进行去均值处理。

第四方面,本发明提供一种计算机系统,包括:

一个或多个处理器;以及

与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:

获取银行卡的银行卡样本图像并对所述银行卡样本图像进行计算处理以得到候选区域;

将所述银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与所述分类标签对应的回归位置以及所述fast-r-cnn模型输出的分类预测结果、与所述分类预测结果对应的回归位置预测结果对所述fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型。

本发明提出了一种预测模型构建方法、装置、系统及银行卡卡号识别方法,其中,构建预测模型时,只需获取银行卡的银行卡样本图像并结合目标检测方法的思想,即能完成预测模型的构建,利用本发明中的预测模型可以快速进行银行卡卡号及卡号所处位置的预测,是一种端到端的识别方法,无需对银行卡进行字符分割、图像处理等工作,因而也不受银行卡组织标识、四边形、相对位置等限制,同时还能避免图像切割等可能带来的识别误差。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是一个实施例中一种预测模型构建方法的应用环境图;

图2是一个实施例中一种预测模型构建方法的流程示意图;

图3是一个实施例中将银行卡样本图像以及候选区域输入一模型,根据预设的分类标签、与分类标签对应的回归位置以及fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行训练步骤的流程示意图;

图4是一个实施例中一种银行卡卡号识别方法的流程示意图;

图5是一个实施例中一种预测模型构建装置结构框图;

图6是一个实施例中计算机系统的内部结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请提供的一种预测模型构建方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现,服务器104为静态资源服务器。本申请通过获取的银行卡的银行卡样本图像并结合目标检测方法中的fast-r-cnn网络模型,构建一预测模型;通过该预测模型,可以快速进行银行卡卡号及卡号所处位置的预测,相比传统的银行卡卡号识别方法来说,无需对银行卡进行字符分割、图像处理等工作,因而也不受银行卡组织标识、四边形、相对位置等限制,同时还能避免图像切割等可能带来的识别误差。

在一个实施例中,如图2所示,一种预测模型构建方法,包括如下步骤:

s202、获取银行卡的银行卡样本图像并对银行卡样本图像进行计算处理以得到候选区域。

其中,本实施例选用选择性搜索算法进行计算处理得到候选区域。通过选择性搜索算法,可得到关于银行卡样本图像的若干个候选区域;若干个候选区域中包括:含有银行卡号的候选区域、含有银行名称的候选区域、含有银行图案的候选区域、含有银行卡类型的候选区域等。

该过程具体步骤如下:

1、利用图像分割方法,获取银行卡样本图像的候选区域集合;

2、计算候选区域集合中相邻两个候选区域的相似度并对最相似的两个候选区域进行合并,得到若干候选区域;

3、对上述候选区域进行打分,得到候选区域的建议个数。

其中,本实施例中,在银行卡ocr场景下,选择1000~2000个候选区域。

s204、将银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与分类标签对应的回归位置以及fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型。

其中,预设的分类标签包括:银行卡卡号、银行名称、银行图案、银行卡类型等;与分类标签对应的回归位置包括:银行卡卡号的回归位置、银行名称的回归位置、银行图案的回归位置、银行卡类型的回归位置等。fast-r-cnn模型输出的分类预测结果包括:银行卡卡号、银行名称、银行图案、银行卡类型等,与分类预测结果对应的位置预测结果包括:银行卡卡号的预测回归位置、银行名称的预测回归位置、银行图案的预测回归位置、银行卡类型的预测回归位置等。

通过预设的分类标签、与分类标签对应的回归位置,可以对fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果进行调整,从而反向传播至fast-r-cnn模型中,更新fast-r-cnn模型中的参数,完成对fast-r-cnn模型的训练。在其中一个实施例中,如图3所示,上述将银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与分类标签对应的回归位置以及fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型可以包括如下步骤:

s302、提取输入的银行卡样本图像的特征以得到特征图像。

具体的,将银行卡样本图像输入至cnn神经网络中,通过cnn神经网络的卷积层来对银行卡样本图像进行特征提取。

其中,卷积层可以为vgg、alexnet、resnet等中的任意一种。

s304、将输入的候选区域映射至特征图像上并对候选区域进行池化,得到固定大小的候选区域的特征图像。

具体的,通过坐标投影的方法,将候选区域映射至cnn神经网络的最后一层卷积层输出的特征图像上,并输入rol池化层,得到固定大小的候选区域的特征图像。

其中,rol池化层rol池化层去掉了spp的多尺度池化,直接用m×n的网格,将每个候选区域均匀分成m×n块,对每个块进行最大值池化,从而将特征图上大小不一的候选区域转变为大小统一的特征图像。

s306、对候选区域的特征图像进行分类及回归预测,得到分类预测结果、与分类预测结果对应的回归位置预测结果。

具体的,将候选区域输入至全连接层,全连接层对候选区域进行目标分类及回归操作,得到分类预测加过以及与分类预测结果对应的回归位置预测结果。

其中,全连接层为两个并行的全连接层(cls_score层和bbox_prdict层),在实现目标分类使用cls_score层完成,在实现回归操作时使用bbox_prdict层完成。

cls_score层输出为k+1维数组,表示候选区域属于k类和背景的概率。通常用p=(p0,p1,…,pk)表示。

bbox_prdict层用于调整候选区域的位置,输出回归的位移(4*k维数组t)表示属于k类时,应该平移缩放的参数。

其中,k表示类别的索引,指相对于候选区域尺度不变的平移,指对数空间中相对于候选区域的高与宽。

s308、根据预设的分类标签、与分类标签对应的回归位置以及分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行更新,将更新后的fast-r-cnn模型确定为预测模型。

具体的,将预设的分类标签以及分类预测结果输入至第一代价函数中,进行分类代价评估,同时,将与分类标签对应的回归位置以及与分类预测结果对应的回归位置预测结果输入至第二代价函数中,进行定位代价评估;将第一代价函数的输出与第二代价函数的输出进行加权求和,得到最终的代价函数,根据最终的代价函数对fast-r-cnn模型进行更新。

第一代价函数为:表示真实分类u对应的概率;

第二代价函数为:表示真实分类对应的预测参数和真实平移缩放参数为vi的差别;

其中,g为smoothl1误差,

最终的代价函数为:其中,当分类为背景时,不考虑定位代价。

在其中一个实施例中,上述提取输入的银行卡的银行卡样本图像的特征以得到特征图像可以包括如下步骤:

s402、提取输入的银行卡样本图像的特征,结合上下文特征信息,对银行卡样本图像的特征进行特征增强以得到特征图像。

在对银行卡样本图像进行特征提取时,通常使用vgg、alexnet、resnet等进行特征提取,这几个特征网络虽然能够很好的提取特征,但是其并未结合到上下文信息,因此提取到的特征缺乏全局性。

鉴于此,本实施例中,在提取到银行卡样本图像的特征后,结合银行卡样本图像的特征的上下左右四个方向的信息,通过两次irnn计算,得到全局化的特征图像。

在其中一个实施例中,上述预测模型构建方法还包括:

s502、对银行卡的银行卡样本图像进行去均值处理。

去均值处理的优点在于,可以使得样本图像的各个维度都中心化为0,防止在反向传播时梯度消散导致模型的参数改变量很小,从而防止易于拟合问题。

在一些实施例中,如图4所示,提供一种银行卡卡号识别方法,包括如下步骤:

s602、获取待识别银行卡的银行卡图像并对银行卡样本图像进行计算处理以得到候选区域。

s604、将银行卡样本图像和候选区域输入至预测模型,预测得到待识别银行卡的银行卡卡号以及银行卡卡号的位置。

其中,预测模型的输出包括银行卡卡号和银行卡卡号的回归位置、银行名称和银行名称的回归位置、银行图案和银行名称的回归位置、银行卡类型和银行卡类型的回归位置等;根据预测得到的结果,通过从左到右的坐标判断,最终得到银行卡卡号以及银行卡卡号的位置。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一些实施例中,如图5所示,提供一种预测模型构建装置,包括:

获取模块72,用于获取银行卡的银行卡样本图像并对银行卡样本图像进行计算处理以得到候选区域;

建模模块74,用于将银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与分类标签对应的回归位置以及fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为银行卡卡号识别模型。

在其中一个实施例中,上述建模模块74包括:

特征提取模块742,用于提取输入的银行卡的银行卡样本图像的特征以得到特征图像;将输入的候选区域映射至特征图像上并对候选区域进行池化,得到固定大小的候选区域的特征图像。

分类与边界回归模块744,用于对候选区域的特征图像进行分类及回归预测,得到分类预测结果、与分类预测结果对应的回归位置预测结果。

模型更新模块746,用于根据预设的分类标签、与分类标签对应的回归位置以及分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行更新,将更新后的fast-r-cnn模型确定为银行卡卡号识别模型。

在其中一个实施例中,上述特征提取模块742还用于提取输入的所述银行卡的银行卡样本图像的特征,结合上下文特征信息,对银行卡样本图像的特征进行特征增强以得到特征图像。

在其中一个实施例中,上述预测模型构建装置还包括:

处理模块76,用于对银行卡的银行卡样本图像进行去均值处理。

在一些实施例中,如图6所示,提供一种计算机系统,包括:

一个或多个处理器;以及

与所述一个或多个处理器关联的存储器,存储器用于存储程序指令,程序指令在被所述一个或多个处理器读取执行时,执行如下操作:

获取银行卡的银行卡样本图像并对银行卡样本图像进行计算处理以得到候选区域;

将银行卡样本图像以及候选区域输入一fast-r-cnn模型,根据预设的分类标签、与分类标签对应的回归位置以及fast-r-cnn模型输出的分类预测结果、与分类预测结果对应的回归位置预测结果对fast-r-cnn模型进行训练,将训练后的fast-r-cnn模型确定为预测模型。

其中,图6示例性的展示出了计算机系统的架构,具体可以包括处理器62,视频显示适配器64,磁盘驱动器66,输入/输出接口68,网络接口610,以及存储器612。上述处理器62、视频显示适配器64、磁盘驱动器66、输入/输出接口68、网络接口610,与存储器612之间可以通过通信总线614进行通信连接。

其中,处理器62可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。

存储器612可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器612可以存储用于控制计算机系统60运行的操作系统616,用于控制计算机系统60的低级别操作的基本输入输出系统(bios)618。另外,还可以存储网页浏览器620,数据存储管理系统622等等。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器612中,并由处理器62来调用执行。

输入/输出接口68用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

网络接口610用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

通信总线614包括一通路,在设备的各个组件(例如处理器62、视频显示适配器64、磁盘驱动器66、输入/输出接口68、网络接口610,与存储器612)之间传输信息。

另外,该计算机系统60还可以从虚拟资源对象领取条件信息数据库中获得具体领取条件的信息,以用于进行条件判断,等等。

需要说明的是,尽管上述设备仅示出了处理器62、视频显示适配器64、磁盘驱动器66、输入/输出接口68、网络接口610,存储器612,通信总线614等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,云服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

尽管已描述了本发明实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例中范围的所有变更和修改。另外,上述实施例提供的银行卡卡号识别方法、预测模型构建装置、计算机系统与预测模型构建方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1