CN114092940A - 识别图像中字符的方法及装置 - Google Patents
识别图像中字符的方法及装置 Download PDFInfo
- Publication number
- CN114092940A CN114092940A CN202111407784.6A CN202111407784A CN114092940A CN 114092940 A CN114092940 A CN 114092940A CN 202111407784 A CN202111407784 A CN 202111407784A CN 114092940 A CN114092940 A CN 114092940A
- Authority
- CN
- China
- Prior art keywords
- training
- font
- image
- template
- matrix
- 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 37
- 238000012549 training Methods 0.000 claims abstract description 289
- 239000011159 matrix material Substances 0.000 claims abstract description 276
- 239000013598 vector Substances 0.000 claims description 19
- 238000013527 convolutional neural network Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 5
- 230000015654 memory Effects 0.000 claims description 4
- 238000012015 optical character recognition Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 101100001673 Emericella variicolor andH gene Proteins 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
Abstract
本说明书实施例提供一种识别图像中字符的方法,包括:将多种训练字体对应的多张字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;将对应新字体的新字形模板图像和待识别的文本图像分别输入该字符图像编码器中,得到新模板编码矩阵和文本编码矩阵;分别确定多个训练模板编码矩阵与新模板编码矩阵之间的第一相似度矩阵,从而从上述多种训练字体中确定新字体的相似训练字体;确定该相似训练字体对应的训练模板编码矩阵与上述文本编码矩阵之间的第二相似度矩阵;基于该第二相似度矩阵以及相似训练字体对应的第一相似度矩阵,确定新字形模版图像与文本图像之间的目标相似度矩阵,进而确定文本图像中包含的文本字符。
Description
技术领域
本说明书一个或多个实施例涉及机器学习技术领域,尤其涉及一种将机器学习技术应用到光学字符识别中的方法及装置。
背景技术
光学字符识别(Optical Character Recognition,简称OCR)是指对字符图像,如文本扫描件或广告图片等,中包含的字符进行识别,从而转换为计算机文本的过程。
目前,采用机器学习技术实现的OCR算法在字体方面特别不健壮(unrobust),对于训练过的字体具有较高的识别率,但是在未受过训练的字体上表现不佳。因此,迫切需要一种可扩展字体的OCR算法,可以有效提高OCR识别的字体通用性和灵活性。
发明内容
本说明书一个或多个实施例描述了一种识别图像中字符的方法,不需要对训练好的字符图像编码器进行再训练,即可实现对具有新字体的字符图像中字符的准确识别。
根据第一方面,提供一种识别图像中字符的方法,该方法包括:将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;将对应新字体的新字形模板图像和待识别的文本图像分别输入所述字符图像编码器中,得到新模板编码矩阵和文本编码矩阵;分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
在一个实施例中,所述多张训练字形模板图像和新字形模板图像中的各张图像中均包含字符表中的各个字符。
在一个实施例中,所述字符图像编码器基于卷积神经网络CNN而实现。
在一个实施例中,所述字符图像编码器基于以下步骤预先训练:获取所述多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
在一个实施例中,所述多张训练字形模板图像和所述新模板图像中的字符在视觉上均呈现为单行排列,所述多个训练模板编码矩阵和所述新模板编码矩阵的行维度对应模板图像中字符的行向;其中,分别确定所述多个训练模板编码矩阵与所述新模版编码矩阵之间的第一相似度矩阵:针对所述多个训练模板编码矩阵中的任意训练模板编码矩阵,计算其中任意的第i个行向量与所述新模板编码矩阵中任意的第j个行向量之间的余弦相似度,作为位于第i行第j列的矩阵元素,用于构建对应的第一相似度矩阵。
在一个实施例中,所述多种训练字体对应多个第一相似度矩阵;其中,基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体,包括:确定所述多个第一相似度矩阵对应的多个二阶范数;确定所述多个二阶范数中的最大值所对应的训练字体,作为所述相似训练字体。
在一个实施例中,基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵,包括:通过对相似训练字体对应的第一相似度矩阵和所述第二相似度矩阵进行乘积处理,得到所述目标相似度矩阵。
在一个实施例中,在将对应新字体的新字形模板图像输入所述字符图像编码器中之前,所述方法还包括:获取具有所述新字体且对应字符表中各个字符的单个字形图像;按照预定的字符排列顺序对所述单个字形图像沿宽度方向进行拼接,组成所述新字形模板图像;其中,基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符,包括:基于所述单个字形图像在所述新字形模板图像中的宽度跨度,将所述目标相似度矩阵转换为概率矩阵,所述概率矩阵中包括所述文本图像中各个宽度子图像匹配所述单个字形图像的概率;基于所述概率矩阵,确定所述文本图像中包含的文本字符。
在一个具体的实施例中,基于所述概率矩阵,确定所述文本图像中包含的文本字符,包括:基于所述概率矩阵,采用贪婪算法,确定所述文本字符。
根据第二方面,提供一种识别图像中字符的装置,该装置包括:训练字体编码单元,配置为将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;新字体编码单元,配置为将对应新字体的新字形模板图像输入所述字符图像编码器中,得到新模板编码矩阵;文本编码单元,配置为将对应新字体的待识别的文本图像输入所述字符图像编码器中,得到文本编码矩阵;第一相似度确定单元,配置为分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;相似字体确定单元,配置为基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;第二相似度确定单元,配置为确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;目标相似度确定单元,配置为基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;字符文本确定单元,配置为基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
在一个实施例中,所述多张训练字形模板图像和新字形模板图像中的各张图像中均包含字符表中的各个字符。
在一个实施例中,所述字符图像编码器基于卷积神经网络CNN而实现。
在一个实施例中,所述字符图像编码器基于训练单元预先训练,所述训练单元配置为:获取所述多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
在一个实施例中,所述多张训练字形模板图像和所述新模板图像中的字符在视觉上均呈现为单行排列,所述多个训练模板编码矩阵和所述新模板编码矩阵的行维度对应模板图像中字符的行向;其中,所述第一相似度确定单元具体配置为:针对所述多个训练模板编码矩阵中的任意训练模板编码矩阵,计算其中任意的第i个行向量与所述新模板编码矩阵中任意的第j个行向量之间的余弦相似度,作为位于第i行第j列的矩阵元素,用于构建对应的第一相似度矩阵。
在一个实施例中,所述多种训练字体对应多个第一相似度矩阵;其中,所述相似字体确定单元具体配置为:确定所述多个第一相似度矩阵对应的多个二阶范数;确定所述多个二阶范数中的最大值所对应的训练字体,作为所述相似训练字体。
在一个实施例中,所述目标相似度矩阵具体配置为:通过对相似训练字体对应的第一相似度矩阵和所述第二相似度矩阵进行乘积处理,得到所述目标相似度矩阵。
在一个实施例中,所述装置还包括:新字体模板获取单元,配置为获取具有所述新字体且对应字符表中各个字符的单个字形图像;按照预定的字符排列顺序对所述单个字形图像沿宽度方向进行拼接,组成所述新字形模板图像;其中,所述字符文本确定单元具体配置为:基于所述单个字形图像在所述新字形模板图像中的宽度跨度,将所述目标相似度矩阵转换为概率矩阵,所述概率矩阵中包括所述文本图像中各个宽度子图像匹配所述单个字形图像的概率;基于所述概率矩阵,确定所述文本图像中包含的文本字符。
在一个实施例中,所述字符文本确定单元进一步配置为:基于所述概率矩阵,采用贪婪算法,确定所述文本字符。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,该处理器执行所述可执行代码时,实现第一方面的方法。
采用本说明书实施例提供的方法和装置,针对任意的新字体,无需对字符图像编码器进行适应性训练,而是只需提供新字体的字形模板图像,就可以精准识别出该新字体所对应的任意文本图像中的字符。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书实施例披露的识别图像中字符的方案实施架构图;
图2示出本说明书实施例披露的识别图像中字符的方法流程示意图;
图3示出本说明书实施例披露的字形模板图像的形成示意图;
图4示出本说明书实施例披露的字符图像编码器的训练方法流程图;
图5示出本说明书实施例披露的识别图像中字符的装置结构示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
承前所述,本说明书实施例披露一种可扩展字体的OCR算法,可以有效提高OCR识别的字体通用性和灵活性。图1示出本说明书实施例披露的识别图像中字符的方案实施架构图。如图1所示,先利用已经训练好的字符图像编码器Φ,对字体池中各种训练字体所对应的训练字形模板图像(记作g)进行编码,并且,对字体池以外的某种新字体对应的新字形模板图像(记作g′)进行编码;然后,根据编码结果,包括和Φ(g′),确定各种训练字体与新字体之间的相似度矩阵S*,并确定其中的最大相似度矩阵Smax,相应得到与新字体相似的相似训练字体;接着,根据该相似训练字体所对应训练字形模板图像的编码结果Φ(g)|Smax,以及具有上述某种新字体的待识别文本图像(记作x)的编码结果Φ(x),确定二者之间的相似度矩阵S′;再根据已确定出的相似度矩阵Smax和S′,确定新字形模板图像与文本图像之间的目标相似度矩阵St,从而根据该目标相似度矩阵St确定出文本图像中的字符文本,对此图1中示意为“something really beautiful”。如此,针对任意的新字体,只需提供其字形模板图像,就可以精准识别出其所对应的任意文本图像中的字符,而无需对字符图像编码器进行适应性训练。
接下来,描述上述发明构思的具体实现步骤。图2示出本说明书实施例披露的识别图像中字符的方法流程示意图,所述方法的执行主体可以为任何具有计算、处理能力的装置、服务器或设备集群等。如图2所示,所述方法包括以下步骤:
步骤S210,将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;步骤S220,将对应新字体的新字形模板图像和待识别的文本图像分别输入所述字符图像编码器中,得到新模板编码矩阵和文本编码矩阵;步骤S230,分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;步骤S240,基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;步骤S250,确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;步骤S260,基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;步骤S270,基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
对以上步骤的展开介绍如下:
首先,在步骤S210,将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵。
需理解,训练字形模板图像包括字符表中的各个字符在对应训练字体下的形状,例如,参见图1,训练字形模板图像中可以包括英文字符表中的26个英文字母,进一步还可以包括英文标点符号,又例如,训练字形模板图像中可以包括希腊语字母表中的所有希腊字母和相关标点符号。上述训练字体指字符图像编码器的训练数据中涉及的字体,为直观描述,文中将该训练数据中涉及的所有字体所组成的集合称为字体池。此外,训练字形模板图像中的字符优选在视觉上呈单行(或单列)排列,此时,也可以将训练字形模板图像称为训练字形单行(或单列)模板图像训练字形行(或列)模板图像。为方便理解,文中以训练字形模板图像中的字符在视觉上呈单行排列为主,进行示例性说明。再者,“训练字形模板图像”名称中的“模板”,从表述角度也可以被替换为示例或样例。
另一方面,对于训练字形模板图像的获取,在一种实施方式中,针对某种训练字体,参见图3,可以先获取字符表中各个字符对应该训练字体的单个字形图像,例如通过抠图获取;然后,按照预先设定的字符排列顺序,沿宽度方向对单个字形图像进行拼接,得到对应的训练字形模板图像。在一个实施例中,为提高后续的识别准确率,可以在拼接前采用裁剪、填充等手段,将单个字形图像均处理成相同宽度。如此,可以得到任意一种训练字体对应的字形模板图像g,其中的元素值为像素,且H、Wg和C分别表示训练字形模板图像的高度、宽度和通道数,文中主要以图像的宽度方向与其中字符的行排列方向一致(参见图3)为例进行说明。
在以上得到多种训练字体对应的多张训练字形模板图像后,可以将其中任意一张训练字形模板图像g输入训练好的字符图像编码器Φ中,从而得到对应的训练模板编码矩阵其中W′g=Wg/s,s表示字符图像编码器Φ中针对图像宽度方向的下采样幅度,D表示嵌入维度(embedding dimensionality)。需理解,此时,训练模板编码矩阵Φ(g)的行维度W′g对应训练字形模板图像的宽度维度Wg。
如此,可以得到多张训练字形模板图像对应的多个训练模板编码矩阵。
另一方面,在步骤S220,针对待识别的、包含新字体字符的文本图像x,将此文本图像x,以及对应其中新字体的新字形模板图像g′分别输入字符图像编码器Φ中,对应得到文本编码矩阵Φ(x)和新模板编码矩阵Φ(g)。
与上述训练字形模板图像相适应地,上述文本图像中的字符在视觉上呈单行排列,对此可参见图1底部示出的文本图像,相应,也可以将文本图像称为文本行图像或单行文本图像等。此外,文本图像其中片、W和C分别表示文本图像的高度、宽度和通道数,文本编码矩阵其中W′g=Wg/s,s表示上述下采样幅度。
以上,可以得到新模板编码矩阵Φ(g′)和文本编码矩阵Φ(x)。
在一个实施例中,参见下示公式(1),针对任意的训练模板编码矩阵Φ(g),可以计算其中任意的第i个行向量Φ(g)i与新模板编码矩阵Φ(g′)中任意的第j个行向量Φ(g′)j之间的余弦相似度,作为位于第i行第j列的矩阵元素Sij,从而将构建出的相似度矩阵 作为第一相似度矩阵S*。
在另一个实施例中,还可以对基于公式(1)确定出的初始相似度矩阵S进行消歧处理,从而将得到的与初始相似度矩阵S具有相同行列数的增强相似度矩阵,作为第一相似度矩阵S*。具体,考虑到理想情况下,因图像中的字符具有相同宽度,所以在相似度矩阵中会存在具有高相似度数值的方形区域,进一步,考虑到训练字形模板图像是由单个字形图像拼接而来,因而其中各个字符(或者说各个字形)对应的宽度像素是已知的,由此可以构建出指示该各个字符对应的宽度像素的宽度带矩阵进而在一个实施例中,设计将该宽度带矩阵和上述初始相似度矩阵S堆叠起来,输入多层感知机(Multilayer Perceptron,简称MLP)中,得到增强相似度矩阵S*。在一个具体的实施例中,可以利用下式确定宽度带矩阵
上式中ωg中的向量元素取决于训练字形模板图像中各个字符对应的宽度像素,例如,假定在训练模板编码矩阵Φ(g)的W′g维中,第1至3维对应的是字符A,且字符A在训练字形模板图像中的宽度是10px,此时ωg向量中第1至3个元素的数值取10;表示元素全部为1的向量;T表示转置运算。
另一方面,在一个具体的实施例中,输入上述MLP中的还可以包括训练字形模板图像中各个字符在x、y方向上的局部坐标(local coordinates)。具体,可以将上述初始相似度矩阵S、宽度带矩阵以及x、y两通道对应的两个归一化(normalized)矩阵,一并输入多层感知机MLP中,从而得到增强相似度矩阵S*。
又一方面,在一个具体的实施例中,可以设计自注意力模块对上述MLP的输出矩阵按列进行注意力处理,从而得到增强相似度矩阵S*。示例性地,自注意力模块可以实现为采用了自注意力机制的神经网络层,例如,可以实现为Transformer模型。
需说明,对于上述提及的除字符图像编码器以外的机器学习模型,包括多层感知机MLP、自注意力模块,都是预先训练好的,通常是跟字符图像编码器一起进行训练而得到。
以上,可以得到任意的训练模板编码矩阵Φ(g)与新模板编码矩阵Φ(g′)之间的第一相似度矩阵S*。从而在步骤S240,基于该第一相似度矩阵S*,从上述多种训练字体中确定上述新字体的相似训练字体。
具体,可以基于上述多种训练字体对应多个第一相似度矩阵,确定该多种训练字体中与新字体之间的相似度达到预设标准的训练字体,作为新字体的相似训练字体。在一个实施例中,计算该多个第一相似度矩阵中各个第一相似度矩阵的二阶范数,进一步,在一个具体的实施例中,可以将其中的最大范数值所对应的训练字体,作为相似训练字体,在另一个具体的实施例中,也可以将计算出的多个二阶范数中大于预设范数阈值的二阶范数所对应的训练字体,作为相似训练字体。在另一个实施例中,针对各个第一相似度矩阵,求取其中各个矩阵元素的平方和,在一个具体的实施例中,将其中的最大值所对应的训练字体,作为相似训练字体,在另一个具体的实施例中,也可以将计算出的多个平方和中大于预设平方和阈值的平方和值所对应的训练字体,作为相似训练字体。
由上,可以确定出字体池中与新字体相似的相似训练字体。从而在步骤S250,确定该相似训练字体对应的训练模板编码矩阵Φ(g)与上述文本编码矩阵Φ(x)之间的第二相似度矩阵需说明,第二相似度矩阵S′的确定方式与上述第一相似度矩阵S*的确定方式相同,因而对本步骤的描述可以参见前述实施例中的相关描述。此外,若相似训练字体为多种,则在本步骤中,可以分别确定其中各种相似度训练字体所对应的训练模板矩阵与上述文本编码矩阵之间的第二相似度矩阵。
之后,在步骤S260,基于上述第二相似度矩阵以及上述相似训练字体对应的第一相似度矩阵确定上述新字形模版图像与文本图像之间的目标相似度矩阵具体,通过对此两个相似度矩阵进行乘积处理,得到该目标相似度矩阵。示例性地,可以基于下式计算目标相似度矩阵:
St=(S*)T×S′ (3)
另一方面,在一种可能的实施情况中,上述第二相似度矩阵的数量为多个,相应,可以分别确定第一相似度矩阵的转置矩阵与多个第二相似度矩阵之间的乘积矩阵,再对多个乘积矩阵进行平均处理,从而得到目标相似度矩阵St。
如此,可以得到目标相似度矩阵St。然后,在步骤S270,基于该目标相似度矩阵St,确定上述文本图像x中包含的文本字符。在一种实施方式中,可以基于目标相似度矩阵St,确定文本图像中各个宽度子图像命中新字形模板图像中各个字符的概率,此概率组成概率矩阵再基于概率矩阵采用贪婪算法或其他算法,确定文本图像中的文本字符,也即,将文本图像中的字符转换为计算机可识别的文本格式的字符。
在一个实施例中,因新字形模板图像g′是单个字形图像拼接而得到,相应,可以获知g′在Wg维度与目标相似度矩阵St在Wg维度之间的对应关系,进而可以实现空间映射 其中|A|表示新字形模板图像中的字符总数。示例性地,可以通过以下公式将目标相似度矩阵St转换为概率矩阵
上式中,M=[m1,m2,...,m|A|]T;mi∈{0,1}W′g=[0,...,0,1,...,1,0,...,0],mi中取值为1的元素个数对应新字形模板图像中第i个字符的宽度跨度。
如此,可以将目标相似度矩阵St转换为概率矩阵进一步,可以基于此概率矩阵确定上述文本图像x中的文本字符。在一个实施例中,可以结合贪婪算法,确定出文本图像x中包含的文本字符。例如,针对概率矩阵对于W′g个行向量中,对应某个预定列编号范围的W′g个子向量,确定其中各个子向量中向量元素的和值,从而确定该和值中最大值所对应行编号,进而将该行编号所对应的新字形模板图像中的字符,确定为文本图像中该某个预定列编号范围对应的字符。在另一个实施例中,可以将概率矩阵输入时序网络,如循环神经网络(Recurrent Neural Networks,简称RNN)、长短期记忆网络(Long Short-TermMemory,简称LSTM),从而得到文本图像x中包含的文本字符。
在另一种实施方式中,可以将上述目标相似度矩阵St直接输入时序网络,如RNN网络或LSTM网络等,从而得到上述文本图像x中包含的文本字符。
需理解,对于上述提及的除字符图像编码器以外的其他机器学习模型,如时序网络等,是预先训练好的,通常是跟字符图像编码器一起进行训练。
综上,采用本说明书实施例披露的识别图像中字符的方法,针对字体池以外任意的新字体,不需要针对新字体对字符图像编码器进行参数调优,而只需要提供一张新字体字形模板图像,就可以准确识别出任意一张包含新字体文本图像中的字符。
对于上述字符图像编码器,其训练阶段与前述使用阶段类似。为便于理解,以下在对训练阶段的介绍中,着重对两者的区别进行介绍。图4示出本说明书实施例披露的字符图像编码器的训练方法流程图,所述方法的执行主体可以为任何具有计算、处理能力的装置、服务器或设备集群。如图4所示,所述方法包括以下步骤:
步骤S410,获取多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;步骤S420,将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;步骤S430,确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;步骤S440,基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
需说明,上述文本字符标签指示对应训练文本图像中包含的字符文本,并且,对于步骤S410至步骤S430,可以参见前述实施例中的相关描述。
针对上述步骤S440,在一种实施方式中,可以将训练相似度矩阵输入时序网络中,得到字符预测结果,再基于该字符预测结果和上述文本字符标签确定训练损失,进而基于该训练损失调整上述字符图像编码器和该时序网络中的模型参数。
在另一种实施方式中,可以将上述训练相似度矩阵转换为对应的训练概率矩阵,然后,基于训练相似度矩阵和文本字符标签确定交叉熵损失Lsim,以及,基于概率矩阵和文本字符标签确定CTC(Connectionist Temporal Classification)损失Lpred,从而基于该交叉熵损失和CTC损失确定综合损失Ltotal,并基于此综合损失Ltotal调整上述字符图像编码器中的模型参数。示例性地,可以通过下式计算综合损失Ltotal:
在上式(5)中,表示训练概率矩阵;ygt对应文本字符标签,其具体形式可以是对标签中各个字符分别进行独热编码得到的向量进行拼接而形成的矩阵;yi表示训练相似度矩阵中第i行在训练字形模板图像中的对应字符;λ表示超参数,例如可以设定为1。
由上,可以实现对字符图像编码器的训练。通过重复上述步骤S410至步骤S440,可以实现对字符图像编码器等模型的多轮次迭代,直到迭代达到的预定次数或迭代后的模型性能达到预定标准,从而得到训练好的字符图像编码器。
与上述识别图像中字符的方法相对应的,本说明书实施例还披露一种识别图像中字符的装置。图5示出本说明书实施例披露的识别图像中字符的装置结构示意图,所述装置可以集成在任何具有计算、处理能力的服务器或设备集群。如图5所示,所述装置500包括以下单元:
训练字体编码单元510,配置为将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;新字体编码单元520,配置为将对应新字体的新字形模板图像输入所述字符图像编码器中,得到新模板编码矩阵;文本编码单元530,配置为将对应新字体的待识别的文本图像输入所述字符图像编码器中,得到文本编码矩阵;第一相似度确定单元540,配置为分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;相似字体确定单元550,配置为基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;第二相似度确定单元560,配置为确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;目标相似度确定单元570,配置为基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;字符文本确定单元580,配置为基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
在一个实施例中,所述多张训练字形模板图像和新字形模板图像中的各张图像中均包含字符表中的各个字符。
在一个实施例中,所述字符图像编码器基于卷积神经网络CNN而实现。
在一个实施例中,所述字符图像编码器基于训练单元预先训练,所述训练单元配置为:获取所述多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
在一个实施例中,所述多张训练字形模板图像和所述新模板图像中的字符在视觉上均呈现为单行排列,所述多个训练模板编码矩阵和所述新模板编码矩阵的行维度对应模板图像中字符的行向;其中,所述第一相似度确定单元540具体配置为:针对所述多个训练模板编码矩阵中的任意训练模板编码矩阵,计算其中任意的第i个行向量与所述新模板编码矩阵中任意的第j个行向量之间的余弦相似度,作为位于第i行第j列的矩阵元素,用于构建对应的第一相似度矩阵。
在一个实施例中,所述多种训练字体对应多个第一相似度矩阵;其中,所述相似字体确定单元550具体配置为:确定所述多个第一相似度矩阵对应的多个二阶范数;确定所述多个二阶范数中的最大值所对应的训练字体,作为所述相似训练字体。
在一个实施例中,所述目标相似度确定单元570具体配置为:通过对相似训练字体对应的第一相似度矩阵和所述第二相似度矩阵进行乘积处理,得到所述目标相似度矩阵。
在一个实施例中,所述装置500还包括:新字体模板获取单元590,配置为获取具有所述新字体且对应字符表中各个字符的单个字形图像;按照预定的字符排列顺序对所述单个字形图像沿宽度方向进行拼接,组成所述新字形模板图像;其中,所述字符文本确定单元580具体配置为:基于所述单个字形图像在所述新字形模板图像中的宽度跨度,将所述目标相似度矩阵转换为概率矩阵,所述概率矩阵中包括所述文本图像中各个宽度子图像匹配所述单个字形图像的概率;基于所述概率矩阵,确定所述文本图像中包含的文本字符。
在一个实施例中,所述字符文本确定单元580进一步配置为:基于所述概率矩阵,采用贪婪算法,确定所述文本字符。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2或图4所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2或图4所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (20)
1.一种识别图像中字符的方法,包括:
将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;
将对应新字体的新字形模板图像和待识别的文本图像分别输入所述字符图像编码器中,得到新模板编码矩阵和文本编码矩阵;
分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;
基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;
确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;
基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;
基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
2.根据权利要求1所述的方法,其中,所述多张训练字形模板图像和新字形模板图像中的各张图像中均包含字符表中的各个字符。
3.根据权利要求1所述的方法,其中,所述字符图像编码器基于卷积神经网络CNN而实现。
4.根据权利要求1所述的方法,其中,所述字符图像编码器基于以下步骤预先训练:
获取所述多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;
将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;
确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;
基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
5.根据权利要求1所述的方法,其中,所述多张训练字形模板图像和所述新模板图像中的字符在视觉上均呈现为单行排列,所述多个训练模板编码矩阵和所述新模板编码矩阵的行维度对应模板图像中字符的行向;其中,分别确定所述多个训练模板编码矩阵与所述新模版编码矩阵之间的第一相似度矩阵:
针对所述多个训练模板编码矩阵中的任意训练模板编码矩阵,计算其中任意的第i个行向量与所述新模板编码矩阵中任意的第j个行向量之间的余弦相似度,作为位于第i行第j列的矩阵元素,用于构建对应的第一相似度矩阵。
6.根据权利要求1所述的方法,其中,所述多种训练字体对应多个第一相似度矩阵;其中,基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体,包括:
确定所述多个第一相似度矩阵对应的多个二阶范数;
确定所述多个二阶范数中的最大值所对应的训练字体,作为所述相似训练字体。
7.根据权利要求1所述的方法,其中,基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵,包括:
通过对相似训练字体对应的第一相似度矩阵和所述第二相似度矩阵进行乘积处理,得到所述目标相似度矩阵。
8.根据权利要求1所述的方法,其中,在将对应新字体的新字形模板图像输入所述字符图像编码器中之前,所述方法还包括:
获取具有所述新字体且对应字符表中各个字符的单个字形图像;
按照预定的字符排列顺序对所述单个字形图像沿宽度方向进行拼接,组成所述新字形模板图像;
其中,基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符,包括:
基于所述单个字形图像在所述新字形模板图像中的宽度跨度,将所述目标相似度矩阵转换为概率矩阵,所述概率矩阵中包括所述文本图像中各个宽度子图像匹配所述单个字形图像的概率;
基于所述概率矩阵,确定所述文本图像中包含的文本字符。
9.根据权利要求8所述的方法,其中,基于所述概率矩阵,确定所述文本图像中包含的文本字符,包括:
基于所述概率矩阵,采用贪婪算法,确定所述文本字符。
10.一种识别图像中字符的装置,包括:
训练字体编码单元,配置为将多种训练字体对应的多张训练字形模板图像分别输入训练好的字符图像编码器中,得到多个训练模板编码矩阵;
新字体编码单元,配置为将对应新字体的新字形模板图像输入所述字符图像编码器中,得到新模板编码矩阵;
文本编码单元,配置为将对应新字体的待识别的文本图像输入所述字符图像编码器中,得到文本编码矩阵;
第一相似度确定单元,配置为分别确定所述多个训练模板编码矩阵与所述新模板编码矩阵之间的第一相似度矩阵;
相似字体确定单元,配置为基于所述第一相似度矩阵,从所述多种训练字体中确定所述新字体的相似训练字体;
第二相似度确定单元,配置为确定所述相似训练字体对应的训练模板编码矩阵与所述文本编码矩阵之间的第二相似度矩阵;
目标相似度确定单元,配置为基于所述第二相似度矩阵,以及所述相似训练字体对应的第一相似度矩阵,确定所述新字形模版图像与所述文本图像之间的目标相似度矩阵;
字符文本确定单元,配置为基于所述目标相似度矩阵,确定所述文本图像中包含的文本字符。
11.根据权利要求10所述的装置,其中,所述多张训练字形模板图像和新字形模板图像中的各张图像中均包含字符表中的各个字符。
12.根据权利要求10所述的装置,其中,所述字符图像编码器基于卷积神经网络CNN而实现。
13.根据权利要求10所述的装置,其中,所述字符图像编码器基于训练单元预先训练,所述训练单元配置为:
获取所述多种训练字体中任意训练字体对应的训练字形模板图像、训练文本图像,以及该训练文本图像对应的文本字符标签;
将所述训练字形模板图像和训练文本图像分别输入所述字符图像编码器中,得到训练模板编码矩阵和训练文本编码矩阵;
确定所述训练模板编码矩阵和训练文本编码矩阵之间的训练相似度矩阵;
基于所述训练相似度矩阵和所述文本字符标签,训练所述字符图像编码器。
14.根据权利要求10所述的装置,其中,所述多张训练字形模板图像和所述新模板图像中的字符在视觉上均呈现为单行排列,所述多个训练模板编码矩阵和所述新模板编码矩阵的行维度对应模板图像中字符的行向;其中,所述第一相似度确定单元具体配置为:
针对所述多个训练模板编码矩阵中的任意训练模板编码矩阵,计算其中任意的第i个行向量与所述新模板编码矩阵中任意的第j个行向量之间的余弦相似度,作为位于第i行第j列的矩阵元素,用于构建对应的第一相似度矩阵。
15.根据权利要求10所述的装置,其中,所述多种训练字体对应多个第一相似度矩阵;其中,所述相似字体确定单元具体配置为:
确定所述多个第一相似度矩阵对应的多个二阶范数;
确定所述多个二阶范数中的最大值所对应的训练字体,作为所述相似训练字体。
16.根据权利要求10所述的装置,其中,所述目标相似度确定单元具体配置为:
通过对相似训练字体对应的第一相似度矩阵和所述第二相似度矩阵进行乘积处理,得到所述目标相似度矩阵。
17.根据权利要求10所述的装置,其中,所述装置还包括:
新字体模板获取单元,配置为获取具有所述新字体且对应字符表中各个字符的单个字形图像;按照预定的字符排列顺序对所述单个字形图像沿宽度方向进行拼接,组成所述新字形模板图像;
其中,所述字符文本确定单元具体配置为:
基于所述单个字形图像在所述新字形模板图像中的宽度跨度,将所述目标相似度矩阵转换为概率矩阵,所述概率矩阵中包括所述文本图像中各个宽度子图像匹配所述单个字形图像的概率;
基于所述概率矩阵,确定所述文本图像中包含的文本字符。
18.根据权利要求10所述的装置,其中,所述字符文本确定单元进一步配置为:
基于所述概率矩阵,采用贪婪算法,确定所述文本字符。
19.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项所述的方法。
20.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111407784.6A CN114092940A (zh) | 2021-11-24 | 2021-11-24 | 识别图像中字符的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111407784.6A CN114092940A (zh) | 2021-11-24 | 2021-11-24 | 识别图像中字符的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114092940A true CN114092940A (zh) | 2022-02-25 |
Family
ID=80304290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111407784.6A Pending CN114092940A (zh) | 2021-11-24 | 2021-11-24 | 识别图像中字符的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114092940A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104966097A (zh) * | 2015-06-12 | 2015-10-07 | 成都数联铭品科技有限公司 | 一种基于深度学习的复杂文字识别方法 |
US20170098140A1 (en) * | 2015-10-06 | 2017-04-06 | Adobe Systems Incorporated | Font Recognition using Text Localization |
CN107330127A (zh) * | 2017-07-21 | 2017-11-07 | 湘潭大学 | 一种基于文本图片检索的相似文本检测方法 |
CN109711412A (zh) * | 2018-12-27 | 2019-05-03 | 信雅达系统工程股份有限公司 | 一种基于字典的光学字符识别纠错方法 |
CN109857912A (zh) * | 2018-12-20 | 2019-06-07 | 广州企图腾科技有限公司 | 一种字形识别方法、电子设备及存储介质 |
US20190251349A1 (en) * | 2014-03-12 | 2019-08-15 | Gary L. Duerksen | System and method for object classification and sorting |
JP2020102207A (ja) * | 2018-12-19 | 2020-07-02 | 富士通株式会社 | 受取人アドレスを認識する装置及び方法 |
CN111783767A (zh) * | 2020-07-27 | 2020-10-16 | 平安银行股份有限公司 | 文字识别方法、装置、电子设备及存储介质 |
CN113627262A (zh) * | 2021-07-13 | 2021-11-09 | 深圳力维智联技术有限公司 | 文字识别方法、装置及设备 |
-
2021
- 2021-11-24 CN CN202111407784.6A patent/CN114092940A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190251349A1 (en) * | 2014-03-12 | 2019-08-15 | Gary L. Duerksen | System and method for object classification and sorting |
CN104966097A (zh) * | 2015-06-12 | 2015-10-07 | 成都数联铭品科技有限公司 | 一种基于深度学习的复杂文字识别方法 |
US20170098140A1 (en) * | 2015-10-06 | 2017-04-06 | Adobe Systems Incorporated | Font Recognition using Text Localization |
CN107330127A (zh) * | 2017-07-21 | 2017-11-07 | 湘潭大学 | 一种基于文本图片检索的相似文本检测方法 |
JP2020102207A (ja) * | 2018-12-19 | 2020-07-02 | 富士通株式会社 | 受取人アドレスを認識する装置及び方法 |
CN109857912A (zh) * | 2018-12-20 | 2019-06-07 | 广州企图腾科技有限公司 | 一种字形识别方法、电子设备及存储介质 |
CN109711412A (zh) * | 2018-12-27 | 2019-05-03 | 信雅达系统工程股份有限公司 | 一种基于字典的光学字符识别纠错方法 |
CN111783767A (zh) * | 2020-07-27 | 2020-10-16 | 平安银行股份有限公司 | 文字识别方法、装置、电子设备及存储介质 |
CN113627262A (zh) * | 2021-07-13 | 2021-11-09 | 深圳力维智联技术有限公司 | 文字识别方法、装置及设备 |
Non-Patent Citations (2)
Title |
---|
IAN C. SIMPSON: "A letter visual-similarity matrix for Latin-based alphabets", 《BEHAVIOR RESEARCH METHODS》, 6 October 2012 (2012-10-06), pages 431 * |
胡晓霞: "基于shape conterxt的变形字体识别研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, 15 July 2012 (2012-07-15), pages 138 - 2273 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4504702B2 (ja) | 文書処理装置、文書処理方法、および文書処理プログラム | |
JP2020017274A (ja) | ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法 | |
CN108776832B (zh) | 信息处理方法、装置、计算机设备和存储介质 | |
CN113792741B (zh) | 文字识别方法、装置、设备及存储介质 | |
CN111401099B (zh) | 文本识别方法、装置以及存储介质 | |
JP2020173808A (ja) | ページ記述言語ジョブの解析によるニューラルネットワーク用光学式文字認識トレーニングデータの生成 | |
KR20240011164A (ko) | 이미지 인식 시스템들의 전이 학습 | |
WO2016142285A1 (en) | Method and apparatus for image search using sparsifying analysis operators | |
CN111428750A (zh) | 一种文本识别模型训练及文本识别方法、装置及介质 | |
CN113806645A (zh) | 标签分类系统及标签分类模型的训练系统 | |
CN116206314A (zh) | 模型训练方法、公式识别方法、装置、介质及设备 | |
CN113806646A (zh) | 序列标注系统及序列标注模型的训练系统 | |
US11126883B2 (en) | Character string recognition apparatus, and non-transitory computer readable medium | |
CN111400497A (zh) | 一种文本识别方法、装置、存储介质及电子设备 | |
KR102083786B1 (ko) | 문자열 식별 방법 및 장치, 그리고 이를 이용한 디스플레이 영상 식별 시스템 | |
CN114332871A (zh) | 一种字符识别方法、装置、设备及存储介质 | |
EP3059695A1 (en) | Constructing and using support vector machines | |
CN112307749A (zh) | 文本检错方法、装置、计算机设备和存储介质 | |
US20230245483A1 (en) | Handwriting recognition method and apparatus, and electronic device and storage medium | |
CN114092940A (zh) | 识别图像中字符的方法及装置 | |
Bender et al. | Learning fine-grained image representations for mathematical expression recognition | |
JP6712973B2 (ja) | 文生成装置、文生成学習装置、文生成方法、及びプログラム | |
JP7322468B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN114140664A (zh) | 图像处理模型的训练方法、图像相似度确定方法和装置 | |
US11275969B2 (en) | Visually-aware encodings for characters |
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 |