本技术涉及计算机视觉,尤其涉及一种表单解析方法及电子设备。
背景技术:
1、表单是常见的信息传输方式。传统的表单解析依赖于人的观察,需要手工填写表单信息;比如,在一些业务场景中遇到业务表单,需要用户输入业务表单中的表单项内容。
2、相关技术中,为了减轻人力的消耗,提升表单处理时效,出现了一些表单自动化解析的解决方案。目前的表单自动化解析方法通常采用端到端的深度学习模型,但是,端到端的深度学习模型只能适用于特定场景下的表单解析,不能满足多种场景下的表单解析需求。
技术实现思路
1、本技术提供了一种表单解析方法及电子设备,用以满足多种场景下的表单解析需求,且解析速度快。
2、第一方面,本技术实施例提供一种表单解析方法,包括:
3、对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框;
4、对所述表单图像进行输入框检测,获得至少一个输入框检测框;
5、将所述至少一个输入框检测框作为候选框,获得候选框集合;
6、针对任一关键文本框,从所述候选框集合中选择与所述关键文本框相匹配的候选框,并将所述关键文本框和相匹配的候选框作为第一表单项;
7、基于至少一个第一表单项,获得所述表单图像对应的表单结构。
8、在一些可能的实施例中,所述对所述表单图像进行输入框检测,获得至少一个输入框检测框,包括:
9、将所述表单图像进行二值化,对二值化后的表单图像进行轮廓检测,获得至少一个轮廓及对应的位置;
10、基于所述至少一个轮廓的属性信息,从所述至少一个轮廓中去除满足预设条件的轮廓,基于剩余的轮廓及对应的位置,获得所述至少一个输入框检测框。
11、在一些可能的实施例中,所述至少一个轮廓的属性信息包括以下一种或多种:
12、轮廓面积;
13、轮廓外接矩形的宽度;
14、轮廓外接矩形的高度;
15、轮廓的层级,层级包含内轮廓、外轮廓;
16、则预设条件包括以下一种或多种:
17、外轮廓;
18、轮廓的矩形度小于第一预设值,矩形度为轮廓面积与对应的轮廓外接矩形面积的比值;
19、轮廓外接矩形的高度和宽度的比值达到第二预设值;
20、轮廓外接矩形的高度与表单图像的高度的比值达到第三预设值。
21、在一些可能的实施例中,所述对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框:
22、对所述表单图像进行文本检测,获得多个文本框;
23、分别对所述多个文本框进行文本识别,获得所述多个文本框中的文本内容;
24、针对任一文本框,若所述文本框中的文本内容包含预设内容,则将所述文本框作为关键文本框。
25、在一些可能的实施例中,所述针对任一关键文本框,从所述候选框集合中选择与所述关键文本框相匹配的候选框,包括:
26、针对任一关键文本框,从所述候选框集合中查找与所述关键文本框的位置关系满足第一位置条件的候选框,将查找到的候选框作为与所述关键文本框相匹配的候选框。
27、在一些可能的实施例中,所述第一位置条件包括:
28、候选框位于关键文本框的预设方向上,且候选框与关键文本框的距离不大于预设距离;
29、候选框与关键文本框的纵向中点之间的差值不大于预设值。
30、在一些可能的实施例中,所述对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框,包括:
31、对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框、至少一个非关键文本框;
32、则所述将所述至少一个输入框检测框作为候选框,获得候选框集合,包括:
33、若存在未被任一输入框检测框包围的非关键文本框,则将所述非关键文本框以及所述至少一个输入框检测框分别作为候选框,获得候选框集合。
34、在一些可能的实施例中,所述方法还包括:
35、对所述表单图像进行关键图标检测,获得至少一个关键图标框;
36、则所述基于至少一个第一表单项,获得所述表单图像对应的表单结构,包括:
37、基于所述至少一个第一表单项、所述至少一个关键图标框,获得所述表单图像对应的表单结构。
38、在一些可能的实施例中,所述对所述表单图像进行关键图标检测,获得至少一个关键图标框,包括:
39、对所述表单图像进行图标检测,获得至少一个图标框;
40、对所述至少一个图标框中的图标进行图标分类,获得至少一个关键图标框。
41、在一些可能的实施例中,所述至少一个关键图标框中的关键图标包括选择图标,则所述方法还包括:
42、针对任一选择图标框,从所述候选框集合中选择与所述选择图标框相匹配的候选框,并将所述选择图标框和相匹配的候选框作为第二表单项;
43、则所述基于至少一个第一表单项、所述至少一个关键图标框,获得表单图像对应的表单结构,包括:
44、基于所述至少一个第一表单项、至少一个第二表单项,获得所述表单图像对应的表单结构。
45、在一些可能的实施例中,所述针对任一选择图标框,从所述候选框集合中选择与所述选择图标相匹配的候选框,包括:
46、针对任一选择图标框,从所述候选框集合中查找与所述选择图标框的位置关系满足第二位置条件的候选框,将查找到的候选框作为与所述选择图标相匹配的候选框。
47、在一些可能的实施例中,所述方法还包括:
48、针对包含输入框检测框的任一第一表单项,执行以下操作:
49、若所述任一第一表单项中的关键文本框中的文本内容与指定标签一致,则获取所述指定标签所对应的指定内容;
50、在所述表单图像中的表单所在的图形界面中,选中与所述关键文本框相匹配的输入框检测框中的输入框,在所述输入框中输入所述指定内容。
51、在一些可能的实施例中,所述至少一个关键图标框中的关键图标包括指定类型的验证图标,则所述方法还包括:
52、根据所述验证图标的指定类型,识别所述验证图标中的验证内容;
53、在所述表单图像中的表单所在的图形界面中,根据所述验证内容执行相应的验证操作。
54、在一些可能的实施例中,所述在所述表单图像中的表单所在的图形界面中,根据所述验证内容执行相应的验证操作,包括:
55、若所述验证图标的指定类型为输入类型,则确定与所述验证图标相匹配的输入框,并在所述表单图像中的表单所在的图形界面中,将所述验证内容输入相应的输入框中;
56、若所述验证图标的指定类型为点击类型,则在所述表单图像中的表单所在的图形界面中,针对所述验证内容执行相应的点击操作。
57、若所述验证图标的指定类型为滑动类型,则在所述表单图像中的表单所在的图形界面中,针对所述验证内容执行相应的滑动操作。
58、在一些可能的实施例中,所述至少一个非关键文本框中的非关键文本包括指示提交表单的提交文本,则所述方法还包括:
59、在所述表单图像中的表单所在的图形界面中,对所述表单操作完成后,触发所述提交文本。
60、第二方面,本技术实施例提供一种表单解析装置,包括:
61、文本识别模块,用于对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框;
62、输入框检测模块,用于对所述表单图像进行输入框检测,获得至少一个输入框检测框;
63、候选框获取模块,用于将所述至少一个输入框检测框作为候选框,获得候选框集合;
64、第一匹配模块,用于针对任一关键文本框,从所述候选框集合中选择与所述关键文本框相匹配的候选框,并将所述关键文本框和相匹配的候选框作为第一表单项;
65、结构获取模块,用于基于至少一个第一表单项,获得所述表单图像对应的表单结构。
66、在一些可能的实施例中,所述输入框检测模块具体用于:
67、将所述表单图像进行二值化,对二值化后的表单图像进行轮廓检测,获得至少一个轮廓及对应的位置;
68、基于所述至少一个轮廓的属性信息,从所述至少一个轮廓中去除满足预设条件的轮廓,基于剩余的轮廓及对应的位置,获得所述至少一个输入框检测框。
69、在一些可能的实施例中,所述至少一个轮廓的属性信息包括以下一种或多种:
70、轮廓面积;
71、轮廓外接矩形的宽度;
72、轮廓外接矩形的高度;
73、轮廓的层级,层级包含内轮廓、外轮廓;
74、则所述预设条件包括以下一种或多种:
75、外轮廓;
76、轮廓的矩形度小于第一预设值,矩形度为轮廓面积与对应的轮廓外接矩形面积的比值;
77、轮廓外接矩形的高度和宽度的比值达到第二预设值;
78、轮廓外接矩形的高度与表单图像的高度的比值达到第三预设值。
79、在一些可能的实施例中,所述文本识别模块具体用于:
80、对所述表单图像进行文本检测,获得多个文本框;
81、分别对所述多个文本框进行文本识别,获得所述多个文本框中的文本内容;
82、针对任一文本框,若所述文本框中的文本内容包含预设内容,则将所述文本框作为关键文本框。
83、在一些可能的实施例中,所述第一匹配模块具体用于:
84、针对任一关键文本框,从所述候选框集合中查找与所述关键文本框的位置关系满足第一位置条件的候选框,将查找到的候选框作为与所述关键文本框相匹配的候选框。
85、在一些可能的实施例中,所述第一位置条件包括:
86、候选框位于关键文本框的预设方向上,且候选框与关键文本框的距离不大于预设距离;
87、候选框与关键文本框的纵向中点之间的差值不大于预设值。
88、在一些可能的实施例中,所述文本识别模块具体用于:
89、对待解析的表单图像进行文本检测和识别,获得至少一个关键文本框、至少一个非关键文本框;
90、则所述候选框获取模块具体用于:
91、若存在未被任一输入框检测框包围的非关键文本框,则将所述非关键文本框以及所述至少一个输入框检测框分别作为候选框,获得候选框集合。
92、在一些可能的实施例中,所述装置还包括关键图标检测模块,用于:
93、对所述表单图像进行关键图标检测,获得至少一个关键图标框;
94、则所述结构获取模块还用于:
95、基于所述至少一个第一表单项、所述至少一个关键图标框,获得所述表单图像对应的表单结构。
96、在一些可能的实施例中,所述关键图标检测模块具体用于:
97、对所述表单图像进行图标检测,获得至少一个图标框;
98、对所述至少一个图标框中的图标进行图标分类,获得至少一个关键图标框。
99、在一些可能的实施例中,所述至少一个关键图标框中的关键图标包括选择图标;则所述装置还包括第二匹配模块,用于:
100、针对任一选择图标框,从所述候选框集合中选择与所述选择图标框相匹配的候选框,并将所述选择图标框和相匹配的候选框作为第二表单项;
101、则所述结构获取模块还用于:
102、基于所述至少一个第一表单项、至少一个第二表单项,获得所述表单图像对应的表单结构。
103、在一些可能的实施例中,所述第二匹配模块具体用于:
104、针对任一选择图标框,从所述候选框集合中查找与所述选择图标框的位置关系满足第二位置条件的候选框,将查找到的候选框作为与所述选择图标框相匹配的候选框。
105、在一些可能的实施例中,所述装置还包括输入模块,用于:
106、针对包含输入框检测框的任一第一表单项,执行以下操作:
107、若所述任一第一表单项中的关键文本框中的文本内容与指定标签一致,则获取所述指定标签所对应的指定内容;
108、在所述表单图像中的表单所在的图形界面中,选中与所述关键文本框相匹配的输入框检测框中的输入框,在所述输入框中输入所述指定内容。
109、在一些可能的实施例中,所述至少一个关键图标框中的关键图标包括指定类型的验证图标;
110、则所述装置还包括验证模块,用于:
111、根据所述验证图标的指定类型,识别所述验证图标中的验证内容;
112、在所述表单图像中的表单所在的图形界面中,根据所述验证内容执行相应的验证操作。
113、在一些可能的实施例中,所述验证模块具体用于:
114、若所述验证图标的指定类型为输入类型,则确定与所述验证图标相匹配的输入框,并在所述表单图像中的表单所在的图形界面中,将所述验证内容输入相应的输入框中;
115、若所述验证图标的指定类型为点击类型,则在所述表单图像中的表单所在的图形界面中,针对所述验证内容执行相应的点击操作。
116、若所述验证图标的指定类型为滑动类型,则在所述表单图像中的表单所在的图形界面中,针对所述验证内容执行相应的滑动操作。
117、在一些可能的实施例中,所述至少一个非关键文本框中的非关键文本包括指示提交表单的提交文本,则所述装置还包括触发模块,用于:
118、在所述表单图像中的表单所在的图形界面中,对所述表单操作完成后,触发所述提交文本。
119、第三方面,本技术实施例提供一种电子设备,其包括处理器和存储器,其中,存储器存储有计算机程序,当计算机程序被处理器执行时,使得处理器执行第一方面任一方法的步骤。
120、第四方面,本技术实施例提供一种计算机存储介质,计算机存储介质存储有计算机程序,当计算机程序在计算机上运行时,使得计算机执行第一方面任一方法的步骤。
121、第五方面,本技术实施例提供一种计算机程序产品,其包括计算机程序,计算机程序存储在计算机可读存储介质中;当电子设备的处理器从计算机可读存储介质读取计算机程序时,处理器执行该计算机程序,使得电子设备执行第一方面任一方法的步骤。
122、本技术实施例的方案至少具有以下有益效果:
123、本技术的方案中,对表单图像分别进行文本检测和识别、输入框检测,获得关键文本框及输入框检测框;将输入框检测框作为候选框,从中选择与关键文本框相匹配的候选框,从而获得第一表单项;最后,基于第一表单项获得表单图像对应的表单结构。通过上述方案可以快速解析表单图像,并且可以适用于多种场景下的表单解析。
124、本技术其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术而了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。