CN115393883A - 一种实现字符识别的方法、装置、计算机存储介质及终端 - Google Patents
一种实现字符识别的方法、装置、计算机存储介质及终端 Download PDFInfo
- Publication number
- CN115393883A CN115393883A CN202110571960.3A CN202110571960A CN115393883A CN 115393883 A CN115393883 A CN 115393883A CN 202110571960 A CN202110571960 A CN 202110571960A CN 115393883 A CN115393883 A CN 115393883A
- Authority
- CN
- China
- Prior art keywords
- result
- character
- recognition
- characters
- editing
- 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 66
- 238000003780 insertion Methods 0.000 claims description 29
- 230000037431 insertion Effects 0.000 claims description 29
- 238000009877 rendering Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 14
- 230000001186 cumulative effect Effects 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 abstract description 26
- 238000012790 confirmation Methods 0.000 abstract description 4
- 238000012015 optical character recognition Methods 0.000 description 21
- 238000012163 sequencing technique Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 241000282994 Cervidae Species 0.000 description 2
- 241000209094 Oryza Species 0.000 description 2
- 235000007164 Oryza sativa Nutrition 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 235000009566 rice Nutrition 0.000 description 2
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Character Discrimination (AREA)
Abstract
一种实现字符识别的方法、装置、计算机存储介质及终端,本发明实施例基于PDF文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别;多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。本发明实施例对PDF文件中的字符进行读取和渲染,可以确定字符图像在PDF中的具体对应哪个字符,在多字识别的结果包含预设数量个字符的情况下,实现了漏检或多检的快速确认,并根据多字识别的结果提升了字符识别的准确率;在之后将识别的结果转换的统一码(Unicode)附加到PDF的相应字符上,实现了PDF文档中包含的字符的准确识别。
Description
技术领域
本文涉及但不限于自动化办公应用技术,尤指一种实现字符识别的方法、装置、计算机存储介质及终端。
背景技术
可携带文档格式(PDF)文档中,若字符的统一码(Unicode)信息缺省,在复制粘贴文字内容时会出现乱码。为了消除乱码,相关技术中,通过光学字符识别(OCR)识别技术对文字进行识别以获得Unicode信息,然后再利用获得的Unicode信息对乱码进行修复。
上述OCR识别技术,当PDF文档摆放不正,扫描得到的图像歪斜、扫描分辨率低(例如低于300每英寸点数(dpi))或PDF文档有底纹等,会导致OCR识别技术对乱码进行修复时出现字符漏检或错检的情况,尤其是针对标点和特殊字符,漏检或错检的概率更大,从而降低了乱码修复效果。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供一种实现字符识别的方法、装置、计算机存储介质及终端,能够提升对PDF中的乱码进行修复的效果。
本发明实施例提供了一种实现字符识别的方法,包括:
基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别;
所述多字识别的结果包含预设数量个字符的情况下,根据所述多字识别的结果确定PDF文档中包含的字符的最终识别结果。
另一方面,本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述实现字符识别的方法。
再一方面,本发明实施例还提供一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,
处理器被配置为执行存储器中的计算机程序;
所述计算机程序被所述处理器执行时实现如上述实现字符识别的方法。
还一方面,本发明实施例还提供一种实现字符识别的装置,包括:多字识别单元和确定单元;其中,
多字识别单元设置为:基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别;
确定单元设置为:多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。
本发明实施例基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别;多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。本发明实施例对PDF文件中的字符进行读取和渲染,可以确定字符图像在PDF中的具体对应哪个字符,在多字识别的结果包含预设数量个字符的情况下,实现了漏检或多检的快速确认,并根据多字识别的结果提升了字符识别的准确率;在之后将识别的结果转换的统一码(Unicode)附加到PDF的相应字符上,实现了PDF文档中包含的字符的准确识别。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例实现字符识别的方法的流程图;
图2为本发明实施例实现字符识别的装置的结构框图;
图3为本发明应用示例拼接的字符图像的示意图;
图4为本发明应用示例另一拼接的字符图像的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明实施例实现字符识别的方法的流程图,如图1所示,包括:
步骤101、基于可携带文档格式(PDF,Portable Document Format)文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别;
需要说明的是,从PDF中复制文字经常还会遇到乱码问题。PDF的生成本质上就是一个「虚拟打印」的过程。「虚拟打印」表明这个过程不是字符识别过程。它的工作原理是在纸张上按照坐标和字体记载的形状,照葫芦画瓢地排列出指定的文字;整个过程完全不涉及「这是什么字」之类的问题。类似地,PDF绘制文本的流程,也不过是从字体资源文件中取出特定码位上的字符(glyph),放置在某个坐标位置上。计算机中的文字是通过编码来区分和调用的。目前,最通用和常见的编码方案是Unicode。另一方面,在PDF内部嵌入的字体文件中,每个字符也有一个编码;绘制文字时,Tj/TJ命令可以通过这个编码向字体文件索取需要的字符;上述两套编码可以是(并且在非英文环境下往往是)不同的,它们之间的「桥梁」,就是字体所附带的ToUnicode属性;ToUnicode的值是一张映射关系表(称作charactermap/CMap),它给出了字体文件中每个码位上的字符与Unicode编码的对应关系。在复制、搜索等操作中,PDF就是靠CMap这张表得知每个字符到底是什么「字」的。如果这张表丢失、缺损或被恶意篡改,例如一个只有一个「鹿」字的PDF文件,用文本编辑器打开PDF文件,可以看到<ba6f>Tj这一语句。可以看出,该语句的作用是绘制字体文件中编码为0xBA6F的字符。根据PDF对象的交叉引用关系(后文会介绍)找到CMap,其关键部分为:1beginbfrange/<ba6f><ba6f><2fc5>/endbfrange;这个CMap告诉阅读器:字体文件中编码为0x6ABF的字符对应Unicode中的U+2FC5;查Unicode码表可知,U+2FC5正是汉字「鹿」。如果将上面代码中的2FC5改成9A6C,然后重新打开PDF文件。外观上,文件似乎并没有任何变化;但如果你试着把这个字复制出来,会发现得到的结果是「马」;传输上述变化的原因是:「马」在Unicode中正是U+9A6C。上述示例表明,PDF中的「所见」未必就是「所得」。只要/ToUnicode的内容(较旧的或是英文的PDF也可能是/Encoding属性)发生丢失或者错误,文字复制就会出现乱码。与此同时,PDF的显示却不会受到任何影响(因为文字绘制是由与编码完全无关的语句控制的)。反之,利用乱码故障的原理,也可以故意破坏或者修改CMap,从而制造出表面正常但完全无法复制和搜索的文件,间接达到加密PDF的效果。
也就是说,PDF文件中存储有两种字符编码,一种是用于渲染的(字体文件对应的编码),一种是用来复制的(Unicode),二者存在映射关系。在后续进行包括OCR在内的字符识别之后,其实需要确定的是字符对应的Unicode编码。本发明实施例通过后续OCR识别的结果,要实现两种字符编码的映射关系的修正。此外,本发明实施例读取字符时,可以记录读取的字符在PDF文档中的位置。PDF文档上设置有文本对象,该文本对象与PDF文档中的字符位置一一对齐。在识别得到该字符对应的Unicode编码之后,将Unicode编码放置在该字符对应的位置上,使得当用户复制该字符时,复制的是该字符对应的Unicode编码。
步骤102、多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。
本发明实施例多字识别采用光学字符识别(OCR,Optical CharacterRecognition)的技术,OCR是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。如何除错或利用辅助信息提高识别正确率,是OCR最重要的课题,ICR(IntelligentCharacter Recognition)的名词也因此而产生。衡量一个OCR系统性能好坏的主要指标有:拒识率、误识率、识别速度、用户界面的友好性,产品的稳定性,易用性及可行性等。
OCR识别包括:单字识别和多字识别,多字识别需要先对包含多个字符的图像进行字符的切割,切割成单字之后,再进行单字识别。其中,由于拍照条件限制,经常会造成字符黏连、断笔,因此,限制了识别系统的性能,一般需要文字识别软件具有字符切割功能。
字符识别包括模板匹配和特征提取;其中,特征提取由于文字的位移,笔画的粗细、断笔、黏连和旋转等原因,特征提取的难度较大。当字符切割质量存在问题时,容易造成多检或漏检的情况,如将“饭糊了”切割为“饭米胡了”,产生多检的情况,将“文武双全”切割为“斌双全”产生漏检的情况。此外,还有切割的字符数一致,但切割错误的情况,如将“明月清风”切割为“日朋清风”。一般的,在多字识别中,可以并行的对切割得到的单字进行单字识别,提高多字识别的效率。也就是说,同样是识别10个字符,多字识别可以同时进行10个字符的识别,而单字识别则需要依次识别10个字符;但是,单字识别的准确率高于多字识别。
本实施例中,在多字识别的结果包含预设数量个字符的情况下,则可以初步判断不存在漏检或多检的情况,可以进一步的,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。
本发明实施例基于PDF文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别;多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。本发明实施例对PDF文件中的字符进行读取和渲染,可以确定字符图像在PDF中的具体对应哪个字符,在多字识别的结果包含预设数量个字符的情况下,实现了漏检或多检的快速确认,并根据多字识别的结果提升了字符识别的准确率;在之后将识别的结果转换的统一码(Unicode)附加到PDF的相应字符上,实现了PDF文档中包含的字符的准确识别。
在一种示例性实例中,本发明实施例基于PDF文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别,包括:
从PDF文档中读取字符,并将每一个字符渲染为字符图像;
对预设数量的字符图像进行拼接,并对拼接的字符图像进行多字识别。
在一种示例性实例中,本发明实施例字符图像可以包括预设尺寸的图像;在一种示例性实例中,可以将从PDF文档中读取的字符渲染为相同的尺寸,例如,将读取的字符渲染为50像素*50像素。将读取的字符渲染为相同的尺寸,一方面,可以便于后期确定拼接的字符图像中所包括的字符个数;另一方面,可以获得规整的拼接后的字符图像,方便在使用光学字符识别(OCR)进行多字识别时,进行准确的字符分割和分类,提高多字识别的准确性。具体的,本发明实施例先读取字符,再进行字符的拼接,使得拼接的结果更加规整,不会如同获取整张PDF的图片,再进行OCR识别的方案一般,容易因PDF中字符格式不同,造成多字识别时字符不好切割而影响识别效率,或者,不好确定字符的识别结果所对应的PDF中的位置的问题。
在一种示例性实施例中,本发明实施例读取字符过程中,可以确定字符的字体、大小等格式,根据字符的字体、大小等格式,可以将识别得到的Unicode编码的格式,调整到与该字符的字体和大小等格式一致,在PDF中的该字符所在位置一一对应。
在一种示例性实例中,本发明实施例字符图像的拼接可以参照相关技术,按照字符在PDF文档中的排序,对字符图像进行拼接,拼接的字符图像的长度可以由本领域技术人员根据字符图像的尺寸、分组识别的运算性能或者PDF中每行文本的字符个数等进行设定,拼接的方式可以包括:对一行以上字符进行拼接;或一列以上字符拼接;本发明实施例可以采用其他拼接方式进行拼接,在此不做限制;例如,渲染获得的字符图像为50像素*50像素时,根据分组识别的运算性能,可以参见图3所示方式,对一行10个字符的字符图像进行拼接。多字识别包括相关技术中已有的包括行识别在内的识别方法,例如、对拼接的图像进行OCR识别;本发明实施例也可以采用相关技术中已有的算法对拼接的字符图像进行字符识别。在一种示例性实例中,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果之前,本发明实施例方法还包括:
确定拼接的字符图像的尺寸;
根据确定的拼接的字符图像的尺寸,确定拼接的字符图像中包含的字符的数量;
其中,确定的拼接的字符图像中包含的字符的数量为预设数量。
本发明实施例设定字符图像的尺寸后,通过确定拼接的字符图像的尺寸,可以简单高效的实现字符数量的统计。例如、字符图像的预设尺寸为50像素*50像素,则10个字符的字符图像拼接后,拼接的字符图像是500*50的情况下,确定拼接的字符图像中包含的字符的数量为10个。
在一种示例性实例中,对预设数量的字符图像进行拼接的情况下,本发明实施例方法还包括:
记录拼接的字符图像的个数,该个数为预设数量。
本发明实施例通过记录拼接的字符图像的个数,将其与预设数量进行比对,可以十分便捷的确定多字识别获得的字符数是否为预设数量。
在一种示例性实例中,本发明实施例从PDF文档中读取字符,并将每一个字符渲染为字符图像,包括:
确定读取的字符是否为空白字符;
将确定的空白字符,渲染为空白图像,空白图像为字符图像。
在一种示例性实例中,本发明实施例,空白字符包括只占位置、但不显示的字符,空白字符可以包括:空格和/或制表符,还可以包括占位符。
在一种示例性实例中,本发明实施例读取的字符包含空白字符的情况下,渲染空白图像在进行多字识别的结果是否包含预设数量个字符的统计过程中,每一个空白图像记一个字符。
在一种示例性实例中,在拼接字符图像之前,确定读取的字符为空白字符的情况下,本发明实施例记录空白字符的位置(index),以在拼接字符图像过程中,根据记录的该空白字符的位置拼接字符图像。参见图3,拼接字符图像之前,本发明实施例确定读取的第四个字符为空白字符,本发明实施例记录空白字符排序在第四位置,根据记录的空白字符的位置,拼接字符图像。
在一种示例性实例中,在根据多字识别的结果确定PDF文档中包含的字符的最终识别结果之前,本发明实施例方法还包括:
在确定读取的字符包含空白字符的情况下,对多字识别的结果进行修正。
在一种示例性实例中,本发明实施例在确定读取的字符包含空白字符的情况下,对多字识别的结果进行修正,包括:
在确定读取的字符包含空白字符的情况下,根据空白字符的排序位置在多字识别的结果中插入空白字符,并设置空白字符的置信度为预设数值。
相关技术中的OCR识别,在某些文字(如中文)的情境下,是无法识别出空白字符的,依旧参见图3的示例,如果不确定空白字符,则通过多字识别获得的结果中必定遗漏空白字符的组成,造成识别出来的字符数量不足10个字符,而出现直接将判断结果确定为漏检的情况。本实施例中,在确定读取的字符包含空白字符的情况下,根据空白字符的排序位置在多字识别的结果中插入空白字符,可以避免直接将判断结果确定为漏检这一错误,实现空白字符在多字识别的结果中为准确的结果,提升了字符识别的准确率。
另外,本发明实施例可以设置空白字符的置信度,在一种示例性实例中,预设数值可以由本领域技术人员根据经验设定;例如、设置大于0.9以上的一个值。
本发明实施例置信度是指对OCR识别结果的可靠程度进行评估的概率信息,字符置信度信息可以通过以下处理获得:将PDF文档的字符图像输入到OCR算法中,由OCR算法中的网络结果进行特征提取,OCR算法中的长短期记忆网络(LSTM)的每一个时间片后接一个softmax(在多分类问题上的推广的一种逻辑回归模型),每一个softmax输出一个字符的概率值,该概率值为字符的置信度值。
在一种示例性实例中,本发明实施例在多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果,包括:
在多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果中各字符的置信度信息,确定最终识别结果。
本发明实施例对不包含空白字符的和包含空白字符的修正后的多字识别结果,通过置信度信息实现了最终识别结果的确定。
在一种示例性实例中,本发明实施例根据多字识别的结果中各字符的置信度信息,确定最终识别结果,包括:
在多字识别的结果中包含置信度信息小于置信度阈值的字符的情况下,对置信度信息小于置信度阈值的字符进行单字识别;
将置信度信息小于置信度阈值的字符的单字识别结果,覆盖字符在多字识别时获得的结果,以获得最终识别结果。
本发明实施例可以由技术人员参照经验设定和调整置信度阈值,基于置信度阈值的设定,可以对多字识别的结果中,识别可能发生错误的字符,通过单字识别进行纠正,以此提升PDF文档中字符识别的准确率。置信度阈值可以由本领域技术人员根据经验设定;例如,可以设置置信度阈值为大于0.9以上但小于1的一个值,具体取值可以由技术人员根据字符识别的准确率和处理速率进行设定,准确率要求高,则置信度阈值可以设置为较大,置信度阈值越高,则需要单字识别的字符数会相对增加,后续处理也会变多,因此处理速率会相对增加。假设设定置信度阈值为0.9,则本发明实施例对置信度小于0.9的字符进行单字识别。以表2所示的多字识别的结果为例,本发明实施例对排序序号为5和9的两个字符进行单字识别;将单字识别结果,覆盖多字识别时获得的结果,以获得最终识别结果。
本发明实施例单字识别可以包括:基于图像分类算法对每一个字符图像进行字符识别;本发明实施例也可以采用相关技术中已有的算法对字符图像进行字符识别。
在一种示例性实例中,本发明实施例根据多字识别的结果中各字符的置信度信息,确定最终识别结果,包括:
在多字识别的结果中各字符的置信度信息均大于预先设定的置信度阈值的情况下,将多字识别的结果确定为最终识别结果。
示例性的,如果设置置信度阈值为0.65,如果多字识别的结果中所有字符的置信度均大于0.65,则将多字识别的结果中的内容作为最终识别结果。
本发明实施例多字识别的结果中各字符的置信度信息均大于预先设定的置信度阈值的情况下,仅通过多字识别即可实现最终识别结果的高效确定,而无需再进行额外的、耗时的单字识别。
在一种示例性实例中,本发明实施例方法还包括:
在多字识别的结果不为预设数量个字符的情况下,确定多字识别的结果存在识别错误。
在一种示例性实例中,本发明实施例多字识别的结果不为预设数量个字符的情况可以包括:多字识别存在漏检或多检的识别错误。以图4所示的拼接的字符图像为例,在多字识别过程中,由于发生识别错误,在排序序号为2的和排序序号为3的k的字符图像的识别过程中,多识别出一个字符e,从而发生多检的错误;如果多字识别过程中,两个字符被识别为一个字符,则会出现漏检问题,例如,将文和武两个字,识别为斌字,则多字识别结果就会出现字符数变少的情况。
在一种示例性实例中,在确定多字识别的结果存在识别错误的情况下,本发明实施例方法还包括:对拼接的字符图像中的每一字符图像进行单字识别;根据单字识别的结果和多字识别的结果,确定最终识别结果。也就是说,本实施例中,可以在多字识别存在漏检、多检或者识别结果置信度不高的情况下,进一步的使用单字识别的方式对多字识别的修正,以得到更为准确可靠的最终识别结果。
在一种示例性实例中,本发明实施例根据单字识别的结果和多字识别的结果,确定最终识别结果,包括:
将单字识别的结果与多字识别的结果之间的字符数差值,作为第一数量;
按照预设策略和第一数量对多字识别的结果进行字符的编辑,获得多种组合的编辑结果,其中,每一编辑结果中包含预设数量个字符;
根据编辑结果和单字识别的结果,确定最终识别结果。
需要说明的是,本发明实施例对于包含空白字符的情况,本发明实施例编辑结果中包含的字符数量的统计中对空白字符也进行计数。
此外,本发明实施例多种组合的编辑结果,根据第一数量的字符在多字识别的结果中可以实现的排列组合数进行确定,例如、拼接的字符图像的个数为5,多字识别获得的字符数为3,则排列组合的数量为在3个字符之间插入2个字符的排列组合数,即
在一种示例性实例中,本发明实施例按照预设策略和第一数量对多字识别的结果进行字符的编辑,获得多种组合的编辑结果,包括:
在第一数量大于零的情况下,确定在多字识别的结果插入第一数量个插入符的多种插入组合,并获得多种插入组合的编辑结果,其中,插入组合包含确定字符的插入位置,以及插入位置所插入的字符的数量;
在第一数量小于零的情况下,确定在多字识别的结果删除第一数量个字符的多种删除组合,并获得多种插入组合的编辑结果,其中,删除组合包含确定多字识别结果中待删除的字符,例如、拼接的字符图像的个数为3,多字识别获得的字符数为5,则排列组合的数量为在5个字符中选择2个字符进行删除的排列组合数,即
在一种示例性实例中,本发明实施例中的插入符可以是预先设定的任意字符,插入符的插入只是为了调整多字识别的结果中字符的位置,方便进行多字识别的结果与单字识别的结果做比对,以确定是出现漏检或者多检的具体位置。在一种插入组合中,在不同字符的前后位置中选择一个或多个目标位置,并在选择的目标位置插入一个或多个插入符,且插入到所有目标位置的插入符的总数为第一数量。
在一种示例性实例中,本发明实施例根据编辑结果和单字识别的结果,确定最终识别结果,包括:
将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;
根据各编辑结果与单字识别的结果中识别结果为一致的字符数,选出用于确定最终识别结果的编辑结果;
将选出的编辑结果与单字识别的结果进行比对,确定最终识别结果。这里,选出的编辑结果指选出的用于确定最终识别结果的编辑结果。
在一种示例性实例中,本发明实施例根据各编辑结果与单字识别的结果中识别结果为一致的字符数,选出用于确定最终识别结果的编辑结果,包括:
在第一数量大于零,识别结果为一致的字符数取值最大的编辑结果只有一个的情况下,将编辑结果作为用于确定最终识别结果的编辑结果;
在第一数量大于零,识别结果为一致的字符数取值最大的编辑结果为至少两个的情况下,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算插入插入符位置的识别结果的置信度的累加和;将计算获得的置信度的累加和为最大时的编辑结果,作为用于确定最终识别结果的编辑结果。
在一种示例性实例中,本发明实施例选出用于确定最终识别结果的编辑结果,包括:
在第一数量小于零,识别结果为一致的字符数取值最大的编辑结果只有一个的情况下,将编辑结果作为用于确定最终识别结果的编辑结果;
在第一数量小于零,识别结果为一致的字符数取值最大的编辑结果为至少两个的情况下,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算删除后的字符的置信度的累加和;将置信度累加和为最大时的编辑结果,作为用于确定最终识别结果的编辑结果。
在一种示例性实例中,本发明实施例将选出的编辑结果与单字识别的结果进行比对,确定最终识别结果,包括:
对比选出的编辑结果与单字识别的结果;
在字符的识别结果一致情况下,将该编辑结果作为最终识别结果;
在字符的识别结果不一致情况下,将置信度值大的识别结果作为最终识别结果。
为了说明清楚,本实施例以一具体的例子进行说明中,假设拼接的字符图像为10个字符的字符图像,表2为多字识别的结果,由于多字识别的结果为9个字符,不等于10个字符,本发明实施例进行单字识别,假设表3为单字识别的结果,基于表2和表3的示例内容,本发明实施例根据单字识别的结果和多字识别的结果,确定最终识别结果包括:确定单字识别的结果与多字识别的结果中包含的字符数差值为1;因为字符数差值为1,在表2的多字识别的结果中,按排序序号每一次插入一个插入符;具体的,第一次在表2排序序号1前面插入插入符C1,获得第一个编辑结果;第二次在表2排序序号2前面插入插入符C2,获得第二个编辑结果;第三次在表2排序序号3前面插入插入符C3,获得第三个编辑结果;以此类推,第九次在表2排序序号9前面插入插入符C9,获得第九个组合排序结果;第十次在表2排序序号9后面插入插入符C10,获得第十个编辑结果;将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;将识别结果为一致的字符数为最大(例如包含8个识别结果相同的字符,则识别结果为一致的字符数为8)时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;假设识别结果为一致的字符数取值最大的编辑结果只有一个时,将该编辑结果作为用于确定PDF文档中包含的字符的识别结果的编辑结果;识别结果为一致的字符数取值最大的编辑结果包含两个以上时,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算插入插入符位置的识别结果的置信度的累加和;将置信度的累加和为最大时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果一致时,将该识别结果作为PDF文档中包含的字符的识别结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果不一致时,将置信度值大的识别结果作为PDF文档中包含的字符的识别结果。
假设拼接的字符图像为图4所示的10个字符的字符图像,表4为多字识别的结果,由于多字识别的结果为11个字符,不等于10个字符,本发明实施例进行单字识别,假设表5为单字识别的结果,基于表4和表5的示例内容,本发明实施例根据单字识别的结果和多字识别的结果,确定最终识别结果包括:单字识别的结果与多字识别的结果中包含的识别结果的字符数差值(第一数量)为1;因为字符数值差为1,在多字识别的结果中,每一次删除不同排序位置的1个识别结果,获得相应的编辑结果;即在表4的多字识别的结果中,按照字符的排序序号每一次删除一个识别结果;具体的,第一次删除表4排序序号为1的识别结果,获得第一个编辑结果;第二次删除表4排序序号为2的识别结果,获得第二个编辑结果;第三次删除表4排序序号为3的识别结果,获得第四个编辑结果;以此类推,第十次在表4排序序号10的识别结果,获得第十个编辑结果;第十一次在表4排序序号11的识别结果,获得第十一个编辑结果;将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;将识别结果为一致的字符数为最大(例如包含9个识别结果相同的字符,则识别结果为一致的字符数为9)时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;假设本应用示例识别结果为一致的字符数取值最大的编辑结果只有一个时,将该编辑结果作为用于确定PDF文档中包含的字符的识别结果的编辑结果;识别结果为一致的字符数取值最大的编辑结果包含两个以上时,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算删除后的识别结果的置信度的累加和;将置信度累加和为最大时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果一致时,将该识别结果作为PDF文档中包含的字符的识别结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果不一致时,将置信度值大的识别结果作为PDF文档中包含的字符的识别结果。
在一种示例性实例中,本发明实施例方法还包括:
根据确定的最终识别结果,对PDF文档进行内容校正。
本发明实施例确定的最终识别结果,在多字识别结果包含预设数量个字符的情况下,基于渲染获得字符图像可以确定字符图像在PDF中的位置,可以将识别的结果转换的统一码对PDF相应位置的字符进行校正;在包含空白字符的情况下,对多字识别的结果进行修正,避免了空白字符对内容校正造成影响;针对多字识别的结果中存在的置信度信息小于置信度阈值的字符,通过单字识别结果的覆盖,实现了错误识别的字符的校正;多字识别的结果不为预设数量个字符的漏检或多检的情况,从基于预设策略和第一数量对多字识别的结果进行字符的编辑获得编辑结果中,选出用于确定最终识别结果的编辑结果,通过比对编辑结果和单字识别的结果,对存在多检或漏检的识别进行校正;基于上述处理获得的最终识别结果,字符识别准确率得到提升,对PDF文档进行内容校正时,可以有效克服乱码问题。
本发明实施例还提供一种计算机存储介质,计算机存储介质中存储有计算机程序,计算机程序被处理器执行时实现上述实现字符识别的方法。
本发明实施例还提供一种终端,包括:存储器和处理器,存储器中保存有计算机程序;其中,
处理器被配置为执行存储器中的计算机程序;
计算机程序被处理器执行时实现如上述实现字符识别的方法。
图2为本发明实施例实现字符识别的装置的结构框图,如图2所示,包括:多字识别单元和确定单元;其中,
多字识别单元设置为:基于PDF文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别;确定单元设置为:多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。
本发明实施例基于PDF文档获取包含预设数量个字符的字符图像,并对字符图像进行多字识别;多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。本发明实施例对PDF文件中的字符进行读取和渲染,可以确定字符图像在PDF中的具体对应哪个字符,在多字识别的结果包含预设数量个字符的情况下,实现了漏检或多检的快速确认,并根据多字识别的结果提升了字符识别的准确率;在之后将识别的结果转换的统一码(Unicode)附加到PDF的相应字符上,实现了PDF文档中包含的字符的准确识别。
在一种示例性实例中,本发明实施例多字识别单元包括渲染模块和多字识别模块;其中,
渲染模块设置为:从PDF文档中读取字符,并将每一个字符渲染为字符图像;
多字识别模块设置为:对预设数量的字符图像进行拼接,并对拼接的字符图像进行多字识别。
在一种示例性实例中,本发明实施例确定单元还设置为:
确定拼接的字符图像的尺寸;
根据确定的拼接的字符图像的尺寸,确定拼接的字符图像中包含的字符的数量;
其中,确定的拼接的字符图像中包含的字符的数量为预设数量。
在一种示例性实例中,本发明实施例多字识别模块还设置为:
记录拼接的字符图像的个数,个数为预设数量。
在一种示例性实例中,本发明实施例渲染模块是设置为:
确定读取的字符是否为空白字符;
将确定的空白字符,渲染为空白图像,空白图像为字符图像。
在一种示例性实例中,本发明实施例多字识别模块还设置为:
在确定读取的字符包含空白字符的情况下,对多字识别的结果进行修正。
在一种示例性实例中,本发明实施例多字识别模块还设置为在确定读取的字符包含空白字符的情况下,对多字识别的结果进行修正,包括:
在确定读取的字符包含空白字符的情况下,根据空白字符的排序位置在多字识别的结果中插入空白字符,并设置空白字符的置信度为预设数值。
在一种示例性实例中,本发明实施例确定单元是设置为:
多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果中各字符的置信度信息,确定最终识别结果。
在一种示例性实例中,本发明实施例确定单元是设置为根据多字识别的结果中各字符的置信度信息,确定最终识别结果,包括:
多字识别的结果中包含置信度信息小于置信度阈值的字符的情况下,对置信度信息小于置信度阈值的字符进行单字识别;
将置信度信息小于置信度阈值的字符的单字识别结果,覆盖字符在多字识别时获得的结果,以获得最终识别结果。
在一种示例性实例中,本发明实施例确定单元是设置为根据多字识别的结果中各字符的置信度信息,确定最终识别结果,包括:
多字识别的结果中各字符的置信度信息均大于预先设定的置信度阈值的情况下,将多字识别的结果确定为最终识别结果。
在一种示例性实例中,本发明实施例确定单元还设置为:
多字识别的结果不为预设数量个字符的情况下,确定多字识别的结果存在识别错误。
在一种示例性实例中,本发明实施例还包括单字识别单元,设置为:对拼接的字符图像中的每一字符图像进行单字识别;
确定单元还设置为:根据单字识别的结果和多字识别的结果,确定最终识别结果。
在一种示例性实例中,本发明实施例确定单元还设置为根据单字识别的结果和多字识别的结果,确定最终识别结果,包括:
将单字识别的结果与多字识别的结果之间的字符数差值,作为第一数量;
按照预设策略和第一数量对多字识别的结果进行字符的编辑,获得多种组合的编辑结果,其中,每一编辑结果中包含预设数量个字符;
根据编辑结果和单字识别的结果,确定最终识别结果。
在一种示例性实例中,本发明实施例确定单元还设置为按照预设策略和第一数量对多字识别的结果进行字符的编辑,获得多种组合的编辑结果,包括:
在第一数量大于零的情况下,确定在多字识别的结果插入第一数量个插入符的多种插入组合,并获得多种插入组合的编辑结果,其中,插入组合包含确定字符的插入位置,以及插入位置所插入的字符的数量;
在第一数量小于零的情况下,确定在多字识别的结果删除第一数量个字符的多种删除组合,并获得多种插入组合的编辑结果,其中,删除组合包含确定多字识别结果中待删除的字符。
在一种示例性实例中,本发明实施例确定单元是设置为根据编辑结果和单字识别的结果,确定最终识别结果,包括:
将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;
根据各编辑结果与单字识别的结果中识别结果为一致的字符数,选出用于确定最终识别结果的编辑结果;
将选出的编辑结果与单字识别的结果进行比对,确定最终识别结果。
在一种示例性实例中,本发明实施例确定单元是设置为根据各编辑结果与单字识别的结果中识别结果为一致的字符数,选出用于确定最终识别结果的编辑结果,包括:
在第一数量大于零,识别结果为一致的字符数取值最大的编辑结果只有一个的情况下,将编辑结果作为用于确定最终识别结果的编辑结果;
在第一数量大于零,识别结果为一致的字符数取值最大的编辑结果为至少两个的情况下,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算插入插入符位置的识别结果的置信度的累加和;将计算获得的置信度的累加和为最大时的编辑结果,作为用于确定最终识别结果的编辑结果。
在一种示例性实例中,本发明实施例确定单元是设置为选出用于确定最终识别结果的编辑结果,包括:
在第一数量小于零,识别结果为一致的字符数取值最大的编辑结果只有一个的情况下,将编辑结果作为用于确定最终识别结果的编辑结果;
在第一数量小于零,识别结果为一致的字符数取值最大的编辑结果为至少两个的情况下,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算删除后的字符的置信度的累加和;将置信度累加和为最大时的编辑结果,作为用于确定最终识别结果的编辑结果。
在一种示例性实例中,本发明实施例确定单元是设置为将选出的编辑结果与单字识别的结果进行比对,确定最终识别结果,包括:
对比选出的编辑结果与单字识别的结果;
在字符的识别结果一致情况下,将该编辑结果作为最终识别结果;
在字符的识别结果不一致情况下,将置信度值大的识别结果作为最终识别结果。
在一种示例性实例中,本发明实施例装置还包括校正单元,设置为:
根据确定的最终识别结果,对PDF文档进行内容校正。
以下通过应用示例对本发明实施例进行简要说明,应用示例仅用于陈述本发明实施例,并不用于限定本发明的保护范围。
应用示例
本应用示例假设PDF文档存在乱码;读取PDF文档中的字符后,将每个字符渲染为50像素*50像素的字符图像;将10个字符的字符图像拼接成500像素*50像素的图像;本发明实施例读取的字符为空白字符的情况下,渲染获得空白图像,空白图像为字符图像。
本发明实施例字符图像为空白图像时,记录空白图像的排序位置;这里,当拼接的字符图像为预设数量时,本发明实施例空白图像排序位置可以是拼接的字符图像中的排序位置;图3为本发明应用示例拼接的字符图像的示意图,如图3所示,拼接的字符图像由10个字符的字符图像组成,其中,排序位置为4的字符图像为空白图像。
本应用示例对拼接的字符图像通过OCR进行多字识别,获得表1所示的多字识别的结果;根据空白图像的排序位置,在多字识别的结果中插入空白符,本应用示例对插入的空白符,设置其置信度为1,表2为插入空白符后的多字识别的结果示意;
排序序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
识别结果 | 本 | 部 | 分 | 1 | 2 | 4 | 5 | · |
置信度 | 0.999 | 1.0 | 1.0 | 0.653 | 0.999 | 0.999 | 0.999 | 0.815 |
表1
排序序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
识别结果 | 本 | 部 | 分 | 1 | 2 | 4 | 5 | ● | |
置信度 | 0.999 | 1.0 | 1.0 | 1.0 | 0.653 | 0.999 | 0.999 | 0.999 | 0.815 |
表2
本应用示例表2中的多字识别的结果,确定多字识别的结果中各字符的置信度是否低于置信度阈值,字符的置信度低于置信度阈值时,对该字符进行单字识别。
将置信度信息小于置信度阈值的字符的单字识别结果,覆盖字符在多字识别时获得的结果,获得最终识别结果。
本应用示例,当多字识别的结果不为预设数量个字符的情况下,确定多字识别的结果存在识别错误,包括:多字识别存在漏检或多检的错误。在确定多字识别的结果存在识别错误的情况下,本发明应用示例方法还包括:
对拼接的字符图像中的每一字符图像进行单字识别;
根据单字识别的结果和多字识别的结果,确定最终识别结果。
表3为图3所示拼接的字符图像的单字识别的结果;
排序序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
识别结果 | 本 | 部 | 分 | Ⅰ | 2 | 4 | 5 | ● | 、 | |
置信度 | 0.999 | 0.999 | 0.999 | 1.0 | 0.136 | 0.996 | 0.999 | 0.999 | 0.999 | 0.999 |
表3
本应用示例,对表2所示的多字识别的结果和表3所示的单字识别的结果,确定PDF文档中包含的字符的最终识别结果;
本应用示例,根据单字识别的结果和多字识别的结果,确定最终识别结果包括:确定单字识别的结果与多字识别的结果中包含的字符数差值为1;因为字符数差值为1,本应用示例在多字识别的结果中,每一次在不同的排序位置插入1个插入符,获得相应的编辑结果;即在表2的多字识别的结果中,按排序序号每一次插入一个插入符;具体的,第一次在表2排序序号1前面插入插入符C1,获得第一个编辑结果;第二次在表2排序序号2前面插入插入符C2,获得第二个编辑结果;第三次在表2排序序号3前面插入插入符C3,获得第三个编辑结果;以此类推,第九次在表2排序序号9前面插入插入符C9,获得第九个组合排序结果;第十次在表2排序序号9后面插入插入符C10,获得第十个编辑结果;将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;将识别结果为一致的字符数为最大(例如包含8个识别结果相同的字符,则识别结果为一致的字符数为8)时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;假设本应用示例识别结果为一致的字符数取值最大的编辑结果只有一个时,将该编辑结果作为用于确定PDF文档中包含的字符的识别结果的编辑结果;识别结果为一致的字符数取值最大的编辑结果包含两个以上时,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算插入插入符位置的识别结果的置信度的累加和;将置信度的累加和为最大时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果一致时,将该识别结果作为PDF文档中包含的字符的识别结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果不一致时,将置信度值大的识别结果作为PDF文档中包含的字符的识别结果。
图4为本发明应用示例另一拼接的字符图像的示意图,如图4所示,拼接的字符图像包括10个字符的字符图像,不包含空白图像。
表4为图4所示拼接的字符图像对应的多字识别的结果,由于存在识别错误,多字识别的结果中包含11个字符的识别结果;
表4
表5为拼接为图4所示图像中的字符图像的单字识别的结果;单字识别的结果中包含10个字符的识别结果;
表5
本应用示例,单字识别的结果与多字识别的结果中包含字符数不同的识别结果时,单字识别的结果与多字识别的结果中包含的识别结果的字符数差值(第一数量)为1;因为字符数值差为1,本应用示例在多字识别的结果中,每一次删除不同排序位置的1个识别结果,获得相应的编辑结果;即在表4的多字识别的结果中,按照字符的排序序号每一次删除一个识别结果;具体的,第一次删除表4排序序号为1的识别结果,获得第一个编辑结果;第二次删除表4排序序号为2的识别结果,获得第二个编辑结果;第三次删除表4排序序号为3的识别结果,获得第四个编辑结果;以此类推,第十次在表4排序序号10的识别结果,获得第十个编辑结果;第十一次在表4排序序号11的识别结果,获得第十一个编辑结果;将获得的每一个编辑结果分别与单字识别的结果进行比对,确定各编辑结果与单字识别的结果中识别结果为一致的字符数;将识别结果为一致的字符数为最大(例如包含9个识别结果相同的字符,则识别结果为一致的字符数为9)时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;假设本应用示例识别结果为一致的字符数取值最大的编辑结果只有一个时,将该编辑结果作为用于确定PDF文档中包含的字符的识别结果的编辑结果;识别结果为一致的字符数取值最大的编辑结果包含两个以上时,对每一个识别结果为一致的字符数取值最大的编辑结果,分别计算删除的识别结果的置信度的累加和;将置信度累加和为最大时的编辑结果,作为用于确定PDF文档中包含的字符的识别结果的编辑结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果一致时,将该识别结果作为PDF文档中包含的字符的识别结果;用于确定PDF文档中包含的字符的识别结果的编辑结果与单字识别的结果,字符的识别结果不一致时,将置信度值大的识别结果作为PDF文档中包含的字符的识别结果。
本应用示例通过比对单字识别的结果和编辑结果,确定PDF文档中包含的字符的识别结果,降低了漏检和错检的概率;基于确定的最终识别结果实现PDF乱码修复时,提升了PDF修复的完整度。
“本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。”
Claims (22)
1.一种实现字符识别的方法,包括:
基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别;
所述多字识别的结果包含预设数量个字符的情况下,根据所述多字识别的结果确定PDF文档中包含的字符的最终识别结果。
2.根据权利要求1所述的方法,其特征在于,所述基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别,包括:
从PDF文档中读取字符,并将每一个字符渲染为字符图像;
对预设数量的字符图像进行拼接,并对拼接的字符图像进行多字识别。
3.根据权利要求2所述的方法,其特征在于,所述字符图像的尺寸为预设尺寸,所述根据多字识别的结果确定PDF文档中包含的字符的最终识别结果之前,所述方法还包括:
确定所述拼接的字符图像的尺寸;
根据确定的所述拼接的字符图像的尺寸,确定所述拼接的字符图像中包含的字符的数量;
其中,确定的所述拼接的字符图像中包含的字符的数量为所述预设数量。
4.根据权利要求2所述的方法,其特征在于,所述对预设数量的字符图像进行拼接的情况下,所述方法还包括:
记录拼接的所述字符图像的个数,所述个数为所述预设数量。
5.根据权利要求2所述的方法,其特征在于,所述从PDF文档中读取字符,并将每一个字符渲染为字符图像,包括:
确定读取的字符是否为空白字符;
将确定的所述空白字符,渲染为空白图像,所述空白图像为字符图像。
6.根据权利要求2所述的方法,其特征在于,在所述根据所述多字识别的结果确定PDF文档中包含的字符的最终识别结果之前,所述方法还包括:
在确定读取的字符包含空白字符的情况下,对所述多字识别的结果进行修正。
7.根据权利要求6所述的方法,其特征在于,所述在确定读取的字符包含空白字符的情况下,对所述多字识别的结果进行修正,包括:
在确定读取的字符包含空白字符的情况下,根据所述空白字符的排序位置在所述多字识别的结果中插入空白字符,并设置所述空白字符的置信度为预设数值。
8.根据权利要求1~7任一项所述的方法,其特征在于,所述多字识别的结果包含预设数量个字符的情况下,根据所述多字识别的结果确定PDF文档中包含的字符的最终识别结果,包括:
多字识别的结果包含预设数量个字符的情况下,根据所述多字识别的结果中各字符的置信度信息,确定所述最终识别结果。
9.根据权利要求8所述的方法,其特征在于,所述根据所述多字识别的结果中各字符的置信度信息,确定所述最终识别结果,包括:
所述多字识别的结果中包含置信度信息小于置信度阈值的字符的情况下,对所述置信度信息小于置信度阈值的字符进行单字识别;
将所述置信度信息小于置信度阈值的字符的单字识别结果,覆盖所述字符在多字识别时获得的结果,以获得所述最终识别结果。
10.根据权利要求8所述的方法,其特征在于,所述根据所述多字识别的结果中各字符的置信度信息,确定所述最终识别结果,包括:
所述多字识别的结果中各字符的置信度信息均大于预先设定的置信度阈值的情况下,将所述多字识别的结果确定为所述最终识别结果。
11.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述多字识别的结果不为预设数量个字符的情况下,确定所述多字识别的结果存在识别错误。
12.根据权利要求11所述的方法,其特征在于,在所述确定所述多字识别的结果存在识别错误的情况下,所述方法还包括:
对所述拼接的字符图像中的每一所述字符图像进行单字识别;
根据所述单字识别的结果和所述多字识别的结果,确定所述最终识别结果。
13.根据权利要求12所述的方法,其特征在于,所述根据单字识别的结果和多字识别的结果,确定所述最终识别结果,包括:
将所述单字识别的结果与所述多字识别的结果之间的字符数差值,作为第一数量;
按照预设策略和所述第一数量对所述多字识别的结果进行字符的编辑,获得多种组合的编辑结果,其中,每一所述编辑结果中包含预设数量个字符;
根据所述编辑结果和所述单字识别的结果,确定所述最终识别结果。
14.根据权利要求13所述的方法,其特征在于,所述按照预设策略和所述第一数量对所述多字识别的结果进行字符的编辑,获得多种组合的编辑结果,包括:
在所述第一数量大于零的情况下,确定在所述多字识别的结果插入所述第一数量个插入符的多种插入组合,并获得多种所述插入组合的所述编辑结果,其中,所述插入组合包含确定所述字符的插入位置,以及所述插入位置所插入的字符的数量;
在所述第一数量小于零的情况下,确定在所述多字识别的结果删除所述第一数量个字符的多种删除组合,并获得多种所述插入组合的所述编辑结果,其中,所述删除组合包含确定所述多字识别结果中待删除的字符。
15.根据权利要求13所述的方法,其特征在于,所述根据所述编辑结果和所述单字识别的结果,确定所述最终识别结果,包括:
将获得的每一个所述编辑结果分别与所述单字识别的结果进行比对,确定各所述编辑结果与所述单字识别的结果中识别结果为一致的字符数;
根据各所述编辑结果与所述单字识别的结果中识别结果为一致的字符数,选出用于确定所述最终识别结果的编辑结果;
将选出的所述编辑结果与所述单字识别的结果进行比对,确定所述最终识别结果。
16.根据权利要求15所述的方法,其特征在于,所述根据各所述编辑结果与所述单字识别的结果中识别结果为一致的字符数,选出用于确定所述最终识别结果的编辑结果,包括:
在所述第一数量大于零,所述识别结果为一致的字符数取值最大的所述编辑结果只有一个的情况下,将所述编辑结果作为用于确定所述最终识别结果的编辑结果;
在所述第一数量大于零,所述识别结果为一致的字符数取值最大的所述编辑结果为至少两个的情况下,对每一个所述识别结果为一致的字符数取值最大的所述编辑结果,分别计算插入所述插入符位置的识别结果的置信度的累加和;将计算获得的置信度的累加和为最大时的所述编辑结果,作为用于确定所述最终识别结果的编辑结果。
17.根据权利要求15所述的方法,其特征在于,所述选出用于确定所述最终识别结果的编辑结果,包括:
在所述第一数量小于零,所述识别结果为一致的字符数取值最大的所述编辑结果只有一个的情况下,将所述编辑结果作为用于确定所述最终识别结果的编辑结果;
在所述第一数量小于零,所述识别结果为一致的字符数取值最大的所述编辑结果为至少两个的情况下,对每一个所述识别结果为一致的字符数取值最大的所述编辑结果,分别计算删除后的字符的置信度的累加和;将置信度累加和为最大时的所述编辑结果,作为用于确定所述最终识别结果的编辑结果。
18.根据权利要求16或17所述的方法,其特征在于,所述将选出的所述编辑结果与所述单字识别的结果进行比对,确定所述最终识别结果,包括:
对比选出的所述编辑结果与所述单字识别的结果;
在字符的识别结果一致情况下,将该编辑结果作为所述最终识别结果;
在字符的识别结果不一致情况下,将置信度值大的识别结果作为所述最终识别结果。
19.根据权利要求1~7、11~17所述的方法,其特征在于,所述方法还包括:
根据确定的所述最终识别结果,对所述PDF文档进行内容校正。
20.一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1~19中任一项所述的实现字符识别的方法。
21.一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,
处理器被配置为执行存储器中的计算机程序;
所述计算机程序被所述处理器执行时实现如权利要求1~19中任一项所述的实现字符识别的方法。
22.一种实现字符识别的装置,包括:多字识别单元和确定单元;其中,
多字识别单元设置为:基于PDF文档获取包含预设数量个字符的字符图像,并对所述字符图像进行多字识别;
确定单元设置为:多字识别的结果包含预设数量个字符的情况下,根据多字识别的结果确定PDF文档中包含的字符的最终识别结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110571960.3A CN115393883A (zh) | 2021-05-25 | 2021-05-25 | 一种实现字符识别的方法、装置、计算机存储介质及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110571960.3A CN115393883A (zh) | 2021-05-25 | 2021-05-25 | 一种实现字符识别的方法、装置、计算机存储介质及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115393883A true CN115393883A (zh) | 2022-11-25 |
Family
ID=84113688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110571960.3A Pending CN115393883A (zh) | 2021-05-25 | 2021-05-25 | 一种实现字符识别的方法、装置、计算机存储介质及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115393883A (zh) |
-
2021
- 2021-05-25 CN CN202110571960.3A patent/CN115393883A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4974260A (en) | Apparatus for identifying and correcting unrecognizable characters in optical character recognition machines | |
US4914709A (en) | Method for identifying unrecognizable characters in optical character recognition machines | |
EP0738987B1 (en) | Processing machine readable forms | |
EP0592238B1 (en) | Certifiable optical character recognition | |
CA2116600C (en) | Methods and apparatus for inferring orientation of lines of text | |
US6909805B2 (en) | Detecting and utilizing add-on information from a scanned document image | |
EP0439951B1 (en) | Data processing | |
JP4661921B2 (ja) | 文書処理装置およびプログラム | |
JP2008276766A (ja) | フォーム自動埋込方法及び装置 | |
JP2000293626A (ja) | 文字認識方法及び装置ならびに記憶媒体 | |
US8682075B2 (en) | Removing character from text in non-image form where location of character in image of text falls outside of valid content boundary | |
CN102467664B (zh) | 辅助光学字符识别的方法和装置 | |
CN106557733A (zh) | 信息处理装置和信息处理方法 | |
US20150278162A1 (en) | Retention of content in converted documents | |
CN112650992A (zh) | 一种基于数字水印的文档追踪加密方法 | |
CN112417087A (zh) | 基于文字的溯源方法及系统 | |
CN115393883A (zh) | 一种实现字符识别的方法、装置、计算机存储介质及终端 | |
JP5041775B2 (ja) | 文字切出方法及び文字認識装置 | |
CN111814780A (zh) | 一种票据图像处理方法、装置、设备及存储介质 | |
JP6118646B2 (ja) | 帳票処理装置、帳票処理方法、帳票処理プログラム | |
CN112257718A (zh) | 一种关于放射科胶片的文本识别方法及装置 | |
CN106959940A (zh) | 一种便于文档自动化录入的文档格式及转换和识别方法 | |
CN117475453B (zh) | 一种基于ocr的文书检测方法、装置及电子设备 | |
KR101718877B1 (ko) | 라벨 프린터 기반 범용 프린터 드라이버 구동 방법 및 기록매체 | |
US7668407B1 (en) | Contextual resolution of character assignments |
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 |