文本识别方法及文本识别装置

文档序号:32419744发布日期:2022-12-02 22:48阅读:111来源:国知局
文本识别方法及文本识别装置

1.本公开的实施例涉及计算机技术领域,具体地,涉及文本识别方法及文本识别装置。


背景技术:

2.购物票据数字化是销售行业发展的趋势。购物票据是在线下消费过程中由商户提供给消费者留存的购物凭证,其真实地记录了一笔交易行为的明细,包括销售单位、交易时间、商品信息以及交易金额等关键内容。这些关键信息真实有效地反映了商家的销售情况以及消费者的行为模式。由于线下零售业的分散性,不同商品的生产和销售数据往往只在品牌内部系统中流转。线下零售行业缺乏一个跨品牌、跨种类、跨地域的数据平台进行有效的生产信息、调度信息、销售信息等的共享与分析。上述情况导致线下零售行业以品牌和/或地区为支点形成了“信息孤岛”。海量的线下消费行为数据犹如一潭死水,数据本身蕴含的巨大价值被蒙尘。购物票据记录着日常场景下大部分线下消费行为。票据经过信息脱敏后可为平台运营方提供真实的消费数据。因此,购物票据数字化是打破商品品牌信息壁垒的关键,面向购物票据的文本识别方法应运而生。


技术实现要素:

3.本文中描述的实施例提供了一种文本识别方法、文本识别装置以及存储有计算机程序的计算机可读存储介质。
4.根据本公开的第一方面,提供了一种文本识别方法。在该方法中,获取包括文本的图片。文本包括多个字符。通过浅层卷积神经网络来提取图片的特征以生成原始特征图。其中,原始特征图的分辨率比图片的分辨率更低。然后,通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域。将第一注意力区域和第二注意力区域的重合区域确定为注意力选择区域。接着,根据原始特征图和注意力选择区域来生成候选特征矩阵。其中,候选特征矩阵与原始特征图的分辨率相同。之后,将候选特征矩阵与原始特征图相乘以生成特征交互矩阵。对特征交互矩阵进行标准化处理以得到二维注意力权重矩阵。对原始特征图与二维注意力权重矩阵进行点积运算以获得增强特征矩阵。然后,根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符。
5.在本公开的一些实施例中,通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域包括:分别在宽度维度和高度维度关于原始特征图的中心点对称地生成宽度连续位置区间和高度连续位置区间;通过注意力模块中的第一嵌入层将宽度连续位置区间映射到宽度离散位置区间;通过注意力模块中的第二嵌入层将高度连续位置区间映射到高度离散位置区间;通过注意力模块中的第一全连接层确定宽度离散位置区间的宽度位置偏移;通过注意力模块中的第二全连接层确定高度离散位置区间的高度位置偏移;根据宽度离散位置区间和宽度位置偏移来确定第一注意力区域;以及根据高度离散位置区间和高度位置偏移来确定第二注意力区域。
6.在本公开的一些实施例中,宽度连续位置区间被计算为(pw,yw),其中,yw∈[0,h],高度连续位置区间被计算为(xh,ph),其中,xh∈[0,w],其中,w表示在宽度维度的注意力关注初始值,h表示在高度维度的注意力关注初始值,w表示原始特征图的宽度,h表示原始特征图的高度。
[0007]
在本公开的一些实施例中,第一注意力区域被计算为(xw,yw),其中,xw=ww×
fe(pw)+bw,yw∈[0,h]。第二注意力区域被计算为(xh,yh),其中,xh∈[0,w],yh=wh×
fe(ph)+bh。其中,fe表示坐标嵌入过程,ww表示第一全连接层的权重矩阵,wh表示第二全连接层的权重矩阵,bw表示宽度位置偏移,bh表示高度位置偏移。
[0008]
在本公开的一些实施例中,根据原始特征图和注意力选择区域来生成候选特征矩阵包括:生成与原始特征图的分辨率相同的空白矩阵;将原始特征图中与注意力选择区域相对应的元素复制到空白矩阵中的相应位置;将空白矩阵的边界元素赋值为零;以及通过线性插值来计算空白矩阵中的未赋值区域的元素的值。
[0009]
在本公开的一些实施例中,浅层卷积神经网络包括基础模块;其中,基础模块包括:卷积层、批处理正则化层、relu激活层、以及最大池化层;其中,卷积层的内核大小为3
×
3,最大池化层的内核大小为2
×
2且其步长为2。
[0010]
在本公开的一些实施例中,浅层卷积神经网络中基础模块的数量为2。
[0011]
在本公开的一些实施例中,根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符包括:分别以未识别字符中的每个字符作为目标字符,对目标字符执行以下操作:获取文本中的已识别字符对应的嵌入向量,嵌入向量是已识别字符的词向量与已识别字符的位置向量之和;通过多头自注意模块从嵌入向量生成历史文本向量;对历史文本向量和增强特征矩阵进行交互运算以生成序列解码特征;根据序列解码特征来预测目标字符的分类概率;以及根据分类概率来识别目标字符。
[0012]
在本公开的一些实施例中,图片中的字符的形状是不规则的。
[0013]
在本公开的一些实施例中,图片是票据的图片。
[0014]
根据本公开的第二方面,提供了一种文本识别装置。该装置包括至少一个处理器;以及存储有计算机程序的至少一个存储器。当计算机程序由至少一个处理器执行时,使得装置:获取包括文本的图片,文本包括多个字符;通过浅层卷积神经网络来提取图片的特征以生成原始特征图,其中,原始特征图的分辨率比图片的分辨率更低;通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域;将第一注意力区域和第二注意力区域的重合区域确定为注意力选择区域;根据原始特征图和注意力选择区域来生成候选特征矩阵,其中,候选特征矩阵与原始特征图的分辨率相同;将候选特征矩阵与原始特征图相乘以生成特征交互矩阵;对特征交互矩阵进行标准化处理以得到二维注意力权重矩阵;对原始特征图与二维注意力权重矩阵进行点积运算以获得增强特征矩阵;以及根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符。
[0015]
在本公开的一些实施例中,计算机程序在由至少一个处理器执行时使得装置通过以下操作来通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域:分别在宽度维度和高度维度关于原始特征图的中心点对称地生成
宽度连续位置区间和高度连续位置区间;通过注意力模块中的第一嵌入层将宽度连续位置区间映射到宽度离散位置区间;通过注意力模块中的第二嵌入层将高度连续位置区间映射到高度离散位置区间;通过注意力模块中的第一全连接层确定宽度离散位置区间的宽度位置偏移;通过注意力模块中的第二全连接层确定高度离散位置区间的高度位置偏移;根据宽度离散位置区间和宽度位置偏移来确定第一注意力区域;以及根据高度离散位置区间和高度位置偏移来确定第二注意力区域。
[0016]
在本公开的一些实施例中,计算机程序在由至少一个处理器执行时使得装置通过以下操作来根据原始特征图和注意力选择区域来生成候选特征矩阵:生成与原始特征图的分辨率相同的空白矩阵;将原始特征图中与注意力选择区域相对应的元素复制到空白矩阵中的相应位置;将空白矩阵的边界元素赋值为零;以及通过线性插值来计算空白矩阵中的未赋值区域的元素的值。
[0017]
在本公开的一些实施例中,计算机程序在由至少一个处理器执行时使得装置通过以下操作来根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符:分别以未识别字符中的每个字符作为目标字符,对目标字符执行以下操作:获取文本中的已识别字符对应的嵌入向量,嵌入向量是已识别字符的词向量与已识别字符的位置向量之和;通过多头自注意模块从嵌入向量生成历史文本向量;对历史文本向量和增强特征矩阵进行交互运算以生成序列解码特征;根据序列解码特征来预测目标字符的分类概率;以及根据分类概率来识别目标字符。
[0018]
根据本公开的第三方面,提供了一种存储有计算机程序的计算机可读存储介质,其中,计算机程序在由处理器执行时实现根据本公开的第一方面所述的方法的步骤。
附图说明
[0019]
为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的附图进行简要说明,应当知道,以下描述的附图仅仅涉及本公开的一些实施例,而非对本公开的限制,其中:
[0020]
图1是根据本公开的实施例的文本识别方法的示例性流程图;
[0021]
图2是实现根据本公开的实施例的文本识别方法的模型的示例性框图;
[0022]
图3是确定图片中的注意力选择区域的过程的示例性示意图;
[0023]
图4是在图1所示的实施例中的根据原始特征图和注意力选择区域来生成候选特征矩阵的过程的示例性流程图;
[0024]
图5是在图1所示的实施例中的根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符的过程的示例性流程图;以及
[0025]
图6是根据本公开的实施例的文本识别装置的示意性框图。
[0026]
需要注意的是,附图中的元素是示意性的,没有按比例绘制。
具体实施方式
[0027]
为了使本公开的实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本公开的实施例的技术方案进行清楚、完整的描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域技术人员在无需创造
性劳动的前提下所获得的所有其它实施例,也都属于本公开保护的范围。
[0028]
除非另外定义,否则在此使用的所有术语(包括技术和科学术语)具有与本公开主题所属领域的技术人员所通常理解的相同含义。进一步将理解的是,诸如在通常使用的词典中定义的那些的术语应解释为具有与说明书上下文和相关技术中它们的含义一致的含义,并且将不以理想化或过于正式的形式来解释,除非在此另外明确定义。诸如“第一”和“第二”的术语仅用于将一个部件(或部件的一部分)与另一个部件(或部件的另一部分)区分开。
[0029]
传统的文本识别方法通常通过定位并预测单个字符的概率将其分组成一个单词或者一个序列。这类方法可包括:(1)手工设计视觉特征算子对图像进行信息抽取以获得视觉特征;(2)利用所获得的视觉特征用分类器进行字符级别的分类识别。上述方法在扫描文档图像上表现优秀,但是受限于手工设计的视觉特征算子对图像的表达能力,通常无法处理手持设备拍摄的票据图像中存在的背景复杂、视深变化等问题。
[0030]
深度学习技术的发展极大地促进了场景文本识别的发展。基于深度学习的方法将文本识别视为一个序列到序列的问题,通常采用卷积神经网络(convolutional neural network,简称cnn)自动提取二维图像视觉特征。在将二维图像视觉特征压缩成一维序列特征后,将一维序列特征送入循环神经网络(recurrent neural network,简称rnn)中提取序列上下文关系。最后使用基于连接时序分类准则(connectionist temporal classification,简称ctc)损失函数的解码模块或基于注意力机制解码模块序列解码每一个字符。其中,基于ctc的方法利用预先填充的间隔空白符实现预测序列与目标序列的对齐,并使用动态规划的方法寻找符合目标序列的最大概率和作为最大熵的损失函数,从而实现序列级别的有监督训练。ctc的前向后向算法实现十分复杂,使得该类方法需要大量的计算。另外,ctc很难应用于二维预测。对于非水平分布的文本,该类方法的识别性能较差。基于注意力的方法通常将注意力模块与rnn结构结合作为序列预测模块。通过参考目标解码序列的历史和编码特征来学习输入图像和输出文本序列之间的对齐,从而预测当前字符分类概率以形成预测序列。但是该类方法存在注意力漂移的问题,即注意力模块不能准确地将每个字符预测特征向量与输入图像中的相应目标区域关联起来。类似cnn,二维视觉特征到一维序列特征的压缩过程损失了特征在二维空间的局部相关性,同时也失去了定位下一字符空间位置的关键信息,使其难以处理形状不规则的购物票据图像。
[0031]
本公开的实施例提出了一种文本识别方法。该文本识别方法可有效地识别形状不规则的购物票据图像中的文本。图1示出了根据本公开的实施例的文本识别方法100的示例性流程图。图2示出实现根据本公开的实施例的文本识别方法的模型的示例性框图。实现文本识别方法100的模型可包括编码器210(例如,具有transformer结构)和解码器220。编码器210的作用是将图像嵌入到视觉二维特征表示空间,解码器220的作用是将编码器生成的视觉特征与自身编码的上下文序列特征映射翻译为序列解码特征。下面结合图1和图2来描述识别图片中的文本的过程。
[0032]
在方法100中,在框s102处,获取包括文本的图片。文本包括多个字符。在本公开的一些实施例中,图片中的字符的形状是不规则的。在本公开的一些实施例中,图片是形状不规则的购物票据图像。图片可以是来自于手持设备拍摄的真实购物票据图像。这些购物票据可来源于不同的品牌,并覆盖大多数常见票据格式。图片中的字符可包含中文、英文和/
或日文等。在本公开的一些实施例中,图片中包括的字符位于同一行。在图片中的字符位于多行的情况下,可对图片进行裁剪,以获得多个包括单行字符的图片。在本公开的一些实施例中,包括单行字符的图片的尺寸可被调整为32
×
100。
[0033]
在本公开的一些实施例中,可利用所获取的图片构建训练数据集。在构建训练数据集的过程中,可对收集的图片进行标注。标注内容包括图片中包含的文本的位置信息及其文本信息。可根据文本的位置信息(通常表示为四个顶点坐标或长宽与中心点坐标的形式)对图片进行裁剪,将裁剪后得到的图片与该图片对应的文本信息相关联,以生成训练数据集。
[0034]
在框s104处,通过浅层卷积神经网络(shallow cnn)来提取图片的特征以生成原始特征图。原始特征图的分辨率比图片的分辨率更低。这样可减少在文本识别过程中对图片中的冗余低级语义信息的关注。如图2所示,原始特征图被输入编码器210。编码器210的transformer结构能够增强小分辨率的图像的视觉语义。
[0035]
在本公开的一些实施例中,浅层卷积神经网络可包括例如2个基础模块。其中,每个基础模块包括:卷积层、批处理正则化层、relu激活层、以及最大池化层。其中,卷积层的内核大小例如为3
×
3,最大池化层的内核大小例如为2
×
2且其步长为2。
[0036]
图3示出可通过浅层cnn从图片301生成原始特征图303。原始特征图303可以是w
×
h(在图3的示例中是8
×
8)的矩阵。
[0037]
回到图1,在框s106处,通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域。在本公开的一些实施例中,该注意力模块是自适应二维空间注意力模块。该自适应二维空间注意力模块包括两个可学习的网络组件块。例如,第一网络组件块用在原始特征图的宽度维度。第二网络组件块用在原始特征图的高度维度。每一个网络块包括一个嵌入层和一个全连接神经网络层(也可被简称为全连接层)。嵌入层将选定的连续坐标范围映射到离散的特征图尺度空间范围。全连接层为离散的空间坐标添加了额外的位置偏移。离散化的坐标表示注意力分散后的焦点。在本公开的一些实施例中,自适应二维空间注意力模块的隐藏单元数可被设置为256。
[0038]
在本公开的一些实施例中,可分别在宽度维度和高度维度关于原始特征图的中心点对称地生成宽度连续位置区间和高度连续位置区间。在本公开的一些实施例中,宽度连续位置区间的坐标可被表示为(pw,yw),其中,yw∈[0,h]。高度连续位置区间的坐标可被表示为(xh,ph),其中,xh∈[0,w],其中,w表示在宽度维度的注意力关注初始值,h表示在高度维度的注意力关注初始值,w表示原始特征图的宽度,h表示原始特征图的高度。w和h可以是经验值。然后,通过第一网络组件块的第一嵌入层将宽度连续位置区间映射到宽度离散位置区间。通过第二网络组件块的第二嵌入层将高度连续位置区间映射到高度离散位置区间。通过第一网络组件块的第一全连接层确定宽度离散位置区间的宽度位置偏移。通过第二网络组件块的第二全连接层确定高度离散位置区间的高度位置偏移。然后,根据宽度离散位置区间和宽度位置偏移来确定第一注意力区域,以及根据高度离散位置区间和高度位置偏移来确定第二注意力区域。
[0039]
在本公开的一些实施例中,第一注意力区域可被计算为(xw,yw),其中,xw=ww×
fe(pw)+bw,yw∈[0,h]。第二注意力区域可被计算为(xh,γh),其中,xh∈[0,w],yh=wh×
fe(ph)+bh。其中,fe表示坐标嵌入过程,ww表示第一全连接层的权重矩阵,wh表示第二全连接层的权重矩阵,bw表示宽度位置偏移,bh表示高度位置偏移。ww、wh、bw和bh可通过训练获得。
[0040]
在图3的示例中,可通过自适应二维空间注意力模块从原始特征图303确定宽度维度的第一注意力区域(如特征图304中的阴影部分所示)和高度维度的第二注意力区域(如特征图306中的阴影部分所示)。特征图304和特征图306中的元素与原始特征图303中的元素均相同。特征图304中的阴影部分在宽度维度上与字符相对应。在图3的示例中,在宽度维度,假设图片301中的“:”对应特征图304中的第3列元素,图片301中的“2”对应特征图304中的第5列元素,则第3列元素和第5列元素被包括在第一注意力区域之内,而图片301中的“:”与“2”之间的空格对应的第4列元素被排除在第一注意力区域之外。类似地,在高度维度,图片301中的字符位于中间区域,因此,第二注意力区域位于特征图306的中间区域。
[0041]
在图1的框s108处,将第一注意力区域和第二注意力区域的重合区域确定为注意力选择区域。在图3的示例中,可将特征图304中的阴影部分与特征图306中的阴影部分的重合区域确定为注意力选择区域,即特征图308中的阴影部分。特征图308可对应原始特征图的二维注意力热图。
[0042]
在图1的框s110处,根据原始特征图和注意力选择区域来生成候选特征矩阵。其中,候选特征矩阵与原始特征图的分辨率相同。图4示出生成候选特征矩阵的过程的示例性流程图。
[0043]
在框s402处,生成与原始特征图的分辨率相同的空白矩阵。在原始特征图的分辨率为w
×
h的情况下,生成尺寸为w
×
h的矩阵,该矩阵中的每个元素为零。
[0044]
在框s404处,将原始特征图中与注意力选择区域相对应的元素复制到空白矩阵中的相应位置。在图3的示例中,将特征图308中的阴影部分的元素复制到在框s402处生成的空白矩阵中的相应位置。在这里,相应位置指的是坐标相同的位置。
[0045]
在框s406处,将空白矩阵的边界元素赋值为零。在这里,边界元素指的是空白矩阵的第一行、最后一行、第一列和最后一列的元素。
[0046]
在框s408处,通过线性插值来计算空白矩阵中的未赋值区域的元素的值。线性插值能够平滑化从有值区域到零值区域的过渡。
[0047]
经过上述操作可根据原始特征图和注意力选择区域从空白矩阵生成候选特征矩阵。相比于原始特征图,候选特征矩阵中与字符相对应的元素被保留,其他元素被弱化。
[0048]
回到图1,在框s112处,将候选特征矩阵与原始特征图相乘以生成特征交互矩阵。在上下文中,可用表示候选特征矩阵,可用f表示原始特征图。
[0049]
在框s114处,对特征交互矩阵进行标准化处理以得到二维注意力权重矩阵。在上下文中,可用s表示二维注意力权重矩阵。
[0050][0051]
其中,f
softmax
表示soffmax归一化操作。通过使用二维空间注意力权重矩阵,自适应二维空间注意力模块可以直观地定位当前字符的下一个字符位置。
[0052]
在框s116处,对原始特征图与二维注意力权重矩阵进行点积运算以获得增强特征矩阵。在上下文中,可用f

表示增强特征矩阵。
[0053]f′
=s
·f[0054]
在图2的示例中,增强特征矩阵在经过前馈层的处理后被输入解码器220中的多头注意力模块。前馈层可包括relu激活函数和一个线性激活函数。
[0055]
经过上述操作,自适应二维空间注意力模块能够提取图像特征的二维相关性信息,并进行特征自交互增强,从而缓解解码过程中对齐图片与文字时遇到的注意力漂移问题。
[0056]
在框s118处,根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符。在本公开的一些实施例中,可分别以未识别字符中的每个字符作为目标字符,对目标字符执行图5所示的操作。
[0057]
在框s502处,获取文本中的已识别字符对应的嵌入向量。嵌入向量是已识别字符的词向量与已识别字符的位置向量之和。在识别文本中的第一个字符时,已识别字符为空。位置向量pe可以根据下式生成。
[0058][0059][0060][0061]
其中,t表示已识别字符在整个文本中的位置,k表示位置向量中的第k个元素,d
model
表示位置向量的维度。
[0062]
在框s504处,通过多头自注意模块从嵌入向量生成历史文本向量。在图2的示例中,在训练阶段,可通过有掩码的多头自注意模块从嵌入向量生成历史文本向量。如上所述,训练数据集中的图片包括标注内容。标注内容可作为已识别字符被输入。标注内容的文本信息中未被识别的字符被掩码遮盖。这样可通过掩码来避免标注内容中的未被识别的字符对解码过程的影响。
[0063]
在框s506处,对历史文本向量和增强特征矩阵进行交互运算以生成序列解码特征。在图2的示例中,可使用多头注意力模块来对历史文本向量和增强特征矩阵进行交互运算。
[0064]
在框s508处,根据序列解码特征来预测目标字符的分类概率。在图2的示例中,序列解码特征可被输入逐点前馈层、线性层和softmax层等,以确定目标字符分别是字典中的候选字符中的每个字符的概率。
[0065]
在框s510处,根据分类概率来识别目标字符。在本公开的一些实施例中,可将具有最大概率的候选字符确定为目标字符。
[0066]
尽管在图2的示例中未示出,本公开的实施例可在编码器210中堆叠9个自适应二维空间注意力模块。其中,第一个自适应二维空间注意力模块的输入为原始特征图,输出为下一个自适应二维空间注意力模块的输入。其后每个自适应二维空间注意力模块的输入是上一个自适应二维空间模块的输出。堆叠的自适应二维空间注意力模块允许神经网络更好地提取分层特征和捕获注意力机制建模的复杂性,从而提高整个文本识别方法的预测能
力。自适应二维空间注意力模块输出的增强特征矩阵在经过前馈层的处理后被输入解码器220中的多头注意力模块。类似地,在解码器中堆叠3个有掩码的多头自注意力模块。所有注意力机制中的头的数量可被设置为9。实现文本识别方法100的模型可使用多类交叉熵损失函数以端到端的方式进行训练,并使用自适应学习率调整(adadelta)进行优化。
[0067]
图6示出根据本公开的实施例的文本识别装置600的示意性框图。如图6所示,该文本识别装置600可包括处理器610和存储有计算机程序的存储器620。当计算机程序由处理器610执行时,使得文本识别装置600可执行如图1所示的方法100的步骤。在一个示例中,文本识别装置600可以是计算机设备或云计算节点。文本识别装置600可获取包括文本的图片。文本包括多个字符。文本识别装置600可通过浅层卷积神经网络来提取图片的特征以生成原始特征图。其中,原始特征图的分辨率比图片的分辨率更低。文本识别装置600可通过注意力模块分别针对原始特征图的宽度维度和高度维度确定第一注意力区域和第二注意力区域。文本识别装置600可将第一注意力区域和第二注意力区域的重合区域确定为注意力选择区域。文本识别装置600可根据原始特征图和注意力选择区域来生成候选特征矩阵。其中,候选特征矩阵与原始特征图的分辨率相同。文本识别装置600可将候选特征矩阵与原始特征图相乘以生成特征交互矩阵。文本识别装置600可对特征交互矩阵进行标准化处理以得到二维注意力权重矩阵。文本识别装置600可对原始特征图与二维注意力权重矩阵进行点积运算以获得增强特征矩阵。文本识别装置600可根据增强特征矩阵和文本中的已识别字符来识别文本中的未识别字符。
[0068]
在本公开的一些实施例中,文本识别装置600可分别在宽度维度和高度维度关于原始特征图的中心点对称地生成宽度连续位置区间和高度连续位置区间。文本识别装置600可通过注意力模块中的第一嵌入层将宽度连续位置区间映射到宽度离散位置区间。文本识别装置600可通过注意力模块中的第二嵌入层将高度连续位置区间映射到高度离散位置区间。文本识别装置600可通过注意力模块中的第一全连接层确定宽度离散位置区间的宽度位置偏移。文本识别装置600可通过注意力模块中的第二全连接层确定高度离散位置区间的高度位置偏移。文本识别装置600可根据宽度离散位置区间和宽度位置偏移来确定第一注意力区域。文本识别装置600可根据高度离散位置区间和高度位置偏移来确定第二注意力区域。
[0069]
在本公开的一些实施例中,文本识别装置600可生成与原始特征图的分辨率相同的空白矩阵。文本识别装置600可将原始特征图中与注意力选择区域相对应的元素复制到空白矩阵中的相应位置。文本识别装置600可将空白矩阵的边界元素赋值为零。文本识别装置600可通过线性插值来计算空白矩阵中的未赋值区域的元素的值。
[0070]
在本公开的一些实施例中,文本识别装置600可获取文本中的已识别字符对应的嵌入向量。嵌入向量是已识别字符的词向量与已识别字符的位置向量之和。文本识别装置600可通过多头自注意模块从嵌入向量生成历史文本向量。文本识别装置600可对历史文本向量和增强特征矩阵进行交互运算以生成序列解码特征。文本识别装置600可根据序列解码特征来预测目标字符的分类概率。文本识别装置600可根据分类概率来识别目标字符。
[0071]
在本公开的实施例中,处理器610可以是例如中央处理单元(cpu)、微处理器、数字信号处理器(dsp)、基于多核的处理器架构的处理器等。存储器620可以是使用数据存储技术实现的任何类型的存储器,包括但不限于随机存取存储器、只读存储器、基于半导体的存
储器、闪存、磁盘存储器等。
[0072]
此外,在本公开的实施例中,文本识别装置600也可包括输入设备630,例如麦克风、键盘、鼠标等,用于输入包括文本的图片。另外,文本识别装置600还可包括输出设备640,例如扩音器、显示器等,用于输出所识别的文本。
[0073]
在本公开的其它实施例中,还提供了一种存储有计算机程序的计算机可读存储介质,其中,计算机程序在由处理器执行时能够实现如图1、图4和图5所示的方法的步骤。
[0074]
综上所述,根据本公开的实施例的文本识别方法提出了自适应空间二维注意力机制。自适应空间二维注意力模块通过宽高嵌入离散化、线性投影以及候选特征交互,在宽高维度上得到了二维注意力权重矩阵。自适应空间二维注意力模块能够利用二维注意力权重矩阵提取图像特征的二维相关性信息,并进行特征自交互增强,从而缓解解码过程中对齐图片与文字时遇到的注意力漂移问题。进一步地,根据本公开的实施例的文本识别方法能够通过使用二维注意力权重矩阵来根据前一个字符的位置顺序定位下一个字符的位置。该方法能够有效利用图像二维相关性提取图像信息,更好地利用图像特征与文字的语义特征进行序列解码以及降低模型计算复杂度和提升模型整体推理速度。根据本公开的实施例的文本识别方法能够准确地识别购物票据中任意形状的文本,并且需要训练的参数少、计算复杂度低。
[0075]
附图中的流程图和框图显示了根据本公开的多个实施例的装置和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0076]
除非上下文中另外明确地指出,否则在本文和所附权利要求中所使用的词语的单数形式包括复数,反之亦然。因而,当提及单数时,通常包括相应术语的复数。相似地,措辞“包含”和“包括”将解释为包含在内而不是独占性地。同样地,术语“包括”和“或”应当解释为包括在内的,除非本文中明确禁止这样的解释。在本文中使用术语“示例”之处,特别是当其位于一组术语之后时,所述“示例”仅仅是示例性的和阐述性的,且不应当被认为是独占性的或广泛性的。
[0077]
适应性的进一步的方面和范围从本文中提供的描述变得明显。应当理解,本技术的各个方面可以单独或者与一个或多个其它方面组合实施。还应当理解,本文中的描述和特定实施例旨在仅说明的目的并不旨在限制本技术的范围。
[0078]
以上对本公开的若干实施例进行了详细描述,但显然,本领域技术人员可以在不脱离本公开的精神和范围的情况下对本公开的实施例进行各种修改和变型。本公开的保护范围由所附的权利要求限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1