结合RPA和AI的图像数据处理方法与电子设备
相关申请的交叉引用
本申请要求北京奔影网络科技有限公司于2020年3月31日提交的、申请名称为“图像数据处理方法与电子设备、可读存储介质”的、中国专利申请号“202010242663.X”的优先权。
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种结合RPA(Robotic ProcessAutomation,机器人流程自动化)和AI(Artificial Intelligence,人工智能)的图像数据处理方法与电子设备、可读存储介质。
背景技术
机器人流程自动化(Robotic Process Automation,简称:RPA)是通过特定的“机器人软件”,模拟人在计算机上的操作,按规则自动执行流程任务。
人工智能(Artificial Intelligence,简称:AI)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。目前,RPA和AI技术具有自动化程度高、精确度高、成本低的优点,得到了广泛的应用。
在办公场景中,截图或扫描件等电子化文档成为一种便捷的数据传递和存储方式,用户常常对纸质表格文件或报告等不可编辑文档进行截图或扫描来转发和存储数据,并通过人为查看和录入的方式提取其中的关键要素信息并进行后续的记录操作。这种情况下,接收端无法直接对图片中的表格信息进行内容提取和编辑,常常需要通过人为阅读识别表格图像中的内容,并手动将图片中表格的数据编辑到另外的业务流程系统中。
这种处理方式极大地影响了转发数据的可应用性。需要人工处理编辑后才能进一步使用数据,步骤繁琐且容易出错,数据处理效率较低。
发明内容
针对上述问题,本公开提供了一种结合RPA和AI的图像数据处理方法与电子设备、可读存储介质,将原本需要人为理解并判断的流程,完全通过自动化处理,进一步提升自动化流程的覆盖范围,提升整体效率。
第一方面,本公开实施例提供一种结合RPA和AI的图像数据处理方法,包括:
RPA系统获取第一表格图像,所述第一表格图像中包含表格;
RPA系统识别所述第一表格图像中的字符,得到字符识别结果;
RPA系统基于所述字符识别结果,生成所述表格的字符串;
RPA系统基于预设的数据对模板,提取并输出所述字符串中的数据对。
第二方面,本公开实施例提供一种电子设备,包括:处理模块与收发模块;其中,
所述处理模块,用于:
获取第一表格图像,所述第一表格图像中包含表格;
识别所述第一表格图像中的字符,得到字符识别结果;
基于所述字符识别结果,生成所述表格的字符串;
基于预设的数据对模板,提取所述字符串中的数据对;
所述收发模块,用于输出所述数据对。
第三方面,本公开实施例提供一种电子设备,包括:至少一个处理器和存储器;所述存储器存储计算机执行指令;所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面所述的方法。
本公开实施例提供一种结合RPA和AI的图像数据处理方法与电子设备、可读存储介质。本方案中,RPA系统通过对包含表格的第一表格图像进行识别,得到该图像的字符识别结果,从而,RPA系统生成该表格的字符串,进而,RPA系统基于数据对模板,在字符串中提取出符合数据对模板的数据对并输出。在该实现方式中,无需用户手动编辑,而是通过RPA系统识别字符、生成字符串、提取并输出数据对的方式,实现自动的处理流程,有利于提升自动化流程的覆盖范围,提升整体效率。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种图像数据处理场景的示意图;
图2为本公开实施例提供的一种结合RPA和AI的图像数据处理方法的流程示意图;
图3为本公开实施例提供的一种RPA系统利用背景表格对图1所示的图像1进行行列编号的示意图;
图4为本公开实施例提供的一种电子设备的功能方块图;
图5为本公开实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本发明实施例所提供的结合RPA和AI的图像数据处理方法应用于电子设备。具体而言,该电子设备可以为终端。
其中,本发明实施例所涉及到的终端可以为无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(RadioAccess Network,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless Local Loop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(SubscriberStation),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(User Agent)、用户设备(User Device or User Equipment),在此不作限定。可选的,上述终端设备还可以是智能手表、平板电脑等设备。
本公开实施例所提供的技术方案可以适应于提取图像中表格的数据的场景。示例性的,可以参考图1所示的图像数据处理场景的示意图。如图1所示,图像1中包含有表格1,表格1中包含有多行多列数据,而本公开实施例所提供的技术方案,意在对该图像1进行处理,得到图1右侧的表格2,表格2中的数据可供用户编辑使用。
应当理解,图1仅为示例性的,实际场景中,图像1可以包含一个或多个表格,以下为便于说明,以图像1中仅包含一个表格1为例进行说明。以及,本公开实施例对于表格1中所携带的表格数据无特别限制。换言之,本公开实施例所提供的技术方案适用于携带任意数目或内容的电子表格的图像的表格数据提取场景。
前述场景在办公场景中较为常见。示例性的,在办公场景中,用户A对纸质的电子表格进行扫描或截图,得到包含表格的表格图像(包括:扫描图片或截图图片),并通过邮件或通信软件(Application,APP)将表格图像向用户B发送。那么,用户B在接收到表格图像后,即面对如何从表格图像中提取出表格数据,进而使用表格数据的问题。
如前所述,目前,用户在使用表格图像时,通常是通过人为阅读识别表格图像中的内容,并手动将图片中表格的数据编辑到另外的业务流程系统中。这种处理方式极大地影响了表格图像的可应用性,步骤繁琐且容易出错,数据处理效率较低。
本公开实施例提供的技术方案,旨在解决如上技术问题。
下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
实施例一
本发明实施例提供了一种结合RPA和AI的图像数据处理方法。请参考图2,该方法包括如下步骤:
S202,RPA系统获取第一表格图像,第一表格图像中包含表格。
在本公开实施例中,执行主体为RPA(Robotic Process Automation,机器人流程自动化)系统,RPA系统可预先设置在工作站、服务器,计算机、用户终端及其他设备上。
第一表格图像可以为任意一张包含有任意表格的图片。如图1所示的图像1。
任意一张第一表格图像,可以是通过截图获取到的,或者,也可以是通过扫描得到,或者,还可以是对视频进行图像提取得到的,本公开实施例对其来源无特别限制。
S204,RPA系统识别第一表格图像中的字符,得到字符识别结果。
该步骤用于在第一表格图像中识别出其中的字符。考虑到第一表格图像中包含表格,各字符在表格中的位置也直接影响最终的输出结果,基于此,本公开实施例中,在该步骤识别出来的字符识别结果,包括表格中各单元格的识别结果。
其中,对于任意一个单元格,单元格的识别结果包括:字符信息与位置信息。其中,位置信息用于指示字符在表格中所处的位置。具体的实现场景中,位置信息可以包括但不限于:行信息与列信息。
其中,行信息可用于指示字符所在的单元格位于表格中的起始行和/或终止行,列信息可用于指示字符所在单元格位于表格中的起始列和/或终止列。具体实现时,可以通过行号(起始行号和/或终止行号)、列号(起始列号和/或终止列号)对行信息、列信息分别进行标识。
后续对识别方式作具体说明。
S206,RPA系统基于字符识别结果,生成表格的字符串。
在该步骤中,RPA系统可以按照表格中各单元格的位置信息,将各单元格的识别结果进行串联,得到表格的字符串。具体而言,可以基于各单元格在表格中所处的位置,按照预设次序进行串联。
预设次序可以以任意方式预设。示例性的,可以按照从左到右、从上到下的顺序,对表格中各单元格的字符识别结果进行串联,来生成字符串。示例性的,还可以按照从上到下,从右到左的顺序,对表格中各单元格的字符识别结果进行串联,来生成字符串。对此不作穷举。
后续具体说明字符串的具体格式。
S208,RPA系统基于预设的数据对模板,提取并输出字符串中的数据对。
本公开的一种实施例中,数据对模板包括:键(key)的信息与键值(Value)信息,也就是,数据对模板可以为Key-Value的数据对。其中,Key信息包括:Key的字符和Key的位置;Value信息包括:Value字符与Value位置。在数据对模板中,Key和Value的位置需要满足预设的条件。
例如,图1中的表格1中,“姓名”作为Key,而“张三”则是“姓名”这个key对应的Value,如此,RPA系统可以在图1中提取出“姓名-张三”这一数据对。
又例如,图1中的表格1中,“地址”作为Key,而“北京市海淀区西直门北大街32号”则是“地址”这个key对应的Value,如此,RPA系统可以在图1中提取出“地址-北京市海淀区西直门北大街32号”这一数据对。
不作穷举。
除此之外的另一种实施例中,预设的数据对模板中Key可以为空,此时,数据对模板仅包含键值信息(Value)。此时,无需匹配Key,而直接基于Value的位置信息实现数据抽取。可以理解,这种实现方式对单元格的位置信息的准确度有较高要求。
例如,预设的数据对模板仅包含一个Value的位置信息,例如,如第一行第二列,则可以在字符串中提取该位置的数据,如此,RPA系统可以在表格1中提取出数据对“-张三”。不作穷举。
此外,可以理解,预设的数据对模板与字符串的数据表示格式可以相同或者不同。后续结合字符串的格式进行说明。
综上,通过图2所示的处理,本公开实施例能够实现对表格图像的自动数据提取,无需用户手动编辑,而是通过RPA系统识别字符、生成字符串、提取并输出数据对的方式,实现自动的处理流程,有利于提升自动化流程的覆盖范围,提升整体效率。
现以图2所示实施例为基础,对本公开实施例的具体实现方式进行说明。
首先,S204在实现时,RPA系统可以首先对第一表格图像进行行列编号,之后再对行列编号后的第二表格图像进行字符识别的方式来实现。
所谓对表格中的单元格进行编号,即是对第一表格图像中的表格标记行号(作为行信息)与列号(作为列信息)。本公开实施例对于对行列号的编号方式无特别限制,其可以具体为数字、字符、符号(例如+、-、*等,无特别限制)中的一种或多种的组合。后续结合图3作具体说明。
本公开实施例中,RPA系统对第一表格图像进行行列编号时,可以通过携带行列号的背景表格来实现。而对表格图像进行字符识别,则可以通过光学字符识别(OpticalCharacter Recognition,OCR)方法来处理实现。
换言之,在本公开的一种具体的实施例中,S204可以包括如下步骤:首先,RPA系统利用携带行列号的背景表格,对第一表格图像中的表格进行行列标记,形成包含行列标记的第二表格图像;然后,RPA系统利用光学字符识别OCR方法,对第二表格图像进行识别,得到字符识别结果。
示例性的,图3示出了一种RPA系统利用背景表格对图1所示的图像1进行行列编号的示意图。如图3所示,背景表格用于对与背景表格的格式相同的表格或表格图像进行行列编号。由此,一张背景表格,可以用于对相同格式的多个表格图像进行行列编号。
示例性的,如图3所示,在背景表格中,行号通过“R+数字”的方式进行标识,列号通过“C+数字”的方式进行标识,其中,数字从0开始依次增加编号。RPA系统利用背景表格对第一表格图像进行行列标记后,可以得到图像1对应的图像2,图像2包含行列标记,如此,后续RPA系统对图像2进行字符识别,即可得到各字符的位置信息。后续具体说明字符识别方法。
应当理解,图3所示的行列编号方式仅为示意性的,实际以场景中,行号可以从上向下递增编号,也可以从上向下递减编号,或者,也可以从下向上递增或递减编号;列号可以从左到右递增或递减编号,或者,也可以从右到左递增或递减编号。以及,数字的起始值也仅为示意性的,实际场景中,可以预设任意数字作为起始值(例如,图3中起始值为0),以及,数字递增或递减的步长也可以为任意的预设值,不作穷举。
RPA系统在对单元格进行行列编号时,可以单元格为编号的最小单元,此时,一个单元格中可能会包括一行或多行数据,有可能包含一列或多列数据,如图3所示。由此,RPA系统对编号后第二表格图像进行OCR识别后,字符识别结果可以有多种可能的情况。
示例性的一种实施例中,字符识别结果可以包括:字符、起始行号、终止行号、起始列号、终止列号。示例性的,另一种实施例中,字符识别结果可以包括:字符、起始行号、起始列号。示例性的,另一种实施例中,字符识别结果可以包括:字符、起始行号、起始列号、终止列号。不作穷举。
在具体实现本方案时,若背景表格中不涉及单元格合并的情况时,单元格的起始行号和终止行号相同,单元格的起始列号和终止列号也相同。这种情况下,字符识别结果可以包括:起始行号与终止行号中的一种、起始列号与终止列号中的一种、字符。
但是,若背景表格涉及到单元格合并这种情况时,单元格的起始行号和终止行号可能不同,单元格的起始列号和终止列号也可能不同。这种情况下,字符识别结果可以尽可能全面。例如,可以包括字符、起始行号与终止行号、起始列号与终止列号。
示例性的,若表格1中的“简历”为合并单元格,具体的,简历右侧对应于两个单元格,分别为:“就学简历”与“就业简历”。如此,对于合并后的单元格“简历”,其起始行号为R3,终止行号为R4;而“就学简历”的起始行号和终止行号都是R3,“就业简历”的起始行号和终止行号都是R4。
又例如,图1与图3中的表格中,都涉及单元格“北京市海淀区西直门北大街32号”,该单元格的起始行号和终止行号都是R1,而起始列号为C1,终止列号为C5。
基于前述处理,可以得到字符识别结果。该字符识别结果可以为Json识别结果。
基于前述处理,RPA系统可以通过OCR识别来得到较为准确的字符识别结果。具体实现时,RPA系统可以调用OCR引擎,并将待识别的数据,如前述第二图像输入该OCR引擎,并获取OCR引擎输出的数据,即可得到字符识别结果。
如前,在S206中,RPA系统基于字符识别结果生成字符串时,可以将每个单元格的识别结果中,将字符、行信息、列信息按照预设顺序进行罗列,然后,RPA系统针对任意相邻的两个单元格,通过预设的连接符进行串联,以此来得到表格的字符串。
其中,连接符可以根据需要预设。示例性的,该连接符可以为“^”。如此,在该实施例中,以图1中的表格1中的第一行数据为例,RPA系统按照从左到右的顺序将各单元格的识别结果进行串联,得到该行数据的字符串为:R0C0姓名^R0C1张三^R0C2性别^R0C3男^R0C4年龄^R0C529^R0C6出生年月^R0C71982.10。
该举例仅为示意性的。本公开实施例对于每个单元格的识别结果中,字符、行信息、列信息的排列顺序无特别限制。以及,前述举例中,行信息可以为起始行的行号或者终止行的行号,在其他的可能的实施例中,还可以同时包含起始行和终止行的行号。列号亦可这样处理,不再赘述。
本公开实施例中,S206实现时,RPA系统可以生成一个字符串,此时,该字符串包含整个表格中各单元格的识别结果的串联字符。由此,还涉及到行与行之间的串联情况。换言之,该步骤生成的字符串,是表格中的各单元格的识别结果逐行串联得到的。
这种情况下,在该字符串的任意相邻的两行数据之间,仍然可以通过前述连接符实现行与行之间的字符串联。
示例性的,仍以图1中的前两行数据为例,若RPA系统以起始行作为行信息,并以起始列作为列信息,则字符串可以表示为:R0C0姓名^R0C1张三^R0C2性别^R0C3男^R0C4年龄^R0C5 29^R0C6出生年月^R0C7 1982.10^R1C0地址^R1C1北京市海淀区西直门北大街32号^R1C6职务^R1C7经理。
示例性的,仍以图1中的前两行数据为例,若RPA系统以起始行(记为R1)和终止行(记为R2)作为行信息,以起始列(记为C1)和终止列(记为C2)作为列信息,则该字符串可以表示为:R10C10 R20C20姓名^R10C11 R20C21张三^R10C12 R20C22性别^R10C13 R20C23男^R10C14 R20C24年龄^R10C15 R20C25 29^R10C16 R20C26出生年月^R10C17 R20C271982.10^R11C10 R21C20地址^R11C11 R21C26北京市海淀区西直门北大街32号^R11C16R21C26职务^R11C17 R21C27经理。
此外的另一种实施例中,RPA系统在该字符串的任意相邻的两行数据之间,可以通过预设的间隔符实现行与行之间的字符串联。该间隔符与连接符不同。
此时,间隔符可以与连接符相关。示例性的,间隔符可以包含有连接符。,例如,可以将两个连续的连接符作为间隔符“^^”,或者,间隔符可以由连接符和其他符号组成,例如“^&”。或者,间隔符也可以与连接符无关。例如,间隔符可以为任意符号,例如“*”。
应当理解,本公开实施例对于连接符和间隔符的表现形式仅为示意性的,实际场景中,间隔符和连接符可以自定义设计,其可以为一个字符或多个字符。
假设间隔符为“*”,此时,对比前述实施例提及的两种情况举例说明。
示例性的,仍以图1中的前两行数据为例,若RPA系统以起始行和起始列作为行信息和列信息,则字符串可以表示为:R0C0姓名^R0C1张三^R0C2性别^R0C3男^R0C4年龄^R0C529^R0C6出生年月^R0C7 1982.10*R1C0地址^R1C1北京市海淀区西直门北大街32号^R1C6职务^R1C7经理。
示例性的,仍以图1中的前两行数据为例,若RPA系统以起始行(记为R1)和终止行(记为R2)作为行信息,以起始列(记为C1)和终止列(记为C2)作为列信息,则该字符串可以表示为:R10C10 R20C20姓名^R10C11 R20C21张三^R10C12 R20C22性别^R10C13 R20C23男^R10C14 R20C24年龄^R10C15 R20C25 29^R10C16 R20C26出生年月^R10C17 R20C271982.10*R11C10 R21C20地址^R11C11 R21C26北京市海淀区西直门北大街32号^R11C16R21C26职务^R11C17 R21C27经理。
在执行S208步骤中的数据对提取输出步骤时,可以按照如下方式实现:RPA系统获取预设的数据对模板,从而,RPA系统针对每个数据对模板,在字符串中提取符合该数据对模板的数据对,进而,RPA系统输出提取到的数据对。
如前,数据对模板可以具体为一对Key-Value的数据对,或者,还可以为Key信息为空的、仅包括“Value”值的数据对。
本公开的一种实施例中,RPA系统可以预设数据对模板的模板集合,模板集合中可以包括多个数据对模板。如此,在执行该步骤时,RPA系统需要针对模板集合中的每个数据对模板,分别在生成的字符串中进行匹配提取。
其中,在前述实施例中,模板集合可以是对所有表格都通用的。此时,无需进行个性化区分,只需要预设一个模板集合即可。
或者,RPA系统还可以针对每个背景表格分别预设对应的模板集合。这种实现方式在实现时,有利于加快对同一类型的第一表格图像的数据提取效率。在该实施例中,存储器中可以存储有各背景表格对应的模板集合,因此,在执行S208时,只需要获取背景表格对应的一个模板集合即可。
具体进行匹配时,RPA系统可以利用正则匹配算法,在字符串中分别对每个数据对模板进行匹配,RPA系统若匹配成功,提取匹配到满足数据对模板的数据对。反之,RPA系统若匹配失败,则继续对下一个数据对模板进行匹配,直至遍历完所有的数据对模板。
为便于理解,以图1(或图3中)表格1生成的字符串为“R0C0姓名^R0C1张三^R0C2性别^R0C3男^R0C4年龄^R0C5 29^R0C6出生年月^R0C7 1982.10^R1C0地址^R1C1北京市海淀区西直门北大街32号^R1C6职务^R1C7经理”为例,对数据对模板的匹配过程进行说明。
若预设的Key-Value模板为:[R0C0]<姓名>[^][R0C1]<*>{:姓名},或,[R0C0]<姓名>[^][R0C1]<*>{:姓名}^。则RPA系统在前述字符串中进行匹配时,RPA系统判断是否存在满足“R0C0姓名^R0C1{:姓名}^”这一格式要求的字符组合。如此,在前述字符串中,RPA系统可以匹配到的满足前述格式要求的字符为“张三”,则可以在前述字符串中提取出一对Key-Value为:“姓名-张三”。
如前的实施例中,RPA系统可以基于数据对模板中规定的Key与Value之间的位置关系、Key的字符信息来提取出Value的字符信息。
除实现前述实施例这种精确匹配之外,本公开实施例还可以实现模糊匹配,或称为:非精确匹配、非严格匹配。
示例性的,在一个数据对模板中,Key的位置、Value的位置、Key的值中的一个或多个,其在数据对模板中的预设值可以为多个。换言之,只要字符串中能够满足其中的一个预设值,即可匹配到满足数据对模板要求的数据对。如此,可以实现对内容和/或位置的模糊匹配,有利于提高为字符识别结果的容错能力。
举例说明。预设的Key-Value模板可以为:[R0][C7/C6]<出生年月/生日>[^][R0][C8/C7]<*>{:出生年月}^。在该实施例中,Key的起始行预设值为一个:R0;Key的起始列的预设值为2个:C7或者C6;Key的字符信息的预设值为2个:出生年月或者生日;而Value的起始列的预设值也为2个:C8或C7。如此,RPA系统在生成的字符串中对该数据对模板进行匹配时,RPA系统判断是否存在满足“R0C7出生年月^R0C8{:出生年月}^”、“R0C6出生年月^R0C7{:出生年月}^”、“R0C7出生年月^R0C8{:生日}^”、“R0C6出生年月^R0C7{:生日}^”这些格式要求中的至少一种的字符组合。如此,在前述字符串中,只需要满足前述多种格式要求的字符组合中的一种,即可实现对该Key-Value模板的成功匹配。如前,在前述字符串中,RPA系统可以匹配到的满足前述格式要求的字符为“1982.10”,则可以在前述字符串中提取出一对Key-Value为:“出生年月-1982.10”。
在该举例的数据对模板中,既存在对位置关系的模糊匹配,也存在对字符信息的模糊匹配,有利于得到更全面的数据对提取效果。
除前述实施例之外,如前,还涉及Key-Value模板中Key为空的情况。对此进行举例说明。
例如,预设的Key-Value模板可以为:[^][R0C1]<*>{:姓名}^。则RPA系统可以在生成的字符串中,匹配是否存在满足“^R0C1”这一位置要求的字符。如此,在前述字符串中,RPA系统可以匹配到到的数据对为“张三”。
基于前述处理,RPA系统遍历表格对应的所有数据对模板,之后,RPA系统即可提取到一个或多个(一般为多个)Key-Value的数据对,由此,RPA系统在输出提取到的数据对时,可以直接输出这些Key-Value数据对。
或者,RPA系统还可以对数据对进行整理,并输出整理后的数据对。示例性的一种实施例中,RPA系统可以基于提取到的数据对,生成提取数据表格,例如图1中的表格2,然后,RPA系统输出提取数据表格。
当用于本申请中时,虽然术语“第一”、“第二”等可能会在本申请中使用以描述各表格图像等,但这些阈值不应受到这些术语的限制。这些术语仅用于将一个表格图像与另一个表格图像区别开。比如,在不改变描述的含义的情况下,第一表格图像可以叫做第二表格图像,并且同样第,第二表格图像可以叫做第一表格图像,只要所有出现的“第一表格图像”一致重命名并且所有出现的“第二表格图像”一致重命名即可。第一表格图像和第二表格图像都是表格图像,但可以不是相同的表格图像。
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。
实施例二
基于上述实施例一所提供的结合RPA和AI的图像数据处理方法,本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。
本发明实施例提供了一种电子设备,请参考图4,该电子设备400,包括:处理模块42与收发模块44;其中,
处理模块42,用于:
获取第一表格图像,第一表格图像中包含表格;
识别第一表格图像中的字符,得到字符识别结果;
基于字符识别结果,生成表格的字符串;
基于预设的数据对模板,提取字符串中的数据对;
收发模块44,用于输出数据对。
在一种具体的实施例中,处理模块42,具体用于:
利用携带行列号的背景表格,对第一表格图像中的表格进行行列标记,形成包含行列标记的第二表格图像;
利用光学字符识别OCR方法,对第二表格图像进行识别,得到字符识别结果。
在另一种具体的实施例中,背景表格用于对与背景表格的格式相同的表格或表格图像进行行列编号。
在另一种具体的实施例中,字符识别结果包括:表格中各单元格的识别结果,单元格的识别结果包括:字符信息与位置信息;
位置信息包括:行信息与列信息;
其中,行信息包括:单元格的起始行,和/或,单元格的终止行;
列信息包括:单元格的起始列,和/或,单元格的终止列。
在另一种具体的实施例中,处理模块42,具体用于:
按照表格中各单元格的位置信息,将各单元格的识别结果进行串联,得到表格的字符串。
在另一种具体的实施例中,在字符串中,任意相邻的两个单元格的识别结果之间,通过预设的连接符进行串联。
在另一种具体的实施例中,字符串为表格中各单元格的识别结果逐行串联得到的;
任意相邻的两行数据之间,通过预设的间隔符进行串联。
在另一种具体的实施例中,处理模块42,具体用于:获取预设的数据对模板;针对每个数据对模板,在字符串中提取符合该数据对模板的数据对;
收发模块44,具体用于:输出提取到的数据对。
在另一种具体的实施例中,处理模块42,具体用于:利用正则匹配算法,在字符串中分别对每个数据对模板进行匹配;
若匹配成功,提取匹配到满足数据对模板的数据对。
在另一种具体的实施例中,数据对模板包括:键的信息与键值信息;
其中,键的信息包括:键的字符与键的位置;键值信息包括:键值字符与键值位置;
键的位置与键值位置满足预设条件。
在另一种具体的实施例中,键的字符为一个或多个;键的位置为一个或多个。
在另一种具体的实施例中,数据对模板包括:键值信息。
在另一种具体的实施例中,处理模块42,具体用于:基于提取到的数据对,生成提取数据表格;
收发模块44,具体用于:输出提取数据表格。
图4所示实施例的电子设备400可用于执行上述方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述,如前,该电子设备400可以终端。
应理解以上图4所示电子设备400的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,确定模块46可以为单独设立的处理元件,也可以集成在电子设备400中,例如电子设备的某一个芯片中实现,此外,也可以以程序的形式存储于电子设备400的存储器中,由电子设备400的某一个处理元件调用并执行以上各个模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,当以上某个模块通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central ProcessingUnit,CPU)或其它可以调用程序的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
并且,本发明实施例提供了一种电子设备,请参考图5,该电子设备400,包括:
存储器410;
处理器420;以及
计算机程序;
其中,计算机程序存储在存储器410中,并被配置为由处理器420执行以实现如上述实施例的方法。
其中,电子设备400中处理器420的数目可以为一个或多个,处理器420也可以称为处理单元,可以实现一定的控制功能。处理器420可以是通用处理器或者专用处理器等。在一种可选地设计中,处理器420也可以存有指令,指令可以被处理器420运行,使得电子设备400执行上述方法实施例中描述的方法。
在又一种可能的设计中,电子设备400可以包括电路,电路可以实现前述方法实施例中发送或接收或者通信的功能。
可选地,电子设备400中存储器410的数目可以为一个或多个,存储器410上存有指令或者中间数据,指令可在处理器420上被运行,使得电子设备400执行上述方法实施例中描述的方法。可选地,存储器410中还可以存储有其他相关数据。可选地处理器420中也可以存储指令和/或数据。处理器420和存储器410可以单独设置,也可以集成在一起。
此外,如图5所示,在该电子设备400中还设置有收发器430,其中,收发器430可以称为收发单元、收发机、收发电路、或者收发器等,用于与测试设备或其他终端设备进行数据传输或通信,在此不再赘述。
如图5所示,存储器410、处理器420与收发器430通过总线连接并通信。
若该电子设备400用于实现对应于图2中的方法时,例如,可以由收发器430接收来自于用户的待识别语句。而处理器420用于完成相应的确定或者控制操作,可选的,还可以在存储器410中存储相应的指令。各个部件的具体的处理方式可以参考前述实施例的相关描述。
此外,本发明实施例提供了一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行以实现如实施例一的方法。
由于本实施例中的各模块能够执行实施例一所示的方法,本实施例未详细描述的部分,可参考对实施例一的相关说明。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本发明的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。