结合RPA和AI的文字识别方法、装置、电子设备和存储介质
技术领域
本申请涉及人工智能技术领域,尤其涉及一种结合RPA和AI的文字识别方法、装置、电子设备和存储介质。
背景技术
机器人流程自动化(Robotic Process Automation)简称RPA,是通过特定的“机器人软件”,模拟人在计算机上的操作,按规则自动执行流程任务。
人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器15人、语音识别、图像识别、自然语言处理和专家系统等。
通常,银行的业务比较多,存在各种票据且格式多样,表格作为图像内容中的结构化信息,经常出现在各类银行票据图像中,相关技术中,应用文本检测技术进行文本位置的提取,然后基于文本位置应用启发式方式对表格信息进行推断,存在准确性差、效率低的技术问题。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请提出一种结合RPA和AI的文字识别方法,解决了现有技术中文字识别方法准确性差、效率低的技术问题,通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别。
本申请提出一种AI平台。
本申请提出一种结合RPA和AI的文字识别系统。
本申请提出一种电子设备。
本申请提出一种计算机可读存储介质。
本申请一方面实施例提出了一种结合RPA和AI的文字识别方法,所述方法应用于AI平台,包括:
AI平台接收RPA机器人发送的图像,从图像中获取表格区域图像;
AI平台从表格区域图像中提取各个单元格;
AI平台根据各个单元格的位置信息构建表格;
AI平台从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果发送给RPA机器人。
本申请另一方面实施例提出了一种AI平台,包括:
第一获取模块,用于获取图像;
第二获取模块,用于从图像中获取表格区域图像;
提取模块,用于从表格区域图像中提取各个单元格;
构建模块,用于根据各个单元格的位置信息构建表格;
生成模块,用于从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果。
本申请又一方面实施例提出了一种结合RPA和AI的文字识别系统,其特征在于,包括:前述一方面实施例所述的AI平台、业务系统和RPA机器人;
业务系统通过摄像头拍摄得到图像、或者,业务系统通过扫描仪扫描得到图像发送给RPA机器人;
RPA机器人将图像发送给AI平台进行处理生成文字识别结果返回给RPA机器人;
RPA机器人将文字识别结果发送给业务系统的数据库存储。
本申请又一方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述一方面实施例所述的结合RPA和AI的文字识别方法。
本申请又一方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现前述方法实施例所述的结合RPA和AI的文字识别方法。
本申请实施例所提供的技术方案可以包含如下的有益效果:
AI平台接收RPA机器人发送的图像,从图像中获取表格区域图像,AI平台从表格区域图像中提取各个单元格,AI平台根据各个单元格的位置信息构建表格,AI平台从图像中提取各个单元格内的文字信息,并根据文字信息和表格生成文字识别结果发送给RPA机器人。由此,解决了现有技术中文字识别准确性差、效率低的技术问题,通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例所提供的一种结合RPA和AI的文字识别系统的结构示意图;
图2为本申请实施例所提供的一种结合RPA和AI的文字识别方法的流程示意图;
图3为本申请实施例所提供的另一种结合RPA和AI的文字识别方法的流程示意图;
图4为本申请实施例所提供的一种结合RPA和AI的文字识别系统的示例图;
图5a为本申请实施例所提供的RPA接收的图像的示例图;
图5b为本申请实施例所提供的表格区域图像的示例图;
图5c为本申请实施例所提供的各个单元格的示例图;
图5d为本申请实施例所提供的表格调整的示例图;
图5e为本申请实施例所提供的表格调整的示例图;
图5f为本申请实施例所提供的表格调整的示例图;
图6为本申请实施例提供的一种结合RPA和AI的文字识别装置的结构示意图;
图7是根据本申请一个实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的结合RPA和AI的文字识别方法、装置、电子设备和存储介质。
具体地,本申请提出一种结合RPA和AI的文字识别方法,通过RPA接收图像发送给AI平台,AI平台通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别再反馈给RPA机器人,通过RPA技术与OCR技术的结合,能够帮助用户更高效的提取图像中的表格结构化信息,极大的提高工作效率和提升数据准确率。
在实际应用中,RPA机器人接收到的图像来自于众多不同的业务,多为开放式图像,也就是说图像中存在有表格或无表格的情况,表格在图像中的位置、尺度、形状、颜色、背景、格式也不尽相同,本申请提出的结合RPA和AI的文字识别方法可以处理上述描述的开放式图像,接收RPA机器人发送的图像,从图像中获取表格区域图像,接着从表格区域图像中提取各个单元格,根据各个单元格的位置信息构建表格,从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果发送给RPA机器人,另外,从图像中获取不到表格区域图像,直接进行文本识别,能够快速准确完成图像中的文字识别。
为了本领域人员更加清楚本申请实施例描述的结合RPA和AI的文字识别方法,首先结合图1描述一种结合RPA和AI的文字识别系统。
图1为本申请实施例所提供的一种结合RPA和AI的文字识别系统的结构示意图。
如图1所示,该系统包括:业务系统100、RPA机器人200和AI平台300。
其中,业务系统100通过摄像头拍摄得到图像、或者,业务系统100通过扫描仪扫描得到图像发送给RPA机器人200。
RPA机器人200将图像发送给AI平台300进行处理生成文字识别结果返回给RPA机器人200。
RPA机器人200将文字识别结果发送给业务系统100的数据库存储。
本申请实施例中,RPA机器人200可以为企业和个人提供专业全面的流程自动化解决方案,RPA机器人可通过用户使用界面,智能理解企业已有应用,将基于规则的常规操作自动化,如自动重复读取邮件、读取办公软件组件、操作数据库及网页和客户端软件等,采集数据,进行繁琐的计算,大批量生成文件和报告,完成枯燥的文件检查等工作。能够大幅降低人力成本的投入,有效提高现有办公效率,准确、稳定、快捷地完成工作。
作为一种场景举例,比如银行票据数字化,RPA机器人200接收业务系统100采集到的各种票据图像,通过AI平台300转化为对应数字化信息,转录至各对应数据库,以实现数字化、去人工化。
其中,RPA机器人200接收到的票据图像通常为开放式数据,来自与不同的应用场景。本申请通过对图像中的表格信息进行二次提取方式实现了鲁棒的表格识别系统,并将表格识别系统与RPA及OCR(Optical Character Recognition,光学字符识别)技术集成,可以使得RPA机器人200能够处理种类多样的银行票据图像中的结构化表格,扩展了RPA机器人200的能力,满足银行票据数字化需求。另外,RPA机器人200将识别后的结构化数据发送到业务系统(比如财务系统),实现银行票据自动化录入,提高银行票据处理效率。
为了本领域人员更加AI平台如何进行文字识别的具体过程,下面结合图2以AI平台侧进行描述结合RPA和AI的文字识别方法。
图2为本申请实施例所提供的一种结合RPA和AI的文字识别方法的流程示意图。
如图2所示,该方法包括以下步骤:
步骤101,AI平台接收RPA机器人发送的图像,从图像中获取表格区域图像。
在本申请实施例中,RPA机器人可以根据具体处理场景,将接收的一个或者多个图像发送给AI平台进行文字识别处理,其中,RPA机器人接收的图像一般是业务系统针对相同或者不同业务处理的票据等文件通过摄像头拍摄或者扫描仪扫描的图像。
在本申请实施例中,表格区域图像指的是从接收的整张图像中截取仅仅包括表格部分的图像。
在本申请实施例中,AI平台在接收到RPA机器人发送的图像后,从图像中获取表格区域图像的方式有很多种,举例说明如下:
第一种示例,AI平台通过物体检测算法对图像进行处理得到多个第一数组,根据多个第一数组中的类别标识确定表格类别,获取表格类别对应的目标数组,并根据目标数组中各个数值确定表格区域图像。
在本申请实施例中,第一数组指的是能够确定一个矩形区域、以及矩形区域包括对象的类别的矩阵;目标数组指的是矩形区域包括对象的类别为表格的矩阵。
第二种示例,AI平台通过OpenCV(跨平台计算机视觉和机器学习软件库)识别到表格中的直线,根据直线确定表格区域,从图像中直接截取表格区域图像。
需要说明的是,从图像中获取不到表格区域图像,可以直接对图像进行文字信息提取操作,从而提高处理效率。
步骤102,AI平台从表格区域图像中提取各个单元格。
在本申请实施例中,在AI平台获取表格区域图像后,进一步从表格区域图像中提取各个单元格,其中,从表格区域图像中提取各个单元格的方式有很多种,举例说明如下:
第一种示例,AI平台通过实例分割检测算法对表格区域图像进行处理得到多个第二数组,根据多个第二数组中各个数值生成各个单元格。
第二种示例,AI平台通过OpenCV(跨平台计算机视觉和机器学习软件库)识别到表格中的直线,根据直线直接生成各个单元格。
步骤103,AI平台根据各个单元格的位置信息构建表格。
在本申请实施例中,在AI平台获取各个单元格后,AI平台可以根据各个单元格重新构建表格,作为一种可能实现方式,AI平台根据各个单元格的位置信息确定各个单元格中的最小单元格宽度和最小单元格高度,根据最小单元格宽度确定第一步长,并根据最小单元格高度确定第二步长,按照步长第一步长以第一方向对各个单元格对应的总表格区域进行切分,并按照第二步长以第一方向对总表格区域进行切分,生成表格网络区域,对各个单元格进行编号,将各个单元格按照坐标位置映射到表格网络区域,按照第一方向对表格网络区域进行列合并,并按照第二方向对表格网络区域进行行合并生成表格。
在本申请实施例中,第一步长指的是对表格区域进行两次横向切分之间的距离;第二步长指的是对表格区域进行两次竖向切分之间的距离;表格网络区域指的是已切分成网格状的表格区域。
作为另一种可能实现方式,AI平台通过单元格合并函数直接对各个单元格的位置信息(即各个坐标信息)进行计算合并,根据合并后的位置信息生成表格。
步骤104,AI平台从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果发送给RPA机器人。
在本申请实施例中,AI平台根据表格的位置坐标信息,确定各个单元格在图像中的各个位置,从图像中的各个位置提取文字信息,并将文字信息填充到对应各个单元格发送RPA机器人,也就是说,将表格位置及各单元格位置映射回RPA机器人发送的图像,即完成了表格信息的结构化识别,表格的结构化信息包括表格在原图中的整体位置(包围表格的最小四边形的四个顶点的像素位置)、表格的单元格的行列总数、表格的各个单元格的位置(包围各个单元格的最小四边形的四个顶点的像素位置)、表格的各个单元格的起始、终止行列数,最后结合OCR技术识别出各个单元格里的文字信息,即完成了整体表格信息的提取,根据文字信息和表格生成文字识别结果发送给RPA机器人。
本申请实施例的结合RPA和AI的文字识别方法中,通过AI平台接收RPA机器人发送的图像,AI平台从图像中获取表格区域图像,AI平台从表格区域图像中提取各个单元格,AI平台根据各个单元格的位置信息构建表格,AI平台从图像中提取各个单元格内的文字信息,并根据文字信息和表格生成文字识别结果发送给RPA机器人。由此,解决了现有技术中文字识别准确性差、效率低的技术问题,通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别。
图3为本申请实施例所提供的另一种结合RPA和AI的文字识别方法的流程示意图。
如图3所示,该方法包括以下步骤:
步骤201,AI平台接收RPA机器人发送的图像,AI平台通过物体检测算法对图像进行处理得到多个第一数组,根据多个第一数组中的类别标识确定表格类别,获取表格类别对应的目标数组,并根据目标数组中各个数值确定表格区域图像。
在本申请实施例中,以图4所示的结合RPA和AI的文字识别系统和银行票据为例,业务系统包括相机和扫描仪,可以对银行票据进行拍摄或者扫描生成图像,比如图5a所示的图像,接着RPA机器人包括数据采集模块、上传图像模块、结果回写模块和导出结果模块,可以对业务系统生成的图像进行采集,也可以直接将图像通过上传模块上传到RPA机器人等,接着将图像发送给AI平台处理。
进一步地,AI平台可以在RPA机器人接收的图像上,使用物体检测与分割技术,实现表格召回模型,完成表格的位置检测(表格的位置即包围表格的最小四边形的四个顶点的像素位置),若未能检测到表格位置,则说明图像中不包含表格,直接输出图像中的文字识别信息,以及基于表格位置,在图像中截取出表格区域图像。
在本申请实施例中,通过物体检测算法对图像进行处理得到多个第一数组,根据多个第一数组中的类别标识确定表格类别,获取表格类别对应的目标数组,并根据目标数组中各个数值确定表格区域图像。
具体地,如图5b所示,对于一个表格用四个小矩形表示表格的四个角点(corner),一个大矩形表示表格(table),即召回的对象包含两个类别,角点类与表格类,表格召回模型采用物体检测算法,当执行完表格召回模型后,会有一个返回值即第一数组,其组织形式可以如下:[[x y w h cls],[x y w h cls]…[x y w h cls]]。
其中,x,y表示图像中的某个坐标点,w,h表示以该点为中心的的一个矩形的宽高,由(x,y,w,h)可确定图像中的一个矩形区域,cls是该矩形区域所包含对象的类别(角点类或者表格类)。若该数组中没有cls为表格的类别,则该图中不包含表格;若该数组中有cls为表格的类别,则图中包含表格,且表格所在的初步计算区域为该cls对应的(x,y,w,h)。
具体地,对于每个表格区域,可以采用如下方式对其进行精确计算,即校正,对于每个角点类别,只取该矩形的中心点,即(x,y),设其为Pcorner。对于每个表格类别,由于其为矩形,故包含四个顶点,设为Ptop_left,Ptop_right,Pdown_left,Pdown_right,即Ptop_left=(x-w/2,y-h/2),Ptop_right=(x+w/2,y-h/2),Pdown_left=(x-w/2,y+h/2),Pdown_right=(x+w/2,y+h/2)。
因此,对于每个角点中心点Pcorner,寻找与其距离最近的矩形的顶点,对于每个表格的顶点,寻找与其距离最近的角点中心点Pcorner,若某个顶点的最近中心点的最近顶点是它本身,且该中心点与该顶点之间的距离小于比如0.3*w和0.3*h,则将该顶点的坐标替换为该中心点的坐标,替换完成后的表格为四边形,该四边形所包含的区域即为表格区域。
需要说明的是,对表格类别的矩形区域进行校正,若没有角点类别,则表格返回的矩形区域即为表格区域,由于图像中往往存在倾斜、扭曲等变换,图像中的表格区域不一定为矩形,若用表格返回的矩形区域表示真实的非矩形的表格区域则不够精确,需要对其顶点进行校正。
需要说明的是,图像中表格的尺度范围跨度较大,给表格区域定位带来一定困难,采用角点对表格区域进行校正,可以一定程度上缓解多尺度的问题。
步骤202,AI平台通过实例分割检测算法对表格区域图像进行处理得到多个第二数组,根据多个第二数组中各个数值生成各个单元格。
在本申请实施例中,在表格区域图像上,使用物体检测与分割技术,实现表格检测模型,完成各个表格单元格位置的检测(表格单元格的位置即包围表格单元格的最小四边形的四个顶点的像素位置)。
在本申请实施例中,如图5c所示,对于一个表格,每一个小矩形框(比如a1所在矩形框)表示一个单元格,表格检测模型采用实例分割算法,当执行完表格检测模型后,会有一个返回值数组,其组织形式如下:[[x1 y1 x2 y2],[x1 y1 x2 y2]…[x1 y1 x2 y2]]。
其中,x1,y1表示单元格矩形的左上角顶点,x2,y2表示单元格矩形的右下角顶点,每个[x1 y1 x2 y2]表示一个单元格,即表格检测模型返回的结果为众多的单元格区域。
步骤203,检测各个单元格是否存在单元格区域重叠覆盖、和/或、检测两个单元格之间的空白区域面积是否小于一个单元格的区域面积、和/或、检测各个单元格是否存在未识别单元格。
步骤204,若存在单元格区域重叠覆盖、和/或、存在两个单元格之间的空白区域面积小于一个单元格的区域面积,则AI平台按照最小调整次数原则对目标单元格进行调整,和/或、存在未识别单元格,则AI平台在未识别单元格补全出满足对齐原则的最大化单元格,直至没有未识别出的单元格。
在本申请实施例中,对齐原则指的是上下单元格之间,以及左右单元格之间对齐。
在本申请实施例中,表格中的单元格边缘去重/补全,清理采用最小化原则,即对于表格单元格的边缘重复区域与边缘空白区域进行最小化调整,保证表格单元格结构横纵位置的一致性;补全表格中未识别出的单元格区域,补全采用最大化原则,即对于连续的规则的未识别出单元格的表格区域,视为一个单一的单元格,对其进行信息补全。
具体地,如图5d所示,表格检测返回的单元格结果中,会存在图5d所示的情况,单元格1与单元格2区域重叠,以及单元格3区域不完整,其中,区域重叠可以理解为两个相邻的单元格,存在区域重叠覆盖的情况;区域不完整可以理解为两个相邻的单元格,中间存在空白区域,且空白区域的宽/高,小于表格中所有单元格中最小的宽/高,即两个单元格间的空白区域不足一个单元格,视该空白区域为某单元格的遗漏的边缘区域。
在本申请实施例中,当前待调整的单元格左面的单元格与上面的单元格都已经对齐,一般用最少的对单元格的调整次数,使得所有检测出的单元格齐齐整整,比如图5d所示,如要调整表格1与表格2,使之不再重叠,第一种示例,可以将单元格1的右边界回退至与单元格2不再重叠,但是这样调整后单元格1与其上面的单元格4、下面的单元格6依然没有对齐,为了对齐原则,需要调整单元格4、6与单元格1对齐,调整但要严格5、7与单元格2对齐,共需要调整5次;第二种示例,单元格2的左边界回退至与单元格1不再重叠。共需要调整5次,原理同上;第三种示例,单元格1调整至与单元格4对齐,单元格2调整至与单元格5对齐。共需要调整2次,优选第三种示例进行调整。
具体地,如图5e所示,粗线且未指示的为检测出的各个单元格区域,细线指示为未识别出的单元格区域,在未识别出的区域补全出满足对齐原则的最大化单元格,直至没有未识别出的区域。如图5e所示的将蓝色区域补全为一个单元格;图5f所示的2补全为1个单元格则不满足对齐原则,则先将区域1补全为一个单元格,区域2补全为1个单元格,再将区域3补全为1个单元格。
步骤205,AI平台根据各个单元格的位置信息确定各个单元格中的最小单元格宽度和最小单元格高度,根据最小单元格宽度确定第一步长,并根据最小单元格高度确定第二步长,按照步长第一步长以第一方向对各个单元格对应的总表格区域进行切分,并按照第二步长以第一方向对总表格区域进行切分,生成表格网络区域。
步骤206,AI平台对各个单元格进行编号,将各个单元格按照坐标位置映射到表格网络区域,按照第一方向对表格网络区域进行列合并,并按照第二方向对表格网络区域进行行合并生成表格。
在本申请实施例中,基于各个表格单元格位置,完成表格结构的重构,即推断出表格的单元格行列总数,各个单元格的起始、终止行列数,将表格位置及各单元格位置映射回RPA机器人接收的图像,即完成了表格信息的结构化识别,表格的结构化信息包括表格在原图中的整体位置(包围表格的最小四边形的四个顶点的像素位置)、表格的单元格的行列总数、表格的各个单元格的位置(包围各个单元格的最小四边形的四个顶点的像素位置)、表格的各个单元格的起始、终止行列数,结合OCR技术识别出各个单元格里的文字信息,即完成了整体表格信息的提取。
在本申请实施例中,遍历各个单元格,找出最小单元格宽度w和最小高度h,比如令w=max(1,w/2),h=max(1,h/2),从左到右,按照步长w对表格进行切分;从上到下按照步长h对表格进行切分,切分完的表格区域成网格状,每个网格赋予默认值-1。
进一步地,对各个单元格进行编号,即赋予每个单元格一个编号值,将各个单元格按照坐标位置映射到网格区域上,被覆盖面积超过1/2的网格赋的值改为该单元格的编号的值。
在本申请实施例中,按照从左到右方向从表格网络区域中提取出相邻的两列,若两列对应的单元格值相等,则删除任一列;按照从上到下方向从所述表格网络区域中提取出相邻的两行,若两行对应的单元格值相等,则删除任一行。
进一步地,从左到右,对表格网络区域进行列合并,从左到右,从表格网络区域中提取出相邻的两列,设为e[left],e[right];设len为列的长度,对于每一个i∈[0,len-1],都满足如下条件,则合并两列,即将e[left]中的-1元素赋值为e[right]对应位置的值,并删除e[right]:e[left][i]==e[right][i]||e[left][i]==-1||e[right]==-1,重复上述步骤,直至没有能够满足条件的两列。
进一步地,从上到下,对网格结构进行行合并;合并规则如下:从上到下,从表格网络区域中提取出相邻的两行,设为e[top],e[down];设len为行的长度,对于每一个i∈[0,len-1],都满足如下条件,则合并两行,即将e[top]中的-1元素赋值为e[down]对应位置的值,并删除e[dowm]:e[top][i]==e[down][i]||e[top][i]==-1||e[down]==-1,重复上述步骤,直至没有能够满足条件的两行。
在本申请实施例中,AI平台按照对齐原则,将网格结构中残留的值为-1的网格元素的值赋值为其近邻网格元素的值,合并完成后的网格结构的行数即为表格结构的单元格行数,网格结构的列数即为表格结构的单元格列数,对于每一单元格,其在表格结构中的位置即为其在网格结构结构中的位置(单元格行列、起始、终止位置)。
步骤207,AI平台根据表格的位置坐标信息,确定各个单元格在图像中的各个位置,从图像中的各个位置提取文字信息,并将文字信息填充到对应各个单元格发送给RPA机器人。
在本申请实施例中,表格检测是在表格召回模块给出的表格区域上做的,因此需要将表格检测的坐标结果映射回图像,找回其在图像中的位置,即各个单元格在图像中的坐标位置,进而根据单元格区域提取文字信息。
由此,通过采用表格信息的二次提取方式,即首先应用物体检测与分割技术实现表格召回模型,完成表格位置信息的一次提取,区分出带表格图像与无表格图像,对于带表格图像,应用物体检测与分割技术实现表格检测模型,完成表格结构信息的二次提取,既能保证表格识别系统的稳定性,又能保证RPA整体流程的平均速度。
为了实现上述实施例,本申请还提出一种结合RPA和AI的文字识别装置
图6为本申请实施例提供的一种AI平台的结构示意图。
如图6所示,该AI平台包括:第一获取模块601、第二获取模块602、提取模块603、构建模块604和生成模块605。
第一获取模块601,用于获取图像。
第二获取模块602,用于从所述图像中获取表格区域图像。
提取模块603,用于从所述表格区域图像中提取各个单元格。
构建模块604,用于根据所述各个单元格的位置信息构建表格。
生成模块605,用于从所述图像中提取所述各个单元格内的文字信息,根据所述文字信息和所述表格生成文字识别结果。
进一步地,在本申请实施例的一种可能的实现方式中,第二获取模块602,具体用于通过物体检测算法对所述图像进行处理得到多个第一数组;根据所述多个第一数组中的类别标识确定表格类别;获取所述表格类别对应的目标数组,并根据所述目标数组中各个数值确定表格区域图像。
进一步地,在本申请实施例的一种可能的实现方式中,提取模块603,具体用于通过实例分割检测算法对所述表格区域图像进行处理得到多个第二数组;根据所述多个第二数组中各个数值生成各个单元格。
进一步地,在本申请实施例的一种可能的实现方式中,构建模块604,具体用于根据所述各个单元格的位置信息确定所述各个单元格中的最小单元格宽度和最小单元格高度根据所述最小单元格宽度确定第一步长,并根据所述最小单元格高度确定第二步长;按照步长第一步长以第一方向对所述各个单元格对应的总表格区域进行切分,并按照第二步长以第一方向对所述总表格区域进行切分,生成表格网络区域;对所述各个单元格进行编号,将所述各个单元格按照坐标位置映射到所述表格网络区域;按照所述第一方向对所述表格网络区域进行列合并,并按照所述第二方向对所述表格网络区域进行行合并生成所述表格。
进一步地,在本申请实施例的一种可能的实现方式中,所述按照所述第一方向对所述表格网络区域进行列合并,并按照所述第二方向对所述表格网络区域进行行合并生成所述表格,包括:按照从左到右方向从所述表格网络区域中提取出相邻的两列,若两列对应的单元格值相等,则删除任一列;按照从上到下方向从所述表格网络区域中提取出相邻的两行,若两行对应的单元格值相等,则删除任一行。
进一步地,在本申请实施例的一种可能的实现方式中,生成模块605,具体用于根据所述表格的位置坐标信息,确定所述各个单元格在所述图像中的各个位置;从所述图像中的各个位置提取文字信息,并将所述文字信息填充到对应所述各个单元格发送给所述RPA机器人。
进一步地,在本申请实施例的一种可能的实现方式中,在所述根据所述各个单元格的位置信息构建表格之前,还包括:调整模块,用于检测所述各个单元格是否存在单元格区域重叠覆盖、和/或、检测两个单元格之间的空白区域面积是否小于一个单元格的区域面积、和/或、检测所述各个单元格是否存在未识别单元格;若存在单元格区域重叠覆盖、和/或、存在两个单元格之间的空白区域面积小于一个单元格的区域面积,则按照最小调整次数原则对目标单元格进行调整,和/或、存在未识别单元格,则在所述未识别单元格补全出满足对齐原则的最大化单元格,直至没有未识别出的单元格。
需要说明的是,前述对方法实施例的解释说明也适用于该实施例的装置,此处不再赘述。
本申请实施例的结合RPA和AI的文字识别装置中,通过接收RPA机器人发送的图像,从图像中获取表格区域图像;从表格区域图像中提取各个单元格;根据各个单元格的位置信息构建表格;从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果发送给RPA机器人。由此,解决了现有技术中文字识别准确性差、效率低的技术问题,通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别。
为了实现上述实施例,本申请还提出了一种电子设备,图7是根据本申请一个实施例的电子设备的结构示意图。如图7所示,存储器21、处理器22及存储在存储器21上并可在处理器22上运行的计算机程序。
处理器22执行所述程序时实现上述实施例中提供的结合RPA和AI的文字识别方法。
进一步地,计算机设备还包括:
通信接口23,用于存储器21和处理器22之间的通信。
存储器21,用于存放可在处理器22上运行的计算机程序。
存储器21可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
处理器22,用于执行所述程序时实现上述实施例所述的结合RPA和AI的文字识别。
如果存储器21、处理器22和通信接口23独立实现,则通信接口21、存储器21和处理器22可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器21、处理器22及通信接口23,集成在一块芯片上实现,则存储器21、处理器22及通信接口23可以通过内部接口完成相互间的通信。
处理器22可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例的电子设备,通过接收RPA机器人发送的图像,从图像中获取表格区域图像;从表格区域图像中提取各个单元格;根据各个单元格的位置信息构建表格;从图像中提取各个单元格内的文字信息,根据文字信息和表格生成文字识别结果发送给RPA机器人。由此,解决了现有技术中文字识别准确性差、效率低的技术问题,通过首先构建图像中的表格,再从图像中提取表格内的文字信息,能够快速准确完成图像中的文字识别。
为了实现上述实施例,本申请实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现前述方法实施例所述的结合RPA和AI的文字识别方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。