CN111310426A - 基于ocr的表格版式恢复方法、装置及存储介质 - Google Patents
基于ocr的表格版式恢复方法、装置及存储介质 Download PDFInfo
- Publication number
- CN111310426A CN111310426A CN202010076101.2A CN202010076101A CN111310426A CN 111310426 A CN111310426 A CN 111310426A CN 202010076101 A CN202010076101 A CN 202010076101A CN 111310426 A CN111310426 A CN 111310426A
- Authority
- CN
- China
- Prior art keywords
- cutting
- text
- result
- line
- picture
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/42—Document-oriented image-based pattern recognition based on the type of document
- G06V30/422—Technical drawings; Geographical maps
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Character Input (AREA)
Abstract
本发明涉及图像处理领域,揭露了一种基于OCR的表格版式恢复方法,该方法包括:接收用户发出的携带待恢复表格图片的指令;对所述待恢复表格图片进行OCR识别;基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果;确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果;基于所述识别结果及所述第二切割结果生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。本发明还揭露了一种电子装置及计算机存储介质。利用本发明,可以提高表格版式恢复的准确性。
Description
技术领域
本发明涉及图像识别领域,尤其涉及一种基于OCR的表格版式恢复方法、电子装置及计算机可读存储介质。
背景技术
随着办公中纸质表格使用的增加,随之而来的是大量需要处理与统计的表格数据,处理这些数据需要耗费大量人力。若通过计算机对扫描后的表格图像进行提取并还原成电子表格,就能够通过程序批量处理并分析表格的各项数据,提高办公效率。
在通用OCR识别的检测和识别准确率都很高的情况下,对于规范的段落文章和带表格线的表格已经有成熟的方法提取结构化数据,例如,使用深度学习方式从图像中直接提取表格特征的方法,但这种方式识别率不高;还可以利用形态学来检测表格的一些特征,如表格框线,但这种方式依赖表格框线的特性,若遇到无框线的表格,这种方法便失效。因此,对于无表格线的表格图片,在结构化时还有很大挑战,难度主要在于如何把单元格划分出来。如何快速准确地从无表格线的表格中提取表格内容成为亟待解决的问题。
发明内容
鉴于以上内容,本发明提供一种基于OCR的表格版式恢复方法、电子装置及计算机可读存储介质,其主要目的在于提高表格版式恢复的准确性。
为实现上述目的,本发明提供一种基于OCR的表格版式恢复方法,该方法包括:
接收步骤:接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型;
识别步骤:对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息;
行切割步骤:基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果;
列切割步骤:基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果;及
恢复步骤:基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
此外,为实现上述目的,本发明还提供一种电子装置,该装置包括:存储器、处理器,所述存储器中存储有可在所述处理器上运行的基于OCR的表格版式恢复程序,所述基于OCR的表格版式恢复程序被所述处理器执行时可实现如上所述基于OCR的表格版式恢复方法中的任意步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中包括基于OCR的表格版式恢复程序,所述基于OCR的表格版式恢复程序被处理器执行时,可实现如上所述基于OCR的表格版式恢复方法中的任意步骤。
本发明提出的基于OCR的表格版式恢复方法、电子装置及计算机可读存储介质,利用OCR识别出的文本框进行多次旋转后在Y轴投影,从多次投影结果中选择最佳角度,并根据最佳角度的投影结果确定表格的行切割线,通过识别表格的表头信息确定表格的列切割线,可有效提高行切割线及列切割线的准确率,为准确提取表格内容奠定基础;在识别表格的表头信息过程中,而是根据特定的表格类型对应的特定表头信息确定相应的关键词集合,对通用OCR识别的文本框对应的文本信息与关键词集合进行匹配,确定表头信息,提高了表头信息提取的准确性,进一步提高了列切割的准确性;根据表头信息初步确定列切割线后,对列切割线进行调整,减少列切割线穿过文本框的情况,进一步提高了列切割的准确性;在提取表格明细过程中,对每一个单元格及文本框进行分析,确定每一个单元格对应的文本框,从而提高表格内容提取的准确性。综上,提高了表格版式恢复的准确性。
附图说明
图1为本发明基于OCR的表格版式恢复方法较佳实施例的流程图;
图2为本发明电子装置较佳实施例的示意图;
图3为图2中基于OCR的表格版式恢复程序较佳实施例的程序模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种基于OCR的表格版式恢复方法。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
参照图1所示,为本发明基于OCR的表格版式恢复方法较佳实施例的流程图。
在本发明基于OCR的表格版式恢复方法一较佳实施例中,所述基于OCR的表格版式恢复方法包括:步骤S1-步骤S5。
步骤S1,接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型。
以下以电子装置作为执行主体对本发明各实施例进行说明。
在本实施例中,所述待恢复表格图片为无表格线的表格。需要说明的是,为了保证表格版式恢复的准确性,待恢复表格图片需满足几个特点:行、列排列整齐;行列间有一定间距(间距越大,准确性越高);表格具有表头且每一列信息与表头对应;同一类型的表格的表头信息固定。
所述待恢复表格图片的图片类型用于区分不同应用场景对应的表格图片,本实施例默认同一类型的不同表格对应相同的表头信息。例如,费用清单这类表格图片,表头信息包括:“单价”、“数量”、“金额”、“项目名称”等,财务报表这类表格图片,表头信息包括:“项目”、“本年数”、“金额”、“年初余额”等。
用户通过客户端上的APP选择待恢复表格图片及其对应的图片类型,并发出表格版式恢复指令。电子装置接收到客户端发出的指令后,对指令中携带的待恢复表格图片进行表格明细结构化操作。
步骤S2,对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息。
上述对待恢复表格图片进行OCR识别得到的识别结果包括:多个文本框、所述多个文本框的坐标信息及所述文本框对应的文本信息。鉴于现有技术中已经有成熟的OCR识别技术,故在此不作赘述。
步骤S3,基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果。
在本实施例中,所述基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,包括:
a1、按照多个预设角度对所述识别结果中的所述多个文本框进行旋转,对旋转后的所述多个文本框在y轴上进行投影,确定在y轴上所述多个预设角度对应的多个投影区间及多个重叠投影片段;
a2、选择所述多个投影区间中投影区间最小,或者,选择所述多个重叠投影片段中重叠投影片段最多的预设角度作为目标角度,确定所述目标角度对应的重叠投影片段;
a3、根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线;及
a4、根据所述目标角度下所述多个文本框的行切割线,确定每一行对应的文本框。
一般来说,在整齐的表格图片上,行与行之间有一定间距,在算法表现上,通用OCR识别的文本框在y轴的投影也有比较整齐的规律,同一行的文本框在y轴上的投影比较接近。
上述预设角度的范围可以设置为-1°~1°,步长为0.1°。
通过以待恢复表格图片的中心依次旋转图片,并对旋转后的图片的所有文本框在y轴投影,得到每个文本框在y轴上的投影坐标,基于每个文本框的投影坐标确定当前旋转角度对应的投影区间,并记录重叠投影片段的数量及坐标。选取这些角度中重叠投影片段最多的一个角度,并根据重叠投影片段画出行切割线。
具体地,所述根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线,包括:
获取所述目标角度对应的重叠投影片段中每一个重叠投影片段的坐标,以每一个重叠投影片段的最小坐标作为一行的下切割线,以每一个重叠的投影片段的最大坐标作为一行的上切割线。
将最终确定的经过旋转后的待恢复表格图片及行切割线生成第一切割结果,第一切割结果包括:旋转后的待恢复表格图片的行信息及每一行对应的文本框。
在其他实施例中,如果行与行之间挨得太近或者图片有三维扭转,可能会造成沿中心旋转也无法不能确定有效的分割线的情况。此时将不可分割那一部分文本框,以这部分的中心点为圆心,迭代执行步骤a1-a3。
步骤S4,基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果。
确定待恢复表格图片的行信息后,需进一步确定待恢复表格图片的列信息。需要说明的是,一般情况下表格的列信息与表格的表头信息紧密相关,因此,需先确定待恢复表格图片中的表头信息。在本实施例中,所述基于所述图片类型确定所述第一切割结果对应的表头信息,包括:
b1、从预设存储路径获取预先确定的图片类型与表头关键词集合的映射数据,根据所述图片类型及所述映射数据确定所述第一切割结果对应的表头关键词集合;
b2、获取所述第一切割结果中每一行的文本框的文本信息,将所述每一行的文本框的文本信息与所述关键词集合进行匹配;及
b3、当存在与所述关键词集合匹配的文本信息时,将与所述关键词集合匹配的文本信息对应的一行文本框作为所述第一切割结果的表头信息。
上述映射数据中每一种图片类型对应一个关键词集合。需要说明的是,需要预先确定多种图片类型分别对应的表头信息,确定多种图片类型对应的关键词集合,生成图片类型与关键词集合的映射数据,将映射数据保存至预设存储路径中。
由于没有表格线作辅助,无法精准的进行列分割。在本实施例中,利用表头的位置信息计算列分割线。在实际业务场景中,同一类的表格具有类似的表头内容,且表头内容一般不会出现在表格顶部的冗余信息中,也不会出现在明细条目里。所以通过检索关键字定位表头是有效的方法。以费用清单为例,对待恢复表格图片进行行切割生成第一切割结果后,将第一切割结果中的文本框从上至下排列,并依次将文本框的文本信息与确定的关键词集合进行比对,但凡出现关键字“单价”、“数量”、“金额”则检索停止,找到该元素所在的行,这一行就是该第一切割结果的表头。
确定第一切割结果中的表头信息后,进一步根据表头信息确定列切割线。在本实施例中,所述基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果,包括:
c1、获取所述第一切割结果的表头信息中的每一个表头元素,在所述每一个表头元素对应的文本框的最右方作垂直切割线;及
c2、根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果。
例如,表头信息中包含6个表头元素时,分别确定6个表头元素对应的文本框,读取每一个文本框的位置信息,即坐标,确定文本框的最右点,将6个表头元素对应的6个最右点作为列切割点,并作垂直切割线进行列切割。
为了确保列分割的准确性,在其他实施例中,所述根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果,还包括:
d1、将所述垂直切割线作为第一列切割线;
d2、计算所述第一切割结果中每个文本框的中心点,记录中心点在所述第一列切割线内的文本框,计算每一列文本框外框边界点在X轴方向上的平均数及标准差;
d3、当所述标准差小于或等于预设标准差阈值时,根据所述平均数调整对应的一列文本框的第一列切割线,生成第二列切割线;及
d4、根据所述第二列切割线对所述第一切割结果进行列切割,得到所述第二切割结果。
可以理解的是,在每一个表头元素的外边框的最右方作垂直分割线初步定位列切割点,这样的列切割点可能不准确,例如,某一个表头元素的列切割线可能会穿过其对应的明细内容。虽然存在偏差,但是表格明细的横向排列也是相对整齐的,有一定的边界,通常在表格中是靠左或靠右对齐。这个特点可以利用到列切割的矫正中。先把中心点在两条相邻列分割线内的文本框记录起来,计算每一列的文本框外边框边界点(例如,最右点的x轴坐标)的平均数和其标准差。标准差代表这一列是否有靠左、靠右对齐的特征,如果标准差低于预设标准差阈值(图片中字符的平均宽度),则可以认为表格有对齐特征,可把对应的列切割点移动到该列的文本框外边框边界点(例如,最右点的x轴坐标)的平均数上,否则初步定位的列切割点保持不变。相较于将比直接画外边界线,通过上述步骤调整得到的列切割线准确性得到提高。
步骤S5,基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
上述第二切割结果中既包括行切割线,也包括列切割线,即,可确定一个目标表格结构。新建一个与第二切割结果确定的目标表格结构相同的空表,将目标表格结构范围内的文本框的文本信息依次填充至表格单元格中,以提取出待恢复表格图片中的表格明细内容。
为了避免文本信息遗漏或被重复填充,将文本框对应的文本信息按照预设顺序填充至单元格中。在本实施例中,上述预设顺序为:按照行/列从上至下,从左到右的顺序。
在本实施例中,所述将所述多个文本框对应的文本信息写入所述目标表格结构的单元格,包括:
e1、确定与所述目标表格结构中每个单元格对应的多个交集文本框,分别计算所述多个交集文本框面积及所述多个交集文本框与单元格的重叠面积;及
e2、当所述重叠面积与所述交集文本框面积的比例超过预设比例阈值时,判断所述交集文本框为与所述单元格对应的目标文本框,将所述目标文本框的文本信息写入所述单元格中。
需要说明的是,同一个文本框可能处于目标表格结构中两相邻单元格之间,为了进一步保证表格明细提取的准确性,在每个单元格中计算该由列切割线和行切割线构成的四边形面积,和与其有交集的文本框的重叠面积,如果重叠面积占文本框面积的0.5以上,则认为该文本框属于对应单元格。在其他实施例中,如果有多个文本框符合以上条件,则按照位置靠上、靠左的优先级放置。
上述实施例提出的基于OCR的表格版式恢复方法,利用OCR识别出的文本框进行多次旋转后在Y轴投影,从多次投影结果中选择最佳角度,并根据最佳角度的投影结果确定表格的行切割线,通过识别表格的表头信息确定表格的列切割线,可有效提高行切割线及列切割线的准确率,为准确提取表格内容奠定基础;在识别表格的表头信息过程中,而是根据特定的表格类型对应的特定表头信息确定相应的关键词集合,对通用OCR识别的文本框对应的文本信息与关键词集合进行匹配,确定表头信息,提高了表头信息提取的准确性,进一步提高了列切割的准确性;根据表头信息初步确定列切割线后,对列切割线进行调整,减少列切割线穿过文本框的情况,进一步提高了列切割的准确性;在提取表格明细过程中,对每一个单元格及文本框进行分析,确定每一个单元格对应的文本框,从而提高表格内容提取的准确性。综上,提高了表格版式恢复的准确性。
本发明还提出一种电子装置。参照图2所示,为本发明电子装置较佳实施例的示意图。
在本实施例中,电子装置1可以是服务器、智能手机、平板电脑、便携计算机、桌上型计算机等具有数据处理功能的终端设备,所述服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器。
该电子装置1包括存储器11、处理器12及网络接口13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是所述电子装置1的内部存储单元,例如该电子装置1的硬盘。存储器11在另一些实施例中也可以是所述电子装置1的外部存储设备,例如该电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括该电子装置1的内部存储单元也包括外部存储设备。
存储器11不仅可以用于存储安装于该电子装置1的应用软件及各类数据,例如,基于OCR的表格版式恢复程序10等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如,基于OCR的表格版式恢复程序10等。
网络接口13可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该电子装置1与其他电子设备之间建立通信连接,例如,客户端(图中未标识)。电子装置1的组件11-13通过通信总线相互通信。
图2仅示出了具有组件11-13的电子装置1,本领域技术人员可以理解的是,图2示出的结构并不构成对电子装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
可选地,该电子装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。
可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以称为显示屏或显示单元,用于显示在电子装置1中处理的信息以及用于显示可视化的用户界面。
在图2所示的电子装置1实施例中,作为一种计算机存储介质的存储器11中存储基于OCR的表格版式恢复程序10的程序代码,处理器12执行基于OCR的表格版式恢复程序10的程序代码时,实现如下步骤:
接收步骤:接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型。
以下以电子装置作为执行主体对本发明各实施例进行说明。
在本实施例中,所述待恢复表格图片为无表格线的表格。需要说明的是,为了保证表格版式恢复的准确性,待恢复表格图片需满足几个特点:行、列排列整齐;行列间有一定间距(间距越大,准确性越高);表格具有表头且每一列信息与表头对应;同一类型的表格的表头信息固定。
所述待恢复表格图片的图片类型用于区分不同应用场景对应的表格图片,本实施例默认同一类型的不同表格对应相同的表头信息。例如,费用清单这类表格图片,表头信息包括:“单价”、“数量”、“金额”、“项目名称”等,财务报表这类表格图片,表头信息包括:“项目”、“本年数”、“金额”、“年初余额”等。
用户通过客户端上的APP选择待恢复表格图片及其对应的图片类型,并发出表格版式恢复指令。电子装置1接收到客户端发出的指令后,对指令中携带的待恢复表格图片进行表格明细结构化操作。
识别步骤:对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息。
上述对待恢复表格图片进行OCR识别得到的识别结果包括:多个文本框、所述多个文本框的坐标信息及所述文本框对应的文本信息。鉴于现有技术中已经有成熟的OCR识别技术,故在此不作赘述。
行切割步骤:基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果。
在本实施例中,所述基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,包括:
a1、按照多个预设角度对所述识别结果中的所述多个文本框进行旋转,对旋转后的所述多个文本框在y轴上进行投影,确定在y轴上所述多个预设角度对应的多个投影区间及多个重叠投影片段;
a2、选择所述多个投影区间中投影区间最小,或者,选择所述多个重叠投影片段中重叠投影片段最多的预设角度作为目标角度,确定所述目标角度对应的重叠投影片段;
a3、根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线;及
a4、根据所述目标角度下所述多个文本框的行切割线,确定每一行对应的文本框。
一般来说,在整齐的表格图片上,行与行之间有一定间距,在算法表现上,通用OCR识别的文本框在y轴的投影也有比较整齐的规律,同一行的文本框在y轴上的投影比较接近。
上述预设角度的范围可以设置为-1°~1°,步长为0.1°。
通过以待恢复表格图片的中心依次旋转图片,并对旋转后的图片的所有文本框在y轴投影,得到每个文本框在y轴上的投影坐标,基于每个文本框的投影坐标确定当前旋转角度对应的投影区间,并记录重叠投影片段的数量及坐标。选取这些角度中重叠投影片段最多的一个角度,并根据重叠投影片段画出行切割线。
具体地,所述根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线,包括:
获取所述目标角度对应的重叠投影片段中每一个重叠投影片段的坐标,以每一个重叠投影片段的最小坐标作为一行的下切割线,以每一个重叠的投影片段的最大坐标作为一行的上切割线。
将最终确定的经过旋转后的待恢复表格图片及行切割线生成第一切割结果,第一切割结果包括:旋转后的待恢复表格图片的行信息及每一行对应的文本框。
在其他实施例中,如果行与行之间挨得太近或者图片有三维扭转,可能会造成沿中心旋转也无法不能确定有效的分割线的情况。此时将不可分割那一部分文本框,以这部分的中心点为圆心,迭代执行步骤a1-a3。
列切割步骤:基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果。
确定待恢复表格图片的行信息后,需进一步确定待恢复表格图片的列信息。需要说明的是,一般情况下表格的列信息与表格的表头信息紧密相关,因此,需先确定待恢复表格图片中的表头信息。在本实施例中,所述基于所述图片类型确定所述第一切割结果对应的表头信息,包括:
b1、从预设存储路径获取预先确定的图片类型与表头关键词集合的映射数据,根据所述图片类型及所述映射数据确定所述第一切割结果对应的表头关键词集合;
b2、获取所述第一切割结果中每一行的文本框的文本信息,将所述每一行的文本框的文本信息与所述关键词集合进行匹配;及
b3、当存在与所述关键词集合匹配的文本信息时,将与所述关键词集合匹配的文本信息对应的一行文本框作为所述第一切割结果的表头信息。
上述映射数据中每一种图片类型对应一个关键词集合。需要说明的是,需要预先确定多种图片类型分别对应的表头信息,确定多种图片类型对应的关键词集合,生成图片类型与关键词集合的映射数据,将映射数据保存至预设存储路径中。
由于没有表格线作辅助,无法精准的进行列分割。在本实施例中,利用表头的位置信息计算列分割线。在实际业务场景中,同一类的表格具有类似的表头内容,且表头内容一般不会出现在表格顶部的冗余信息中,也不会出现在明细条目里。所以通过检索关键字定位表头是有效的方法。以费用清单为例,对待恢复表格图片进行行切割生成第一切割结果后,将第一切割结果中的文本框从上至下排列,并依次将文本框的文本信息与确定的关键词集合进行比对,但凡出现关键字“单价”、“数量”、“金额”则检索停止,找到该元素所在的行,这一行就是该第一切割结果的表头。
确定第一切割结果中的表头信息后,进一步根据表头信息确定列切割线。在本实施例中,所述基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果,包括:
c1、获取所述第一切割结果的表头信息中的每一个表头元素,在所述每一个表头元素对应的文本框的最右方作垂直切割线;及
c2、根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果。
例如,表头信息中包含6个表头元素时,分别确定6个表头元素对应的文本框,读取每一个文本框的位置信息,即坐标,确定文本框的最右点,将6个表头元素对应的6个最右点作为列切割点,并作垂直切割线进行列切割。
为了确保列分割的准确性,在其他实施例中,所述根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果,还包括:
d1、将所述垂直切割线作为第一列切割线;
d2、计算所述第一切割结果中每个文本框的中心点,记录中心点在所述第一列切割线内的文本框,计算每一列文本框外框边界点在X轴方向上的平均数及标准差;
d3、当所述标准差小于或等于预设标准差阈值时,根据所述平均数调整对应的一列文本框的第一列切割线,生成第二列切割线;及
d4、根据所述第二列切割线对所述第一切割结果进行列切割,得到所述第二切割结果。
可以理解的是,在每一个表头元素的外边框的最右方作垂直分割线初步定位列切割点,这样的列切割点可能不准确,例如,某一个表头元素的列切割线可能会穿过其对应的明细内容。虽然存在偏差,但是表格明细的横向排列也是相对整齐的,有一定的边界,通常在表格中是靠左或靠右对齐。这个特点可以利用到列切割的矫正中。先把中心点在两条相邻列分割线内的文本框记录起来,计算每一列的文本框外边框边界点(例如,最右点的x轴坐标)的平均数和其标准差。标准差代表这一列是否有靠左、靠右对齐的特征,如果标准差低于预设标准差阈值(图片中字符的平均宽度),则可以认为表格有对齐特征,可把对应的列切割点移动到该列的文本框外边框边界点(例如,最右点的x轴坐标)的平均数上,否则初步定位的列切割点保持不变。相较于将比直接画外边界线,通过上述步骤调整得到的列切割线准确性得到提高。
恢复步骤:基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
上述第二切割结果中既包括行切割线,也包括列切割线,即,可确定一个目标表格结构。新建一个与第二切割结果确定的目标表格结构相同的空表,将目标表格结构范围内的文本框的文本信息依次填充至表格单元格中,以提取出待恢复表格图片中的表格明细内容。
为了避免文本信息遗漏或被重复填充,将文本框对应的文本信息按照预设顺序填充至单元格中。在本实施例中,上述预设顺序为:按照行/列从上至下,从左到右的顺序。
在本实施例中,所述将所述多个文本框对应的文本信息写入所述目标表格结构的单元格,包括:
e1、确定与所述目标表格结构中每个单元格对应的多个交集文本框,分别计算所述多个交集文本框面积及所述多个交集文本框与单元格的重叠面积;及
e2、当所述重叠面积与所述交集文本框面积的比例超过预设比例阈值时,判断所述交集文本框为与所述单元格对应的目标文本框,将所述目标文本框的文本信息写入所述单元格中。
需要说明的是,同一个文本框可能处于目标表格结构中两相邻单元格之间,为了进一步保证表格明细提取的准确性,在每个单元格中计算该由列切割线和行切割线构成的四边形面积,和与其有交集的文本框的重叠面积,如果重叠面积占文本框面积的0.5以上,则认为该文本框属于对应单元格。在其他实施例中,如果有多个文本框符合以上条件,则按照位置靠上、靠左的优先级放置。
需要说明的是,同一份表格文件具有相似的行列结构。然而,由于打印机限制,过长的部分会被分页,而被分页的部分可能没有表头信息,由于在拍照、扫描过程中,每张图片间的角度和三维旋转的误差,故切割线可能无法直接确定,为了进一步提高列切割线的准确性,在其他实施例中,当所述待恢复表格图片包括具有相同行列结构的有表头页和无表头页时,所述列切割步骤包括:
f1、识别出所述有表头页的列切割线并计算所述有表头页的列切割比例;
f2、基于所述预设行切割规则对所述无表头页进行行切割得到所述无表头页的第一切割结果,根据所述第一切割结果确定所述无表头页中文本框最多的行;及
f3、根据所述有表头页的列切割比例对所述无表头页中文本框最多的行进行列切割线映射,并根据映射的所述无表头页的列切割线对所述无表头页的第一切割结果进行列切割,得到所述无表头页的第二切割结果。
需要说明的是,有表头页的列切割规则及预设行切割规则的具体实施方式与上述实施例中相同,在此不作赘述。
在计算有表头页的列切割比例时,以有表头页中最开始有内容的列的外边界线切割线为起点,以最后有内容的列的外边界线为终点,计算每一列的比例,即,确定每一条列切割线的相对位置。
在确定上述无表头页中文本框最多的行的过程中,文本框数量越接近有表头页的表头的列数,确定的列切割线越准确。
确定行与列切割比例后,以文本框最多的行的第一个文本框的水平方向最小边界点为起点,以最后一个文本框的水平方向最大边界点为终点,确定一个范围,按照列切割比例在该范围内进行列切割映射。其中,最小边界点可以理解为第一个文本框的坐标值中x最小值对应的点,最大边界点可以理解为最后一个文本框的坐标值中x最大值对应的点。
可选地,在其他的实施例中,基于OCR的表格版式恢复程序10还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器12所执行,以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。
例如,参照图3所示,为图2中基于OCR的表格版式恢复程序10的程序模块示意图。
在所述基于OCR的表格版式恢复程序10一实施例中,基于OCR的表格版式恢复程序10包括:模块110-150,其中:
接收模块110,用于接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型;
识别模块120,用于对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息;
行切割模块130,用于基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果;
列切割模块140,用于基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果;及
恢复模块150,用于基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
所述模块110-150所实现的功能或操作步骤均与上文类似,此处不再详述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质中包括基于OCR的表格版式恢复程序10,所述基于OCR的表格版式恢复程序10被处理器执行时实现所述基于OCR的表格版式恢复方法的任意步骤。本发明计算机可读存储介质的具体实施方式与上述方法实施例大致相同,在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于OCR的表格版式恢复方法,适用于电子装置,其特征在于,该方法包括:
接收步骤:接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型;
识别步骤:对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息;
行切割步骤:基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果;
列切割步骤:基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果;及
恢复步骤:基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
2.根据权利要求1所述的基于OCR的表格版式恢复方法,其特征在于,所述基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,包括:
按照多个预设角度对所述识别结果中的所述多个文本框进行旋转,对旋转后的所述多个文本框在y轴上进行投影,确定在y轴上所述多个预设角度对应的多个投影区间及多个重叠投影片段;
选择所述多个投影区间中投影区间最小,或者,选择所述多个重叠投影片段中重叠投影片段最多的预设角度作为目标角度,确定所述目标角度对应的重叠投影片段;
根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线;及
根据所述目标角度下所述多个文本框的行切割线,确定每一行对应的文本框。
3.根据权利要求2所述的基于OCR的表格版式恢复方法,其特征在于,所述根据所述目标角度对应的重叠投影片段确定在所述目标角度下所述多个文本框的行切割线,包括:
获取所述目标角度对应的重叠投影片段中每一个重叠投影片段的坐标,以每一个重叠投影片段的最小坐标作为一行的下切割线,以每一个重叠的投影片段的最大坐标作为一行的上切割线。
4.根据权利要求2所述的基于OCR的表格版式恢复方法,其特征在于,所述基于所述图片类型确定所述第一切割结果对应的表头信息,包括:
从预设存储路径获取预先确定的图片类型与表头关键词集合的映射数据,根据所述图片类型及所述映射数据确定所述第一切割结果对应的表头关键词集合;
获取所述第一切割结果中每一行的文本框的文本信息,将所述每一行的文本框的文本信息与所述关键词集合进行匹配;及
当存在与所述关键词集合匹配的文本信息时,将与所述关键词集合匹配的文本信息对应的一行文本框作为所述第一切割结果的表头信息。
5.根据权利要求1所述的基于OCR的表格版式恢复方法,其特征在于,所述基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果,包括:
获取所述第一切割结果的表头信息中的每一个表头元素,在所述每一个表头元素对应的文本框的最右方作垂直切割线;及
根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果。
6.根据权利要求5所述的基于OCR的表格版式恢复方法,其特征在于,所述根据所述垂直切割线对所述第一切割结果进行列切割,得到第二切割结果,还包括:
将所述垂直切割线作为第一列切割线;
计算所述第一切割结果中每个文本框的中心点,记录中心点在所述第一列切割线内的文本框,计算每一列文本框外框边界点在X轴方向上的平均数及标准差;
当所述标准差小于或等于预设标准差阈值时,根据所述平均数调整对应的一列文本框的第一列切割线,生成第二列切割线;及
根据所述第二列切割线对所述第一切割结果进行列切割,得到所述第二切割结果。
7.根据权利要求1至6中任意一项所述的基于OCR的表格版式恢复方法,其特征在于,所述将所述多个文本框对应的文本信息写入所述目标表格结构的单元格,包括:
确定与所述目标表格结构中每个单元格对应的多个交集文本框,分别计算所述多个交集文本框面积及所述多个交集文本框与单元格的重叠面积;及
当所述重叠面积与所述交集文本框面积的比例超过预设比例阈值时,判断所述交集文本框为与所述单元格对应的目标文本框,将所述目标文本框的文本信息写入所述单元格中。
8.一种电子装置,其特征在于,该装置包括存储器及处理器,所述存储器中存储有可在所述处理器上运行的基于OCR的表格版式恢复程序,所述基于OCR的表格版式恢复程序被所述处理器执行时可实现如下步骤:
接收步骤:接收用户发出的表格版式恢复指令,所述表格版式恢复指令包括待恢复表格图片及所述待恢复表格图片的图片类型;
识别步骤:对所述待恢复表格图片进行OCR识别得到识别结果,所述识别结果包括多个文本框及各所述多个文本框对应的文本信息;
行切割步骤:基于所述识别结果及预设行切割规则对所述待恢复表格图片进行行切割,得到第一切割结果;
列切割步骤:基于所述图片类型确定所述第一切割结果对应的表头信息,基于所述表头信息及预设列切割规则对所述第一切割结果进行列切割,得到第二切割结果;及
恢复步骤:基于所述第二切割结果生成目标表格结构,将所述多个文本框对应的文本信息写入所述目标表格结构的单元格中,生成所述待恢复表格图片对应的目标表格,并将所述目标表格发送给所述用户。
9.根据权利要求8所述的电子装置,其特征在于,所述将所述多个文本框对应的文本信息写入所述目标表格结构的单元格,包括:
确定与所述目标表格结构中每个单元格对应的多个交集文本框,分别计算所述多个交集文本框面积及所述多个交集文本框与单元格的重叠面积;及
当所述重叠面积与所述交集文本框面积的比例超过预设比例阈值时,判断所述交集文本框为与所述单元格对应的目标文本框,将所述目标文本框的文本信息写入所述单元格中。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括基于OCR的表格版式恢复程序,所述基于OCR的表格版式恢复程序被处理器执行时,可实现如权利要求1至8中任意一项所述的基于OCR的表格版式恢复方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010076101.2A CN111310426A (zh) | 2020-01-22 | 2020-01-22 | 基于ocr的表格版式恢复方法、装置及存储介质 |
PCT/CN2020/093610 WO2021147222A1 (zh) | 2020-01-22 | 2020-05-30 | 基于ocr的表格版式恢复方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010076101.2A CN111310426A (zh) | 2020-01-22 | 2020-01-22 | 基于ocr的表格版式恢复方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111310426A true CN111310426A (zh) | 2020-06-19 |
Family
ID=71148328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010076101.2A Pending CN111310426A (zh) | 2020-01-22 | 2020-01-22 | 基于ocr的表格版式恢复方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111310426A (zh) |
WO (1) | WO2021147222A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111814443A (zh) * | 2020-07-21 | 2020-10-23 | 北京来也网络科技有限公司 | 结合rpa和ai的表格生成方法及装置、计算设备、存储介质 |
WO2021147252A1 (zh) * | 2020-01-22 | 2021-07-29 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置、电子设备及存储介质 |
CN116127928A (zh) * | 2023-04-17 | 2023-05-16 | 广东粤港澳大湾区国家纳米科技创新研究院 | 表格数据识别方法、装置、存储介质及计算机设备 |
US11829701B1 (en) * | 2022-06-30 | 2023-11-28 | Accenture Global Solutions Limited | Heuristics-based processing of electronic document contents |
CN118212188A (zh) * | 2024-03-12 | 2024-06-18 | 广东兴艺数字印刷股份有限公司 | 一种动漫卡自动检测控制方法、系统、设备及介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115618836B (zh) * | 2022-12-15 | 2023-03-31 | 杭州恒生聚源信息技术有限公司 | 无线表格的结构还原方法、装置、计算机设备及存储介质 |
CN117037194B (zh) * | 2023-05-10 | 2024-08-13 | 广州方舟信息科技有限公司 | 单据图像的表格识别方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016517587A (ja) * | 2013-03-13 | 2016-06-16 | コファックス, インコーポレイテッド | モバイル装置を用いて取込まれたデジタル画像におけるオブジェクトの分類 |
CN108734089B (zh) * | 2018-04-02 | 2023-04-18 | 腾讯科技(深圳)有限公司 | 识别图片文件中表格内容的方法、装置、设备及存储介质 |
CN109446487A (zh) * | 2018-11-01 | 2019-03-08 | 北京神州泰岳软件股份有限公司 | 一种解析便携式文档格式文档表格的方法及装置 |
-
2020
- 2020-01-22 CN CN202010076101.2A patent/CN111310426A/zh active Pending
- 2020-05-30 WO PCT/CN2020/093610 patent/WO2021147222A1/zh active Application Filing
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021147252A1 (zh) * | 2020-01-22 | 2021-07-29 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置、电子设备及存储介质 |
CN111814443A (zh) * | 2020-07-21 | 2020-10-23 | 北京来也网络科技有限公司 | 结合rpa和ai的表格生成方法及装置、计算设备、存储介质 |
US11829701B1 (en) * | 2022-06-30 | 2023-11-28 | Accenture Global Solutions Limited | Heuristics-based processing of electronic document contents |
CN116127928A (zh) * | 2023-04-17 | 2023-05-16 | 广东粤港澳大湾区国家纳米科技创新研究院 | 表格数据识别方法、装置、存储介质及计算机设备 |
CN116127928B (zh) * | 2023-04-17 | 2023-07-07 | 广东粤港澳大湾区国家纳米科技创新研究院 | 表格数据识别方法、装置、存储介质及计算机设备 |
CN118212188A (zh) * | 2024-03-12 | 2024-06-18 | 广东兴艺数字印刷股份有限公司 | 一种动漫卡自动检测控制方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021147222A1 (zh) | 2021-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111325110B (zh) | 基于ocr的表格版式恢复方法、装置及存储介质 | |
CN111310426A (zh) | 基于ocr的表格版式恢复方法、装置及存储介质 | |
CN111476227B (zh) | 基于ocr的目标字段识别方法、装置及存储介质 | |
US10679089B2 (en) | Systems and methods for optical character recognition | |
US7801358B2 (en) | Methods and systems for analyzing data in media material having layout | |
US10417489B2 (en) | Aligning grid lines of a table in an image of a filled-out paper form with grid lines of a reference table in an image of a template of the filled-out paper form | |
US7630551B2 (en) | Method and system for line extraction in digital ink | |
CN110399878B (zh) | 表格版式恢复方法,计算机可读介质以及计算机 | |
US20070168382A1 (en) | Document analysis system for integration of paper records into a searchable electronic database | |
CN111898411B (zh) | 文本图像标注系统、方法、计算机设备和存储介质 | |
CN109685870B (zh) | 信息标注方法及装置、标注设备及存储介质 | |
US10740638B1 (en) | Data element profiles and overrides for dynamic optical character recognition based data extraction | |
CN105528604A (zh) | 一种基于ocr的票据自动识别与处理系统 | |
JP2004139484A (ja) | 帳票処理装置、該装置実行のためのプログラム、及び、帳票書式作成プログラム | |
US20090226090A1 (en) | Information processing system, information processing apparatus, information processing method, and storage medium | |
WO2021147219A1 (zh) | 基于图像的文本识别方法、装置、电子设备及存储介质 | |
WO2021143058A1 (zh) | 基于图像的信息比对方法、装置、电子设备及计算机可读存储介质 | |
CN111340020A (zh) | 一种公式识别方法、装置、设备及存储介质 | |
JP5380040B2 (ja) | 文書処理装置 | |
CN111553334A (zh) | 问卷图像识别方法、电子装置及存储介质 | |
CN111858977B (zh) | 票据信息采集方法、装置、计算机设备和存储介质 | |
CN113806472A (zh) | 一种对文字图片和图像型扫描件实现全文检索的方法及设备 | |
JP6435934B2 (ja) | 文書画像処理用のプログラムおよびこのプログラムを用いた画像処理装置ならびに文字認識装置 | |
Xiong et al. | Text detection in stores using a repetition prior | |
CN116092231A (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 |