CN107689070B - 图表数据结构化提取方法、电子设备及计算机可读存储介质 - Google Patents
图表数据结构化提取方法、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107689070B CN107689070B CN201710775380.XA CN201710775380A CN107689070B CN 107689070 B CN107689070 B CN 107689070B CN 201710775380 A CN201710775380 A CN 201710775380A CN 107689070 B CN107689070 B CN 107689070B
- Authority
- CN
- China
- Prior art keywords
- chart
- information
- area
- picture
- characters
- 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.)
- Active
Links
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/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Character Input (AREA)
Abstract
本发明公开了一种图表数据结构化提取方法,该方法包括步骤:获取指定文档中的图表及每张图表的位置信息;根据每张图表的位置信息,提取每张图表的标题和上下文文字信息;根据上下文文字的位置信息,对每张图表的上下文文字进行拼接,并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据。本发明可以提高图表数据提取的完整度。
Description
技术领域
本发明涉及计算机信息技术领域,尤其涉及一种图表数据结构化提取方法、电子设备及计算机可读存储介质。
背景技术
现有针对PDF文档的信息提取大多仅限于文字信息,而对于图表信息,也仅是提取出单独的图表,没有对图表的相关信息也进行统一抽取。单独的图表在脱离了其特定语义环境后可能会给人一种不知所云的感觉,这一点非常不利于对图表信息的进一步分析与利用。故,现有技术中的图表数据提取方法设计不够合理,亟需改进。
发明内容
有鉴于此,本发明提出一种图表数据结构化提取方法、电子设备及计算机可读存储介质,通过结构化地提取包括图表本身、图表标题及其上下文文字信息的图表数据,形成对图表信息的完整表达,便于其它应用接口后续对图表信息进行进一步地分析与利用。
首先,为实现上述目的,本发明提出一种电子设备,所述电子设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的图表数据结构化提取系统,所述图表数据结构化提取系统被所述处理器执行时实现如下步骤:
获取指定文档中的图表及每张图表的位置信息;
根据每张图表的位置信息,提取每张图表的标题和上下文文字信息;及
根据上下文文字的位置信息,对每张图表的上下文文字进行拼接,并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据。
优选地,所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域;
于每张图表的相邻区域内,从每张图表的位置向上扫描预定数量行数,扫描获取的文字信息记录为每张图表的标题;及
于每张图表的相邻区域内,从每张图表的位置向上、向下扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息。
优选地,所述获取指定文档中的图表及每张图表的位置信息包括:
获取指定文档中所有文字的位置信息,并根据所有文字的位置信息获取该指定文档中的文字分布信息;
分析该指定文档中的文字分布信息,判断出该指定文档中文字分布密度较低的区域、或/及无文字分布的区域,并将所述文字分布密度较低的区域、或/及无文字分布的区域标记为候选图表区域;及
将所述标记的候选图表区域转换为图片,并从转换后的图片中筛选出包含图表信息的图片,作为该指定文档中抽取出的图表,并记录下每张图表的位置信息。
优选地,所述判断出该指定文档中文字分布密度较低的区域包括:若一行文字的长度小于第一阀值,则判断出该行文字分布密度较低,并清洗该行文字;及
所述判断出该指定文档中无文字分布的区域包括:对该指定文档中每一页从上到下进行扫描,若超过第二阀值宽度的区域没有扫描到文字,则判断出该区域为无文字分布的区域。
优选地,所述从转换后的图片中筛选出包含图表信息的图片包括:
对该转换后的图片进行灰度处理,将该转换后的图片转换为灰度图;
按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值,则判定该行包含有具体内容;及
统计包含有具体内容的行的数量,若包含有具体内容的行数大于或等于设定阈值,则判定该转换后的图片为一张包含图表信息的图片。
此外,为实现上述目的,本发明还提供一种图表数据结构化提取方法,该方法应用于电子设备,所述方法包括:
获取指定文档中的图表及每张图表的位置信息;
根据每张图表的位置信息,提取每张图表的标题和上下文文字信息;及
根据上下文文字的位置信息,对每张图表的上下文文字进行拼接,并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据。
优选地,所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域;
于每张图表的相邻区域内,从每张图表的位置向上扫描预定数量行数,扫描获取的文字信息记录为每张图表的标题;及
于每张图表的相邻区域内,从每张图表的位置向上、向下扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息。
优选地,所述获取指定文档中的图表及每张图表的位置信息包括:
获取指定文档中所有文字的位置信息;
针对该指定文档中的每张页面,生成一张与该指定文档页面相同大小的空白图片,然后根据该页面中所有文字的位置信息,将该页面中所有文字转换为该空白图片中的像素点,并对该空白图片进行渲染;及
将所述渲染后的图片中的空白区域标记为候选图表区域,并从该候选图表区域中抽取图表信息,作为该指定文档页面抽取出的图表。
优选地,所述对该空白图片进行渲染包括:
针对该空白图片中的所有像素点位置,将有文字占据的像素点位置渲染为黑色,没有文字占据的像素点位置保持白色;及
所述获取指定文档中的图表及每张图表的位置信息还包括:
通过图像形态学处理方法对所述渲染后的图片进行处理,将所述渲染后的图片中的文字信息界限显著化。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有图表数据结构化提取系统,所述图表数据结构化提取系统可被至少一个处理器执行,以使所述至少一个处理器执行如上述的图表数据结构化提取方法的步骤。
相较于现有技术,本发明所提出的电子设备、图表数据结构化提取方法及计算机可读存储介质,通过结构化地提取包括图表本身、图表标题及其上下文文字信息的图表数据,形成对图表信息的完整表达,便于其它应用接口后续对图表信息进行进一步地分析与利用。
附图说明
图1是本发明电子设备一可选的硬件架构的示意图;
图2是本发明电子设备中图表数据结构化提取系统一实施例的程序模块示意图;
图3为本发明图表数据结构化提取方法一实施例的实施流程示意图。
附图标记:
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
进一步需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
首先,本发明提出一种电子设备2。
参阅图1所示,是本发明电子设备2一可选的硬件架构的示意图。本实施例中,所述电子设备2可包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23。需要指出的是,图1仅示出了具有组件21-23的电子设备2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,所述电子设备2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,该电子设备2可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
所述存储器21至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器21可以是所述电子设备2的内部存储单元,例如该电子设备2的硬盘或内存。在另一些实施例中,所述存储器21也可以是所述电子设备2的外部存储设备,例如该电子设备2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器21还可以既包括所述电子设备2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器21通常用于存储安装于所述电子设备2的操作系统和各类应用软件,例如所述图表数据结构化提取系统20的程序代码等。此外,所述存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制所述电子设备2的总体操作,例如执行与所述电子设备2进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器22用于运行所述存储器21中存储的程序代码或者处理数据,例如运行所述的图表数据结构化提取系统20等。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述电子设备2与其他电子设备之间建立通信连接。例如,所述网络接口23用于通过网络将所述电子设备2与外部数据平台相连,在所述电子设备2与外部数据平台之间的建立数据传输通道和通信连接。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
至此,己经详细介绍了本发明各个实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。
参阅图2所示,是本发明电子设备2中图表数据结构化提取系统20一实施例的程序模块图。本实施例中,所述的图表数据结构化提取系统20可以被分割成一个或多个程序模块,所述一个或者多个程序模块被存储于所述存储器21中,并由一个或多个处理器(本实施例中为所述处理器22)所执行,以完成本发明。例如,在图2中,所述的图表数据结构化提取系统20可以被分割成获取模块201、提取模块202、以及关联模块203。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述图表数据结构化提取系统20在所述电子设备2中的执行过程。以下将就各程序模块201-203的功能进行详细描述。
所述获取模块201,用于获取指定文档(如PDF文档)中的图表及每张图表的位置信息。其中,每张图表的位置信息包括,但不限于,每张图表在该指定文档中的页数、每张图表的左上角坐标、及右下角坐标等。
优选地,在本实施例中,可以通过基于文本密度的分析方式从该指定文档中抽取图表及每张图表的位置信息,也可以通过基于页面渲染的方式从该指定文档中抽取图表及每张图表的位置信息。
其中,通过基于文本密度的分析方式从该指定文档中抽取图表及每张图表的位置信息包括如下步骤A1~A3:
A1、获取指定文档中所有文字的位置信息,并根据所有文字的位置信息获取该指定文档中的文字分布信息。
优选地,在本实施例中,所述文字的位置信息包括,但不限于,文字的横向坐标、纵向坐标、与上一行文字的纵向距离、及与下一行文字的纵向距离等。所述文字分布信息包括,但不限于,每一行文字的左上角坐标,该行文字的长度和宽度等。
A2、分析该指定文档中的文字分布信息,判断出该指定文档中文字分布密度较低的区域、或/及无文字分布的区域,并将所述文字分布密度较低的区域、或/及无文字分布的区域标记为候选图表区域。
优选地,在本实施例中,所述判断出该指定文档中文字分布密度较低的区域包括:若一行文字的长度小于第一阀值(如5个字符单位长度),则判断出该行文字分布密度较低,并清洗(删除)该行文字。清洗后的该行文字变成了一个无文字分布的区域。
优选地,在本实施例中,所述判断出该指定文档中无文字分布的区域包括:对该指定文档中每一页从上到下进行扫描,若超过第二阀值宽度(如2个字符单位宽度)的区域没有扫描到文字,则判断出该区域为无文字分布的区域。
A3、将所述标记的候选图表区域转换为图片,并从转换后的图片中筛选出包含图表信息的图片,作为该指定文档中抽取出的图表,并记录下每张图表的位置信息(如每张图表的左上角坐标等)。在本实施例中,可以使用特定的图片处理工具(如ImageMagick工具)将所述标记的候选图表区域转换为图片。
优选地,在本实施例中,所述从转换后的图片中筛选出包含图表信息的图片包括:通过像素分布分析(或内容丰富程度分析),对转换后的图片进行筛选,选择出包含图表信息(如PDF图表信息)的图片。由于无文字区域有两种情况:一种是图表,一种是页面的空白区域,通过对图片的像素分布分析,可以判断出是这两种情况中的哪一种。
具体而言,通过像素分布分析从转换后的图片中筛选出包含图表信息的图片包括:
(1)对该转换后的图片进行灰度处理(如通过应用程序Python中的Opencv模块进行灰度处理),将该转换后的图片转换为灰度图。在该灰度图中,图片的每个像素点都被表示为0或255。其中,0代表黑色,为图片中有信息内容的像素点,255代表白色,为图片中空白的像素点。
(2)按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值(如数量超过5,比例超过50%),则判定该行包含有具体内容。
(3)统计包含有具体内容的行的数量,以此来判定图片中内容的丰富程度,包含有具体内容的行越多,则代表该图片的内容越丰富。若包含有具体内容的行数大于或等于设定阈值(如2行),则判定该转换后的图片内容丰富,是一张包含图表信息的图片。反之,若包含有具体内容的行数小于该设定阈值(如2行),则判定该转换后的图片内容不够丰富,是一张没有包含图表信息的空白图片。
进一步地,通过基于页面渲染的方式从该指定文档中抽取图表及每张图表的位置信息包括如下步骤B1~B3:
B1、获取指定文档中所有文字的位置信息。在本实施例中,可以使用特定的文字识别工具(如pdf2html工具)获取该指定文档中所有文字的位置信息。该特定的文字识别工具可以将PDF文档解析为文本文件,同时解析出每行文本在PDF文档中的具体位置信息(如左上角坐标,该行文字的长度和宽度等)。
B2、针对该指定文档中的每张页面,生成一张与该指定文档页面相同大小的空白图片,然后根据该页面中所有文字的位置信息,将该页面中所有文字转换为该空白图片中的像素点,并对该空白图片进行渲染。
在本实施例中,通过所有文字的位置信息,就可以判断出每行文字占据该指定文档页面的具体位置。其中,所述对该空白图片进行渲染包括:针对该空白图片中的所有像素点位置,将有文字占据的像素点位置渲染为黑色,没有文字占据的像素点位置保持白色。通过上述渲染,可以将该空白图片渲染为黑白二色,黑色为文字区域,白色为无文字区域。
进一步地,在其它实施例中,步骤B2还包括如下步骤:通过图像形态学处理方法(如膨胀处理、收缩处理等)对所述渲染后的图片进行处理,将所述渲染后的图片中的文字信息界限显著化。
B3、将所述渲染后的图片中的空白区域(即无文字区域)标记为候选图表区域,并从该候选图表区域中抽取图表信息,作为该指定文档页面抽取出的图表,并记录下每张图表的位置信息(如每张图表的左上角坐标等)。
优选地,在本实施例中,所述从该候选图表区域中抽取图表信息包括:
将所述标记的候选图表区域转换为图片,并通过像素分布分析(或内容丰富程度分析),对转换后的图片进行筛选,选择出包含图表信息(如PDF图表信息)的图片,作为该指定文档页面抽取出的图表。在本实施例中,可以使用特定的图片处理工具(如ImageMagick工具)将所述标记的候选图表区域转换为图片。
具体而言,通过像素分布分析从转换后的图片中筛选出包含图表信息的图片包括:
(1)对该转换后的图片进行灰度处理(如通过应用程序Python中的Opencv模块进行灰度处理),将该转换后的图片转换为灰度图。在该灰度图中,图片的每个像素点都被表示为0或255。其中,0代表黑色,为图片中有信息内容的像素点,255代表白色,为图片中空白的像素点。
(2)按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值(如数量超过5,比例超过50%),则判定该行包含有具体内容。
(3)统计包含有具体内容的行的数量,以此来判定图片中内容的丰富程度,包含有具体内容的行越多,则代表该图片的内容越丰富。若包含有具体内容的行数大于或等于设定阈值(如2行),则判定该转换后的图片内容丰富,是一张包含图表信息的图片。反之,若包含有具体内容的行数小于该设定阈值(如2行),则判定该转换后的图片内容不够丰富,是一张没有包含图表信息的空白图片。
所述提取模块202,用于根据每张图表的位置信息,提取每张图表的标题和上下文文字信息。
优选地,在本实施例中,所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域(如每张图表向上4行及向下2行的相邻区域);
于每张图表的相邻区域内,从每张图表的位置向上(如从左上角坐标向上)扫描预定数量行数(如一到两行),扫描获取的文字信息记录为每张图表的标题;
于每张图表的相邻区域内,从每张图表的位置向上、向下(如从右下角坐标向下)扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息(如位置信息等)。
所述关联模块203,用于根据上下文文字的位置信息(如从前往后的顺序),对每张图表的上下文文字进行拼接(形成完整的一句话或一段话),并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据。
通过上述程序模块201-203,本发明所提出的图表数据结构化提取系统20,通过结构化地提取包括图表本身、图表标题及其上下文文字信息的图表数据,形成对图表信息的完整表达,便于其它应用接口后续对图表信息进行进一步地分析与利用。
此外,本发明还提出一种图表数据结构化提取方法。
参阅图3所示,是本发明图表数据结构化提取方法一实施例的实施流程示意图。在本实施例中,根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
步骤S31,获取指定文档(如PDF文档)中的图表及每张图表的位置信息。其中,每张图表的位置信息包括,但不限于,每张图表在该指定文档中的页数、每张图表的左上角坐标、及右下角坐标等。
优选地,在本实施例中,可以通过基于文本密度的分析方式从该指定文档中抽取图表及每张图表的位置信息,也可以通过基于页面渲染的方式从该指定文档中抽取图表及每张图表的位置信息。
其中,通过基于文本密度的分析方式从该指定文档中抽取图表及每张图表的位置信息包括如下步骤A1~A3:
A1、获取指定文档中所有文字的位置信息,并根据所有文字的位置信息获取该指定文档中的文字分布信息。
优选地,在本实施例中,所述文字的位置信息包括,但不限于,文字的横向坐标、纵向坐标、与上一行文字的纵向距离、及与下一行文字的纵向距离等。所述文字分布信息包括,但不限于,每一行文字的左上角坐标,该行文字的长度和宽度等。
A2、分析该指定文档中的文字分布信息,判断出该指定文档中文字分布密度较低的区域、或/及无文字分布的区域,并将所述文字分布密度较低的区域、或/及无文字分布的区域标记为候选图表区域。
优选地,在本实施例中,所述判断出该指定文档中文字分布密度较低的区域包括:若一行文字的长度小于第一阀值(如5个字符单位长度),则判断出该行文字分布密度较低,并清洗(删除)该行文字。清洗后的该行文字变成了一个无文字分布的区域。
优选地,在本实施例中,所述判断出该指定文档中无文字分布的区域包括:对该指定文档中每一页从上到下进行扫描,若超过第二阀值宽度(如2个字符单位宽度)的区域没有扫描到文字,则判断出该区域为无文字分布的区域。
A3、将所述标记的候选图表区域转换为图片,并从转换后的图片中筛选出包含图表信息的图片,作为该指定文档中抽取出的图表,并记录下每张图表的位置信息(如每张图表的左上角坐标等)。在本实施例中,可以使用特定的图片处理工具(如ImageMagick工具)将所述标记的候选图表区域转换为图片。
优选地,在本实施例中,所述从转换后的图片中筛选出包含图表信息的图片包括:通过像素分布分析(或内容丰富程度分析),对转换后的图片进行筛选,选择出包含图表信息(如PDF图表信息)的图片。由于无文字区域有两种情况:一种是图表,一种是页面的空白区域,通过对图片的像素分布分析,可以判断出是这两种情况中的哪一种。
具体而言,通过像素分布分析从转换后的图片中筛选出包含图表信息的图片包括:
(1)对该转换后的图片进行灰度处理(如通过应用程序Python中的Opencv模块进行灰度处理),将该转换后的图片转换为灰度图。在该灰度图中,图片的每个像素点都被表示为0或255。其中,0代表黑色,为图片中有信息内容的像素点,255代表白色,为图片中空白的像素点。
(2)按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值(如数量超过5,比例超过50%),则判定该行包含有具体内容。
(3)统计包含有具体内容的行的数量,以此来判定图片中内容的丰富程度,包含有具体内容的行越多,则代表该图片的内容越丰富。若包含有具体内容的行数大于或等于设定阈值(如2行),则判定该转换后的图片内容丰富,是一张包含图表信息的图片。反之,若包含有具体内容的行数小于该设定阈值(如2行),则判定该转换后的图片内容不够丰富,是一张没有包含图表信息的空白图片。
进一步地,通过基于页面渲染的方式从该指定文档中抽取图表及每张图表的位置信息包括如下步骤B1~B3:
B1、获取指定文档中所有文字的位置信息。在本实施例中,可以使用特定的文字识别工具(如pdf2html工具)获取该指定文档中所有文字的位置信息。该特定的文字识别工具可以将PDF文档解析为文本文件,同时解析出每行文本在PDF文档中的具体位置信息(如左上角坐标,该行文字的长度和宽度等)。
B2、针对该指定文档中的每张页面,生成一张与该指定文档页面相同大小的空白图片,然后根据该页面中所有文字的位置信息,将该页面中所有文字转换为该空白图片中的像素点,并对该空白图片进行渲染。
在本实施例中,通过所有文字的位置信息,就可以判断出每行文字占据该指定文档页面的具体位置。其中,所述对该空白图片进行渲染包括:针对该空白图片中的所有像素点位置,将有文字占据的像素点位置渲染为黑色,没有文字占据的像素点位置保持白色。通过上述渲染,可以将该空白图片渲染为黑白二色,黑色为文字区域,白色为无文字区域。
进一步地,在其它实施例中,步骤B2还包括如下步骤:通过图像形态学处理方法(如膨胀处理、收缩处理等)对所述渲染后的图片进行处理,将所述渲染后的图片中的文字信息界限显著化。
B3、将所述渲染后的图片中的空白区域(即无文字区域)标记为候选图表区域,并从该候选图表区域中抽取图表信息,作为该指定文档页面抽取出的图表,并记录下每张图表的位置信息(如每张图表的左上角坐标等)。
优选地,在本实施例中,所述从该候选图表区域中抽取图表信息包括:
将所述标记的候选图表区域转换为图片,并通过像素分布分析(或内容丰富程度分析),对转换后的图片进行筛选,选择出包含图表信息(如PDF图表信息)的图片,作为该指定文档页面抽取出的图表。在本实施例中,可以使用特定的图片处理工具(如ImageMagick工具)将所述标记的候选图表区域转换为图片。
具体而言,通过像素分布分析从转换后的图片中筛选出包含图表信息的图片包括:
(1)对该转换后的图片进行灰度处理(如通过应用程序Python中的Opencv模块进行灰度处理),将该转换后的图片转换为灰度图。在该灰度图中,图片的每个像素点都被表示为0或255。其中,0代表黑色,为图片中有信息内容的像素点,255代表白色,为图片中空白的像素点。
(2)按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值(如数量超过5,比例超过50%),则判定该行包含有具体内容。
(3)统计包含有具体内容的行的数量,以此来判定图片中内容的丰富程度,包含有具体内容的行越多,则代表该图片的内容越丰富。若包含有具体内容的行数大于或等于设定阈值(如2行),则判定该转换后的图片内容丰富,是一张包含图表信息的图片。反之,若包含有具体内容的行数小于该设定阈值(如2行),则判定该转换后的图片内容不够丰富,是一张没有包含图表信息的空白图片。
步骤S32,根据每张图表的位置信息,提取每张图表的标题和上下文文字信息。
优选地,在本实施例中,所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域(如每张图表向上4行及向下2行的相邻区域);
于每张图表的相邻区域内,从每张图表的位置向上(如从左上角坐标向上)扫描预定数量行数(如一到两行),扫描获取的文字信息记录为每张图表的标题;
于每张图表的相邻区域内,从每张图表的位置向上、向下(如从右下角坐标向下)扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息(如位置信息等)。
步骤S33,根据上下文文字的位置信息(如从前往后的顺序),对每张图表的上下文文字进行拼接(形成完整的一句话或一段话),并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据。
通过上述步骤S31-S33,本发明所提出的图表数据结构化提取方法,通过结构化地提取包括图表本身、图表标题及其上下文文字信息的图表数据,形成对图表信息的完整表达,便于其它应用接口后续对图表信息进行进一步地分析与利用。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质(如ROM/RAM、磁碟、光盘),所述计算机可读存储介质存储有图表数据结构化提取系统20,所述图表数据结构化提取系统20可被至少一个处理器22执行,以使所述至少一个处理器22执行如上所述的图表数据结构化提取方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (7)
1.一种电子设备,其特征在于,所述电子设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的图表数据结构化提取系统,所述图表数据结构化提取系统被所述处理器执行时实现如下步骤:
获取指定文档中的图表及每张图表的位置信息,所述图表的位置信息包括该图表在所述指定文档中的页数、该图表的左上角坐标、及右下角坐标;
根据每张图表的位置信息,提取每张图表的标题和上下文文字信息;及
根据上下文文字的位置信息,对每张图表的上下文文字进行拼接形成完整的一句话或一段话,并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据;
所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域,所述相邻区域为从所述图表的左上角坐标位置向上第一数量行数及从所述图表的右下角坐标位置向下第二数量行数的区域;
于每张图表的相邻区域内,从每张图表的左上角坐标位置向上扫描预定数量行数,扫描获取的文字信息记录为每张图表的标题,所述预定数量行数小于第一数量行数;及
于每张图表的相邻区域内,从每张图表的左上角坐标位置向上、右下角坐标位置向下扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息;
所述获取指定文档中的图表及每张图表的位置信息包括:
获取指定文档中所有文字的位置信息,并根据所有文字的位置信息获取该指定文档中的文字分布信息;
分析该指定文档中的文字分布信息,判断出该指定文档中文字分布密度较低的区域、或/及无文字分布的区域,并将所述文字分布密度较低的区域、或/及无文字分布的区域标记为候选图表区域;及
将所述标记的候选图表区域转换为图片,并从转换后的图片中筛选出包含图表信息的图片,作为该指定文档中抽取出的图表,并记录下每张图表的位置信息。
2.如权利要求1所述的电子设备,其特征在于,所述判断出该指定文档中文字分布密度较低的区域包括:若一行文字的长度小于第一阈 值,则判断出该行文字分布密度较低,并清洗该行文字;及
所述判断出该指定文档中无文字分布的区域包括:对该指定文档中每一页从上到下进行扫描,若超过第二阈 值宽度的区域没有扫描到文字,则判断出该区域为无文字分布的区域。
3.如权利要求2所述的电子设备,其特征在于,所述从转换后的图片中筛选出包含图表信息的图片包括:
对该转换后的图片进行灰度处理,将该转换后的图片转换为灰度图;
按行统计该灰度图中黑色像素点的数量和比例,若一行中黑色像素点的数量和比例超过指定阈值,则判定该行包含有具体内容;及
统计包含有具体内容的行的数量,若包含有具体内容的行数大于或等于设定阈值,则判定该转换后的图片为一张包含图表信息的图片。
4.一种图表数据结构化提取方法,应用于电子设备,其特征在于,所述方法包括:
获取指定文档中的图表及每张图表的位置信息,所述图表的位置信息包括该图表在所述指定文档中的页数、该图表的左上角坐标、及右下角坐标;
根据每张图表的位置信息,提取每张图表的标题和上下文文字信息;及
根据上下文文字的位置信息,对每张图表的上下文文字进行拼接形成完整的一句话或一段话,并将拼接后的上下文文字与每张图表的标题及图表本身关联在一起,形成结构化的图表数据;
所述提取每张图表的标题和上下文文字信息包括:
确定每张图表的一个相邻区域,所述相邻区域为从所述图表的左上角坐标位置向上第一数量行数及从所述图表的右下角坐标位置向下第二数量行数的区域;
于每张图表的相邻区域内,从每张图表的左上角坐标位置向上扫描预定数量行数,扫描获取的文字信息记录为每张图表的标题;及
于每张图表的相邻区域内,从每张图表的左上角坐标位置向上、下角坐标位置向下扫描该相邻区域内的剩余行数,扫描获取的文字信息记录为每张图表的上下文文字信息;
所述获取指定文档中的图表及每张图表的位置信息包括:
获取指定文档中所有文字的位置信息,并根据所有文字的位置信息获取该指定文档中的文字分布信息;
分析该指定文档中的文字分布信息,判断出该指定文档中文字分布密度较低的区域、或/及无文字分布的区域,并将所述文字分布密度较低的区域、或/及无文字分布的区域标记为候选图表区域;及
将所述标记的候选图表区域转换为图片,并从转换后的图片中筛选出包含图表信息的图片,作为该指定文档中抽取出的图表,并记录下每张图表的位置信息。
5.如权利要求4所述的图表数据结构化提取方法,其特征在于,所述获取指定文档中的图表及每张图表的位置信息包括:
获取指定文档中所有文字的位置信息;
针对该指定文档中的每张页面,生成一张与该指定文档页面相同大小的空白图片,然后根据该页面中所有文字的位置信息,将该页面中所有文字转换为该空白图片中的像素点,并对该空白图片进行渲染;及
将所述渲染后的图片中的空白区域标记为候选图表区域,并从该候选图表区域中抽取图表信息,作为该指定文档页面抽取出的图表。
6.如权利要求5所述的图表数据结构化提取方法,其特征在于,所述对该空白图片进行渲染包括:
针对该空白图片中的所有像素点位置,将有文字占据的像素点位置渲染为黑色,没有文字占据的像素点位置保持白色;及
所述获取指定文档中的图表及每张图表的位置信息还包括:
通过图像形态学处理方法对所述渲染后的图片进行处理,将所述渲染后的图片中的文字信息界限显著化。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有图表数据结构化提取系统,所述图表数据结构化提取系统可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求4-6中任一项所述的图表数据结构化提取方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710775380.XA CN107689070B (zh) | 2017-08-31 | 2017-08-31 | 图表数据结构化提取方法、电子设备及计算机可读存储介质 |
PCT/CN2017/105033 WO2019041442A1 (zh) | 2017-08-31 | 2017-09-30 | 图表数据结构化提取方法、系统、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710775380.XA CN107689070B (zh) | 2017-08-31 | 2017-08-31 | 图表数据结构化提取方法、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107689070A CN107689070A (zh) | 2018-02-13 |
CN107689070B true CN107689070B (zh) | 2021-06-04 |
Family
ID=61155956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710775380.XA Active CN107689070B (zh) | 2017-08-31 | 2017-08-31 | 图表数据结构化提取方法、电子设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107689070B (zh) |
WO (1) | WO2019041442A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107871128B (zh) * | 2017-12-11 | 2023-06-06 | 广州市标准化研究院(广州市组织机构代码管理中心) | 一种基于svg动态图表的高鲁棒性图像识别方法 |
CN109062874B (zh) * | 2018-06-12 | 2022-03-04 | 平安科技(深圳)有限公司 | 财政数据的获取方法、终端设备及介质 |
CN109656647B (zh) * | 2018-09-27 | 2023-04-11 | 平安科技(深圳)有限公司 | 图表图片生成方法、装置、设备及计算机可读存储介质 |
CN109461195A (zh) * | 2018-09-28 | 2019-03-12 | 武汉优品楚鼎科技有限公司 | 一种基于svg的图表提取方法、装置及设备 |
CN111753814B (zh) * | 2019-03-26 | 2023-07-25 | 杭州海康威视数字技术股份有限公司 | 样本生成方法、装置及设备 |
CN113553883B (zh) * | 2020-04-24 | 2023-04-07 | 上海高德威智能交通系统有限公司 | 一种票据图像识别方法、装置及电子设备 |
CN112464626B (zh) * | 2020-12-09 | 2022-04-01 | 上海携宁计算机科技股份有限公司 | Pdf文档的图表提取方法、电子设备和存储介质 |
CN113569840A (zh) * | 2021-08-31 | 2021-10-29 | 平安医疗健康管理股份有限公司 | 基于自注意力机制的表单识别方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567300A (zh) * | 2011-12-29 | 2012-07-11 | 方正国际软件有限公司 | 图片文档的处理方法及装置 |
CN104346615A (zh) * | 2013-08-08 | 2015-02-11 | 北大方正集团有限公司 | 版式文档中复合图的提取装置和提取方法 |
CN106951400A (zh) * | 2017-02-06 | 2017-07-14 | 北京因果树网络科技有限公司 | 一种pdf文件的信息抽取方法及装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5987171A (en) * | 1994-11-10 | 1999-11-16 | Canon Kabushiki Kaisha | Page analysis system |
JP2007200014A (ja) * | 2006-01-26 | 2007-08-09 | Ricoh Co Ltd | 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体 |
CN101556606B (zh) * | 2009-05-20 | 2010-12-01 | 同方知网(北京)技术有限公司 | 一种基于Web数值表格抽取的数据挖掘方法 |
CN101908136B (zh) * | 2009-06-08 | 2013-02-13 | 比亚迪股份有限公司 | 一种表格识别处理方法及系统 |
JP2011039839A (ja) * | 2009-08-12 | 2011-02-24 | Konica Minolta Business Technologies Inc | 文書処理装置、文書処理方法および文書処理プログラム |
CN101853246B (zh) * | 2010-06-14 | 2012-05-23 | 深圳市万兴软件有限公司 | 一种文档格式的转换方法及装置 |
CN107103010B (zh) * | 2016-02-23 | 2020-10-27 | 阿里巴巴集团控股有限公司 | 可视化数据的处理方法及装置 |
CN106897690B (zh) * | 2017-02-22 | 2018-04-13 | 南京述酷信息技术有限公司 | Pdf表格提取方法 |
-
2017
- 2017-08-31 CN CN201710775380.XA patent/CN107689070B/zh active Active
- 2017-09-30 WO PCT/CN2017/105033 patent/WO2019041442A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567300A (zh) * | 2011-12-29 | 2012-07-11 | 方正国际软件有限公司 | 图片文档的处理方法及装置 |
CN104346615A (zh) * | 2013-08-08 | 2015-02-11 | 北大方正集团有限公司 | 版式文档中复合图的提取装置和提取方法 |
CN106951400A (zh) * | 2017-02-06 | 2017-07-14 | 北京因果树网络科技有限公司 | 一种pdf文件的信息抽取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019041442A1 (zh) | 2019-03-07 |
CN107689070A (zh) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107689070B (zh) | 图表数据结构化提取方法、电子设备及计算机可读存储介质 | |
CN107688789B (zh) | 文档图表抽取方法、电子设备及计算机可读存储介质 | |
CN110363102B (zh) | 一种pdf文件的对象识别处理方法及装置 | |
CN110728687B (zh) | 文件图像分割方法、装置、计算机设备和存储介质 | |
US10679089B2 (en) | Systems and methods for optical character recognition | |
CN106599940B (zh) | 图片文字的识别方法及装置 | |
CN113221632A (zh) | 文档图片识别方法、装置以及计算机设备 | |
US8538154B2 (en) | Image processing method and image processing apparatus for extracting heading region from image of document | |
CN112712014A (zh) | 表格图片结构解析方法、系统、设备和可读存储介质 | |
CN114005126A (zh) | 表格重构方法、装置、计算机设备及可读存储介质 | |
CN112560849A (zh) | 基于神经网络算法的文理分割方法及系统 | |
CN110245570B (zh) | 扫描文本分段方法、装置、计算机设备和存储介质 | |
CN116402020A (zh) | 基于ofd文档的签名图像化处理方法、系统和存储介质 | |
CN107688788B (zh) | 文档图表抽取方法、电子设备及计算机可读存储介质 | |
CN107122785B (zh) | 文本识别模型建立方法和装置 | |
CN110263310B (zh) | 数据图生成方法、装置及计算机可读存储介质 | |
CN115830599B (zh) | 工业字符识别方法、模型训练方法、装置、设备和介质 | |
CN109145879B (zh) | 一种打印字体识别的方法、设备及存储介质 | |
CN109101973B (zh) | 文字识别方法、电子设备、存储介质 | |
CN113761968A (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
CN115909449A (zh) | 文件处理方法、装置、电子设备、存储介质及程序产品 | |
CN115270711A (zh) | 电子签名方法、电子签名装置、电子设备、存储介质 | |
CN117291152A (zh) | 表格的提取方法和装置 | |
CN114399782A (zh) | 文本图像处理方法、装置、设备、存储介质及程序产品 | |
JP2001126010A (ja) | 帳票処理装置、帳票定義作成方法、領域抽出方法及び記憶媒体 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |