CN117610549A - 文档处理、内容生成方法、装置及电子设备 - Google Patents

文档处理、内容生成方法、装置及电子设备 Download PDF

Info

Publication number
CN117610549A
CN117610549A CN202311570217.1A CN202311570217A CN117610549A CN 117610549 A CN117610549 A CN 117610549A CN 202311570217 A CN202311570217 A CN 202311570217A CN 117610549 A CN117610549 A CN 117610549A
Authority
CN
China
Prior art keywords
partition
text object
text
content
target document
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
Application number
CN202311570217.1A
Other languages
English (en)
Inventor
陈若煜
王启宇
蔡天慧
康积华
张劲松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202311570217.1A priority Critical patent/CN117610549A/zh
Publication of CN117610549A publication Critical patent/CN117610549A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本公开实施例提供一种文档处理、内容生成方法、装置及电子设备,该方法包括:响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;根据段落的位置信息和语义信息生成段落的语义标签。可以准确地识别目标文档中的文档对象,并可以较为准确地对文档对象的布局进行还原。

Description

文档处理、内容生成方法、装置及电子设备
技术领域
本公开实施例涉及信息处理技术领域与人工智能技术领域,尤其涉及一种文档处理、内容生成方法、装置及电子设备。
背景技术
很多应用场景中,需要对大量的信息进行搜集。对搜集的信息进行结构化处理,以便后续根据搜集的信息进行分析处理。
信息可以记载在文档中,例如word文档等。在一些文档中记载有文档中的版面信息。可以使用这些版面信息对文档进行结构化。
发明内容
本公开实施例提供一种文档处理、内容生成方法、装置及电子设备。
第一方面,本公开实施例提供一种文档处理方法,该方法包括:响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;根据段落的位置信息和语义信息生成段落的语义标签。
第二方面,本公开实施例提供一种内容生成方法,该方法包括:接收第三内容生成指令;基于所述内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与所述第三内容生成指令对应的第三内容;其中,所述目标文档包括文本对象和非文本对象,所述多个段落基于如下步骤得到:从所述目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
第三方面,本公开实施例提供一种文档处理装置,该装置包括:解析单元,用于响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;拼接单元,用于基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;第一生成单元,用于根据段落的位置信息和语义信息生成段落的语义标签。
第四方面,本公开实施例提供一种内容生成装置,该装置包括:接收单元,用于接收第三内容生成指令;第二生成单元,用于基于所述内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与所述第三内容生成指令对应的第三内容;其中,所述目标文档包括文本对象和非文本对象,所述多个段落基于如下步骤得到:从所述目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
第五方面,本公开实施例提供一种电子设备,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的方法。
第六方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的方法。
第七方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的方法。
本实施例提供的文档处理、内容生成方法、装置及电子设备,通过响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;根据段落的位置信息和语义信息生成段落的语义标签,可以精确地识别目标文档中的文档对象,并可以较为准确地对文档中对象的布局进行还原。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开提供的文档处理方法的流程示意图一;
图2A为一个应用场景示意图;
图2B为一个应用场景示意图;
图2C为一个应用场景示意图;
图3为本公开提供的解析非矢量图对象的第一图片分区的示意性流程图;
图4为本公开提供的解析矢量图对象的第二图片分区的示意性流程图;
图5为本公开提供的解析有线框表格的第一表格分区的示意性流程图;
图6为本公开提供的解析半有线框表格的第二表格分区的示意性流程图;
图7为本公开提供的解析文本对象分区的示意性流程图;
图8为本公开提供的内容生成方法的流程示意图;
图9为文档处理装置的示意性结构框图;
图10为内容生成装置的示意性结构框图;
图11为本公开实施例提供的电子设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在一些应用场景中,可以根据文档的版面信息从文档中提取部分内容,并对该部分内容与该部分内容在文档中对应的版面信息进行处理,以便后续使用这些内容。例如在利用语言模型根据指令生成内容时,通常需要从一些文档中根据版面信息提取部分内容(例如某些段落),将所提取的部分内容发送给语言模型,由语言模型对该部分内容进行分析处理,得到指令对应的相响应内容。
版面信息包括对象的信息。文档对象包括构成文档的基本单元,包括:标题、段落标题、自然段落、页眉页脚、脚注、图片、表格、公式等。
一些格式的文档,例如便携式文件格式(PortableDocumentFormat,PDF)文档,只存储了字符的字体、坐标、大小和颜色等信息,不具有文档对象信息。需要识别这些文档对象,并还原PDF的版面布局。
为了识别上述这些格式的文档的文档对象以及还原版面布局,在一些实现方式中,可以针对某一类文档对象(例如文字、图片或者表格中的一类对象)进行解析与结构还原,例如对PDF文档中的表格进行解析与还原,图片进行解析与还原等,但是这些实现方式不能完整地对这些文档对象全部进行解析与还原。
另外一些实现方式中,将这些格式的文档转换为图片格式,再通过深度学习的方式来识别文档中的对象及还原文档版面布局。这些实现方式可以完整的识别这些文档中的各文档对象及各文档对象的布局,但是这种方式的效率较低,而且识别结果也不够准确,使得还原结果的准确度较差。
本公开提供的方法,通过对目标文档解析出的非文本对象分区和文本对象分区,基于对象语义信息和几何信息对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;根据段落的位置信息和语义信息生成段落的语义标签,可以准确地识别目标文档中的文档对象并还原目标文档中的文档对象和版面布局。
请参考图1,其示出了本公开提供的文档处理方法的一个示意性流程图一。如图1所示,该方法包括如下步骤:
S101:响应于接收到针对预设格式的目标文档的第一指令,解析目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区。
本实施例中,文档处理方法的执行主体可以是运行在终端设备中的客户端,也可以是为客户端提供服务的服务端。
上述第一指令可以是用户发送的指令,也可以是由于电子设备发送的指令。也就是说,可以有用户触发文档处理方法,也可以由电子设备触发文档处理方法。上述电子设备可以根据程序指令向上述执行主体发送上述第一指令。
上述第一指令用于指示解析目标文档中的对象,并对目标文档的版面布局进行还原。
上述执行主体在接收到上述第一指令后,可以使用各种文档解析方法解析目标文档中的非文本对象分区和文本对象分区。
这里的文本对象分区是指仅包含文字、数字、字母等的分区。上述非文本对象分区包括图片分区、表格分区和公式分区等。
也就是说,将目标文档按照文本对象和非文本对象进行分区,可以得到非文本对象分区和文本对象分区。
具体地,可以识别目标文档中的文本对象和非文本对象,然后将目标文档划分为至少一个非文本对象分区和至少一个文本对象分区。文本对象分区和非文本对象分区相互独立。
S102:基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
上述几何信息包括对象的位置信息、大小信息和不同对象之间的距离信息。
在得到了文本对象分区和非文本对象分区之后,对于每一个文本对象分区,可以根据该文本对象分区内的文字对象(如文本块)的语义信息和几何信息对该文本对象分区内的文本块进行段落拼接,得到至少一个文本段落。文本块的位置信息可以包括页码、在页码对应的页面中的位置信息。对于文本块在页面中的位置信息可以文本块在页面中的坐标信息。上述文本块在页面中的坐标信息可以包括文本块在预设坐标系下的坐标信息。在一些实施例中,上述预设坐标系例如是以页面中的参考点为原点,以经过原点且平行于页面短边的直线为X轴,以经过原点且平行于页面长边的直线为Y轴构建的坐标系。上述参考点可以该页面中的任意指定点。上述指定点例如为该页面左下角对应的点、左上角对应的点等。
文字对象的语义信息可以包括通过对文字对象内容进行语义识别得到的语义信息。对文字对象进行语义识别可以是使用各种语义识别方法进行的语义识别。
对于非文本对象分区,可以根据非文本对象分区中非文字对象的语义信息和几何信息对该非文本对象分区内的非文字对象进行段落拼接,得到至少一个非文本对象段落。
在一些应用场景中,每一个非文本对象分区中可以包括多个局部分区,不同局部分区之间可以有语义关联。例如不同局部分区之间的大小比例关系,连接关系、相邻关系、相对距离等。上述不同局部分区之间的语义关联可以视为非文本对象分区的语义信息。
在一些应用场景中,非文本对象分区中可以包括多个局部分区,不同局部分区中可以包括文字等内容,可以根据上述文字来确定该非文本对象分区中不同局部分区之间的语义信息。
例如,表格对象的对应的非文本对象分区中可以包括多个单元格。多个单元格中可以填充文字等。可以根据上述多个单元格中的上述文字来对单元格对应的语义信息。例如记载了“天气”的单元格A具有对应的语义信息。其他记载了天气信息的单元格B可以与单元格A位于一列或一行等。
还可以根据不同单元格之间的大小比例关系、连接关系、相邻关系来确定不同单元格之间的语义关联关系。例如单元格1与单元格2连接,则表示单元格1和单元2在空间是连接在一起的,属于一个表格等。又例如单元格3的大小是按照单元格4的大小的2倍确定出来的,则单元格4与单元格3同属于一个非文本对象分区。
上述位置信息可以包括坐标信息,可以根据上述语义信息和几何信息对不同非文本对象分区中的非文字对象进行段落拼接。进而得到多个非文本对象段落。
通过上述步骤S102可以得到多个段落。
S103:根据段落的位置信息和语义信息生成段落的语义标签。
可以按照目标文档不同页面从前到后的顺序对各个页面中的段落生成语义标签。
请结合图2A~图2C,图2A为一个应用场景示意图;图2B为一个应用场景示意图;图2C为一个应用场景示意图。
2A所示,目标文档的一个页面201,可以对该页面进行文本对象识别得到结果,该结果包括多个文本块202。
可以对该页面进行文本对象分区和非文本对象分区,得到多个分区,如图2B所示的多个文本对象分区2031、2032、2033、2034和2036,非文本对象(表格)分区2035。
对于每个分区,进行段落拼接,得到多个段落。请参考图2C,得到的多个段落包括文本段落210、211、212、213、214、215、216、217、218、220、221,以及表格段落219。
具体地,对于每一个页面,可以根据该页面中的多个分区分的几何信息确定目标文档的页面排版形式。几何信息包括位置、大小和不同分区之间的距离。
上述页面排版形式包括单栏排版和双栏排版。上述双栏排版是指页面在横向方向上分成两栏。
若检测到两个分区具有相同的行,进而检测具有相同行的两个分区的宽度是否相近,若具有相同行的分区的宽度相近,将该页面中的多个分区根据位置信息分为位于页面左侧的分区和位于页面右侧的分区。进一步计算页面左侧的分区的累计面积与位于页面右侧的分区累计面积是否近似相同,若近似相同,则确定该页面的排版形式为双栏排版。
若未检测到页面中有具有相同的行的不同分区,则可以视为该页面的排版形式为单栏排版。若检测到页面中有两个分区具有相同行,但是页面中其他分区不具有相同行,且两个分区的宽度相差较大,可以视为该页面的排版形式为单栏排版。
对于一个页面中的不同分区,可以先按照从上到下、从左到右的顺序确定各分区在该页面中的次序。
对于单栏排版的一个页面,可以根据从上到下的顺序确定该页面中不同分区的次序。进而对于目标文档,可以确定各页面中不同分区的次序。
对于双栏排版的一个页面,可以根据从左到右、从上到下的顺序确定该页面中不同分区的次序。
按照分区的次序依次对每个分区中的段落进行分析,生成每一个分区中不同段落的语义标签。
上述语义标签可以包括段落在文档中出现的次序和/或段落对应的文档对象。
对于单栏排版的页面或者双栏排版的页面,按照页面中的每个分区的次序,依次对每个分区中的各段落进行分析。具体地,对于每一个分区,按该分区中不同段落在该分区中出现的位置信息确定不同段落该分区中的次序。根据上述次序对该分区中的各个段落生成语义标签。
具体地,对于包含文档首页面首行的第一分区,若该分区为文本对象分区,且该分区包括一个段落,确定该段落的语义信息。若确定该段落表达完整的语义,可以将该段落视为文档的文档标题。为该段落添加的语义标签可以包括指示为该为第一个段落的段落序号,以及指示该段落为文档标题的标题标识。
对于出现在第一个分区之后的第二分区,若该分区中包括至少一个段落,进而分析该段落的语义。若该至少一个段落中的语义包括至少一个人名和/或单位名称。则可以确定该段落是记载作者信息的段落,为该段落添加作者信息的语义标签。
示意性地,对于第二分区之后的第三分区,若该分区为文本对象分区,该分区中包括一个段落。分析该段落的语义,若该段落中包括:“摘要”且该段落中的语义为该文档的概括性描述,可以将该段落视为摘要,为该段落添加摘要的语义标签。
对于第三分区之后的第四分区,若该分区为文本对象分区,且该分区中包括至少一个段落。可以进而分析各段落的语义信息。根据语义识别结果,为各段落设置正文第1段,正文第2段等语义标签。
若第四分区之后出现图像分区,确定该图像分区在文档中出现的位置,确定该图像分区是否为第一个图像分区。若是第一个图像分区,且该图像分区中仅包括一个图像,则该图像的语义标签为图像1。若该图像分区中包括多个图像,可以按照从左到右,从上到下的顺序确定各图像的顺序,并为各图像设置对应的语义标签。
对于后续出现的图像分区,可以确定后续图像分区中的图像在后续图像分区中的次序。然后将后续图像分区中图像的次序与前面图像分区中的图像次序接续。
对于页面最后一个分区,如果该分区中只有数字,可以视为该数字为页码。可以将该数字对应的段落视为页脚。
依次类推,可以对文档的不同分区中的段落生成语义标签。
本实施例中,响应于接收到针对预设格式的目标文档的第一指令,解析目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;根据段落的位置信息和语义信息生成段落的语义标签。通过先将目标文档划分为文本对象分区和非文本对象分区,然后分别对各分区进行段落拼接,最后生成段落语义,可以较为精确地识别目标文档的文档对象,从而较为准确对目标文档中的对象的布局信息进行还原。
在一些实施例中,非文本对象包括非矢量图对象,请参考图3,上述步骤S101包括如下步骤解析出目标文档中的非矢量图片对象对应的第一图片分区:
S301:对于非矢量图片,基于目标文档的底层协议获取非矢量图片对应的第一位置信息,其中第一位置信息为第一图片分区的位置信息。
S302:基于第一位置信息在目标文档中截取非矢量图片,得到第一图片分区对应的非矢量图片。
上述非矢量图片,包括PNG格式、JPG格式等格式的图片。对于上述非矢量图片,可以使用预设接口检测目标文档的底层协议,从上述底层协议中提取目标文档中插入的非矢量图片的信息。上述非矢量图片的信息包括位置信息。进而可以根据上述位置信息确定包围非矢量图片的矩形框。该矩形框可以视为第一图片分区。该矩形框的位置信息可以视为第一图片分区的位置信息。上述第一图片的位置信息可以包括上述矩形框的左上顶点、右下顶点在预设坐标系下的坐标。
在确定了第一图片分区的位置信息后,可以获取该分区包含的图片。具体地,可以根据上述第一图片分区的位置信息在目标文档中进行截图,从而得到第一图片分区所包括的图片。
根据上述方式,可以得到目标文档的全部第一图片分区,以及各第一图片分区所插入的图片。
在这些实施例中,通过对非矢量图片的第一图片分区划分,以及对第一图片分区中图片的获取,实现了对非矢量图片文档对象的识别与还原。
在一些实施例中,非文本对象包括矢量图对象,请参考图4,上述步骤S101包括如下步骤解析出目标文档中的非矢量图片对象对应的第一图片分区:
S401:隐藏目标文档中的文本内容。
矢量图是缩放不失真的图像格式。矢量图是通过多个对象的组合生成的,对其中的每一个对象的纪录方式,都是以数学函数来实现的。矢量图不像位图那样记录画面上每一点的信息,而是纪录了形状及颜色的算法。当打开矢量图的时候,文档应用程序对矢量图中的对象对应的函数进行运算,将运算结果(图形的形状和颜色)进行显示。因此,无法从底层协议中获取图片的位置信息。
可以使用预设接口检测目标文档的底层协议,从上述底层协议中按页提取每一页中的文本内容的展示信息。修改各页文本内容的展示信息,以隐藏各页的文本内容。
可以理解的是,隐藏各页面的文本内容后,原矢量图中的文本内容也会被隐藏。页面中的文本内容被隐藏后,页面中的矢量图仅包括点、线框等。
S402:在隐藏了文本内容的目标文档中,识别矢量图片对应的第二位置信息以及无文本内容的第一矢量图片;第二位置信息作为第二图片分区的位置信息。
对于每一个页面,在隐藏了文本内容后,通过格式转换将该页面转换为图片。然后再将页面对应的图片转换为灰度图,将上述灰度图进行二值化。对于二值化后的页面图片,使用投影分割算法(XY-cut算法)识别页面二值化图片中的第一矢量图片,确定包围上述第一矢量图片的矩形框,并由投影分割算法确定矢量图片对应的第二位置信息。上述第二位置信息可以包括上述矩形框在该页面对应的预设坐标系下的坐标。上述矩形框可以视为第一矢量图片对应的第二图片分区。
S403:根据第二位置信息确定第一矢量图片中的文本内容。
S404:将第一矢量图片和文本内容进行融合,作为第二图片分区对应的矢量图片。
在确定了第二图片分区的第二位置信息后,可以根据第二位置信息从目标文档获取第一矢量图片对应的文本内容。具体地,可以根据上述第二图片分区的第二位置信息在目标文档中进行截图,从截图中得到包括文本内容。
可以将上述文本内容融合至第一矢量图片中,得到第二图片分区对应的矢量图片。
依次类推,可以得到页面中的全部第二图片分区以及各第二分区分别对应的矢量图片。
在这些实施例中,通过对矢量图片所在页面转化为页面图片,在页面图片中识别无文本内容的矢量图片及对应的第二图片分区的位置信息,并通过在原页面中截图的方式获取矢量图片中的文本内容,将文本内容与无文本内容的第二图片融合。进而得到第二图片分区以及第二图片分别对应的矢量图片,实现了对矢量图片的识别与还原。
在一些实施例中,非文本对象包括有线框表格对象,请参考图5,上述步骤S101包括基于如下步骤解析出目标文档中的有线框表格对象对应的第一表格分区:
S501:获取包围有线框表格的矩形框的第三位置信息,以及有线框表格中各第一单元格的信息,其中,第三位置信息为第一表格分区的位置信息。
S502:根据各第一单元格的邻接单元格的信息,对多个第一单元格进行合并,得到合并后的多个第二单元格。
S503:确定多个第二单元格中最小单元格的大小,并确定其他第二单元格与最小单元格之间的比例关系。
S504:根据比例关系生成第一表格分区对应的空白有线框表格。
S505:将目标文档中第三位置信息对应的文本内容矩形框与空白有线框表格进行融合,得到第一表格分区对应的有线框表格。
可以使用有线框表格提取工具提供的接口,抽取目标文档各页面中的有线框表格位置,并确定包括该表格位置的最小矩形框。同时提取有线框表格中每个第一单元格的信息(位置和内容)。
可以逐页解析各页面中的有线框表格分别对应的第一表格分区。
对于每一个页面,将该页面中包围一个有线框的最小矩形框可以视为一个第一表格分区。上述最小矩形框的位置信息(包括最小矩形框的顶点在页面的预设坐标系下的),可以视为第一表格分区的第三位置信息。
对于抽取出的有线框中的每一个第一单元格,可以根据第一单元格的位置信息以及其他单元格的位置信息查找该第一单元格的上下左右四个方向的邻接单元格,存储邻接单元格的位置信息,得到第一单元格的邻接矩阵。
对于上述邻接矩阵,检测每个第一单元格的上侧和左侧单元格是否有可以合并的空白第一单元格,如果有,将其合并。完成对多个第一单元格的合并后,得到多个第二单元格。获得各第二单元格的位置和内容信息。计算各第二单元格的宽度和高度,确定出最小单元格。将最小单元格作为基准单元格。
对于其他第二单元格,将各其他第二单元格宽度和高度分别除以最小单元格的宽度和最小高度,得到每个其他第二单元格的占据的列数和行数。
根据每一个第二单元格的行数和列数,计算该第二单元格对应的在该有线框中的坐标(上述坐标包括起始行,结束行,起始列,结束列)。至此得到有线框中各单元格(无文本内容填充的单元格)的还原信息。
根据第三位置信息,从目标文档中提取文本内容矩形框。从文本内容矩形框中各单元格的位置信息提取空白有线框表格各单元对应的文本内容。将各文本内容填充至对应的空白第二单元格中。进而得到有线框对应的第一表格分区以及对第一表格分区中的表格内容的还原。
通过上述方式,可以对目标文档中的各有线框表格进行识别与还原。
在一些实施例中,非文本对象包括半线框表格对象,请参考图6,上述步骤S101包括基于如下步骤解析出目标文档中的半线框表格对象对应的第二表格分区:
S601:基于投影分割算法及图像识别算法,识别用于界定半线框表格的框线。
上述半线框表格可以是由两条平行框线界定出表格区域的表格。
对于非矢量图格式的框线,可以使用图像识别算法来识别用于界定半线框的框线。上述框线可以是一条线段。
S602:根据识别出的框线的位置和大小,确定用于界定半线框的框线对。
例如根据不同框线两个端点之间的距离中确定处相距最近的两条框线,并且该两个框线大小近似,可以将该两条框线作为一个框线对。
S603:将框线对确定的第四位置信息作为第二表格分区的位置信息。
将包围上述半线框的最小矩形框作为第二表格分区。将上述最小矩形框的位置信息作为第二表格分区的位置信息(第四位置信息)。上述第四位置信息包括上述最小矩形框的顶点在页面预设坐标系下的坐标。
S604:从目标文档中获取第四位置信息对应的半线框表格内容。
S605:根据半线框表格内容以及框线对,生成第二表格分区对应的半线框表格。
根据上述框线对的位置和大小生成空白半线框表格。可以在目标文档中根据第四位置信息进行截图,从截图中逐行提取半线框表格中的文本内容。
将上述文本内容与空白半线框进行融合,得到该第二表格分区对应的半线框表格。
通过上述过程,可以从目标文档中识别半线框表格文档对象,并进行还原。
在一些实施例中,目标文档的非文本对象包括公式对象,步骤S101包括基于如下步骤解析出目标文档中的公式对象对应的公式分区:
使用正则表达式和预设公式字体识别公式内容,对公式内容进行拼接,得到目标文档中的公式。
在这些实施例中,对于一个公式分区,可以在该分区中通过正则表达式结合公式特殊字体来识别公式中的特殊符号,在识别出公式符号后,对公式内容进行拼接。得到目标文档中的公式。通过上述方式可以识别出目标文档中的全部公式。实现了对目标文档中的公式的识别与还原。
在一些实施例中,请参考图7,上述步骤S101包括如下步骤解析出文本对象分区:
S701:获取非文本对象分区之外的目标文档的文本内容对应的多个文本块。
对于目标文档中的文本内容,可以通过对文本对象解析,得到多个文本块。具体地,可以使用预设格式对应的文本对象解析工具来解析目标文档的文本内容,从而得到多个文本块。每一个文本块可以对应的位置信息和该文本块的文本内容。
每一个文本块文本内容可以包括一个或多个文字。请参考图2A,对目标文档进行文本对象解析得到多个文本块。
S702:基于投影分割算法,对多个文本块进行分区,得到至少一个文本对象分区。
可以逐页对各个页面进行文本对象分区。对于每一个页面,将每个文本块在页面进行水平投影和垂直投影。确定每一个文本块在该页面坐标系下的位置信息,以及包围文本块的矩形框。然后计算各文本块分别对应的矩形框之间的距离。
可以预先设置第一距离阈值,判断上下相邻的文本块对应的矩形框之间的距离是否大预第一距离阈值。若大于第一距离阈值使用一条线将上下文块划分开。可以预先设置第二距离阈值,判断左右相邻的文本块之间的距离是否大预第二距离阈值。若大于第二距离阈值使用一条线将左右相邻的文块划分开。纵向和横向反复判断、划分,这样可以得到至少一个文本对象分区。
可以理解的是,上述第一距离阈值和第二距离阈值可以根据具体的应用场景进行设置,此处不进行限制。
在一些实施例中,该方法还包括:
根据在目标文档页面中确定的非文本对象分区和/或文本对象分区的几何信息,确定目标文档的排版形式,并根据排版形式确定各分区的顺序;
对于每一个文本对象分区,按照文本块的位置信息对多个文本块进行排序。
在得到了文本对象分区后,根据文本对象分区的位置信息确定多个文本对象的次序。
在一些实施例中,上述步骤S102包括:
对于每个文本对象分区,按照文本块的位置信息和/或语义信息对该文本对象分区中的多个文本块进行段落拼接,得到多个文本段落。
在一些应用场景中,对于每一个文本对象分区,该文本对象分区中可以包括多个文本块。可以根据多个文本块的矩形框的位置信息确定多个文本块是否在同一行,若在同一行,将这些文本块进行拼接,得到一行文本块。若下面还有相邻行文本块,根据相邻行的文本块对应的矩形框的位置信息,确定该相邻行与该行之间的距离以及左右对齐等信息。若行间距小于某一定距离阈值,确定该相邻行最左侧文本块的坐标和是否在该行对应的最左侧坐标的左侧或者是否与该行对应的最左侧坐标对齐。
若在该行对应的最左侧坐标的左侧或者与该行对应的最左侧坐标对齐,则将该相邻行划分为与该行为同一文本段落。否则,对该相邻行文本块另起一个段落。依次类推,可以将该文本对象分区中的文块拼接为多个文本段落。
在一些应用场景中,对不同文本块组合的语义信息进行分析,将表征一个完整语义内容的文本块进行拼接,得到一个文本段落。
在一些实施例中,上述对于每个文本对象分区,按照文本块的位置信息和/或语义信息对该文本对象分区中的多个文本块进行段落拼接,得到多个文本段落,包括:
对于处于不同两个文本对象分区中的相邻段落,根据两个文本对象分区中各自对应的至少两个段落确定是否将该相邻段落进行拼接,两个文本对象分区中各自对应的至少两个段落包括相邻段落。
上述不同两个文本对象分区可以为跨栏相邻的两个文本对象分区,或者跨页相邻的两个文本对象分区。
在相邻的两个文本对象分区中,前一文本对象分区的最后一个段落,与后一文本对象分区的第一个段落为相邻段落。该相邻的两个段落之间是否需要拼接,需要根据前一文本对象分区中最后的至少两个段落和后一文本对象分区中的最前面的至少两个段落,确定是否将处于不同分区中的相邻两个段落进行拼接。
例如,对于前一个文本对象分区Q1中的最后一个段落SK,获取文本对象分区Q1中倒数第二个段落SK-1、和倒数第三个段落SK-2。确定出文本对象分区Q1中的各段落SK-1、SK-2最左侧坐标和最右侧坐标。对于后一个文本对象分区Q2中的第一个段落W1,获取文本对象分区Q2中第二个段落W2和第三个段落W3。确定出后一个文本对象分区Q2中的各段落W2、W3最左侧坐标和最右侧坐标。若段落SK最后一行的最左侧坐标与段落SK-1、SK-2最左侧坐标对齐,且文本对象分区Q2中的第一个段落W1与第二个段落W2和第三个段落W3的最左侧坐标对齐。可以初步判断段落Sk与段落W1需要拼接,然后确定段落Sk与段落W1的语义,若该两个段落语义连贯,则将该两个段落拼接为一个段落。
在一些实施例中,上述步骤S101包括:
按照先非文本对象分区后文本对象分区的顺序,解析目标文档的非文本对象分区和文本对象分区。
在这些实施例中,可以先识别目标文档中的非文本对象,然后确定非文本对象对应的非文本对象分区。
在解析出非文本对象分区之后,再解析包括文本对象的文本对象分区。
由于非文本对象中可能包括文本内容,先解析出非文本对象分区再解析文本对象分区,可以避免将非文本对象中的文本内容错误地划分为文本对象分区,从而得到更精确的文本对象分区和非文本对象分区结果。
在一些实施例中,按照先非文本对象分区后文本对象分区的顺序,解析目标文档的非文本对象分区和文本对象分区,包括:
依次解析目标文档中的图片对应的图片分区、表格对应的表格分区、和/或公式对应的公式分区。
在这些实施例中,若目标文档中包括图片、表格和公式,可以按照先图片分区、再表格分区,最后公式分区的顺序解析出目标文档中的非文本对象分区。
在这些实施例中,按照先识别出图片,可以避免由于图片中的内容引起后续表格、公式的误识别。先识别图片和表格,再进行公式识别,可以避免由于图片内容、表格内容引起的公式误识别。进一步提高对非文本对象识别的精确度,从而提高非文本对象分区的准确度。
在一些实施例中,该方法还包括如下步骤:
首先,根据接收到的第一内容生成指令,从多个段落中确定与内容生成指令对应的目标段落。
其次,根据第一内容生成指令和目标段落生成任务信息。
最后,调用第一模型,以由第一模型根据任务信息生成与第一内容生成指令对应的第一内容。
在得到了目标文档各个段落的语义标签后,可以将各段落的语义标签和对应的文本内容进行关联存储,并建立向量索引。
上述第一内容生成指令可以是生成各种内容的指令,例如生成第一内容生成指令中的问题的回复信息的指令。又例如生成文档的总结内容的内容生成指令。或者对文档的内容进行改写的内容生成指令。
在接收到第一内容生成指令后,可以将第一内容生成指令与从目标文档的多个段落进行匹配,根据匹配结果确定出目标段落。
可以将第一内容生成指令和目标段落的内容生成任务信息,例如将第一内容生成指令和目标段落的内容写入到提示模板(prompt模板)生成任务信息。上述目标内容可以包括非文本对象。例如表格、图片或公式等非文本对象。
可以通过预设接口调用第一模型,由上述第一模型根据任务信息,对目标段落进行处理,得到与第一内容生成指令匹配的第一内容。
第一模型可以是语言模型。语言模型可以是使用海量训练语料进行了预训练的、有初步推理能力的模型。
在这些实施例中,通过由目标文档中的与第一内容生成指令匹配的目标段落来生成第一内容,由于目标段落是对目标文档中精确地进行对象识别和还原得到的多个段落中的段落,因此,所确定的目标段落的精确度比较高,不会包含冗余信息,因此,可以较为快速、准确地得到与第一内容生成指令匹配的第一内容。
在一些实施例中,该方法还包括如下步骤:
首先,接收到的第二内容生成指令;
其次,调用第二模型,以由第二模型根据第二内容指令生成第二内容,其中,第二内容由第二模型基于第二内容指令从多个段落中确定的与第二内容生成指令匹配的第二目标段落生成;
上述第二内容生成指令可以是生成各种内容的指令,例如生成第二内容生成指令中的问题的回复信息的指令。又例如生成文档的总结内容的内容生成指令。或者对文档的内容进行改写的内容生成指令。
可以将第二内容生成指令发送给第二模型。第二模型可以是语言模型。语言模型可以是使用海量训练语料进行了预训练的、有初步推理能力的模型。
第二模型可以根据上述第二内容生成指令,获取目标文档对应的多个段落。并从多个段落中根据与第二内容指令的匹配结果确定出目标段落。然后根据第二内容指令根据目标段落进行内容生成,生成第二内容。
示意性地,如果目标文档中记载了动物A的图片A、记载所吃的食物的表格B以及对动物A日常生活的描述的段落C等。第二内容生成指令可以是请总结动物A的外貌特征。则上述第二模型可以根据上述第二内容生成指令确定图片A为对应的目标段落,根据图片A生成动物A的外貌特征描述。
在这些实施例中,通过将第二内容生成指令发送给第二模型,由第二模型根据第二内容生成指令获取目标文档中的目标段落来生成第二内容,可以得到与第二内容生成指令较多的第二内容。
请参考图8,其示出了本公开提供的内容生成方法的示意性流程图。如图8所示,该方法包括如下步骤:
S801:接收第三内容生成指令。
上述内容生成方法的执行主体可以是运行在终端设备中的客户端,也可以是为了客户端提供服务的服务端。
上述第三内容生成指令可以是生成各种内容的指令,例如生成第三内容生成指令中的问题的回复信息的指令。又例如生成文档的总结内容的内容生成指令。或者对文档的内容进行改写的内容生成指令。
用户可以通过客户端中的指令输入窗口向上述执行主体发送第三内容指令。
在一些应用场景中,上述客户端界面中可以显示目标文档的内容。上述目标文档可以是图1、图3所示实施例中的预设格式的文档,此处不赘述。
S802:基于第三内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与第三内容生成指令对应的第三内容;其中,目标文档包括文本对象和非文本对象,多个段落基于如下步骤得到:从目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
在接收到上述第三内容生成指令后,可以从目标文档对应的多个段落中确定目标段落。例如根据与第三内容生成指令的匹配度从多个段落中确定出目标段落。
在一些实施例中,可以预先根据图1、图3~图7所示实施例的方法预先解析出来目标文档中的多个段落。
在另外一些实施例中,在接收到上述第三内容指令后,可以对第三内容指令指示的目标文档进行根据图1、图3~图7所示实施例的方法解析,解析出多个具有语义标签的段落。
上述执行主体可以根据上述目标段落生成与第三内容指令匹配的第三内容。
在一些实施例中,步骤S802包括:将第三内容生成指令发送给第三模型,以由第三模型根据第三指令从目标文档多个段落中确定出与第三内容匹配的目标段落,根据目标段落生成第三内容。
在这些实施例中,可以将第三内容生成指令发送给第三模型。第三模型可以是语言模型。
第三模型可以根据上述第三内容生成指令,获取目标文档对应的多个段落。例如对目标文档按照图1、图3~图7所示实施例的方法解析,解析出多个具有语义标签的段落。然后从多个段落中根据与第三内容指令的匹配度确定出目标段落。再根据目标段落进行内容生成,生成第三内容。
在一些实施例中,步骤S802包括如下步骤:
首先,从由预设格式的目标文档中提取的多个段落中确定与第三内容生成指令匹配的目标段落。
其次,将包括第三内容生成指令和目标段落的内容生成请求发送给第三模型,由第三模型根据目标段落生成第三内容。
可以对目标文档按照图1、图3~图7所示实施例的方法解析,解析出多个具有语义标签的段落。
在得到了目标文档各个段落的语义标签后,可以将各段落的语义标签和对应的文本内容进行关联存储,并建立向量索引。
在接收到第三内容生成指令后,可以将第一内容生成指令与从目标文档的多个段落进行匹配,根据匹配结果确定出目标段落。
可以根据第三内容生成指令和目标段落的内容生成内容生成请求。将内容生成请求发送给第三模型,由第三模型根据目标段落的内容生成第三内容。
在一些实施例中,该方法还包括:
展示第三内容。
在这些实施例中,在得到了第三内容后,可以展示第三内容,以便用户阅读。
在本实施例中,在接收到第三内容生成指令后,根据第三内容生成指令和目标文档中的与第一内容生成指令匹配的目标段落来生成第三内容,由于目标段落是对目标文档中精确地进行对象识别和还原得到的多个段落中的段落,因此,所确定的目标段落的精确度比较高,不会包含冗余信息,因此,可以较为快速、准确地得到与第三内容生成指令匹配的第三内容。
对应于上文图1所示实施例的文档处理方法,图9为本公开实施例提供的文档处理装置的示意性结构图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图9,装置90包括:解析单元901、第一生成单元902和第一生成单元903。其中,
解析单元901,用于响应于接收到针对预设格式的目标文档的第一指令,解析目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;
拼接单元902,用于基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;
第一生成单元903,用于根据段落的位置信息和语义信息生成段落的语义标签。
在一些实施例中,非文本对象包括非矢量图对象,上述解析单元901进一步用于基于如下步骤解析出目标文档中的非矢量图片对象对应的第一图片分区:
对于非矢量图片,基于目标文档的底层协议获取非矢量图片对应的第一位置信息,其中第一位置信息为第一图片分区的位置信息;
基于第一位置信息在目标文档中截取非矢量图片,得到第一图片分区对应的非矢量图片。
在一些实施例中,非文本对象包括矢量图对象,上述解析单元901进一步用于基于如下步骤解析出目标文档中的矢量图片对象对应的第二图片分区:
隐藏目标文档中的文本内容;
在隐藏了文本内容的目标文档中,识别矢量图片对应的第二位置信息以及无文本内容的第一矢量图片;第二位置信息作为第二图片分区的位置信息;
根据第二位置信息确定第一矢量图片中的文本内容;
将第一矢量图片和文本内容进行融合,作为第二图片分区对应的矢量图片。
在一些实施例中,非文本对象包括有线框表格对象,上述解析单元901进一步用于基于如下步骤解析出目标文档中的有线框表格对象对应的第一表格分区:
获取包围有线框表格的矩形框的第三位置信息,以及有线框表格中各第一单元格的信息,其中,第三位置信息为第一表格分区的位置信息;
根据各第一单元格的邻接单元格的信息,对多个第一单元格进行合并,得到合并后的多个第二单元格;
确定多个第二单元格中最小单元格的大小,并确定其他单元格与最小单元格之间的比例关系;
根据比例关系生成第一表格分区对应的空白有线框表格;
将目标文档中第三位置信息对应的文本内容矩形框与空白有线框表格进行融合,得到第一表格分区对应的有线框表格。
在一些实施例中,非文本对象包括半线框表格对象,上述解析单元901进一步用于基于如下步骤解析出目标文档中的半线框表格对象对应的第二表格分区:
基于投影分割算法及图像识别算法,识别用于界定半线框表格的框线;
根据识别出的框线的位置和大小,确定用于界定半线框的框线对;
将框线对确定的第四位置信息作为第二表格分区的位置信息;
从目标文档中获取第四位置信息对应的半线框表格内容;
将半线框表格内容写入半线框表格,得到第二表格分区对应的半线框表格。
在一些实施例中,非文本对象包括公式对象,述解析单元901进一步用于基于如下步骤解析出目标文档中的公式对象对应的公式分区:
使用正则表达式和预设公式字体识别公式内容,对公式内容进行拼接,得到目标文档中的公式。
在一些实施例中,上述解析单元901进一步用于:
获取非文本对象分区之外的目标文档的文本内容对应的多个文本块;
基于投影分割算法,对多个文本块进行分区,得到至少一个文本对象分区。
在一些实施例中,上述解析单元901进一步用于:
根据在目标文档页面中确定的多个分区的几何信息,确定目标文档的排版形式,并根据排版形式确定各分区的次序。
在一些实施例中,拼接单元902进一步用于:
对于每个文本对象分区,按照文本块的位置信息和/或语义信息对该文本对象分区中的多个文本块进行段落拼接,得到多个文本段落。
在一些实施例中,拼接单元902进一步用于:
对于处于不同两个文本对象分区中的相邻段落,根据两个文本对象分区中各自对应的至少两个段落确定是否将该相邻段落进行拼接,两个文本对象分区中各自对应的至少两个段落包括相邻段落。
在一些实施例中,上述解析单元901进一步用于:
按照先非文本对象分区后文本对象分区的顺序,解析目标文档的非文本对象分区和文本对象分区。
在一些实施例中,上述解析单元901进一步用于:
依次解析目标文档中的图片对应的图片分区、表格对应的表格分区、公式对应的公式分区。
在一些实施例中,装置90还包括第一内容生成单元(图中未示出)。第一内容生成单元用于:
根据第一内容生成指令和目标段落生成任务信息;
调用第一模型,以由第一模型根据任务信息生成与第一内容生成指令对应的第一内容。
在一些实施例中,装置90还包括第二内容生成单元(图中未示出)。第二内容生成单元用于:
接收到的第二内容生成指令;
调用第二模型,以由第二模型根据第二内容指令生成第二内容,其中,第二内容由第二模型基于第二内容指令从多个段落中确定的与第二内容生成指令匹配的第二目标段落生成。
对应于上文图7所示实施例的内容生成方法,图10为本公开实施例提供的内容生成装置的示意性结构图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图10,装置100包括:接收单元1001和第二生成单元1002。
其中,
接收单元1001,用于接收第三内容生成指令;
第二生成单元1002,用于基于内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与第三内容生成指令对应的第三内容;其中,目标文档包括文本对象和非文本对象,多个段落基于如下步骤得到:从目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
在一些实施例中,第二生成单元1002进一步用于:
将第三内容生成指令发送给第三模型,以由第三模型根据第三指令从目标文档多个段落中确定出与第三内容匹配的目标段落,根据目标段落生成第三内容。
在一些实施例中,第二生成单元1002进一步用于:
从由预设格式的目标文档中提取的多个段落中确定与第三内容生成指令匹配的目标段落;
将包括第三内容生成指令和目标段落的内容生成请求发送给第三模型,由第三模型根据目标段落生成第三内容。
在一些实施例中,上述装置100还包括显示单元(图中未示出)。显示单元用于:
展示第三内容。
为了实现上述实施例,本公开实施例还提供了一种电子设备。
参考图11,其示出了适于用来实现本公开实施例的电子设备1100的结构示意图,该电子设备1100可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(PortableMedia Player,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图11示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,电子设备1100可以包括处理装置(例如中央处理器、图形处理器等)1101,其可以根据存储在只读存储器(Read Only Memory,简称ROM)1102中的程序或者从存储装置1108加载到随机访问存储器(Random Access Memory,简称RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有电子设备1100操作所需的各种程序和数据。处理装置1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
通常,以下装置可以连接至I/O接口1105:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1106;包括例如液晶显示器(Liquid CrystalDisplay,简称LCD)、扬声器、振动器等的输出装置1107;包括例如磁带、硬盘等的存储装置1108;以及通信装置1109。通信装置1109可以允许电子设备1100与其他设备进行无线或有线通信以交换数据。虽然图11示出了具有各种装置的电子设备1100,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1109从网络上被下载和安装,或者从存储装置1108被安装,或者从ROM 1102被安装。在该计算机程序被处理装置1101执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序(计算机执行指令)被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (22)

1.一种文档处理方法,其特征在于,包括:
响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;
基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;
根据段落的位置信息和语义信息生成段落的语义标签。
2.根据权利要求1所述的方法,其特征在于,所述非文本对象包括非矢量图对象,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括基于如下步骤解析出目标文档中的非矢量图片对象对应的第一图片分区,所述第一图片分区属于所述非文本对象分区:
对于非矢量图片,基于所述目标文档的底层协议获取非矢量图片对应的第一位置信息,其中所述第一位置信息为所述第一图片分区的位置信息;
基于所述第一位置信息在所述目标文档中截取所述非矢量图片,得到第一图片分区对应的非矢量图片。
3.根据权利要求1所述的方法,其特征在于,所述非文本对象包括矢量图对象,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括基于如下步骤解析出目标文档中的矢量图片对象对应的第二图片分区:
隐藏所述目标文档中的文本内容;
在隐藏了所述文本内容的目标文档中,识别矢量图片对应的第二位置信息以及无文本内容的第一矢量图片;所述第二位置信息作为第二图片分区的位置信息;
根据所述第二位置信息确定所述第一矢量图片中的文本内容;
将所述第一矢量图片和所述文本内容进行融合,作为所述第二图片分区对应的矢量图片。
4.根据权利要求1所述的方法,其特征在于,所述非文本对象包括有线框表格对象,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括基于如下步骤解析出目标文档中的有线框表格对象对应的第一表格分区:
获取包围所述有线框表格的矩形框的第三位置信息,以及所述有线框表格中各第一单元格的信息,其中,所述第三位置信息为第一表格分区的位置信息;
根据各第一单元格的邻接单元格的信息,对多个第一单元格进行合并,得到合并后的多个第二单元格;
确定所述多个第二单元格中最小单元格的大小,并确定其他单元格与所述最小单元格之间的比例关系;
根据所述比例关系生成第一表格分区对应的空白有线框表格;
将所述目标文档中所述第三位置信息对应的文本内容矩形框与所述空白有线框表格进行融合,得到第一表格分区对应的有线框表格。
5.根据权利要求1所述的方法,其特征在于,所述非文本对象包括半线框表格对象,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括基于如下步骤解析出目标文档中的半线框表格对象对应的第二表格分区:
基于投影分割算法及图像识别算法,识别用于界定半线框表格的框线;
根据识别出的框线的位置和大小,确定用于界定半线框的框线对;
将所述框线对确定的第四位置信息作为第二表格分区的位置信息;
从所述目标文档中获取所述第四位置信息对应的半线框表格内容;
将所述半线框表格内容写入所述半线框表格,得到所述第二表格分区对应的半线框表格。
6.根据权利要求1所述的方法,其特征在于,所述非文本对象包括公式对象,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括基于如下步骤解析出目标文档中的公式对象对应的公式分区:
使用正则表达式和预设公式字体识别公式内容,对公式内容进行拼接,得到目标文档中的公式。
7.根据权利要求1所述的方法,其特征在于,所述解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区,包括:
获取非文本对象分区之外的目标文档的文本内容对应的多个文本块;
基于投影分割算法,对多个文本块进行分区,得到至少一个文本对象分区。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
根据在所述目标文档页面中确定的多个分区的几何信息,确定所述目标文档的排版形式,并根据所述排版形式确定各分区的次序。
9.根据权利要求1所述的方法,其特征在于,所述基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落,包括:
对于每个文本对象分区,按照文本块的位置信息和/或语义信息对该文本对象分区中的多个文本块进行段落拼接,得到多个文本段落。
10.根据权利要求9所述的方法,其特征在于,所述对于每个文本对象分区,按照文本块的位置信息和/或语义信息对该文本对象分区中的多个文本块进行段落拼接,得到多个文本段落,还包括:
对于处于不同两个文本对象分区中的相邻段落,根据所述两个文本对象分区中各自对应的至少两个段落确定是否将该相邻段落进行拼接,所述两个文本对象分区中各自对应的至少两个段落包括所述相邻段落。
11.根据权利要求1所述的方法,其特征在于,所述解析所述目标文档中的至少一个非文本对象分区和至少一个文本对象分区,包括:
按照先非文本对象分区后文本对象分区的顺序,解析所述目标文档的非文本对象分区和文本对象分区。
12.根据权利要求11所述的方法,其特征在于,所述按照先非文本对象分区后文本对象分区的顺序,解析所述目标文档的非文本对象分区和文本对象分区,包括解析如下非文本对象分区:
依次解析目标文档中的图片对应的图片分区、表格对应的表格分区、和/或公式对应的公式分区。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据接收到的第一内容生成指令,从所述多个段落中确定与所述内容生成指令对应的目标段落;
根据所述第一内容生成指令和所述目标段落生成任务信息;
调用第一模型,以由所述第一模型根据所述任务信息生成与所述第一内容生成指令对应的第一内容。
14.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收到的第二内容生成指令;
调用第二模型,以由第二模型根据所述第二内容指令生成第二内容,其中,所述第二内容由所述第二模型基于所述第二内容指令从所述多个段落中确定的与所述第二内容生成指令匹配的第二目标段落生成。
15.一种内容生成方法,包括:
接收第三内容生成指令;
基于所述第三内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与所述第三内容生成指令对应的第三内容;
其中,所述目标文档包括文本对象和非文本对象,所述多个段落基于如下步骤得到:从所述目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
16.根据权利要求15所述的方法,其特征在于,所述基于所述内容生成指令和从由预设格式的目标文档中提取的多个段落中的目标段落,生成与所述第三内容生成指令对应的第三内容,包括:
将所述第三内容生成指令发送给第三模型,以由所述第三模型根据所述第三指令从所述目标文档多个段落中确定出与所述第三内容匹配的目标段落,根据所述目标段落生成所述第三内容。
17.根据权利要求15所述的方法,其特征在于,所述基于所述内容生成指令和从由预设格式的目标文档中提取的多个段落中的目标段落,生成与所述第三内容生成指令对应的第三内容,包括:
从由预设格式的目标文档中提取的多个段落中确定与所述第三内容生成指令匹配的目标段落;
将包括所述第三内容生成指令和所述目标段落的内容生成请求发送给第三模型,由所述第三模型根据所述目标段落生成所述第三内容。
18.根据权利要求15至17中任意一项所述的方法,其特征在于,所述方法还包括:
展示所述第三内容。
19.一种文档处理装置,其特征在于,包括:
解析单元,用于响应于接收到针对预设格式的目标文档的第一指令,解析所述目标文档中非文本对象分区和文本对象分区,得到至少一个非文本对象分区和至少一个文本对象分区;
拼接单元,用于基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落;
第一生成单元,用于根据段落的位置信息和语义信息生成段落的语义标签。
20.一种内容生成装置,包括:
接收单元,用于接收第三内容生成指令;
第二生成单元,用于基于所述内容生成指令和从由预设格式的目标文档中提取的多个段落中目标段落,生成与所述第三内容生成指令对应的第三内容;其中,所述目标文档包括文本对象和非文本对象,所述多个段落基于如下步骤得到:从所述目标文档中解析出至少一个非文本对象分区和至少一个文本对象分区;基于对象的语义信息和几何信息分别对非文本对象分区和文本对象分区中的非文字对象和文字对象进行段落拼接,得到多个段落。
21.一种电子设备,其特征在于,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求1至18任一项所述的方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至18任一项所述的方法。
CN202311570217.1A 2023-11-22 2023-11-22 文档处理、内容生成方法、装置及电子设备 Pending CN117610549A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311570217.1A CN117610549A (zh) 2023-11-22 2023-11-22 文档处理、内容生成方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311570217.1A CN117610549A (zh) 2023-11-22 2023-11-22 文档处理、内容生成方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN117610549A true CN117610549A (zh) 2024-02-27

Family

ID=89949072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311570217.1A Pending CN117610549A (zh) 2023-11-22 2023-11-22 文档处理、内容生成方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN117610549A (zh)

Similar Documents

Publication Publication Date Title
US11244208B2 (en) Two-dimensional document processing
KR20160132842A (ko) 플로우 문서를 생성하기 위한 이미지 문서 컴포넌트 검출 및 추출 기법
JP4461769B2 (ja) 文書検索・閲覧手法及び文書検索・閲覧装置
US9898452B2 (en) Annotation data generation and overlay for enhancing readability on electronic book image stream service
CN111680491B (zh) 文档信息的抽取方法、装置和电子设备
US11741735B2 (en) Automatically attaching optical character recognition data to images
CN112269872B (zh) 简历解析方法、装置、电子设备及计算机存储介质
CN114429637B (zh) 一种文档分类方法、装置、设备及存储介质
CN114218889A (zh) 文档处理及文档模型的训练方法、装置、设备和存储介质
WO2023280106A1 (zh) 信息获取方法、装置、设备及介质
CN115659917A (zh) 一种文档版式还原方法、装置、电子设备及存储设备
CN114724166A (zh) 一种标题抽取模型的生成方法、装置及电子设备
JP2022185143A (ja) テキスト検出方法、テキスト認識方法及び装置
CN112486338A (zh) 医疗信息处理方法、装置及电子设备
CN111881900B (zh) 语料生成、翻译模型训练、翻译方法、装置、设备及介质
CN113255501A (zh) 生成表格识别模型的方法、设备、介质及程序产品
CN112487883A (zh) 智能笔书写行为特征分析方法、装置及电子设备
CN116860747A (zh) 训练样本的生成方法、装置、电子设备及存储介质
CN111930976A (zh) 演示文稿生成方法、装置、设备及存储介质
CN115130437B (zh) 一种文档智能填写方法、装置及存储介质
US20220392243A1 (en) Method for training text classification model, electronic device and storage medium
CN116052195A (zh) 文档解析方法、装置、终端设备和计算机可读存储介质
US20220301285A1 (en) Processing picture-text data
CN113486171B (zh) 一种图像处理方法及装置、电子设备
CN115331247A (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