CN112418180A - 表格数据提取方法、装置、设备及计算机存储介质 - Google Patents
表格数据提取方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN112418180A CN112418180A CN202011461187.7A CN202011461187A CN112418180A CN 112418180 A CN112418180 A CN 112418180A CN 202011461187 A CN202011461187 A CN 202011461187A CN 112418180 A CN112418180 A CN 112418180A
- Authority
- CN
- China
- Prior art keywords
- title
- image
- cell
- data
- cells
- 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 107
- 238000013075 data extraction Methods 0.000 title claims abstract description 35
- 238000003860 storage Methods 0.000 title claims abstract description 24
- 238000001514 detection method Methods 0.000 claims abstract description 52
- 238000003708 edge detection Methods 0.000 claims description 129
- 238000012545 processing Methods 0.000 claims description 39
- 230000015654 memory Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000012015 optical character recognition Methods 0.000 description 4
- 238000011426 transformation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000003702 image correction Methods 0.000 description 3
- 230000035772 mutation Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006740 morphological transformation Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
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/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30176—Document
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供了一种表格数据提取方法、装置、电子设备及计算机存储介质;该方法包括:获取表格图像;对表格图像的表格线进行检测,得到检测结果;根据检测结果划分出多个单元格;根据预先获取的标题图像库,将多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定至少一个标题单元格中的标题文本和至少一个数据单元格中的数据文本;根据至少一个标题单元格中的标题文本和至少一个数据单元格中的数据文本,得到至少一组表格数据,至少一组表格数据中每组表格数据包括至少一个标题文本以及与至少一个标题文本对应的数据文本。
Description
技术领域
本申请涉及金融科技(Fintech)的数据采集技术,涉及但不限于一种表格数据提取方法、装置、电子设备及计算机存储介质。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。
目前,可以采用图像形态学变换方法,识别表格图像的表格框线,进而切分单元格,进而实现表格中的数据提取,然而,相关技术中,在得到单元格之后,是将不同类型的单元格的内容进行统一识别,导致识别出的内容较为杂乱,不利于确定表格中数值的具体含义,不利于针对表格数据进行有针对性的处理。
发明内容
本申请实施例提供一种表格数据提取方法、装置、电子设备及计算机存储介质,可以解决现有技术中不利于针对表格数据进行有针对性的处理的问题。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种表格数据提取方法,所述方法包括:
获取表格图像;
对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;
根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;
根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
在本申请的一些实施例中,所述根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格,包括:
确定所述多个单元格中的各个非空白单元格;在所述各个非空白单元格中,将与所述标题图像库中的标题图像匹配的单元格作为标题单元格;将所述各个非空白单元格中除去标题单元格外的单元格作为数据单元格。
在本申请的一些实施例中,所述方法还包括:
在确定所述各个非空白单元格后,确定所述标题图像库中的标题图像与任意一个所述非空白单元格的哈希值之间的汉明距离;确定满足第一设定条件的标题图像的数量,所述第一设定条件为:标题图像与所述任意一个所述非空白单元格的哈希值之间的汉明距离小于距离阈值;在所述满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定所述任意一个非空白单元格与所述标题图像库中的标题图像匹配。
在本申请的一些实施例中,所述确定所述至少一个标题单元格中的标题文本,包括:
确定图像集合,所述图像集合包括:与所述至少一个标题单元格中任意一个标题单元格匹配的标题图像;
在所述图像集合的标题图像中,确定满足第二设定条件的标题图像,所述第二设定条件为:标题图像与所述任意一个标题单元格的哈希值之间的汉明距离最小;
将所述任意一个标题单元格的标题文本确定为:所述满足第二设定条件的标题图像对应的标题文本。
在本申请的一些实施例中,所述方法还包括:
根据所述检测结果确定所述多个单元格的位置;
所述根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,包括:
根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系;根据所述第一对应关系确定所述多个单元格中所述标题文本与所述数据文本的第二对应关系;
根据所述第二对应关系得到所述至少一组表格数据。
在本申请的一些实施例中,所述根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系,包括:
根据所述多个单元格的位置,在每个数据单元格的同一行内向左查找,直至查找出一个标题单元格;和/或,根据所述多个单元格的位置,在每个数据单元格的同一列内向上查找,直至查找出一个标题单元格;
根据在所述每个数据单元格的同一行和/或同一列内查找出的标题单元格,确定查找出的所述标题单元格与所述每个数据单元格的第一对应关系。
在本申请的一些实施例中,所述对所述表格图像的表格线进行检测,得到检测结果,包括:
对所述表格图像进行边缘检测,得到边缘检测后图像;
使用标准霍夫变换方法对所述边缘检测后图像进行检测,得到多个直线;
根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔;
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段;根据所述边缘检测后图像中各线段,得到所述检测结果。
在本申请的一些实施例中,所述根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,包括:
根据所述多个直线的位置关系,确定所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离;
根据所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔。
在本申请的一些实施例中,所述根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段,包括:
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段的起止点;
根据所述边缘检测后图像中各线段的起止点、以及所述多个直线,确定所述边缘检测后图像中各线段。
本申请实施例提供一种表格数据提取装置,所述装置包括:
获取模块,用于获取表格图像;
第一处理模块,用于对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;
第二处理模块,用于根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;
第三处理模块,用于根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
在本申请的一些实施例中,所述第二处理模块,用于根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格,包括:
确定所述多个单元格中的各个非空白单元格;在所述各个非空白单元格中,将与所述标题图像库中的标题图像匹配的单元格作为标题单元格;将所述各个非空白单元格中除去标题单元格外的单元格作为数据单元格。
在本申请的一些实施例中,所述第二处理模块,还用于:
在确定所述各个非空白单元格后,确定所述标题图像库中的标题图像与任意一个所述非空白单元格的哈希值之间的汉明距离;确定满足第一设定条件的标题图像的数量,所述第一设定条件为:标题图像与所述任意一个所述非空白单元格的哈希值之间的汉明距离小于距离阈值;在所述满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定所述任意一个非空白单元格与所述标题图像库中的标题图像匹配。
在本申请的一些实施例中,所述第二处理模块,用于确定所述至少一个标题单元格中的标题文本,包括:
确定图像集合,所述图像集合包括:与所述至少一个标题单元格中任意一个标题单元格匹配的标题图像;
在所述图像集合的标题图像中,确定满足第二设定条件的标题图像,所述第二设定条件为:标题图像与所述任意一个标题单元格的哈希值之间的汉明距离最小;
将所述任意一个标题单元格的标题文本确定为:所述满足第二设定条件的标题图像对应的标题文本。
在本申请的一些实施例中,所述第一处理模块,还用于根据所述检测结果确定所述多个单元格的位置;
所述第三处理模块,用于根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,包括:
根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系;根据所述第一对应关系确定所述多个单元格中所述标题文本与所述数据文本的第二对应关系;
根据所述第二对应关系得到所述至少一组表格数据。
在本申请的一些实施例中,所述第三处理模块,用于根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系,包括:
根据所述多个单元格的位置,在每个数据单元格的同一行内向左查找,直至查找出一个标题单元格;和/或,根据所述多个单元格的位置,在每个数据单元格的同一列内向上查找,直至查找出一个标题单元格;
根据在所述每个数据单元格的同一行和/或同一列内查找出的标题单元格,确定查找出的所述标题单元格与所述每个数据单元格的第一对应关系。
在本申请的一些实施例中,所述第一处理模块,用于对所述表格图像的表格线进行检测,得到检测结果,包括:
对所述表格图像进行边缘检测,得到边缘检测后图像;
使用标准霍夫变换方法对所述边缘检测后图像进行检测,得到多个直线;
根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔;
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段;根据所述边缘检测后图像中各线段,得到所述检测结果。
在本申请的一些实施例中,所述第一处理模块,用于根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,包括:
根据所述多个直线的位置关系,确定所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离;
根据所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔。
在本申请的一些实施例中,所述第一处理模块,用于根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段,包括:
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段的起止点;
根据所述边缘检测后图像中各线段的起止点、以及所述多个直线,确定所述边缘检测后图像中各线段。
本申请实施例提供一种电子设备,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现上述任意一种表格数据提取方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于被处理器执行时,实现上述任意一种表格数据提取方法。
本申请实施例中,获取表格图像;对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
可以看出,本申请实施例中,可以区分表格图像中标题单元格和数据单元格,并根据标题单元格的标题文本和数据单元格的数据文本,生成至少一组表格数据,由于每组表格数据体现了标题文本与数据文本的对应关系,因而,本申请实施例可以确定标题文本与数据文本的对应关系,进而可以使每组表格数据能够表示标题以及与标题对应的数据,即,可以确定表格数据的数值的具体含义,与现有技术中针对不同类型的单元格的内容进行统一识别的方案相比,有利于在确定表格数据的数值的具体含义的基础上,针对每组表格数据进行针对性的处理。
附图说明
图1是相关技术中提取表格图像的数据的流程示意图;
图2是本申请实施例提供的表格数据提取方法的一个可选的流程图;
图3是本申请实施例中财务报表对应的标题图像库的建立流程示意图;
图4是本申请实施例词汇净利润对应的标题图像;
图5是本申请实施例的表格数据提取装置的一个可选的组成结构示意图;
图6是本申请实施例提供的电子设备的一个可选的组成结构示意图。
具体实施方式
在相关技术中,可以采用图像形态学变换方法提取表格图像的数据;图1为相关技术中提取表格图像的数据的流程示意图,参照图1,该流程可以包括:
步骤101:获取表格图像。
示例性地,上述表格图像可以财务报表的图像,财务报表是反映企业或预算单位一定时期资金、利润状况的会计报表。
步骤102:对表格图像进行表格线检测,得到表格图像的表格线。
步骤103:基于表格图像的表格线切分单元格。
步骤104:采用光学字符识别(Optical Character Recognition,OCR)方法识别出每个单元格中的内容。
步骤105:以文本的形式输出各单元格的内容。
相关技术中,提取表格图像的数据的方案存在以下缺点:
1)在基于表格图像的表格线切分单元格之后,并没有区分单元格的类型,即,没有区分标题单元格与数据单元格,没有维护标题单元格与数据单元格的关系,导致识别内容的输出较为杂乱,无法得到单元格中数值的具体含义,不利于进行表格中数据的存储,并且不利于针对表格中数据进行针对性的处理。
2)相关技术中提取表格图像的数据的方案无法识别表格线的数学性质,例如,无法识别直线起点,直线终点,斜率等属性。当识别出的表格线不完整或者表格线存在中断时,横线与竖线的交点可能会丢失,从而导致切分出的单元格的结构不准确,进而影响表格图像中的数据提取。
针对上述技术问题,提出本申请实施例的技术方案。
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请实施例提供一种表格数据提取方法、装置、电子设备及计算机存储介质,本申请实施例的表格数据提取方法可以应用于终端和/或服务器组成的计算机系统中,并可以与众多其它通用或专用计算系统环境或配置一起操作。这里,终端可以是瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统,等等,服务器可以是服务器计算机系统小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
下面对本申请实施例的表格数据提取方法进行示例性说明。
图2为本申请实施例提供的表格数据提取方法的一个可选的流程图,如图2所示,该流程可以包括:
步骤201:获取表格图像。
在一些实施例中,可以获取特定类型表格的表格图像,特定类型表格可以是财务报表或其它类型的表格,示例性地,财务报表可以是资产负债表、利润表或现金流表。
在一些实施例中,表格图像可以位于本地存储空间或网络中,本申请实施例并不对此进行限定。
在一些实施例中,可以采用截图操作方式或其它方式采集特定类型表格的初始表格图像,然后,针对特定类型表格的初始表格图像进行图像预处理,得到特定类型表格的表格图像。
在一些实施例中,初始表格图像可以记为I0,对初始表格图像I0进行图像预处理后,可以得到特定类型表格的表格图像I1,针对初始表格图像I0的图像预处理流程可以包括图像校正步骤和/或灰度转换步骤。
可以理解地,初始表格图像I0可能存在歪斜,图像的歪斜会影响图像的识别的准确性,针对存在歪斜的初始表格图像I0,可以通过图像校正步骤对初始表格图像I0进行校正,得到校正后图像,校正后图像为不存在歪斜的图像;在一些实施例中,可以采用投影法对初始表格图像I0进行图像校正。
在一些实施例中,初始表格图像I0为包括红绿蓝(Red Green Blue,RGB)三个通道的彩色图像,初始表格图像I0包含的信息量较大,数据维度较高,可以采用平均法换将初始表格图像I0转换为灰度图像,即,将初始表格图像I0中同一个像素点3个通道RGB的值进行平均,得到新像素值,新像素值表示像素点的亮度特征。
这里,采用平均法换将初始表格图像I0转换为灰度图像的过程可以通过公式(1)进行说明。
其中,x和y分别表示初始表格图像I0中的像素点的横坐标和纵坐标,I(x,y)表示像素点(x,y)的新像素值,IR(x,y)表示初始表格图像I0中像素点(x,y)的R通道的值,IG(x,y)表示初始表格图像I0中像素点(x,y)的G通道的值,IB(x,y)表示初始表格图像I0中像素点(x,y)的B通道的值。
在一些实施例中,在获取特定类型表格的初始表格图像或特定类型表格的表格图像后,可以将初始表格图像或表格图像存储于本地存储空间中。
步骤202:对表格图像的表格线进行检测,得到检测结果;根据检测结果划分出多个单元格。
本申请实施例中,上述检测结果为表格图像的表格线;在一些实施例中,可以采用边缘图像检测方法以及霍夫变换方法对表格图像的表格线进行检测,得到检测结果。
这里,边缘图像检测方法用于检测数字图像中亮度变换明显的点;边缘检测方法可以利用边缘的突变性质检测亮度变换明显的点,其基本思想是:通过检测图像只用每个像素点和其邻域的状态,判断该像素点是否位于一个物体的边界上,一个位于物体边界上的像素点,其与邻域像素点的灰度值的变化比较大。示例性地,企业的财务报表图像中的边缘包括文字边缘、表格线边缘。
在一种实现方式中,可以使用Canny边缘检测算子对特定类型表格的表格图像I1进行边缘检测,得到二值化边缘图像I2。
霍夫变换方法是一种特征检测方法,被广泛应用在图像分析、计算机视觉以及数位影像处理。霍夫变换常用来辨别找出物件中的特征,例如线条。
在一些实施例中,可以使用霍夫变换方法进行直线检测,霍夫变换方法检测直线的原理是:将图像中的像素坐标映射到霍夫(参数)空间,设一个像素点在图像空间中的坐标为(x,y),则图像空间中任意一条直线的极坐标表示为公式(2):
ρ=xcosθ+ysinθ (2)
其中,ρ表示像素点(x,y)的极径,θ表示像素点(x,y)的极角。
图像中的任意一个像素点(x',y')的在霍夫空间中均可以被映射为公式(3)表示的曲线。
ρ=x'cosθ+y'sinθ (3)
基于上述记载的内容,可以将图像中p个像素点进行变换,得到霍夫空间中的p条曲线,p为大于或等于2的整数;在这p个像素点共线的情况下,则霍夫空间中的p条曲线会相较于同一点,根据相交点的坐标以及上述公式(2),便可以还原出相应的直线,即实现直线检测。
本申请实施例中,在得到检测结果之后,可以根据检测结果中表格线的位置,确定出每个单元格的线条的位置,从而划分出各个单元格;可以理解地,在划分出多个单元格之后,可以确定每个单元格的各个线条的起始点和终点。
步骤203:根据预先获取的标题图像库,将多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定至少一个标题单元格中的标题文本和至少一个数据单元格中的数据文本。
在本申请的一些实施例中,标题图像库可以包括至少一个标题图像;示例性地,如果获取的表格图像为特定类型表格的表格图像,则标题图像库可以包括特定类型表格中的至少一个标题图像。
本申请实施例中,对于同一类型的不同表格,表格中的标题内容相似度较高,本申请实施例可以基于这一特点预先建立标题图像库;示例性地,企业的财务报表的单元格可以分为标题单元格与数据单元格,标题单元格标识一个指标,数据单元格是标题单元格指标的值。企业的财务报表的编写有一定的规范,对于企业的财务报表来说,每家企业的财务报表的数据域不同(即数据单元格的内容不同),但是标题域相似度很高(即标题单元格的内容的相似度较高);例如,对于资产负债表中的指标:应收账款,不同企业的资产负债表中都会使用应收账款这一标题。
在本申请的一些实施例中,可以预先针对特定类型表格的标题文本制作标题图像库;在特定类型表格为财务报表时,参照图3,财务报表对应的标题图像库的建立流程可以包括:
步骤A1:收集标准词汇。
在本申请的一些实施例中,可以根据企业的财务报表的数据编制规范,收集企业财务报表的标准词汇;例如,资产负债表的标准词汇包括:货币资金、开发支出、应付账款、预付账款等词汇,利润表的标准词汇包括:管理费用、财务费用、营业外收入、营业外支出等词汇;现金流表的标准词汇包括:净利润、固定资产折旧、无形资产摊销、投资损失等词汇。
步骤A2:标准词汇分类。
本步骤的一种实现方式可以是:将收集到的标准词汇按照表格类型进行分类,可以针对标准词汇附加标签,标签表示标准词汇所属的表格类型;例如,货币资金所属表格为资产负债表,则货币资金的标签为资产负债表;无形资产摊销所属表格为现金流表,则无形资产摊销的标签为现金流表。
步骤A3:标题图像制作。
在本申请的一些实施例中,可以针对收集到的标准词汇制作对应的标题图像,参照图4,示出了词汇净利润对应的标题图像。
可以理解地,在上述标准词汇为表格中标题单元格内的标题文本时,基于上述步骤A1至A3,可以建立标题文本与标题图像的对应关系。
在本申请的一些实施例中,参照图3,在执行步骤A3之后,可以执行步骤A4。
步骤A4:生成标题图像的哈希(Hash)值。
在本申请的一些实施例中,可以针对制作的每个标题图像,使用感知哈希(phash)算法生成长度为64位的哈希值;感知哈希算法可以为每个数字图像生成一个哈希值,以便于计算不同图像的相似度。
在执行步骤A4之后,每个标题图像可以包括如下三个维度的信息:哈希值、标题文本内容、标题图像对应的标题文本所属表格类型;在确定上述三个维度的信息的任意两个维度的信息之后,可以获知另外一个维度的信息。
在本申请的一些实施例中,不同图像之间的相似度可以根据不同图像的哈希值之间的汉明距离确定;因而,生成标题图像的哈希值后,有利于后续根据标题图像的哈希值确定标题图像与其它图像的相似度。
本申请实施例中,可以利用制作的各个标题图像组成标题图像库,从而实现标题图像库的制作。
本申请实施例中,在上述特定类型表格不是财务报表时,也可以参照步骤A1至A4的流程,制作标题图像库,这里不再赘述。
本申请的一些实施例中,上述根据预先获取的标题图像库,将多个单元格划分为至少一个标题单元格和至少一个数据单元格,可以包括:
确定多个单元格中的各个非空白单元格;在各个非空白单元格中,将与标题图像库中的标题图像匹配的单元格作为标题单元格;将各个非空白单元格中除去标题单元格外的单元格作为数据单元格。
在一种实现方式中,在划分出多个单元格后,可以使用投影法将各个单元格的内容区域提取出来;可以采用水平投影和竖直投影,将投影图中峰值突变的区域提取出来,如果单元格对应的投影图像中没有峰值突变区域,则确定该单元格是空白单元格;反之,如果单元格对应的投影图像中有峰值突变区域,则确定该单元格为非空白单元格。本申请实施例中,对于空白单元格可以进行标记,针对空白单元格无需进行任何处理。
在确定多个单元格中的非空白单元格后,可以判断每个非空白单元格是否与标题图像库中的标题图像匹配,如果非空白单元格与标题图像库中的标题图像匹配,则非空白单元格为标题单元格;如果非空白单元格与标题图像库中的标题图像不匹配,则非空白单元格为数据单元格。
可以看出,本申请实施例可以准确识别划分出的单元格的类型,实现标题单元格和数据单元格的区分,有利于确定标题单元格和数据单元格中内容的准确含义,进而有利于针对不同类型单元格的数据进行针对性的处理。
步骤204:根据至少一个标题单元格中的标题文本和至少一个数据单元格中的数据文本,得到至少一组表格数据,至少一组表格数据中每组表格数据包括至少一个标题文本以及与至少一个标题文本对应的数据文本。
本申请实施例中,还可以根据检测结果确定多个单元格的位置。
相应地,本步骤的一种实现方式可以是:根据多个单元格的位置确定多个单元格中标题单元格与数据单元格的第一对应关系;根据第一对应关系确定多个单元格中标题文本与数据文本的第二对应关系;根据第二对应关系得到所述至少一组表格数据。
本申请的一些实施例中,可以将每组表格数据以键值对的形式进行存储,在键值对中,键表示一组表格数据中的标题文本,值表示一组表格数据中的数据文本。
本申请的一些实施例中,还可以将每组表格数据以关系数据库表的形式进行存储。
在实际应用中,步骤201至步骤204可以基于电子设备的处理器实现,上述处理器可以是特定用途集成电路(Application Specific Integrated Circuit,A SIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital SignalProcessing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,F PGA)、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本申请实施例不作限制。
可以看出,本申请实施例中,可以区分表格图像中标题单元格和数据单元格,并根据标题单元格的标题文本和数据单元格的数据文本,生成至少一组表格数据,由于每组表格数据体现了标题文本与数据文本的对应关系,因而,本申请实施例可以确定标题文本与数据文本的对应关系,进而可以使每组表格数据能够表示标题以及与标题对应的数据,即,可以确定表格数据的数值的具体含义,与现有技术中针对不同类型的单元格的内容进行统一识别的方案相比,有利于在确定表格数据的数值的具体含义的基础上,针对每组表格数据进行针对性的处理。
本申请的一些实施例中,上述对表格图像的表格线进行检测,得到检测结果的实现方式可以是:
对表格图像进行边缘检测,得到边缘检测后图像;使用标准霍夫变换方法对所述边缘检测后图像进行检测,得到多个直线;根据多个直线的位置关系,确定边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔;根据边缘检测后图像中最短线段长度和边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对边缘检测后图像进行检测,得到边缘检测后图像中各线段;根据所述边缘检测后图像中各线段,得到所述检测结果。
可以理解地,采用标准霍夫变换方法可以检测出图像中的直线,采用标准霍夫变换方法检测出的线条会自动延伸,导致构建出的表格线与图像中真实表格线存在较为明显的区别,即,构建出的表格线不符合实际逾期,例如,可能导致真实表格中不相交的表格线在经延伸后出现相交的情况。
针对构建出的表格线不符合实际逾期的问题,本申请实施例提出了依次使用标准霍夫变换方法和概率霍夫变换方法进行表格线检测的方案。
概率霍夫变换方法是标准霍夫变换方法的改进方法,采用概率霍夫变换方法可以提取图像中线段并确定线段的起止点,但是,为了采用概率霍夫变换方法,需要获取以下两个额外的参数:最短线段长度(minLineLength)和线段间允许的最大间隔(maxLineGap)。这里,在表格图像中,线段间允许的最大间隔为上述相邻平行线段间的最大间隔。
可以看出,与现有技术仅通过一次标准霍夫变换的方案相比,本申请实施例可以在进行一次标准霍夫变换,基于图像中最短线段长度和边缘检测后图像中相邻平行线段间的最大间隔,通过概率霍夫变化进行图像检测,从而确定出边缘检测后图像中各线段以及边缘检测后图像中各线段的起止点,即,能够准确且完整地识别图像中的表格线,进而有利于根据表格线进行准确地单元格划分。
本申请的一些实施例中,上述根据多个直线的位置关系,确定边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔的实现方式可以是:
根据多个直线的位置关系,确定多个直线的各个水平线之间的相邻距离、以及多个直线的各个竖直线之间的相邻距离;根据多个直线的各个水平线之间的相邻距离、以及多个直线的各个竖直线之间的相邻距离,确定边缘检测后图像中最短线段长度和边缘检测后图像中相邻平行线段间的最大间隔。
可以看出,本申请实施例可以标准霍夫变换的检测结果,确定边缘检测后图像中最短线段长度和相邻平行线段间的最大间隔,进而,有利于采用概率变换方法检测出图像中各线段以及边缘检测后图像中各线段的起止点。
在一些实施例中,可以根据边缘检测后图像中最短线段长度和边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段的起止点;根据边缘检测后图像中各线段的起止点、以及上述多个直线,确定边缘检测后图像中各线段。
可以理解地,根据上述记载的内容,在相关技术中,如果仅采用标准霍夫变换方法检测图像中的直线,检测出的线条会自动延伸,可能导致真实表格中不相交的表格线在经延伸后出现相交的情况;而在本申请实施例中,可以根据边缘检测后图像中最短线段长度和相邻平行线段间的最大间隔,确定出边缘检测后图像中各线段的起止点,进而确定边缘检测后图像中各线段,通过确定边缘检测后图像中各线段,可以解决相关技术中检测出的线条会自动延伸的问题。
本申请的一些实施例中,可以在上述二值化边缘图像I2中,定义图像左上角为坐标轴原点,向下方向为y轴正方向,向右为x轴正方向,使用标准霍夫变换方法对二值化边缘图像I2进行检测,可以得到多个直线;多个直线中水平线的集合为(V1,…,Vn),其中,V1至Vn分别表示多个直线中按照上下顺序依次排列的第1个水平线至第n条水平线,n为大于1的整数。多个直线中竖直线的集合为(H1,…,Hm),其中,H1至Hm分别表示多个直线中按照左右顺序依次排列的第1个竖直线至第m条竖直线,m为大于1的整数。
在确定多个直线中水平线的集合后,可以计算任意两个相邻水平线的垂直距离,得到相邻水平线的垂直距离的集合h,h=(h1,..,hn-1),其中,在a依次取1至n-1的情况下,ha表示第a个水平线至第a+1个水平线的垂直距离。
在确定多个直线中竖直线的集合后,可以计算任意两个相邻竖直线的水平距离,得到相邻竖直线的水平距离的集合w,w=(w1,..,wm-1),其中,在b依次取1至m-1的情况下,wb表示第b个竖直线至第b+1个竖直线的水平距离。
确定集合h中各元素的最大值hmax和最小值hmin,确定集合w中各元素的最大值wmax和最小值wmin;根据表格的结构可以确定:集合h中各元素的最小值hmin为单元格最小高度,集合w中各元素的最小值wmin为单元格最小长度,hmin和wmin中的较小值为上述最短线段长度,基于最短线段长度并采用概率霍夫变换方法进行图像检测,有利于检测到图像中的所有单元格的线条。
根据表格的结构可以确定:集合h中各元素的最大值hmax为单元格最大高度,集合w中各元素的最大值wmax为单元格最大长度,hmin和wmin中的较大值为上述相邻平行线段间的最大间隔;基于相邻平行线段间的最大间隔并采用概率霍夫变换方法进行图像检测,有利于使图像中的不同单元格的线条保持独立,不会出现线条延伸相交的情况。
在得到二值化边缘图像I2中最短线段长度和相邻平行线段间的最大间隔后,可以采用概率霍夫变换方法对二值化边缘图像I2进行检测,得到表格图像中所有线段以及所有线段的起止点,即得出检测结果;示例性地,在上述检测结果中,第i个水平线段可以记为(hi,si,ei),其中,hi表示第i个水平线段在y轴的截距,si表示第i个水平线段的起点在x轴的坐标,ei表示第i个水平线段的终止点在x轴的坐标;在上述检测结果中,第j个竖直线段可以记为(wj,tj,dj),其中,wj表示第j个竖直线段在x轴的截距,tj表示第j个竖直线段的起点在y轴的坐标,dj表示第j个竖直线段的终止点在y轴的坐标。
在本申请的一些实施例中,在得到检测结果后,可以将检测结果中的各个表格线在初始表格图像I0或表格图像I1标出,从而得出图像I3。
在本申请的一些实施例中,在得出图像I3后,可以生成图像I3的一个副本图像,然后对副本图像按照表格线进行切分,得到表格中每个单元格的图像;在对副本图像进行切分时,可以首先按照行进行切分,得到行集合(L1,…,Ln),其中,L1至Ln分别表示第1行至第n行图像。然后,可以针对每行图像进行单元格切分,对第k行进行单元格切分可以得到单元格集合(Ck1,…,Ckm)。对于单元格Ckj左上角、右上角、右下角、左下角四个顶点坐标依次为(wj,hk)、(wj+1,hk)、(wj+1,hk+1)和(wj,hk+1)。基于上述记载的内容,可以确定出各个单元格的顶点的横坐标和纵坐标。
可以看出,本申请实施例可以使用边缘检测并结合两次霍夫变换的检测方式,准确地识别出表格图像中的表格线,并可以确定表格线的数学性质,如,可以确定表格线中线段起点、终止点和斜率等属性,即,与相关技术进行一次标准霍夫变换的检测方案相比,本申请实施例可以更好地还原表格结构,得出每个单元格在表格图像中的具体位置,即可以定位出每个单元格的准确位置。
本申请的一些实施例中,确定非空白单元格与标题图像库中的标题图像是否匹配的实现方式可以是:
在确定各个非空白单元格后,确定标题图像库中的标题图像与任意一个非空白单元格的哈希值之间的汉明距离;确定满足第一设定条件的标题图像的数量,第一设定条件为:标题图像与上述任意一个所述非空白单元格的哈希值之间的汉明距离小于距离阈值;在满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定上述任意一个非空白单元格与标题图像库中的标题图像匹配;在满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定上述任意一个非空白单元格与标题图像库中的标题图像不匹配。
本申请实施例中,距离阈值和数量阈值可以实际情况预先设置,示例性地,距离阈值可以经验性地设置为8、9、10、11或12;数量阈值可以为标题图像库中的标题图像的数量与设定比例的乘积,示例性地,设定比例可以是80%、85%、90%等。
在实际实施时,可以首先确定非空白单元格的图像的哈希值,作为一种是实现方式,可以采用上述感知哈希算法计算非空白单元格的图像的哈希值。在非空白单元格的图像的哈希值之后,计算非空白单元格的图像的哈希值与标题图像库中各个标题图像的哈希值之间的汉明距离,从而确定满足第一设定条件的标题图像的数量。
可以看出,本申请实施例可以根据非空白单元格与标题图像的哈希值之间的汉明距离,较为容易地判断非空白单元格与标题图像库中的标题图像是否匹配。
本申请的一些实施例中,确定上述至少一个标题单元格中的标题文本的实现方式可以是:
确定图像集合,图像集合包括:与至少一个标题单元格中任意一个标题单元格匹配的标题图像;
在图像集合的标题图像对应的标题文本中,确定上述任意一个标题单元格的标题文本;所图像集合的标题图像对应的标题文本是预先确定的。
可见,本申请实施例可以根据与任意一个标题单元格匹配的标题图像,以及标题图像对应的标题文本,确定出任意一个标题单元格的标题文本,较为容易实现。
本申请的一些实施例中,在图像集合的标题图像对应的标题文本中,确定上述任意一个标题单元格的标题文本的实现方式可以是:
在图像集合的标题图像中,确定满足第二设定条件的标题图像,第二设定条件为:标题图像与任意一个标题单元格的哈希值之间的汉明距离最小。
将任意一个标题单元格的标题文本确定为:满足第二设定条件的标题图像对应的标题文本。
在实际实施时,可以在与上述任意一个标题单元格匹配的标题图像中,选取与该标题单元格的哈希值之间的汉明距离最小的标题图像,根据选取的标题图像对应的标题文本,确定上述任意一个标题单元格的标题文本。
可见,本申请实施例可以根据标题图像与标题单元格的哈希值之间的汉明距离,选择与标题单元格最相似的标题图像,进而可以较为准确地得出标题单元格的标题文本。
在另一些实施例中,也可以采用OCR方法识别标题单元格中的图像,得到标题单元格的标题文本。
在本申请的一些实施例中,可以采用OCR方法识别数据单元格中的图像,得到数据单元格的数据文本。
本申请的一些实施例中,确定上述第一对应关系的实现方式可以是:
根据上述多个单元格的位置,在每个数据单元格的同一行内向左查找,直至查找出一个标题单元格;和/或,根据上述多个单元格的位置,在每个数据单元格的同一列内向上查找,直至查找出一个标题单元格;
根据在每个数据单元格的同一行和/或同一列内查找出的标题单元格,确定查找出的标题单元格与每个数据单元格的第一对应关系。
下面参照表1和表2所示的表格结构图,示例性地说明如何确定上述第一对应关系。
表1
标题 | 数据 | 标题 | 数据 |
标题 | 数据 | 标题 | 数据 |
标题 | 数据 | 标题 | 数据 |
标题 | 数据 | 标题 | 数据 |
标题 | 数据 | 标题 | 数据 |
表1表示只有左标题的表格结构,对于表1所示的表格结构,以每个数据单元格为基准单元格,向左在同一行找到相邻的标题单元格,则查找到的相邻的标题单元格与基准单元格对应。
表2
标题 | 标题 | 标题 | 标题 | ||
标题 | 数据 | 数据 | 标题 | 数据 | 数据 |
标题 | 数据 | 数据 | 标题 | 数据 | 数据 |
标题 | 数据 | 数据 | 标题 | 数据 | 数据 |
标题 | 数据 | 数据 | 标题 | 数据 | 数据 |
标题 | 数据 | 数据 | 标题 | 数据 | 数据 |
表2表示同时具有左标题和上标题的表格结构,对于表2所示的表格结构,首先,以每个数据单元格为基准单元格,向左在同一行找到相邻的标题单元格,则查找到的相邻的标题单元格与基准单元格对应。然后,以每个数据单元格为基准单元格,向上述在同一列找到相邻的标题单元格,则查找到的相邻的标题单元格与基准单元格对应。在行方向和列方向上查找到的相邻的标题单元格可以共同决定基准单元格的含义。
需要说明的是,表1和表2所示的表格结构仅仅是本申请实施例的两种示例性的表格结构,本申请实施例并不局限于此。
综上,本申请实施例可以根据标题图像库的标题图像,对划分出的各个单元格进行区分,并且可以根据标题单元格和数据单元格的位置关系,较为容易地确定出标题单元格与数据单元格的对应关系,有利于使输出的每组表格数据具有明确的含义,便于对每组表格数据进行针对性处理。
在前述实施例提出的表格数据提取方法的基础上,本申请实施例还提出了一种表格数据提取装置;图5为本申请实施例的表格数据提取装置的一个可选的组成结构示意图,如图5所示,该表格数据提取装置500可以包括:
获取模块501,用于获取表格图像;
第一处理模块502,用于对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;
第二处理模块503,用于根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;
第三处理模块504,用于根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
在本申请的一些实施例中,所述第二处理模块503,用于根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格,包括:
确定所述多个单元格中的各个非空白单元格;在所述各个非空白单元格中,将与所述标题图像库中的标题图像匹配的单元格作为标题单元格;将所述各个非空白单元格中除去标题单元格外的单元格作为数据单元格。
在本申请的一些实施例中,所述第二处理模块503,还用于:
在确定所述各个非空白单元格后,确定所述标题图像库中的标题图像与任意一个所述非空白单元格的哈希值之间的汉明距离;确定满足第一设定条件的标题图像的数量,所述第一设定条件为:标题图像与所述任意一个所述非空白单元格的哈希值之间的汉明距离小于距离阈值;在所述满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定所述任意一个非空白单元格与所述标题图像库中的标题图像匹配。
在本申请的一些实施例中,所述第二处理模块503,用于确定所述至少一个标题单元格中的标题文本,包括:
确定图像集合,所述图像集合包括:与所述至少一个标题单元格中任意一个标题单元格匹配的标题图像;
在所述图像集合的标题图像中,确定满足第二设定条件的标题图像,所述第二设定条件为:标题图像与所述任意一个标题单元格的哈希值之间的汉明距离最小;
将所述任意一个标题单元格的标题文本确定为:所述满足第二设定条件的标题图像对应的标题文本。
在本申请的一些实施例中,所述第一处理模块502,还用于根据所述检测结果确定所述多个单元格的位置;
所述第三处理模块,用于根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,包括:
根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系;根据所述第一对应关系确定所述多个单元格中所述标题文本与所述数据文本的第二对应关系;
根据所述第二对应关系得到所述至少一组表格数据。
在本申请的一些实施例中,所述第三处理模块504,用于根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系,包括:
根据所述多个单元格的位置,在每个数据单元格的同一行内向左查找,直至查找出一个标题单元格;和/或,根据所述多个单元格的位置,在每个数据单元格的同一列内向上查找,直至查找出一个标题单元格;
根据在所述每个数据单元格的同一行和/或同一列内查找出的标题单元格,确定查找出的所述标题单元格与所述每个数据单元格的第一对应关系。
在本申请的一些实施例中,所述第一处理模块502,用于对所述表格图像的表格线进行检测,得到检测结果,包括:
对所述表格图像进行边缘检测,得到边缘检测后图像;
使用标准霍夫变换方法对所述边缘检测后图像进行检测,得到多个直线;
根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔;
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段;根据所述边缘检测后图像中各线段,得到所述检测结果。
在本申请的一些实施例中,所述第一处理模块502,用于根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,包括:
根据所述多个直线的位置关系,确定所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离;
根据所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔。
在本申请的一些实施例中,所述第一处理模块502,用于根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段,包括:
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段的起止点;
根据所述边缘检测后图像中各线段的起止点、以及所述多个直线,确定所述边缘检测后图像中各线段。
在实际应用中,获取模块501、第一处理模块502、第二处理模块503和第三处理模块504均可以利用电子设备的处理器实现,上述处理器可以是ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本申请实施例不作限制。
需要说明的是,以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的表格数据提取方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是终端、服务器等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
对应地,本申请实施例再提供一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,该计算机可执行指令用于实现本申请实施例提供的任意一种表格数据提取方法。
相应的,本申请实施例再提供一种计算机存储介质,所述计算机存储介质上存储有计算机可执行指令,该计算机可执行指令用于实现上述实施例提供的任意一种表格数据提取方法。
本申请实施例还提供一种电子设备,图6为本申请实施例提供的电子设备的一个可选的组成结构示意图,如图6所示,所述电子设备600包括:
存储器601,用于存储可执行指令;
处理器602,用于执行所述存储器601中存储的可执行指令时,实现上述任意一种表格数据提取方法。
上述处理器602可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。
上述计算机可读存储介质/存储器可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本申请实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得设备自动测试线执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种表格数据提取方法,其特征在于,所述方法包括:
获取表格图像;
对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;
根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;
根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
2.根据权利要求1所述的表格数据提取方法,其特征在于,所述根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格,包括:
确定所述多个单元格中的各个非空白单元格;在所述各个非空白单元格中,将与所述标题图像库中的标题图像匹配的单元格作为标题单元格;将所述各个非空白单元格中除去标题单元格外的单元格作为数据单元格。
3.根据权利要求2所述的表格数据提取方法,其特征在于,所述方法还包括:
在确定所述各个非空白单元格后,确定所述标题图像库中的标题图像与任意一个所述非空白单元格的哈希值之间的汉明距离;确定满足第一设定条件的标题图像的数量,所述第一设定条件为:标题图像与所述任意一个所述非空白单元格的哈希值之间的汉明距离小于距离阈值;在所述满足第一设定条件的标题图像的数量大于数量阈值的情况下,确定所述任意一个非空白单元格与所述标题图像库中的标题图像匹配。
4.根据权利要求3所述的表格数据提取方法,其特征在于,所述确定所述至少一个标题单元格中的标题文本,包括:
确定图像集合,所述图像集合包括:与所述至少一个标题单元格中任意一个标题单元格匹配的标题图像;
在所述图像集合的标题图像中,确定满足第二设定条件的标题图像,所述第二设定条件为:标题图像与所述任意一个标题单元格的哈希值之间的汉明距离最小;
将所述任意一个标题单元格的标题文本确定为:所述满足第二设定条件的标题图像对应的标题文本。
5.根据权利要求1至4任一项所述的表格数据提取方法,其特征在于,所述方法还包括:
根据所述检测结果确定所述多个单元格的位置;
所述根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,包括:
根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系;根据所述第一对应关系确定所述多个单元格中所述标题文本与所述数据文本的第二对应关系;
根据所述第二对应关系得到所述至少一组表格数据。
6.根据权利要求5所述的表格数据提取方法,其特征在于,所述根据所述多个单元格的位置确定所述多个单元格中所述标题单元格与所述数据单元格的第一对应关系,包括:
根据所述多个单元格的位置,在每个数据单元格的同一行内向左查找,直至查找出一个标题单元格;和/或,根据所述多个单元格的位置,在每个数据单元格的同一列内向上查找,直至查找出一个标题单元格;
根据在所述每个数据单元格的同一行和/或同一列内查找出的标题单元格,确定查找出的所述标题单元格与所述每个数据单元格的第一对应关系。
7.根据权利要求1所述的表格数据提取方法,其特征在于,所述对所述表格图像的表格线进行检测,得到检测结果,包括:
对所述表格图像进行边缘检测,得到边缘检测后图像;
使用标准霍夫变换方法对所述边缘检测后图像进行检测,得到多个直线;
根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔;
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段;根据所述边缘检测后图像中各线段,得到所述检测结果。
8.根据权利要求7所述的表格数据提取方法,其特征在于,所述根据所述多个直线的位置关系,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,包括:
根据所述多个直线的位置关系,确定所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离;
根据所述多个直线的各个水平线之间的相邻距离、以及所述多个直线的各个竖直线之间的相邻距离,确定所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔。
9.根据权利要求7或8所述的表格数据提取方法,其特征在于,所述根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段,包括:
根据所述边缘检测后图像中最短线段长度和所述边缘检测后图像中相邻平行线段间的最大间隔,并采用概率霍夫变换方法对所述边缘检测后图像进行检测,得到所述边缘检测后图像中各线段的起止点;
根据所述边缘检测后图像中各线段的起止点、以及所述多个直线,确定所述边缘检测后图像中各线段。
10.一种表格数据提取装置,其特征在于,所述装置包括:
获取模块,用于获取表格图像;
第一处理模块,用于对所述表格图像的表格线进行检测,得到检测结果;根据所述检测结果划分出多个单元格;
第二处理模块,用于根据预先获取的标题图像库,将所述多个单元格划分为至少一个标题单元格和至少一个数据单元格;确定所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本;
第三处理模块,用于根据所述至少一个标题单元格中的标题文本和所述至少一个数据单元格中的数据文本,得到至少一组表格数据,所述至少一组表格数据中每组表格数据包括至少一个标题文本以及与所述至少一个标题文本对应的数据文本。
11.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至9任一项所述的表格数据提取方法。
12.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至9任一项所述的表格数据提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011461187.7A CN112418180A (zh) | 2020-12-11 | 2020-12-11 | 表格数据提取方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011461187.7A CN112418180A (zh) | 2020-12-11 | 2020-12-11 | 表格数据提取方法、装置、设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112418180A true CN112418180A (zh) | 2021-02-26 |
Family
ID=74775589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011461187.7A Pending CN112418180A (zh) | 2020-12-11 | 2020-12-11 | 表格数据提取方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112418180A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884764A (zh) * | 2021-03-24 | 2021-06-01 | 深圳前海微众银行股份有限公司 | 提取图像中地块的方法、装置、电子设备及存储介质 |
WO2022206965A1 (zh) * | 2021-04-02 | 2022-10-06 | 上海肇观电子科技有限公司 | 表格图片的识别方法、播报方法、电子设备和存储介质 |
CN115840539A (zh) * | 2023-01-31 | 2023-03-24 | 天津南大通用数据技术股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN116932612A (zh) * | 2023-07-31 | 2023-10-24 | 杭州元声象素科技有限公司 | 一种基层社会治理智能数据处理系统 |
-
2020
- 2020-12-11 CN CN202011461187.7A patent/CN112418180A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884764A (zh) * | 2021-03-24 | 2021-06-01 | 深圳前海微众银行股份有限公司 | 提取图像中地块的方法、装置、电子设备及存储介质 |
WO2022206965A1 (zh) * | 2021-04-02 | 2022-10-06 | 上海肇观电子科技有限公司 | 表格图片的识别方法、播报方法、电子设备和存储介质 |
CN115840539A (zh) * | 2023-01-31 | 2023-03-24 | 天津南大通用数据技术股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN115840539B (zh) * | 2023-01-31 | 2023-05-16 | 天津南大通用数据技术股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN116932612A (zh) * | 2023-07-31 | 2023-10-24 | 杭州元声象素科技有限公司 | 一种基层社会治理智能数据处理系统 |
CN116932612B (zh) * | 2023-07-31 | 2024-05-10 | 杭州元声象素科技有限公司 | 一种基层社会治理智能数据处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112418180A (zh) | 表格数据提取方法、装置、设备及计算机存储介质 | |
US8965127B2 (en) | Method for segmenting text words in document images | |
EP2808827A1 (en) | System and method for OCR output verification | |
CN104298982A (zh) | 一种文字识别方法及装置 | |
WO2022156178A1 (zh) | 图像目标对比方法、装置、计算机设备及可读存储介质 | |
CN110210297B (zh) | 报关单图像中文字定位与提取的方法 | |
US10482323B2 (en) | System and method for semantic textual information recognition | |
US20140198968A1 (en) | Duplicate check image resolution | |
CN113837151B (zh) | 表格图像处理方法、装置、计算机设备及可读存储介质 | |
US11436852B2 (en) | Document information extraction for computer manipulation | |
CN111858977B (zh) | 票据信息采集方法、装置、计算机设备和存储介质 | |
CN111368632A (zh) | 一种签名识别方法及设备 | |
US11615244B2 (en) | Data extraction and ordering based on document layout analysis | |
CN112232336A (zh) | 一种证件识别方法、装置、设备及存储介质 | |
CN111738979A (zh) | 证件图像质量自动检查方法及系统 | |
CN115620325A (zh) | 表格结构的还原方法、装置、电子设备及存储介质 | |
CN112149401A (zh) | 一种基于ocr的文档对比识别方法和系统 | |
Andreeva et al. | Comparison of scanned administrative document images | |
CN112445849B (zh) | 一种报表分析方法及装置 | |
CN111832497B (zh) | 一种基于几何特征的文本检测后处理方法 | |
WO2019140641A1 (zh) | 信息处理方法、系统、云处理设备以及计算机程序产品 | |
CN112784932A (zh) | 一种字体识别方法、装置和存储介质 | |
CN117076455A (zh) | 一种基于智能识别的保单结构化存储方法、介质及系统 | |
CN112288045B (zh) | 一种印章真伪判别方法 | |
CN112348022B (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 |