首页 / 专利库 / 信号处理 / 信噪比 / 峰值信噪比 / 单字符文本归一化模型训练方法、文本识别方法及装置

单字符文本归一化模型训练方法、文本识别方法及装置

阅读:914发布:2020-05-12

专利汇可以提供单字符文本归一化模型训练方法、文本识别方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 涉及一种单字符文本归一化模型训练方法、文本识别方法及装置。所述模型训练方法包括:获取若干个单字符样本图片;对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成 训练数据 集;采用训练数据集,利用均方损失函数训练 深度学习 神经网络,得到单字符文本归一化模型。由于训练时所使用的训练数据集是由原始数据以及通过归一化处理后得到的具有统一样式的标准字符图片共同组成的,因此,在对模型进行训练的过程中,可以 加速 模型的训练和收敛,使得模型可以更好的学习到各种输入文本的本质特征,进而提高了模型的识别 精度 。,下面是单字符文本归一化模型训练方法、文本识别方法及装置专利的具体信息内容。

1.一种单字符文本归一化模型训练方法,其特征在于,所述方法包括:
获取若干个单字符样本图片;
对所述单字符样本图片进行归一化处理,得到与所述单字符样本图片对应的标准字符图片;
根据所述若干个单字符样本图片和与所述若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
采用所述训练数据集,利用均方损失函数训练深度学习神经网络,直到所述均方损失函数达到最小值时,得到单字符文本归一化模型。
2.根据权利要求1所述的单字符文本归一化模型训练方法,其特征在于,所述对所述单字符样本图片进行归一化处理,得到与所述单字符样本图片对应的标准字符图片,包括:
识别所述单字符样本图片中对应的字符特征;
根据所述字符特征对所述单字符样本图片进行整体格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
3.根据权利要求1所述的单字符文本归一化模型训练方法,其特征在于,所述根据所述若干个单字符样本图片和与所述若干个单字符样本图片一一对应的标准字符图片生成训练数据集,包括:
根据所述若干个单字符样本图片和与所述若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对,所述训练样本对包括单字符样本图片和对应的标准字符图片;
对所述训练样本对中的单字符样本图片进行预处理,所述预处理包括对所述单字符样本图片的尺寸进行调整,或对调整后的所述单字符样本图片进行不同度的旋转,以分别得到尺寸调整后的训练样本对或不同旋转角度的训练样本对;
将尺寸调整后的若干个训练样本对和不同旋转角度的训练样本对作为所述训练数据集。
4.根据权利要求1至3任一项所述的单字符文本归一化模型训练方法,其特征在于,所述深度学习神经网络采用去除了亚像素卷积层的超分辨率残差网络;所述采用所述训练数据集,利用均方损失函数训练深度学习神经网络,直到所述均方损失函数达到最小值时,得到单字符文本归一化模型,包括:
将所述训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播;
采用所述均方损失函数计算所述网络的输出与所述训练数据集中对应标准字符图片的像素级误差,根据所述误差确定峰值信噪比
通过梯度下降法对所述均方损失函数进行优化,直到所述误差达到最小值且所述峰值信噪比达到最大值时,保存模型参数,得到所述单字符文本归一化模型。
5.一种单字符文本识别方法,其特征在于,所述方法包括:
获取待识别的文本图像;
通过字符检测定位模型对所述待识别的文本图像中每一个字符进行定位检测,得到所述待识别的文本图像中的每一个字符图片及对应的位置;
利用权利要求1至4任一项所述的方法训练得到的单字符文本归一化模型识别所述每一个字符图片,得到与所述每一个字符图片一一对应的标准字符图片;
采用字符分类模型识别所述标准字符图片,得到对应的字符文本;
根据每一个字符图片的位置对所述字符文本进行拼接,得到与所述待识别的文本图像对应的目标字符串。
6.根据权利要求5所述的单字符文本识别方法,其特征在于,所述识别所述每一个字符图片之前,还包括:
将所述每一个字符图片的尺寸调整为固定大小。
7.一种单字符文本归一化模型训练装置,其特征在于,所述装置包括:
样本图片获取模,用于获取若干个单字符样本图片;
归一化模块,用于对所述单字符样本图片进行归一化处理,得到与所述单字符样本图片对应的标准字符图片;
训练数据集生成模块,用于根据所述若干个单字符样本图片和与所述若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
训练模块,用于采用所述训练数据集,利用均方损失函数训练深度学习神经网络,直到所述均方损失函数达到最小值时,得到单字符文本归一化模型。
8.一种单字符文本识别装置,其特征在于,所述装置包括:
待识别图像获取模块,用于获取待识别的文本图像;
字符定位检测模块,用于通过字符检测定位模型对所述待识别的文本图像中每一个字符进行定位检测,得到所述待识别的文本图像中的每一个字符图片及对应的位置;
标准字符图片识别模块,用于利用权利要求1至4任一项所述的方法训练得到的单字符文本归一化模型识别所述每一个字符图片,得到与所述每一个字符图片一一对应的标准字符图片;
字符文本识别模块,用于采用字符分类模型识别所述标准字符图片,得到对应的字符文本;
拼接模块,用于根据每一个字符图片的位置对所述字符文本进行拼接,得到与所述待识别的文本图像对应的目标字符串。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。

说明书全文

单字符文本归一化模型训练方法、文本识别方法及装置

技术领域

[0001] 本申请涉及图像识别技术领域,特别是涉及一种单字符文本归一化模型训练方法、文本识别方法及装置。

背景技术

[0002] 随着人工智能技术的发展,越来越多的繁琐工作被机器所取代。OCR(Optical Character Recognition,光学字符识别)任务作为计算机视觉中的一个重要分支,在票据识别、文本自动录入等众多领域应用广泛。但是,通常这类任务的原始文本可能出现于各种复杂背景中,如可能以各种字体、大小等不同样式出现。因此,需要利用计算机视觉相关方法,在从图片中定位到的文本串中识别出对应的字符,以用于下游任务。
[0003] 而深度学习作为人工智能领域的重要分支,神经网络在各个领域已经取得了巨大的成功。目前,神经网络主要有如下两种:卷积神经网络和循环神经网络,而前者主要用于结构化数据(如图像等),后者主要用序列数据(如语音等)。而将基于深度学习的卷积神经网络应用于OCR任务是目前常用的做法,一般基于BLSTM(Bidirectional Long Short-Term Memory,双向长短期记忆网络)+CTC(Connectionist temporal classification,时序数据分类)的结构实现,现有的模型结构无需考虑文字的对齐问题,虽然能够解决不定长文本的识别,但通常实际输入的文本图片样式复杂,特征多变,从而导致BLSTM网络训练困难,进而影响识别精度发明内容
[0004] 基于此,有必要针对上述传统的网络结构不适用于识别复杂样式的文本图片的问题,提供一种能够识别复杂样式的文本图片的单字符文本归一化模型训练方法、文本识别方法及装置。
[0005] 为了实现上述目的,一方面,本申请实施例提供了一种单字符文本归一化模型训练方法,所述方法包括:
[0006] 获取若干个单字符样本图片;
[0007] 对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;
[0008] 根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
[0009] 采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0010] 在其中一个实施例中,对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片,包括:识别单字符样本图片中对应的字符特征;根据所述字符特征对所述单字符样本图片进行整体格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
[0011] 在其中一个实施例中,根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集,包括:根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对,其中,训练样本对包括单字符样本图片和对应的标准字符图片;对训练样本对中的单字符样本图片进行预处理,其中,预处理包括对单字符样本图片的尺寸进行调整,或对调整后的单字符样本图片进行不同度的旋转,以分别得到尺寸调整后的训练样本对或不同旋转角度的训练样本对;将尺寸调整后的若干个训练样本对和不同旋转角度的训练样本对作为训练数据集。
[0012] 在其中一个实施例中,深度学习神经网络采用去除了亚像素卷积层的超分辨率残差网络;则采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型,包括:将训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播;采用均方损失函数计算网络的输出与训练数据集中对应标准字符图片的像素级误差,根据误差确定峰值信噪比;通过梯度下降法对均方损失函数进行优化,直到误差达到最小值且峰值信噪比达到最大值时,保存模型参数,得到单字符文本归一化模型。
[0013] 第二方面,本申请实施例提供了一种单字符文本识别方法,所述方法包括:
[0014] 获取待识别的文本图像;
[0015] 通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置;
[0016] 利用上述的方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片;
[0017] 采用字符分类模型识别标准字符图片,得到对应的字符文本;
[0018] 根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0019] 在其中一个实施例中,识别每一个字符图片之前,还包括:将每一个字符图片的尺寸调整为固定大小。
[0020] 第三方面,本申请实施例提供了一种单字符文本归一化模型训练装置,所述装置包括:
[0021] 样本图片获取模,用于获取若干个单字符样本图片;
[0022] 归一化模块,用于对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;
[0023] 训练数据集生成模块,用于根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
[0024] 训练模块,用于采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0025] 第四方面,本申请实施例提供了一种单字符文本识别装置,所述装置包括:
[0026] 待识别图像获取模块,用于获取待识别的文本图像;
[0027] 字符定位检测模块,用于通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置;
[0028] 标准字符图片识别模块,用于利用上述方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片;
[0029] 字符文本识别模块,用于采用字符分类模型识别标准字符图片,得到对应的字符文本;
[0030] 拼接模块,用于根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0031] 第五方面,本申请实施例提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
[0032] 第六方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
[0033] 上述单字符文本归一化模型训练方法、文本识别方法及装置,由于训练时所使用的训练数据集是由原始数据即单字符样本图片以及通过归一化处理后得到的具有统一样式的标准字符图片共同组成的,因此,在对模型进行训练的过程中,可以加速模型的训练和收敛,使得模型可以更好的学习到各种输入文本的本质特征,进而在利用模型进行实际识别时,可以得到统一样式的输出,且提高了识别精度。附图说明
[0034] 图1为一个实施例中单字符文本归一化模型训练方法的流程示意图;
[0035] 图2为一个实施例中归一化处理步骤的流程示意图;
[0036] 图3为一个实施例中归一化处理结果的示意图;
[0037] 图4为一个实施例中生成训练数据集步骤的流程示意图;
[0038] 图5为一个实施例中模型训练步骤的流程示意图;
[0039] 图6为一个实施例中单字符文本识别方法的应用环境图;
[0040] 图7为一个实施例中单字符文本识别方法的流程示意图;
[0041] 图8为一个实施例中单字符文本归一化模型训练装置的结构框图
[0042] 图9为一个实施例中单字符文本识别装置的结构框图;
[0043] 图10为一个实施例中计算机设备的内部结构图。

具体实施方式

[0044] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0045] 由于传统的OCR任务通常需要识别各种复杂背景下以不同字体、大小或不同样式出现的字符文本,而传统的基于BLSTM+CTC的网络结构复杂,其通常通过卷积层进行特征提取,得到输入的特征图;然后以特征图在宽度位置的序列视为时序,通过BLSTM网络,提取字符信息;最后通过全连接层,以及CTC损失函数,获取每个位置上是背景还是某一字符的概率。其在面对上述复杂背景下的OCR任务时,导致对BLSTM网络训练困难,进而会影响识别精度。
[0046] 基于此,本申请提供了一种单字符文本归一化模型训练方法、文本识别方法及装置,其基于单字符文本归一化的思路训练模型,以得到结构简单的单字符文本归一化模型,并利用该单字符文本归一化模型执行OCR任务以完成文本识别,从而极大的提高了识别精度。
[0047] 在一个实施例中,提供了一种单字符文本归一化模型训练方法,如图1所示,具体可以包括如下步骤:
[0048] 步骤102,获取若干个单字符样本图片。
[0049] 其中,若干个单字符样本图片是用于后续对模型进行训练的原始数据,其具体可以是具有任意背景、任意风格样式以及任意字体且仅具有一个字符的样本图片。在本实施例中,为了使得模型可以学习到各种输入文本的本质特征,从而获取若干个对模型进行训练用的单字符样本图片。
[0050] 步骤104,对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片。
[0051] 其中,标准字符图片是指具有统一整体风格(如白底黑字、白底蓝字等)、统一整体尺寸(如图片尺寸)、统一字体类型、统一字符大小(如字符占据图片尺寸的比例)以及统一字符位置(如字符位于图片的中心)的图片。归一化则是指对任意背景、任意风格样式以及任意字体的单字符样本图片,将其映射到对应的具有统一整体风格、统一整体尺寸、统一字体类型、统一字符大小以及统一字符位置的标准字符图片。本实施例通过对单字符样本图片进行归一化处理,从而为每一个单字符样本图片设计具有统一样式的标准字符图片,使得模型可以更好的学习到各种输入文本的本质特征。
[0052] 步骤106,根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集。
[0053] 在本实施例中,为了使得模型可以更好的学习到各种输入文本的本质特征,则根据上述步骤获取的若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集,进而通过训练数据集对模型进行训练。其中,训练数据集中包括若干个训练样本对,每一训练样本对又包括至少一个单字符样本图片和对应的标准字符图片。
[0054] 步骤108,采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0055] 其中,深度学习神经网络采用去除了亚像素卷积(sub-pixel convolution layers)层的超分辨率残差网络(Super-resolution residual network,简称SRResNet)。具体的,采用上述训练数据集,并利用均方损失函数训练去除了亚像素卷积层的超分辨率残差网络,直到均方损失函数达到最小值时,表示网络已经训练稳定,并学习到字符本质,从而保存模型参数,得到单字符文本归一化模型,以便于后续进行实际的字符识别。
[0056] 上述单字符文本归一化模型训练方法,由于训练时所使用的训练数据集是由原始数据即单字符样本图片以及通过归一化处理后得到的具有统一样式的标准字符图片共同组成的,因此,在对模型进行训练的过程中,可以加速模型的训练和收敛,使得模型可以更好的学习到各种输入文本的本质特征,进而在利用模型进行实际识别时,可以得到统一样式的输出,且提高了识别精度。
[0057] 在一个实施例中,如图2所示,对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片,具体可以包括如下步骤:
[0058] 步骤202,识别单字符样本图片中对应的字符特征。
[0059] 其中,字符特征可以是指字符本身的特征,如表示数据和信息的字母、数字、文字或其他符号等。由于单字符样本图片中仅具有一个字符,因此,通过对单字符样本图片中的一个字符进行识别,从而得到对应的字符特征。
[0060] 步骤204,根据字符特征对单字符样本图片进行整体风格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
[0061] 具体的,根据上述对单字符样本图片进行识别而得到对应的字符特征,进而根据字符特征对单字符样本图片进行整体风格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理。举例来说,整体风格的归一化可以是对标准字符图片以及标准字符图片中对应字符特征的格式的归一化,如归一化为白底黑字、白底蓝字等,即标准字符图片的背景色均归一化为白色,而标准字符图片中对应字符特征则均归一化为黑色或蓝色等;整体尺寸的归一化可以是对标准字符图片的整体尺寸的归一化,如将所有标准字符图片的整体尺寸均归一化为24*24;字体类型的归一化可以是对标准字符图片中对应字符特征的字体类型进行的归一化,如将所有标准字符图片中对应字符特征的字体类型均归一化为宋体或其他字体类型等;字符大小的归一化则是对标准字符图片中对应字符特征占据该标准字符图片尺寸的比例进行的归一化,如将所有标准字符图片中对应字符特征的大小归一化为占据该标准字符图片尺寸的90%(按边长计);字符位置的归一化则是将标准字符图片中对应字符特征位于该标准字符图片中具体位置进行的归一化,如将所有标准字符图片中对应字符特征的位置归一化为位于该标准字符图片的中心等。
[0062] 因此,对于每一个单字符样本图片,都可以通过上述归一化处理方法,而得到一个与之对应的归一化后的具有统一样式的标准字符图片,且对于多个单字符样本图片中的字符特征相同的情况下,其归一化后的结果对应相同的标准字符图片。举例来说,如图3所示,对于不同输入风格的“临”字,即具有相同字符特征的多个单字符样本图片,如图3左侧所示;其对应的归一化后的标准字符图片为同一个,如图3右侧所示,该标准字符图片为具有统一样式的“临”字。
[0063] 在一个实施例中,如图4所示,根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集,具体可以包括如下步骤:
[0064] 步骤402,根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对。
[0065] 其中,每一个训练样本对中包括单字符样本图片和对应的标准字符图片。因此,根据若干个单字符样本图片和与之一一对应的标准字符图片可以得到若干个训练样本对,通过训练样本对的形式对模型进行训练可以使得模型可以学习到各种输入文本的本质特征。
[0066] 步骤404,对训练样本对中的单字符样本图片进行预处理。
[0067] 其中,预处理包括对单字符样本图片的尺寸进行调整,或对调整后的单字符样本图片进行不同角度的旋转。具体的,为了精简模型的训练过程,并提高模型的训练和收敛速度,在本实施例中,可以对待进行训练的训练样本对中单字符样本图片的尺寸进行归一化调整,即将单字符样本图片的尺寸调整为固定尺寸,或将单字符样本图片的尺寸调整为与标准字符图片相同,从而得到尺寸归一化后的训练样本对。另外,为了提高模型的识别能,使得模型更具有鲁棒性,可以对调整尺寸后的单字符样本图片进行不同角度的旋转,从而得到不同旋转角度的训练样本对。
[0068] 步骤406,将尺寸调整后的若干个训练样本对和不同旋转角度的训练样本对作为训练数据集。
[0069] 具体的,通过将上述步骤得到的尺寸归一化后的若干个训练样本对以及各种不同旋转角度的训练样本对作为训练数据集,由于训练数据集中每一个训练样本对的单字符样本图片具有统一的尺寸大小,且对应的标准字符图片具有统一的样式,因此,在对模型进行训练时,可以驱使模型忽略不同输入的风格,而只关注字符特征本身,从而达到学习各种输入文本的本质特征,实现对不同风格单字符文本归一化的目的。
[0070] 在一个实施例中,如图5所示,采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型,具体可以包括如下步骤:
[0071] 步骤502,将训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播。
[0072] 其中,训练数据集中的数据以训练样本对(x_i,y_i)表示,其中,x表示单字符样本图片,y表示该图片对应的归一化后的标准字符图片,i表示第i个训练样本对。在实际训练中,可以一次性读取多个训练样本对,组成一个批次进行训练。且由于训练样本对中的数据经过了上述预处理,使得单字符样本图片和对应的标准字符图片的尺寸相同,因此,用于训练的深度学习神经网络可以采用去除了亚像素卷积层的超分辨率残差网络,从而精简了网络结构。
[0073] 步骤504,采用均方损失函数计算网络的输出与训练数据集中对应标准字符图片的像素级误差,根据误差确定峰值信噪比。
[0074] 步骤506,通过梯度下降法对均方损失函数进行优化,直到误差达到最小值且峰值信噪比达到最大值时,保存模型参数,得到单字符文本归一化模型。
[0075] 具体的,将上述训练数据集输入去除了亚像素卷积层的超分辨率残差网络,以得到网络对应的输出,然后进行反向传播,并通过均方损失函数(Mean Square Error,简称MSE)计算网络的输出与训练数据集中对应标准字符图片的像素级误差,同时根据该误差计算对应的峰值信噪比(Peak signal-to-noise ratio,简称PSNR),然后根据梯度下降法对均方损失函数进行优化,即通过迭代多个批量的训练数据集,执行上述流程,并更新模型参数。当误差值达到最小值时,即误差值不再降低且峰值信噪比达到最大值时终止训练,此时模型参数收敛,保存模型参数,从而得到单字符文本归一化模型。
[0076] 本申请还提供了一种单字符文本识别方法,可以应用于如图6所示的应用环境中。其中,终端602与服务器604通过网络进行通信,在本实施例中,终端602可以是各种具有图像采集功能的设备,如可以但不限于各种智能手机、平板电脑、相机和便携式图像采集设备,服务器604可以用独立的服务器或者是多个服务器组成的服务器集群来实现。具体的,终端602用于采集待识别的文本图像,并将采集的待识别的文本图像通过网络发送至服务器604,当然待识别的文本图像也可以预先存储在服务器604中。服务器604则对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置,并利用通过上述方法训练得到的单字符文本归一化模型识别每一个字符图片,以得到与每一个字符图片一一对应的标准字符图片,进而采用字符分类模型识别标准字符图片,得到对应的字符文本,并根据每一个字符图片的位置对字符文本进行拼接,最终得到与待识别的文本图像对应的目标字符串。由于在进行文本识别前,先通过单字符文本归一化模型将待识别的每一个字符图片归一化为标准字符图片,使得进行文本识别的输入具有统一的样式,从而极大的简化了识别任务,并提高了识别精度。
[0077] 在一个实施例中,如图7所示,提供了一种单字符文本识别方法,以该方法应用于图6中的服务器为例进行说明,包括如下步骤:
[0078] 步骤702,获取待识别的文本图像。
[0079] 其中,待识别的文本图像可以是需要进行文本识别的具有任意复杂背景、包含若干个字符的图片,其中,若干个字符可以具有任意字体类型或字体大小。
[0080] 步骤704,通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置。
[0081] 其中,字符检测定位模型具体可以采用目标检测模型(Single Shot MultiBox Detector,简称SSD),其可以识别出文本图像中每一个字符的位置,并对其进行分割。具体的,通过该模型对待识别的文本图像中每一个字符进行定位检测,从而得到待识别的文本图像中对应每一个字符的字符图片及对应的位置。
[0082] 步骤706,利用上述方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片。
[0083] 具体的,采用通过上述方法训练得到的单字符文本归一化模型识别每一个字符图片,从而得到与每一个字符图片一一对应的归一化后的标准字符图片。
[0084] 步骤708,采用字符分类模型识别标准字符图片,得到对应的字符文本。
[0085] 其中,字符分类模型可以采用简单的卷积神经网络(Convolutional neural network,简称CNN)实现,例如具体可以采用Resnet34网络框架实现。其用于根据字符特征对标准字符图片进行分类,从而得到对应的字符文本。本实施例中通过采用字符分类模型识别标准字符图片,从而得到对应的字符文本。
[0086] 步骤710,根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0087] 其中,目标字符串是指对待识别的文本图像执行OCR任务后得到的识别结果。具体的,重复上述步骤对待识别的文本图像中每一个字符图片对应的标准字符图片进行识别,从而得到对应的字符文本,进而根据每一个字符图片位于待识别的文本图像中的位置,对得到的字符文本进行拼接,从而得到对待识别的文本图像进行识别后的目标字符串。
[0088] 上述单字符文本识别方法,通过获取待识别的文本图像,采用字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置,并利用上述的方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片,进而采用字符分类模型识别标准字符图片,得到对应的字符文本,并根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。由于采用训练好的单字符文本归一化模型得到待识别的每一个字符图片对应的归一化后的标准字符图片,因此在执行OCR任务时仅需要进行简单的字符分类即可,而不再依赖BLSTM+CTC框架完成,使得硬件资源消耗更少,性能更佳,且网络结构更加简单,从而也具有更高的识别精度。
[0089] 在一个实施例中,在采用单字符文本归一化模型识别每一个字符图片之前,可以先将每一个字符图片的尺寸调整为固定大小,例如,可以将每一个字符图片调整为与标准字符图片相同的大小,从而使得模型输入输出的尺寸不变,因此,可以进一步提高模型的识别精度。
[0090] 应该理解的是,虽然图1-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0091] 在一个实施例中,如图8所示,提供了一种单字符文本归一化模型训练装置,包括:样本图片获取模块801、归一化模块802、训练数据集生成模块803和训练模块804,其中:
[0092] 样本图片获取模块801,用于获取若干个单字符样本图片;
[0093] 归一化模块802,用于对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;
[0094] 训练数据集生成模块803,用于根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
[0095] 训练模块804,用于采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0096] 在一个实施例中,归一化模块802具体用于,识别单字符样本图片中对应的字符特征;根据所述字符特征对所述单字符样本图片进行整体风格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
[0097] 在一个实施例中,训练数据集生成模块803具体用于,根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对,其中,训练样本对包括单字符样本图片和对应的标准字符图片;对训练样本对中的单字符样本图片进行预处理,其中,预处理包括对单字符样本图片的尺寸进行调整,或对调整后的单字符样本图片进行不同角度的旋转,以分别得到尺寸调整后的若干个训练样本对或不同旋转角度的训练样本对;将尺寸调整后的训练样本对和不同旋转角度的训练样本对作为训练数据集。
[0098] 在一个实施例中,深度学习神经网络采用去除了亚像素卷积层的超分辨率残差网络;则训练模块804具体用于:将训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播;采用均方损失函数计算网络的输出与训练数据集中对应标准字符图片的像素级误差,根据误差确定峰值信噪比;通过梯度下降法对均方损失函数进行优化,直到误差达到最小值且峰值信噪比达到最大值时,保存模型参数,得到单字符文本归一化模型。
[0099] 关于单字符文本归一化模型训练装置的具体限定可以参见上文中对于单字符文本归一化模型训练方法的限定,在此不再赘述。上述单字符文本归一化模型训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0100] 在一个实施例中,如图9所示,提供了一种单字符文本识别装置,包括:待识别图像获取模块901、字符定位检测模块902、标准字符图片识别模块903、字符文本识别模块904和拼接模块905,其中:
[0101] 待识别图像获取模块901,用于获取待识别的文本图像;
[0102] 字符定位检测模块902,用于通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置;
[0103] 标准字符图片识别模块903,用于利用上述方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片;
[0104] 字符文本识别模块904,用于采用字符分类模型识别标准字符图片,得到对应的字符文本;
[0105] 拼接模块905,用于根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0106] 在一个实施例中,还包括预处理模块,用于在识别每一个字符图片之前,将每一个字符图片的尺寸调整为固定大小,进而利用上述方法训练得到的单字符文本归一化模型识别调整为固定大小尺寸后的每一个字符图片。
[0107] 关于单字符文本识别装置的具体限定可以参见上文中对于单字符文本识别方法的限定,在此不再赘述。上述单字符文本识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0108] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储训练数据集和待识别的文本图像。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种单字符文本归一化模型训练方法或一种单字符文本识别方法。
[0109] 本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0110] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0111] 获取若干个单字符样本图片;
[0112] 对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;
[0113] 根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
[0114] 采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0115] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:识别单字符样本图片中对应的字符特征;根据所述字符特征对所述单字符样本图片进行整体风格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
[0116] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对,其中,训练样本对包括单字符样本图片和对应的标准字符图片;对训练样本对中的单字符样本图片进行预处理,其中,预处理包括对单字符样本图片的尺寸进行调整,或对调整后的单字符样本图片进行不同角度的旋转,以分别得到尺寸调整后的若干个训练样本对或不同旋转角度的训练样本对;将尺寸调整后的若干个训练样本对和不同旋转角度的训练样本对作为训练数据集。
[0117] 在一个实施例中,深度学习神经网络采用去除了亚像素卷积层的超分辨率残差网络;则处理器执行计算机程序时还实现以下步骤:将训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播;采用均方损失函数计算网络的输出与训练数据集中对应标准字符图片的像素级误差,根据误差确定峰值信噪比;通过梯度下降法对均方损失函数进行优化,直到误差达到最小值且峰值信噪比达到最大值时,保存模型参数,得到单字符文本归一化模型。
[0118] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0119] 获取待识别的文本图像;
[0120] 通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置;
[0121] 利用上述的方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片;
[0122] 采用字符分类模型识别标准字符图片,得到对应的字符文本;
[0123] 根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0124] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:将每一个字符图片的尺寸调整为固定大小;利用上述方法训练得到的单字符文本归一化模型识别调整为固定大小尺寸后的每一个字符图片。
[0125] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0126] 获取若干个单字符样本图片;
[0127] 对单字符样本图片进行归一化处理,得到与单字符样本图片对应的标准字符图片;
[0128] 根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成训练数据集;
[0129] 采用训练数据集,利用均方损失函数训练深度学习神经网络,直到均方损失函数达到最小值时,得到单字符文本归一化模型。
[0130] 在一个实施例中,计算机程序被处理器执行时还实现以下步骤:识别单字符样本图片中对应的字符特征;根据所述字符特征对所述单字符样本图片进行整体风格、整体尺寸、字体类型、字符大小以及字符位置的归一化处理,得到归一化后的标准字符图片。
[0131] 在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据若干个单字符样本图片和与若干个单字符样本图片一一对应的标准字符图片生成若干个训练样本对,其中,训练样本对包括单字符样本图片和对应的标准字符图片;对训练样本对中的单字符样本图片进行预处理,其中,预处理包括对单字符样本图片的尺寸进行调整,或对调整后的单字符样本图片进行不同角度的旋转,以分别得到尺寸调整后的若干个训练样本对或不同旋转角度的训练样本对;将尺寸调整后的若干个训练样本对和不同旋转角度的训练样本对作为训练数据集。
[0132] 在一个实施例中,深度学习神经网络采用去除了亚像素卷积层的超分辨率残差网络;则计算机程序被处理器执行时还实现以下步骤:将训练数据集输入去除了亚像素卷积层的超分辨率残差网络进行反向传播;采用均方损失函数计算网络的输出与训练数据集中对应标准字符图片的像素级误差,根据误差确定峰值信噪比;通过梯度下降法对均方损失函数进行优化,直到误差达到最小值且峰值信噪比达到最大值时,保存模型参数,得到单字符文本归一化模型。
[0133] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0134] 获取待识别的文本图像;
[0135] 通过字符检测定位模型对待识别的文本图像中每一个字符进行定位检测,得到待识别的文本图像中的每一个字符图片及对应的位置;
[0136] 利用上述的方法训练得到的单字符文本归一化模型识别每一个字符图片,得到与每一个字符图片一一对应的标准字符图片;
[0137] 采用字符分类模型识别标准字符图片,得到对应的字符文本;
[0138] 根据每一个字符图片的位置对字符文本进行拼接,得到与待识别的文本图像对应的目标字符串。
[0139] 在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将每一个字符图片的尺寸调整为固定大小;利用上述方法训练得到的单字符文本归一化模型识别调整为固定大小尺寸后的每一个字符图片。
[0140] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0141] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0142] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈