CN117935245A - 文字识别方法、电子设备及存储介质 - Google Patents
文字识别方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117935245A CN117935245A CN202410136141.XA CN202410136141A CN117935245A CN 117935245 A CN117935245 A CN 117935245A CN 202410136141 A CN202410136141 A CN 202410136141A CN 117935245 A CN117935245 A CN 117935245A
- Authority
- CN
- China
- Prior art keywords
- text
- character
- image
- style
- universal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000003709 image segmentation Methods 0.000 claims abstract description 17
- 238000012549 training Methods 0.000 claims description 95
- 238000001514 detection method Methods 0.000 claims description 46
- 230000011218 segmentation Effects 0.000 claims description 37
- 238000013145 classification model Methods 0.000 claims description 33
- 230000004044 response Effects 0.000 claims description 28
- 238000005520 cutting process Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 25
- 238000010586 diagram Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 7
- 230000000295 complement effect Effects 0.000 claims description 3
- 239000013598 vector Substances 0.000 description 21
- 230000006870 function Effects 0.000 description 12
- 238000013527 convolutional neural network Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 11
- 238000012015 optical character recognition Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000004927 fusion Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000009966 trimming Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013140 knowledge distillation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Character Input (AREA)
Abstract
本发明公开一种文字识别方法、电子设备及存储介质,该方法包括:对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;对所述文字图像区域内的文字进行文字风格识别,确定所述文字图像区域内的文字的文字风格;在多种经训练的预设第一文字识别模型中确定所述文字风格对应的第一文字识别模型,其中每种所述预设第一文字识别模型对应一种预设文字风格;利用所述第一文字识别模型对所述文字图像区域内的文字进行识别。本发明所公开的文字识别方法可以兼顾文字识别的通用性和精确性。
Description
技术领域
本发明涉及计算机图像处理的技术领域,具体地涉及文字识别方法、电子设备及存储介质。
背景技术
在计算机图像处理领域中,OCR技术(Optical Character Recognition技术)是对图像中的文字进行识别的一种技术。现有的OCR识别一般是两种场景,要么是利用经由大数据提供的通用文字对应的图像样本训练的通用文字识别模型进行文字识别,要么则利用经由特定风格的文字对应的图像样本训练的特定文字识别模型进行文字识别。然而现有的文字图像中经常同时包含通用文字与多种特定风格的文字,在面对这种文字繁杂的文字图像时,使用通用文字识别模型虽然通用性高但是对于一些特殊的文字识别精准度较低,而使用特定文字识别模型只能对其对应风格的文字具有较高的识别精准度,而对于非对应风格的文字的识别精准度很低,文字识别的效果较差。
本背景技术描述的内容仅为了便于了解本领域的相关技术,不视作对现有技术的承认。
发明内容
因此,本发明实施例意图提供一种文字识别方法、电子设备及存储介质。
在第一方面,本发明实施例提供了一种文字识别方法,包括:
对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;
对所述文字图像区域内的文字进行风格识别,确定所述文字图像区域内的文字的文字风格;
在多种经训练的预设第一文字识别模型中确定所述文字风格对应的第一文字识别模型,其中每种所述预设第一文字识别模型对应一种预设文字风格;
利用所述第一文字识别模型对所述文字图像区域内的文字进行识别。
在本发明的一些实施例中,所述对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,包括:
在本发明的一些实施例中,所述利用经训练的文字分割检测模型,对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,包括:
将所述待检测图像分割检测模型输入所述经训练的文字分割检测模型,得到对应待检测图像的的二值化响应图,其中,所述二值化响应图的二值用于表征对应的图像区域是否对应有文字;
对所述二值化分割响应图进行膨胀处理,以连通部分对应文字的图像区域;
根据所述二值化响应图,在所述待检测图像中包围出至少一个多边形区域作为文字图像区域,每个所述多边形区域包含一个或多个相邻的对应有文字的图像区域。
在本发明的一些实施例中,在对所述文字图像区域内的文字进行风格识别之前,所述方法还包括:
确定所述文字图像区域内的文字的文字方向;
响应于所述文字图像区域内的文字的文字方向不为第一预设方向,将所述文字图像区域内的不为所述第一预设方向的文字调整为所述第一预设方向。
在本发明的一些实施例中,在对所述文字图像区域内的文字进行风格识别之前,所述方法还包括:
将所述文字图像区域裁剪成多个文字图片。
在本发明的一些实施例中,所述将所述文字图像区域裁剪成多个文字图片,包括:
根据用于输入所述风格分类模型的标准图片尺寸确定标准宽高比;
根据所述标准宽高比以及所述文字图像区域的尺寸确定裁剪尺寸;
根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成所述多个文字图片。
在本发明的一些实施例中,所述根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成所述多个文字图片,包括:
根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成多个等高度的裁剪文字图像;
确定各个所述裁剪文字图像是否满足所述标准宽高比,将满足所述标准宽高比的多个所述裁剪文字图像作为所述文字图片,将不满足所述标准宽高比的所述裁剪文字图像进行宽度补齐并作为所述文字图片。
在本发明的一些实施例中,所述将所述多个文字图片输入所述经训练的风格分类模型,确定所述文字图像区域内的文字的文字风格,包括:
将所述多个文字图片输入所述经训练的风格分类模型,对所述多个文字图片内的文字分别进行风格分类,得到所述多个文字图片分别对应的多个预分类结果;
对所述多个预分类结果进行加权平均,得到各预设文字风格的平均加权值;
根据所述平均加权值,以置信度最大的预设文字风格作为所述文字图像区域内的文字的文字风格。
在本发明的一些实施例中,所述第一文字识别模型包括通用文字识别模型,所述通用文字识别模型根据如下通用训练步骤生成:
获取通用训练样本集,所述通用训练样本集包括多种文字风格的多个通用训练样本,所述通用训练样本包括文字区域图像以及对应的文字内容标签;
将所述通用训练样本输入所述通用文字识别模型的特征提取模块,以获得第一通用图像特征序列以及第一通用文字特征序列;
将所述第一通用图像特征序列输入所述通用文字识别模型的注意力模块确定注意力损失,根据所述注意力损失迭代更新所述通用文字识别模型;
将所述第一通用图像特征序列输入所述通用文字识别模型的自注意力模块得到第二通用图像特征序列,将所述第二图像特征序列输入所述通用文字识别模型的全连接层得到第二通用文字特征序列;
根据所述第一通用文字特征序列以及第二通用文字特征序列确定第一序列分类损失,根据所述第一序列分类损失迭代更新所述通用文字识别模型。
在本发明的一些实施例中,所述第一文字识别模型包括特定风格文字识别模型,所述特定风格文字识别模型基于所述通用文字识别模型根据如下微调训练步骤生成:
获取微调训练样本集,所述微调训练样本集包括特定文字风格的多个微调训练样本,所述微调训练样本包括文字区域图像以及对应的文字内容标签;
将所述微调训练样本输入所述通用文字识别模型的特征提取模块,以获得第一微调图像特征序列以及第一微调文字特征序列;
将所述第一微调图像特征序列输入所述通用文字识别模型的注意力模块以获得第二注意力损失,根据所述第二注意力损失迭代更新所述通用文字识别模型;
将所述第一微调图像特征序列输入所述通用文字识别模型的自注意力模块得到第二微调图像特征序列,将所述第二微调图像特征序列输入所述通用文字识别模型的全连接层得到第二微调文字特征序列;
根据所述第一微调文字特征序列以及第二微调文字特征序列确定第二序列分类损失,根据所述第二序列分类损失迭代更新所述通用文字识别模型,以生成所述特定风格文字识别模型。
第二方面,本发明实施例提供一种电子设备,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行任一本发明实施例的文字识别方法。
第三方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现任一本发明实施例的文字识别方法。
本发明实施例中所公开的文字识别方法中,通过对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;对文字图像区域内的文字进行文字风格识别,确定文字图像区域内的文字的文字风格;在多种经训练的预设第一文字识别模型中确定所述文字风格对应的第一文字识别模型,其中每种预设第一文字识别模型对应一种预设文字风格;最后利用第一文字识别模型对文字图像区域内的文字进行识别。本发明实施例中所公开的文字识别方法使得电子设备在对待检测图像进行文字识别时,可以针对待检测图像中的文字图像区域的文字智能地选择出对应其文字的第一文字识别模型,以实现精准地对待检测图像内的文字进行识别。本发明实施例提供的文字识别方法能够被应用于各种风格文字的识别,从而可以利用本发明实施例提供的文字识别方法对同时包含通用文字与多种特定风格的文字的文字图像进行识别,能够兼顾图像文字识别的通用性和精准性。
本发明实施例的其他可选特征和技术效果一部分在下文描述,一部分可通过阅读本文而明白。
附图说明
以下,结合附图来详细说明本发明的实施例,所示出的元件不受附图所显示的比例限制,附图中相同或相似的附图标记表示相同或类似的元件,其中:
图1示出了现有技术中OCR识别的方法流程示意图;
图2示出了现有技术中OCR识别的另一方法流程示意图;
图3示出了根据本发明实施例的文字识别方法的示例流程图;
图4示出了根据本发明实施例的文字分割检测模型的模型训练场景示意图;
图5示出了根据本发明实施例的文字分割检测模型的检测流程示意图;
图6示出了根据本发明实施例的文字分割检测模型的检测流程示意图;
图7示出了根据本发明实施例的文字分割检测模型的检测流程示意图;
图8示出了根据本发明实施例的文字识别方法的示例流程图;
图9示出了根据本发明实施例的文字识别方法的示例流程图;
图10示出了根据本发明实施例的文字识别方法的示例流程图;
图11示出了根据本发明一个具体实施例的输入风格分类模型的文字图片示意图;
图12示出了根据本发明实施例的文字识别方法的示例流程图;
图13示出了根据本发明实施例的文字识别模型的训练流程示意图;
图14示出了根据本发明实施例的文字识别模型的训练场景示意图;
图15示出了根据本发明实施例的文字识别模型的训练流程示意图;
图16示出了根据本发明一个具体实施例的文字识别模型的训练与推理示意图;
图17示出了根据本发明实施例的文字识别方法的示例流程图;
图18示出了根据本发明实施例的文字识别方法的示例流程图;
图19示出了根据本发明实施例的文字识别方法的示例流程图;
图20示出了根据本发明实施例的文字识别方法的示例流程图;
图21示出了根据本发明实施例的文字识别方法的训练与预测场景示意图;
图22示出了根据本发明实施例的文字识别方法的示例流程图;
图23示出了根据本发明实施例的文字识别方法的示例流程图;
图24示出了根据本发明实施例的文字识别方法的示例流程图;
图25示出了根据本发明实施例文字识别装置的示例性结构图;以及
图26示出了能实施根据本发明实施例的方法的电子设备的示例性结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合具体实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
OCR(Optical Character Recongnition,光学字符识别)是指一种用于将图像中的字符信息转换成可编辑的文本形式的计算机技术。
目前业界OCR识别一般有两种方案,一种方案如图1所示,即先将含有文字的图片输入到通用文字检测模型中提取出含有文字的图片区域,再将所述图片区域输入通用文字识别模型中进行文字识别,这里的通用文字检测模型和通用文字识别模型都是通过大数据集通用文字样本训练出来的。但是这种通用文字识别模型需要支持各类风格文字的识别,一般需要使用大量的样本数据进行训练,因此就会存在以下问题:一方面样本数据收集难度不一,对于常规的印刷文字,其十分常见并且可以大量合成得到,收集难度较低,因此在训练中占比较大;而对于一些手写文字,其大部分存在于书法、古籍、现实纸质手写资料中,大量采集比较困难,因此在训练中占比较小。如此一来,在通用识别模型识别特定风格的文字图片的情况下,由于通用识别模型需要应对差异非常巨大的各种风格文字,比如常规印刷文字的整体形式差异较小,而手写体的文字却千差万别,场景文字存在的背景变化很大,这都增加了通用识别模型的训练难度,因此,相对于特定场景的文字识别模型而言,利用这种方式进行识别其识别精度低。
另一种方案如图2所示,需要用户先自行判断含有文字的图片的文字场景或者文字风格,然后将含有文字的图片输入到对应的特定场景文字检测模型中提取出含有文字的图片区域,再利用对应的特定风格文字识别模型进行文字识别。例如,某特定场景的文字检测模型只能应用于检测识别手写体文字的场景。这种方案需要提前规定输入图片的场景范围,然后针对特定场景的数据进行标注和模型优化,对于支持的场景效果会较好,但是对于其他场景的识别效果则较差。因此,这种只能针对某种特定的场景的方案的鲁棒性较差,其只能应用在某个已知的小范围场景内,并且数据不能出现太大的变化,否则识别性能会急剧下降;并且模型定制化程度较高,不利于应用于各类风格的文字图片的识别上。因此,有必要探索一种能够兼顾通用性和精准度的文字识别方法。
基于此,图3示出了根据本发明实施例提供的文字识别方法的流程示意图,如图3所示,所述方法包括以下步骤:
S110:对获取的待检测图像进行图像分割,确定包含文字的文字图像区域。
需要说明的是,本发明实施例应用于电子设备中。这里的电子设备包括:移动设备或固定设备。其中,移动设备包括:手机、平板电脑、可穿戴式设备等;固定设备可以包括:台式电脑一体机、智能家居设备等。当然,电子设备还可以是服务器或者服务器集群等。总之任何具有处理器,且能够对输入的图像或者存储的图像进行处理,并识别出文字的电子设备均为本发明实施例所述的电子设备。
这里待检测图像可以是彩色图像也可以是黑白图像。在一些实施例中,对获取的待检测图像进行图像识别,可以是对获取的待检测图像进行灰度处理。可以理解的是,这里获取的待检测图像可以是电子设备自身获取的原始图像,也可以是从其他电子设备获取的原始图像。进一步地,从电子设备自身获取的原始图像,可以包括:从电子设备现有存储的图像中获取的原始图像;或者从播放的视频中截取的原始图像。
这里,对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,至少应当理解为,将图像中文字所在区域与非文字所在的区域区分出来。
在本发明的一些实施例中,例如所述步骤S110中,所述对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,可以包括:
利用经训练的文字分割检测模型,对获取的待检测图像进行图像分割,确定包含文字的文字图像区域。
在本发明的一些实施例中,所述经训练的文字分割检测模型可以是基于业界先进的文字分割检测模型算法DBNet(Differentiable Binarization Network)来检测图像中出现的文字图像区域,其核心特性在于其引入了一种可微分的二值化策略。可以理解的是,虽然不同场景的文字个体的风格存在差异,但整体来看文本区域的检测还是有很强的相似性,因此可以使用一个模型来检测大部分场景的文字图像区域。
在本发明的一些实施例中,具体的,如图4和图5所示,所述经训练的文字分割检测模型采用卷积神经网络(Convolutional Neural Network,CNN),由轻量化骨干(backbone)网络模块、特征金字塔模块FPN(Feature Pyramid Network)以及检测框头(DBHead)三个部分组成。待检测图片数据被输入至上述轻量化骨干,再经上述特征金字塔模块FPN融合,最后由上述检测框头生成二值化响应图并回应文字存在的区域。
在本发明实施例中,所述轻量化骨干网络(backbone)模块使用了专门为移动设备和嵌入式系统设计的轻量级卷积神经网络MobileNet-v3作为骨干,它的网络结构和参数设置使得它在计算资源有限的情况下仍能在图像识别任务上表现出色,该部分主要作用是提取基础的图像数据特征,特别是底层的视觉特征。这里主要包含两个点,一是轻量化设计,降低模型大小,提高计算效率;二是文字分割检测模型在通用的大规模分类数据上进行训练,使得模型具有更好的初始参数,提高后续训练效果。
在本发明实施例中,所述特征金字塔模块FPN(Feature Pyramid Network),该模块通过多级特征采样与融合,将多层不同分辨率、不同语义级别的特征进行融合。为了提高FPN模块的效果,还对可其网络层进行修改,加入注意力机制和残差机制。
在本发明实施例中,所述检测框头(DBHead),该模块基于多级融合的特征预测概率图(probability map)和阈值图(threshold map),最后得到二值化响应图(approximatebinary map),非0的相应区域即被视为文字存在的区域。
在本发明的一些实施例中,如图6所示,所述对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,可进一步包括:
S111:将待检测图像输入经训练的文字分割检测模型,得到对应待检测图像的二值化分割响应图;
在本发明实施例中,所述二值化分割响应图的二值用于表征对应的图像区域是否对应有文字。
在本发明实施例中,所述二值化处理是指一种图像处理方法,其将图像中的像素点的灰度值设置为0或255,这种处理产生的明显的对比度差异使得文字区域在图像中得以突出,并在视觉上与背景区域相分离,这种二值化处理方式具有简明清晰的特点,有助于降低计算复杂度,提升文字分割检测的效率和精度。
S112:对二值化分割响应图进行膨胀处理,以连通部分对应文字的图像区域;
在本发明实施例中,所述膨胀处理是形态学图像处理操作的一种,旨在加强图像中的目标区域,使其与周围相邻的区域连通在一起。例如,在上述步骤S112中,将对二值化分割响应图进行膨胀处理,以连通在分割响应图中的文字区域以形成文字图像区域。经过上述膨胀处理,能够有效地消除文字区域间的空隙,使得文本区域成为一个完整的整体,其能够提高整体的分割效果并提升后续步骤的识别效果。
S113:根据二值化响应图,在待检测图像中包围出至少一个多边形区域作为文字图像区域,每个多边形区域包含一个或多个相邻的对应有文字的图像区域。
在本发明实施例中,经处理的二值化分割响应图中不同的区域被表示为黑白两种颜色(通常是0和255),此时可使用最大包围区域算法来确定一个给定区域内的最大连通区域,即能够包围最多的文字图像的区域。使用最大包围区域算法可以有效地标记出文字图像区域,这有利于后续的文字图像检测和识别任务。
在本发明的一个具体实施例中,当待检测图像被输入到所述经训练的文字分割检测模型中后,所述经训练的文字分割检测模型会对其进行预测:首先,如上述步骤S111所述,将会输出对应于待检测图像的二值化分割响应图;然后,如上述步骤S112所述,将对二值化分割响应图进行膨胀操作,将一些相邻区域加强连接,以连通部分对应文字的图像区域;可选的,还可对其进行腐蚀操作以将一些噪声响应点筛掉;最后,如上述步骤S113所述,可使用最大包围区域算法,根据二值化响应图,在待检测图像中包围出至少一个多边形区域作为文字图像区域,每个多边形区域包含一个或多个相邻的对应有文字的图像区域,从而确定出待检测图像中包含文字的文字图像区域。
进一步的,在本发明的一些实施例中,如图7所示,所述文字分割检测模型可通过如下步骤迭代训练,直至完成:
S710:将第一训练数据输入轻量化骨干网络模块,得到第一训练数据的多个图像特征序列;
在本发明实施例中,为了解决多个场景的文字检测问题,所述第一训练数据的数据采集范围需要包含大部分的场景,例如包括自然场景、网页场景、广告场景、印刷场景、手写体场景、合同文书场景、中文场景与本领域技术人员根据其自身需求选择其他语言场景等。
在本发明实施例中,将第一训练数据输入轻量化骨干网络模块,得到第一训练数据的多个图像特征序列,其中,对于给定的第一训练图像数据,所述多个图像特征序列即轻量化骨干网络模块的不同层级的网络提取的一系列特征向量,每个特征向量捕获了图像的不同抽象层次的信息。例如在上述步骤S710中,可将第一训练图像数据输入轻量化骨干网络模块,得到第一训练数据的多个图像特征向量序列;
S720:由特征金字塔模块对多个图像特征序列进行采样和融合,得到多级融合特征;
在本发明实施例中,所述多级融合特征是指从多个层级的特征序列中融合得到的一组特征,换而言之,是从不同尺度的特征层级中汇集、融合的特征向量集合。例如在上述步骤S720中,可由特征金字塔模块对多个多个图像特征向量序列进行采样和融合,得到多级融合特征向量集合。
S730:利用检测框头模块,由多级融合特征分别得到用于表示文本存在概率的概率图和用于表示文本区域边界的阈值图,以及根据概率图和所述阈值图得到的近似二值化图;
S740:根据概率图、阈值图和近似二值化图计算总损失;
在本发明实施例中,在上述文字分割检测模型训练时,文字分割检测模型的损失函数会采用三个关键图像映射(map)(概率图probability map、阈值图threshold map、近似二进制映射图approximate binary map)分别计算损失,然后加权求和得到最终的总损失值。
S750:基于总损失更新文字分割检测模型的参数。
此外,在本发明的一些实施例中,在对所述文字分割检测模型进行训练时,还可采用优化的标签整理方式,由于不同场景的开源数据在标注过程中存在一些标准的差异,需要将所有标签都按照统一的方式调整,即以文字行为单位,每行文字图像区域为四个点组成的四边形进行标注。对于不能调整的标签数据,则可过滤或者降低训练权重。
此外,在本发明的另一些实施例中,在对所述文字分割检测模型进行训练时,还可采用知识蒸馏以提高轻量化模型的效果,即可以先训练一个大型的高精度模型,然后利用大模型来辅助小模型训练,进而进一步提高小模型的效果。
S170:对文字图像区域内的文字进行风格识别,确定文字图像区域内的文字的文字风格。
需要说明的是,文字风格是指文字的行文风格,与图像场景是不同的概念。文字风格例如可以包括但不限印刷体风格、手写体风格、艺术字风格等,不同的文字形态呈现对应不同的文字风格。
在一些实施例中,如图8所示,在对所述文字图像区域内的文字进行风格识别之前,所述方法还包括:
S160:将文字图像区域裁剪成多个文字图片;
在一些实施例中,基于卷积神经网络(Convolutional Neural Network,CNN)的分类模型的输入都是一个标准尺寸的图片数据,比如224像素*224像素、或者320像素*320像素等,这里的标准尺寸可以是待训练的卷积神经网络的分类模型所能识别的最大尺寸。可以理解的是,不同的卷积神经网络的分类模型对应的最大尺寸不同,且对应的标准尺寸也有所差异。具体到文字检测中,由于待检测图像中的文字图像区域的尺寸可能存在极大差异,即有可能是包含一两个字的文字图像区域,也可能是包含十几个字的文字图像区域。如果将文字图像区域按照其原来的尺寸输入模型,模型对所述文字图像区域进行强制缩放,例如统一缩放成320*320分辨率的图像以便输入分类模型,例如输入上述基于卷积神经网络(CNN)的分类模型进行文字识别,这就导致了文字图像区域被缩放的程度各有不同,包含较多文字的文字图像区域被缩放后的文字结构,例如文字的长宽比被严重破坏,这严重影响到模型的识别判断结果的准确性。
基于此,本发明通过对采集到的文字图像区域裁剪成多个文字图片,然后对裁剪后的图像内的文字进行识别,可以提高模型对于不同尺寸的文字图像区域的鲁棒性,进而提高风格类型识别的准确性。
在本发明一些实施例中,如图9所示,上述步骤S160可进一步包括以下步骤:
S161:根据用于输入所述风格分类模型的标准图片尺寸确定标准宽高比。
在本发明一些实施例中,例如在上述步骤S161中,可以先确定用于输入所述风格分类模型的标准图片尺寸,然后基于该标准尺寸确定标准宽高比,所述标准宽高比将用于后续步骤,例如用于后续步骤S162中。
可以理解的是,在本发明实施例中的风格分类模型的标准图片尺寸可以为其他数值,由其确定的标准宽高比也可以相应为其他数值,在此不做限制。
S162:根据标准宽高比以及所述文字图像区域的尺寸确定裁剪尺寸。
在本发明一些实施例中,例如在上述步骤S162中,在获取标准宽高比后,可基于所述标准宽高比以及待检测的文字图像区域的尺寸确定实际裁剪尺寸,例如获取裁剪像素尺寸。
S163:根据裁剪尺寸对所述文字图像区域进行裁剪,生成多个文字图片。
在本发明一些实施例中,如图10所示,上述步骤S163可包括以下步骤:
S1631:根据裁剪尺寸对文字图像区域进行裁剪,生成多个等高度的裁剪文字图像。
在本发明实施例中,在根据裁剪尺寸对文字图像区域进行裁剪后,可获得多个等高度的裁剪文字图像,可以理解的是,在所述裁剪的过程中并不会减少或者增加所述文字图像区域中的全部文字内容(例如文字图像区域的全部像素),所述多个等高度的裁剪文字图像彼此拼接后仍然可以还原所述文字图像区域的文字图像信息。
S1632:确定各个所述裁剪文字图像是否满足标准宽高比,将满足标准宽高比的多个裁剪文字图像作为所述文字图片,将不满足标准宽高比的裁剪文字图像进行宽度补齐并作为所述文字图片。
在本发明实施例中,例如在上述步骤S1632中,会确定由上述步骤获得的各个裁剪文字图像,例如由上述步骤S1631获得的各个裁剪文字图像进是否满足标准宽高比,并将满足标准宽高比的多个裁剪文字图像作为所述文字图片,而对于不满足标准宽高比的裁剪文字图像,将在保证其高度不变的情况下,对其进行宽度上的补齐,以使其满足所述标准宽高比,例如,可以使用不包含文字内容的空白区对不满足标准宽高比的裁剪文字图像进行宽度补齐,宽度补齐后的裁剪文字图像也将作为所述文字图片。
参照图11,下面将结合本发明一个具体实施例来进一步描述本发明的文字识别方法:
例如,使用的风格分类模型的输入的标准图片尺寸为48像素*320像素,则可确定所述风格分类模型的标准输入的文本区域的标准宽高比为48:320。此时需要对一个尺寸为48像素*800像素的文字图像区域内的文字进行风格识别,则首先由所述标准宽高比(48:320)以及所述文字图像区域尺寸(48像素*1200像素)确定裁切尺寸为48像素*320像素,然后按照此裁切尺寸对所述文字图像区域进行裁剪,然后得到四段等高度的裁剪文字图像,分别是尺寸为48像素*320像素、48像素*320像素、48像素*320像素以及48像素*240像素的裁剪文字图像,接下来判断所得到的裁剪文字图像是否均满足所述标准宽高比(48:320),可知上述48像素*160像素的裁剪文字图像不符合标准宽高比(48:320),于是在保持其高度(48像素)不变的情况下对其宽度(240像素)进行补齐至320像素,补齐后的裁剪文字图像尺寸为48像素*320像素,此时,则将满足标准宽高比的四个裁剪文字图像作为输入所述风格分类模型的文字图片。
相比于直接缩放的常规方法,利用本发明上述本实施例的方法不会导致输入风格分类模型的文字图片被严重压缩,也不会导致原始图像的文字结构损坏,从而使得风格分类模型可以准确的预测出文字图像区域内的文字的文字风格,进而提高后续文字识别的准确性。
步骤S170:将多个文字图片输入所述经训练的风格分类模型,确定文字图像区域内的文字的文字风格。
在本发明一些实施例中,如图12所示,所述步骤S170可包括如下步骤:
S171:将多个文字图片输入经训练的风格分类模型,对多个文字图片内的文字分别进行风格分类,得到多个文字图片分别对应的多个预分类结果。
在本发明一些实施例中,如上述步骤S171中,会将得到的多个文字图片,例如将上述步骤S163以及步骤S1631~S1633中得到的多个文字图片作为一个批次输入至经训练的风格分类模型中,进而对该批次包含的各个文字图片内的文字进行风格分类,得到对应于所述多个文字图片的多个预分类结果。
S172:对各个预分类结果加权平均,得到各预设文字风格的平均加权值。
在一些实施例中,可将前述步骤得出的对应各个文字图片的预分类结果进行平均加权,得到最终每个类别的平均加权分数以得到预分类结果的置信度。在一个具体实施例中,例如上述步骤S172中,可以将前述实施例中得到的四个文字图片对应的四个预分类结果进行平均加权,得到各预设文字风格的平均加权值。
S173:根据平均加权值,以置信度最大对应的预设文字风格作为文字图像区域内的文字的文字风格。
在本发明实施例中,例如在上述步骤S173中,对于每个预分类结果,所述风格分类模型不仅提供了一个分类(即文字风格),并且还会估计所述分类决策的置信度,随后对每个预分类结果进行加权平均,模型会选择具有最高置信度的文字风格代表整个原始图像的文字风格。这意味着,基于所有图像段的分析,模型最有信心的分类结果会被选为最终的文字风格。
使用本发明上述实施例的方法,可以进一步提升风格分类模型进行风格分类的准确度,以便于后续选择对应的文字识别模型。
在本发明一些实施例中,所述风格分类模型可包括:依次连接的轻量化骨干网络(backbone)模块、全连接层(Fully Connected Layer)和激活函数层(ActivationFunction Layer)。
在本发明一些实施例中,所述将所述多个文字图片输入所述经训练的风格分类模型,对各个文字图片内的文字进行风格分类,得到预分类结果,可具体包括:
将多个文字图片输入轻量化骨干网络模块,得到第一特征序列。
在本发明实施例中,将多个文字图片输入轻量化骨干网络模块,得到第一特征序列,其中,所述第一特征序列可以是从轻量化骨干网络模块的不同层级的网络提取的一系列特征向量,每个特征向量捕获了图像的不同抽象层次的信息,例如可将多个文字图片输入轻量化骨干网络模块,得到第一特征向量序列。
将第一特征序列输入全连接层,得到第二特征序列。
在本发明实施例中,所述全连接层(Fully Connected Layer)用于对第一特征(向量)序列进行进一步的映射,特征(向量)序列被展开并抽取和表示以得到高级特征向量。例如在上述步骤中,可将第一特征向量序列输入全连接层,得到第二高级特征向量序列。
将第二特征序列经激活函数层处理,得到预分类结果。
在本发明实施例中,所述激活函数层(Activation Function Layer)用于对全连接层输出的第二高级特征向量序列进行非线性映射,以更好地捕捉输入数据的复杂性和模式,例如可将第二高级特征向量序列经激活函数层处理,得到预分类结果。
步骤S180:在多种经训练的预设第一文字识别模型中确定文字风格对应的第一文字识别模型,其中每种预设第一文字识别模型对应一种预设文字风格。
在本发明实施例中,所述预设第一文字识别模型可包括预设的针对于通用文字风格的文字识别场景进行训练得到的通用文字识别模型,以及专门针对特定文字风格的文字识别场景进行训练得到的特定文字风格文字识别模型,其中所述特定文字风格文字识别模型的数量可以为一个或多个,在此不作限制。电子设备在检测出文字图像区域内的文字风格后针对该文字风格调用适用于识别该文字风格的文字的预设第一文字识别模型作为第一文字识别模型。
在本发明的一些实施例中,所述预设第一文字识别模型可包括通用文字识别模型,如图13所示,所述通用文字识别模型可根据如下通用训练步骤迭代训练获得:
S1310:获取通用训练样本集,所述通用训练样本集包括多种文字风格的多个通用训练样本,所述通用训练样本包括文字区域图像以及对应的文字内容标签。
在本发明一些实施例中,例如上述步骤S1310中,所述多种文字风格包括但不限于印刷体、花体、手写体等。
在本发明一些实施例中,获取所述通用训练样本集的方式包括但不限于:广泛收集已有的开源数据并从中裁剪出符合要求的文本图片和对应的文本内容,以及使用现有的各种字体文件自动批量合成文本图片和对应的标签,例如使用常用的宋体、楷体等字体文件大量合成文本图片和对应的标签。
在本发明一些实施例中,获取的文本图片数据不仅包括横行的数据以及对应的文字标签,还包括竖行的文本数据以及对应的文字标签,这样的通用训练样本集能够保证模型能够同时识别横行和竖行的文本图像。
在本发明一些实施例中,所获取的通用训练样本集中每个类型的文字数据量级差距不会太大,这保证了训练数据可以反映通用场景的文本分布以达到更好的训练效果。
S1320:将所述通用训练样本输入所述通用文字识别模型的特征提取模块,以获得第一通用图像特征序列以及第一通用文字特征序列。
在本发明实施例中,可将通用训练样本输入通用文字识别模型的特征提取模块,以提取通用训练样本的图像特征和文字特征以获得第一通用图像特征序列以及其对应的第一通用文字特征序列。
S1330:将第一通用图像特征序列输入通用文字识别模型的注意力模块以确定第一注意力损失,根据第一注意力损失迭代更新通用文字识别模型。
在本发明实施例中,可将第一通用图像特征序列输入通用文字识别模型的注意力模块中,由损失函数确定第一注意力损失。例如,可以将任一风格的图像特征序列输入通用文字识别模型的轻量化骨干网络模块中,其中,所述轻量化骨干网络模块的不同层级的网络将提取文字图片训练数据的一系列特征向量序列,每个特征向量捕获了文字的图片数据的不同抽象层次的信息。
S1340:将第一通用图像特征序列输入通用文字识别模型的自注意力模块得到第二通用图像特征序列,将第二图像特征序列输入所述通用文字识别模型的全连接层得到第二通用文字特征序列。
在本发明一些实施例中,当所述第一通用像特征序列被输入自注意力模块,例如Transformer模块中时,所述自注意力模块会通过自注意力机制计算第一通用像特征序列中每个元素与其他元素之间的相关性,然后根据这些相关性来给每个元素赋予不同的权重,以得到所述第二通用图像特征序列。随后,上述第二通用图像特征序列会被输入模型的全连接层(FC层,Fully Connected Layer),所述全连接层会整合前面获得的第二通用图像特征序列的特征并将其映射转换成具体的第二通用文字特征序列。
S1350:根据所述第一通用文字特征序列以及第二通用文字特征序列确定第一序列分类损失,根据第一序列分类损失中迭代更新通用文字识别模型。
在本发明实施例中,所述第一通用文字特征序列来自于最初输入模型的文字区域图像对应的真实文字标签,而所述第二通用文字特征序列则来自于模型对于最初输入模型的文字区域图像的识别与预测,可通过对比第一通用文字特征序列以及第二通用文字特征序列的差异(即计算二者之间的序列分类损失)直接监督训练FC层的输出,从而迭代更新所述预设第一文字识别模型。在一个具体实施例中,例如在上述步骤S850中,可使用CTC损失函数来计算上述序列分类损失,并通过反向传播算法进行迭代更新模型,来减少第二通用文字特征序列和第一通用文字特征序列之间的差异并由此使得模型的预测序列逐步逼近真实文本内容。
在本发明一些实施例中,所述第一文字识别模型可包括特定风格文字识别模型,所述特定风格文字识别模型旨在针对特定风格的文字进行识别。
在本发明一些实施例中,如图14所示,可基于已经训练好的通用文字识别模型/具有训练好的通用文字识别模型的模型参数的模型作为预训练模型,针对于特定风格文字识别模型进行迁移微调,所针对的特定风格的字体可以是一些特殊的艺术字体、特定的手写体类型等,本领域的技术人员可以根据其需求自确定所要针对的特定风格的文字。
在本发明一些实施例中,在进行迁移微调训练时,页需要针对特定风格的文字数据和标签进行收集和标注,同样也需要真实数据和合成数据。另外,若需要针对一些不常见或者真实数据少的字体风格进行微调,则需要进行额外补充或者合成。
在本发明一些实施例中,如图15所示,所述特定风格文字识别模型基于所述通用文字识别模型根据如下微调训练步骤生成:
S1510:获取微调训练样本集,所述微调训练样本集包括特定文字风格的多个微调训练样本,所述微调训练样本包括文字区域图像以及对应的文字内容标签。
在本发明实施例中,例如在上述步骤S1510中,不同于前述通用训练,在进行微调训练时所使用的微调训练样本集中包含的全部为同一种特定文字风格的训练样本。
S1520:将微调训练样本输入通用文字识别模型的特征提取模块,获得第一微调图像特征序列以及第一微调文字特征序列。
S1530:将第一微调图像特征序列输入通用文字识别模型的注意力模块以获得第二注意力损失,根据第二注意力损失迭代更新所述通用文字识别模型。
S1540:将第一微调图像特征序列输入通用文字识别模型的自注意力模块得到第二微调图像特征序列,将第二微调图像特征序列输入通用文字识别模型的全连接层得到第二微调文字特征序列。
S1550:根据第一微调文字特征序列以及第二微调文字特征序列获得第二序列分类损失,根据第二序列分类损失迭代更新通用文字识别模型,以生成特定风格文字识别模型。
上述步骤S1520~S1540的详细描述可以参照前述步骤S1320~S1350,其中不同之处在于所使用的训练样本全部属于同一种特定文字风格的训练样本,即属于同一特定文字风格的文字区域图像以及对应的文字内容标签。
在本发明实施例中,上述整个训练流程中的大规模通用文字识别模型的预训练一般只需要训练好一次即可,后续的模型优化都只用训练特定的模型,这样优化的训练资源和时间都比较小,并且更加有针对性,不会因为优化某种风格文字得识别而导致其他已有风格文字识别的性能变差。相比主流的通用文字检测识别方法,本发明实施例的方法可以更好地识别每一个不同区域的文字内容,相比于单一识别模型具有更好的鲁棒性和泛化性,并且第一文字识别模型优化成本降低,可以将一个模型拆分成多个子任务,这样每个任务的数据收集、标注、训练成本都会极大降低。
在本发明一个具体实施例中,参照图16,所述第一文字识别模型可以包括轻量化骨干(Backbone)网络模块、自注意力(Self-Attention)模块、全连接层(Fully ConnectedLayer)和解码器模块。
在本发明一个具体实施例中,参照图16,在训练时,训练样本集中的文字区域图像被输入至第一文字识别模型的轻量化骨干(Backbone)网络模块,并由其输出所述文字区域图像对应的图像特征序列一;随后,该图像特征序列一会被同时输入至第一文字识别模型的注意力模块和自注意力(Self-Attention)模块(在图中为Transfomer模块),随后,所述注意力模块会根据图像特征序列一以及注意力损失函数确定注意力损失,并根据所述注意力损失迭代更新所述预设第一文字识别模型,更具体地,所述注意力模块迭代更新所述预设第一文字识别模型的轻量化骨干网络;同时,所述自注意力模块(在图中为Transfomer模块)会利用其自注意力机制对输入的图像特征序列一进行进一步加权聚合得到进一步的图像特征序列二,随后将所述图像特征序列二输入至全连接层,其将利用CTC损失函数监督训练并迭代更新所述预设第一文字识别模型。
步骤S190:利用第一文字识别模型对文字图像区域内的文字进行识别。
在本发明一些实施例中,如图17所示,所述利用第一文字识别模型对文字图像区域内的文字进行识别,具体包括:
步骤S191:将文字图像区域输入轻量化骨干网络模块,得到对应文字图像区域的图像特征序列;
在本发明实施例中,将文字图像区域输入轻量化骨干网络模块,得到对应文字图像区域的图像特征序列,其中,所述对应文字图像区域的图像特征序列可以是从轻量化骨干网络模块的不同层级的网络提取的一系列特征向量序列,每个特征向量捕获了文字图像区域的不同抽象层次的信息。例如在上述步骤S191中,可将多个文字图像区域输入轻量化骨干网络模块,对应文字图像区域的图像特征向量序列。
步骤S192:将图像特征序列输入自注意力模块,得到第一编码特征序列;
在本发明实施例中,所述自注意力机制能够对输入的特征序列进行上下文关联的建模,从而捕捉特征之间的相关性,这有助于正确理解和解释文字的语义。
步骤S193:将第一编码特征序列输入全连接层,得到第二编码特征序列;
在本发明实施例中,所述全连接层用于将经过特征提取和关联建模的第一编码特征序列映射到更高维的表示空间,这样的表示将包含更丰富和抽象的特征,所得到的第二编码特征序列有助于在后续的解码阶段进行更准确的分类。
步骤S194:由解码器模块对第二编码特征序列进行解码,以确定被识别的文字。
在本发明实施例中,所述解码器模块将高维特征表示转化为可理解的输出。例如在上述步骤S194中,解码器模块可将第二编码特征序列逆变换为对应的文字信息,以确定被识别的文字。
在本发明另一些实施例中,如图18所示,可选的,在上述步骤S160之前,还包括:
步骤S140:确定所述文字图像区域内的文字的文字方向
在本发明实施例中,所述文字图像区域内的文字的文字方向主要分为正立方向以及颠倒方向。
步骤S150:响应于所述文字图像区域内的文字的文字方向不为第一预设方向,将非所述第一预设方向的文字的文字方向调整为所述第一预设方向。
在本发明实施例中,所述第一预设方向可以为所述文字图像区域内的文字的正立方向,所述第二预设方向可以为所述文字图像区域内的文字的颠倒/倒立方向。所述第一预设方向以及所述第二预设方向的设置仅作为举例,不作为对本发明的限制,本领域技术人员可以根据其需求自由设置第一预设方向以及所述第二预设方向。
在一些实施例中,如图19所示,所述确定所述文字图像区域内的文字方向,具体包括:
步骤S151:提取文字图像区域内的文本行区域
步骤S152:对文本行区域进行方向检测获得对应的文本行方向,将文本行方向确定为所述文字方向.
在本发明实施例中,由于文字分割检测模型提取的文本行区域,而不是单独的文字,因此,文本行区域基本只存在两种状态,因此,对文本区域的文本行区域提取后确定文本行区域的方向则可以确定出该文本行区域内的所有文字的方向,从而不需要对每个文字进行方向识别,节省了电子设备的计算量,提高识别速度。
本发明实施例通过以上步骤,可以在对文字图像区域内的文字进行风格识别之前将所有的文字都调整为预设的第一预设方向,可以提高风格分类模型以及后续的第一文字识别模型的识别精准度。在上文未加以详细描述的图18中的步骤S110、S160至S190与前述图8同标号的步骤类似,在此不作赘述。
在本发明的另一些实施例中,如图20所示,可选的,在前述步骤S140之前,还包括:
步骤S120:确定文字图像区域的排列方向
步骤S130:响应于文字图像区域的排列方向不为第二预设方向,将非所述第二预设方向的文字图像区域的排列方向调整为第二预设方向。
在本发明实施例中,所述排列方向是指文字区域文字图像区域的排列方向,例如可以是横排方向或者竖排方向,所述第二预设方向可为横排方向。在一些实施例中,对于竖排文字区域文字图像区域,首先会将竖排文字区域文字图像区域逆时针90°旋转成横排文字区域文字图像区域,然后进行后续文字风格的识别和文字的识别,从而可以提高整个文字识别的准确性。
其中,在上文未加以详细描述的图20中的步骤S110、S140至S180与前述图8与图18同标号的步骤类似,在此不作赘述。
如图21所示,本发明上述实施例的技术方案可以包括离线训练与在线预测两个模块,其中左侧模块示出了离线训练流程,右侧模块示出了在线预测流程。
在一些实施例中,所述离线训练流程可包括四个模型任务的训练:通用文字检测模型训练,负责检测图片中出现的文字图像区域;文字方向分类模型训练,负责判断文字图像区域的方向;文字风格分类模型训练,负责识别文字图像区域的字体风格;通用文字识别模型的预训练与特定风格文字识别模型的微调训练,二者共同负责识别文字图像区域的文字内容。
在一些实施例中,在线预测流程可包括下述流程步骤:首先,将文字图片输入到通用文字检测模型,提取出图片中存在的文字图像区域坐标信息,这里的通用文字检测模型,可以为现有的大数据训练的用于检测通用文字的通用文字检测模型。将每个单独的文字图像区域裁剪出来,然后输入到文字方向识别模型,判断文字图像区域是否为颠倒的文字,并将颠倒的文字图像区域旋转180度,调整到正立姿态:将每个调整好方向的文字图像区域输入到文字风格分类模型,判断整个文字图像区域的风格属于哪一种文字风格类型;最后根据每个文本区域的文字风格类型,决策使用哪种风格的文字识别模型,得到具体的识别文本内容。
如此,本发明实施例相比于现有的图片文字识别方法,只需要增加一个字体风格分类模型,相比检测和识别模型的计算量,整体计算成本增加极小。
在本发明实施例中,通过对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;对文字图像区域内的文字进行风格识别,确定文字图像区域内的文字的文字风格;然后根据文字图像区域内的文字的文字风格,调用文字风格对应的第一文字识别模型;最后利用第一文字识别模型对文字图像区域内的文字进行识别;从而使得电子设备在对待检测图像进行文字识别时可以智能地选择出针对其待检测图像中的文字图像区域的文字的第一文字识别模型精准地对待检测图像内的文字进行识别。基于此,本发明实施例提供的文字识别方法能够被应用在各种风格文字的识别上,从而利用本发明实施例提供的文字识别方法对应的识别模型能够用于包含各类文字的识别中,保证了模型的通用性。因此,本发明实施例能够兼顾图像文字识别的通用性和精准性。
可以理解的是,不同的文字图像区域对应的文字风格可以相同,也可以不同,在同一待检测图像中,可以有多个文字图像区域,对应多个文字风格,从而可以通过调用与文字风格对应的文字识别模型进行对应文字图像区域内的文字识别,从而提高文字识别的准确性;同时由于可以适用于各种文字风格,因此,可以提高文字识别的通用性。
因此,本发明实施例还可以解决多区域、多风格文字同时存在同一待检测图像中的问题,即便同一待检测图像中的多个文字图像区域对应存在不同的文字风格,本发明实施例也可以精准地检测并识别出来,从而使得利用本发明实施例的文字识别兼顾通用性和精准性。
基于此,在本发明另一些实施例中,所述方法还包括:根据识别出的文字,确定所述待检测图像对应的文本信息。
在本发明一些实施例中,如图22所示,所述方法还包括:
步骤2210:根据文本信息,确定待检测图像是否为合格图像;
在本发明实施例中,所述待检测图像可以是公开的图像,例如公开的头像、发表在公开版面上的作品封面或者歌单封面等,若通过检测出的文本信息确认待检测图像存在一些不符合展示规范的信息,则会被认为是非合格图像,则需要进行一定地限制或处理。
步骤2220:响应于待检测图像不为所述合格图像,对待检测图像执行预设操作。
在本发明实施例中,所述可以根据具体应用场景操作需求设置若干预设操作,预设操作可以是对这些不合格的图像进行删除、或者反馈提示信息等操作,在此不做限制。
在本发明一些实施例中,如图23所示,所述方法还包括:
步骤S2310:接收终端发送的待检测图像;
步骤S2320:确定发送待检测图像的终端的终端标识;
在本发明实施例中,获取终端标识则是为了更精准的推送,其终端标识可以是终端的身份识别码或者MAC地址等。
在本发明另一些实施例中,如图23所示,在所述得到所述待检测图像的文字信息,之后,所述方法还包括:
步骤S2330:根据文本信息以及业务需要,向终端标识对应的终端推送与文本信息相符合的业务资讯。
在本发明实施例中,通过上传的待检测图像的文字信息,以及根据用户的上传需求,例如搜索需求时,可以基于这些文字信息搜索出与该文字信息相关的内容。再例如购物需求时,也可以基于这些文字信息为用户推送一些与文字信息相关联的广告。
在本发明一些实施例中,如图24所示,还提供一种文字识别方法,包括:
步骤S2410:对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;
步骤S2420:确定文字图像区域的排列方向;
步骤S2430:响应于文字图像区域的排列方向不为第二预设方向,将非第二预设方向的文字图像区域的排列方向调整为第二预设方向;
步骤S2440:确定文字图像区域内的文字的文字方向;
步骤S2450:响应于文字图像区域内的文字的文字方向不为第一预设方向,将非第一预设方向的文字的文字方向调整为第一预设方向;
步骤S2460:对文字图像区域内的文字进行识别。
在本发明另一些实施例中,还提供了根据本发明实施例提供的文字识别装置的框图。参照图25,该装置包括:
第一确定模块2501,被配置为对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;
第二处理模块2502,被配置为对所述文字图像区域内的文字进行风格识别,确定所述文字图像区域内的文字的文字风格;
调用模块2503,被配置为根据根据所述文字图像区域内的文字的文字风格,在多种经训练的预设第一文字识别模型中调用所述文字风格对应的第一文字识别模型,其中每种所述预设第一文字识别模型对应一种预设文字风格;
识别模块2504,被配置为利用所述第一文字识别模型对所述文字图像区域内的文字进行识别。
在一可选的实施例中,所述第一确定模块2501,还被配置为:
利用经训练的文字分割检测模型,对获取的待检测图像进行图像分割,确定包含文字的文字图像区域。
在一可选的实施例中,所述第一确定模块2501,还被配置为:
利用所述经训练的文字分割检测模型,对获取的待检测图像进行二值化处理,得到多个被分割开来的二值化分割响应图,其中,所述二值化分割响应图对应的图像区域内包含有文字;
对所述二值化分割响应图进行膨胀处理,以使相邻所述二值化分割图对应的图像区域合并,得到一个或多个包含有文字的图像区域;
根据所述二值化响应图,在所述待检测图像中包围出至少一个多边形区域作为文字图像区域,每个所述多边形区域包含一个或多个相邻的对应有文字的图像区域。
在一可选的实施例中,所述装置还包括:
第一确定模块,用于确定所述文字图像区域内的文字的文字方向;
第一调整模块,用于响应于所述文字图像区域内的文字方向不为第一预设方向,将所述文字图像区域内的非所述第一预设方向的文字调整为所述第一预设方向。
在一可选的实施例中,所述第一确定模块,还用于:
提取所述文字图像区域内的文本行区域;
对所述文本行区域进行方向检测以获得对应的文本行方向,将所述文本行方向确定为所述文字方向。
在一可选的实施例中,所述装置还包括:
第二确定模块,用于确定所述文字图像区域的排列方向;
第二调整模块,用于响应于所述文字图像区域的排列方向不为第二预设方向,将非所述第二预设方向的文字图像区域调整为所述第二预设方向。
在一可选的实施例中,第二处理模块2502,还用于:
利用风格分类模型,对文字图像区域内的文字进行风格识别。
在一可选的实施例中,第二处理模块2502,还用于:
将所述文字图像区域裁剪成预设固定尺寸的多个文字图片;
确定各个所述文字图片内的文字长度是否满足长度条件,对不满足长度条件的文字图片用空白区补齐;
利用所述风格分类模型对各个文字图片内的文字进行风格分类,得到预分类结果;
基于多个文字图片分别对应的预分类结果,确定所述文字图像区域内的文字的文字风格。
在一可选的实施例中,第二处理模块2502,还用于:
基于多个文字图片分别对应的预分类结果,对各个所述预分类结果进行加权平均,得到各预设文字风格的平均加权值;
根据所述平均加权值,以置信度最大对应的预设文字风格作为所述文字图像区域内的文字的所述文字风格。
在一可选的实施例中,所述装置还包括:
获取模块,用于获取第二文字识别模型的模型参数,所述第二文字识别模型为通用文字识别模型;
采集模块,用于利用所述第二文字识别模型的模型参数,对采集到的包含有特定风格文字的第二样本图像进行迁移训练,得到针对识别包含有特定风格的文字的图像的文字识别模型作为所述第一文字识别模型。
在一可选的实施例中,所述文字图像区域为多个;
所述第二处理模块2502,还用于:
利用各个所述文字图像区域对应的第一文字识别模型对对应的文字图像区域内的文字进行识别,得到各个文字图像区域对应的文字信息;
所述装置还包括:
第四得到模块,用于根据各个文字图像区域对应的文字信息,得到所述待检测图像的文本信息。
在一可选的实施例中,所述装置还包括:
接收模块,用于接收终端发送的所述待检测图像;
第三确定模块,用于确定发送所述待检测图像的终端的终端标识;
所述装置还包括:
第三处理模块,用于根据所述文本信息以及业务需求,向所述终端标识对应的终端推送与所述文本信息相符合的业务资讯。
在一些实施例中,所述文字识别装置可以结合任一实施例的文字识别方法特征,反之亦然,在此不赘述。
在本发明实施例中,提供一种电子设备,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行任一本发明实施例的文字识别方法。
图26示出了一种可以实施本发明实施例的方法或实现本发明实施例的电子设备2600的示意图,在一些实施例中可以包括比图示更多或更少的电子设备。在一些实施例中,可以利用单个或多个电子设备实施。在一些实施例中,可以利用云端或分布式的电子设备实施。
如图26所示,电子设备2600包括处理器2601,其可以根据存储在只读存储器(ROM)2602中的程序和/或数据或者从存储部分2408加载到随机访问存储器(RAM)2603中的程序和/或数据而执行各种适当的操作和处理。处理器2601可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器2601可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如,中央处理器(CPU)、图形处理器(GPU)、神经网络处理器(NPU)、数字信号处理器(DSP)等等。在RAM 2603中,还存储有电子设备2600操作所需的各种程序和数据。处理器2601、ROM 2602以及RAM 2603通过总线2604彼此相连。输入/输出(I/O)接口2605也连接至总线2604。
上述处理器与存储器共同用于执行存储在存储器中的程序,所述程序被计算机执行时能够实现上述各实施例描述的方法、步骤或功能。
以下部件连接至I/O接口2605:包括键盘、鼠标、触摸屏等的输入部分2606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分2607;包括硬盘等的存储部分2608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分2609。通信部分2609经由诸如因特网的网络执行通信处理。驱动器2610也根据需要连接至I/O接口2605。可拆卸介质2611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器2610上,以便于从其上读出的计算机程序根据需要被安装入存储部分2608。图26中仅示意性示出部分组件,并不意味着计算机系统2600只包括图26所示组件。
上述实施例阐明的系统、装置、模块或单元,可以由计算机或其关联部件实现。计算机例如可以为移动终端、智能电话、个人计算机、膝上型计算机、车载人机交互设备、个人数字助理、媒体播放器、导航设备、游戏控制台、平板电脑、可穿戴设备、智能电视、物联网系统、智能家居、工业计算机、服务器或者其组合。
尽管未示出,在本发明实施例中,提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序配置成被运行时执行任一本发明实施例的基于文件差异的编译方法。
在本发明的实施例的存储介质包括永久性和非永久性、可移动和非可移动的可以由任何方法或技术来实现信息存储的物品。存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
在本发明的实施例的方法、程序、系统、装置等,可以在单个或多个连网的计算机中执行或实现,也可以在分布式计算环境中实践。在本说明书实施例中,在这些分布式计算环境中,可以由通过通信网络而被连接的远程处理设备来执行任务。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本领域技术人员可想到,上述实施例阐明的功能模块/单元或控制器以及相关方法步骤的实现,可以用软件、硬件和软/硬件结合的方式实现。
除非明确指出,根据本发明实施例记载的方法、程序的动作或步骤并不必须按照特定的顺序来执行并且仍然可以实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本文中,针对本发明的多个实施例进行了描述,但为简明起见,各实施例的描述并不是详尽的,各个实施例之间相同或相似的特征或部分可能会被省略。在本文中,“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”意指适用于根据本发明的至少一个实施例或示例中,而非所有实施例。上述术语并不必然意味着指代相同的实施例或示例。在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
已参考上述实施例具体示出并描述了本发明的示例性系统及方法,其仅为实施本系统及方法的最佳模式的示例。本领域的技术人员可以理解的是可以在实施本系统及/或方法时对这里描述的系统及方法的实施例做各种改变而不脱离界定在所附权利要求中的本发明的精神及范围。
Claims (11)
1.一种文字识别方法,其特征在于,包括:
对获取的待检测图像进行图像分割,确定包含文字的文字图像区域;
对所述文字图像区域内的文字进行文字风格识别,确定所述文字图像区域内的文字的文字风格;
在多种经训练的预设第一文字识别模型中确定所述文字风格对应的第一文字识别模型,其中每种所述预设第一文字识别模型对应一种预设文字风格;
利用所述第一文字识别模型对所述文字图像区域内的文字进行识别。
2.根据权利要求1所述的方法,其特征在于,所述对获取的待检测图像进行图像分割,确定包含文字的文字图像区域,包括:
将所述待检测图像输入所述经训练的文字分割检测模型,得到对应待检测图像的二值化响应图,其中,所述二值化响应图的二值用于表征对应的图像区域是否对应有文字;
对所述二值化响应图进行膨胀处理,以连通部分对应文字的图像区域;
根据所述二值化响应图,在所述待检测图像中包围出至少一个多边形区域作为文字图像区域,每个所述多边形区域包含一个或多个相邻的对应有文字的图像区域。
3.根据权利要求1所述的方法,其特征在于,在对所述文字图像区域内的文字进行风格识别之前,所述方法还包括:
确定所述文字图像区域内的文字的文字方向;
响应于所述文字图像区域内的文字的文字方向不为第一预设方向,将非所述第一预设方向的文字的文字方向调整为所述第一预设方向。
4.根据权利要求1所述的方法,其特征在于,在对所述文字图像区域内的文字进行风格识别之前,所述方法还包括:
将所述文字图像区域裁剪成多个文字图片。
5.根据权利要求4所述的方法,其特征在于,所述将所述文字图像区域裁剪成多个文字图片,包括:
根据用于输入所述风格分类模型的标准图片尺寸确定标准宽高比;
根据所述标准宽高比以及所述文字图像区域的尺寸确定裁剪尺寸;
根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成所述多个文字图片。
6.根据权利要求5所述的方法,其特征在于,所述根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成所述多个文字图片,包括:
根据所述裁剪尺寸对所述文字图像区域进行裁剪,生成多个等高度的裁剪文字图像;
确定各个所述裁剪文字图像是否满足所述标准宽高比,将满足所述标准宽高比的多个所述裁剪文字图像作为所述文字图片,将不满足所述标准宽高比的所述裁剪文字图像进行宽度补齐并作为所述文字图片。
7.根据权利要求4至6中任一项所述的方法,其特征在于,所述对所述文字图像区域内的文字进行文字风格识别,确定所述文字图像区域内的文字的文字风格,包括:
将所述多个文字图片输入所述经训练的风格分类模型,对所述多个文字图片内的文字分别进行风格分类,得到所述多个文字图片分别对应的多个预分类结果;
对所述多个预分类结果进行加权平均,得到各预设文字风格的平均加权值;
根据所述平均加权值,以置信度最大的预设文字风格作为所述文字图像区域内的文字的文字风格。
8.根据权利要求1所述的方法,其特征在于,所述第一文字识别模型包括通用文字识别模型,所述通用文字识别模型根据如下通用训练步骤生成:
获取通用训练样本集,所述通用训练样本集包括多种文字风格的多个通用训练样本,所述通用训练样本包括文字区域图像以及对应的文字内容标签;
将所述通用训练样本输入所述通用文字识别模型的特征提取模块,以获得第一通用图像特征序列以及第一通用文字特征序列;
将所述第一通用图像特征序列输入所述通用文字识别模型的注意力模块确定注意力损失,根据所述注意力损失迭代更新所述通用文字识别模型;
将所述第一通用图像特征序列输入所述通用文字识别模型的自注意力模块得到第二通用图像特征序列,将所述第二图像特征序列输入所述通用文字识别模型的全连接层得到第二通用文字特征序列;
根据所述第一通用文字特征序列以及第二通用文字特征序列确定第一序列分类损失,根据所述第一序列分类损失迭代更新所述通用文字识别模型。
9.根据权利要求8所述的方法,其特征在于,所述第一文字识别模型还包括特定风格文字识别模型,所述特定风格文字识别模型基于所述通用文字识别模型根据如下微调训练步骤生成:
获取微调训练样本集,所述微调训练样本集包括特定文字风格的多个微调训练样本,所述微调训练样本包括文字区域图像以及对应的文字内容标签;
将所述微调训练样本输入所述通用文字识别模型的特征提取模块,以获得第一微调图像特征序列以及第一微调文字特征序列;
将所述第一微调图像特征序列输入所述通用文字识别模型的注意力模块以获得第二注意力损失,根据所述第二注意力损失迭代更新所述通用文字识别模型;
将所述第一微调图像特征序列输入所述通用文字识别模型的自注意力模块得到第二微调图像特征序列,将所述第二微调图像特征序列输入所述通用文字识别模型的全连接层得到第二微调文字特征序列;
根据所述第一微调文字特征序列以及第二微调文字特征序列确定第二序列分类损失,根据所述第二序列分类损失迭代更新所述通用文字识别模型,以生成所述特定风格文字识别模型。
10.一种电子设备,其特征在于,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时实现权利要求1-9中任一所述的方法。
11.一种存储介质,其上存储有计算机程序,其中,所述程序被处理器运行时实现如权利要求1-9中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410136141.XA CN117935245A (zh) | 2024-01-30 | 2024-01-30 | 文字识别方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410136141.XA CN117935245A (zh) | 2024-01-30 | 2024-01-30 | 文字识别方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117935245A true CN117935245A (zh) | 2024-04-26 |
Family
ID=90759443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410136141.XA Pending CN117935245A (zh) | 2024-01-30 | 2024-01-30 | 文字识别方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117935245A (zh) |
-
2024
- 2024-01-30 CN CN202410136141.XA patent/CN117935245A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8879796B2 (en) | Region refocusing for data-driven object localization | |
US8233726B1 (en) | Image-domain script and language identification | |
US7277584B2 (en) | Form recognition system, form recognition method, program and storage medium | |
CN114596566B (zh) | 文本识别方法及相关装置 | |
CN112041851A (zh) | 一种识别文本的方法及终端设备 | |
CN114283350B (zh) | 视觉模型训练和视频处理方法、装置、设备及存储介质 | |
CN112861842A (zh) | 基于ocr的案件文本识别方法及电子设备 | |
CN116030454B (zh) | 一种基于胶囊网络和多语言模型的文字识别方法及系统 | |
CN111428656A (zh) | 基于深度学习的移动端身份证识别方法、移动设备 | |
CN112990172B (zh) | 一种文本识别方法、字符识别方法及装置 | |
CN114429633A (zh) | 文本识别方法、模型的训练方法、装置、电子设备及介质 | |
CN115082598B (zh) | 文本图像生成、训练、文本图像处理方法以及电子设备 | |
CN112445926A (zh) | 一种图像检索方法以及装置 | |
CN112560849B (zh) | 基于神经网络算法的文理分割方法及系统 | |
CN117935245A (zh) | 文字识别方法、电子设备及存储介质 | |
CN111178409B (zh) | 基于大数据矩阵稳定性分析的图像匹配与识别系统 | |
CN114758340A (zh) | 物流地址智能识别方法、装置、设备及存储介质 | |
US20230036812A1 (en) | Text Line Detection | |
CN114511862A (zh) | 表格识别方法、装置及电子设备 | |
CN113591857A (zh) | 字符图像处理方法、装置及古代汉籍图像的识别方法 | |
CN113627124A (zh) | 一种针对字体迁移模型的处理方法、装置、电子设备 | |
CN118015644B (zh) | 基于图片和文字的社交媒体关键词数据分析方法及装置 | |
Kawano et al. | TAG: Guidance-free Open-Vocabulary Semantic Segmentation | |
AU2012268796A1 (en) | Directional stroke width variation feature for script recognition | |
CN116955686A (zh) | 图像处理方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |