CN115983223A - 报表文档审核方法、装置、电子设备和计算机可读介质 - Google Patents
报表文档审核方法、装置、电子设备和计算机可读介质 Download PDFInfo
- Publication number
- CN115983223A CN115983223A CN202310275444.5A CN202310275444A CN115983223A CN 115983223 A CN115983223 A CN 115983223A CN 202310275444 A CN202310275444 A CN 202310275444A CN 115983223 A CN115983223 A CN 115983223A
- Authority
- CN
- China
- Prior art keywords
- cell
- audit
- document
- relation
- report
- 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.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开的实施例公开了报表文档审核方法、装置、电子设备和计算机可读介质。该方法的一具体实施方式包括:确定待审核报表文档是否存在对应的历史勾稽关系树;响应于不存在,生成待审核报表文档对应的文档识别信息;对文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;确定优化后的文档识别信息对应的勾稽关系信息,其中,勾稽关系信息包括:至少一条勾稽关系;根据优化后的文档识别信息和勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;根据勾稽关系信息和勾稽关系树,对待审核报表文档进行文档审核和异常显示。该实施方式提高了报表文档的核验效率和准确度。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及报表文档审核方法、装置、电子设备和计算机可读介质。
背景技术
报表文档审核是指对报表格式的文档内的数据进行审核的一种技术。由于报表样式灵活多变、且对应的勾稽关系较为复杂,目前,在进行报表文档审核时,通常采用的方式为:通过人工的方式,依据勾稽关系逐一对报表文档进行审核。
然而,发明人发现,当采用上述方式时,经常会存在如下技术问题:
第一,采用人工核验的方式,针对大量的、对应有不同勾稽关系的报表文档,核验效率和准确度无法得到保障;
第二,对于扫描得到报表文档,常存在表格结构缺失的情况,从而影响后续报表自动审核的准确度;
第三,由于报表文档的多样性以及存在表结构误识别的情况,因此,常存在冗余单元格的情形,从而无法保证报表自动核验的有效性;
第四,由于报表文档对应的表格结构灵活多样,在对报表文档对应的文档有效内容存储时,常见的存储方式存储效率低下。
该背景技术部分中所公开的以上信息仅用于增强对本发明构思的背景的理解,并因此,其可包含并不形成本国的本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
本公开的一些实施例提出了报表文档审核方法、装置、电子设备和计算机可读介质,来解决以上背景技术部分提到的技术问题中的一项或多项。
第一方面,本公开的一些实施例提供了一种报表文档审核方法,该方法包括:确定待审核报表文档是否存在对应的历史勾稽关系树;响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容;对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系;根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。
第二方面,本公开的一些实施例提供了一种报表文档审核装置,装置包括:第一确定单元,被配置成确定待审核报表文档是否存在对应的历史勾稽关系树;第一生成单元,被配置成响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容;冗余单元格位置优化单元,被配置成对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;第二确定单元,被配置成确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系;第二生成单元,被配置成根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;审核和显示单元,被配置成根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。
第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述第一方面任一实现方式所描述的方法。
第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。
本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的报表文档审核方法,提高了对报表文档审核的核验效率和准确度。具体来说,造成核验效率和准确度无法得到保障的原因在于:采用人工核验的方式,针对大量的、对应有不同勾稽关系的报表文档,核验效率和准确度无法得到保障。实际情况中,尤其是金融领域往往存在大量的需要核验的报表文档,其中,不同的报表文档往往对应有不同、且复杂的勾稽关系。在此基础上,面对繁多且不同的勾稽关系、以及大量的待核验报表文档,采用人工的方式无法有效提高核验效率和准确度。基于此,本公开一些实施例的报表文档审核方法,首先,确定待审核报表文档是否存在对应的历史勾稽关系树。实际情况中,常存在具有相同表格结构、以及对应相同勾稽关系的报表文档,针对此种情形,当存在对应的历史勾稽关系树时,则无需重新生成相应的勾稽关系树,以此进一步提高核验效率。其次,响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容。当不存在对应的历史勾稽关系树时,则需要对待审核报表文档进行文档内容的提取,以得到待审核报表文档中的内容和内容相应的位置。接着,对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息。通过对冗余单元格位置优化,实现了对误识别,错识别的单元格的优化。进一步,确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系。实践中,不同的报表文档往往对应不同的勾稽关系,因此,需要根据实际情况确定待审核报表文档的勾稽关系信息。除此之外,根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树。实际情况中,报表文档中的数据往往存在对应的计算逻辑(勾稽关系)由此,可以通过生成树形的勾稽关系树来表征报表文档内的数据之间的结构关系。最后,根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。通过此种方式,实现了对大量的、对应有不同勾稽关系的报表文档的自动核验,核验效率和准确度均大大提高。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
图1是根据本公开的报表文档审核方法的一些实施例的流程图;
图2是单元格补全过程的示意图;
图3是列单元格补全过程的示意图;
图4是行冗余单元格位置优化流程的总示意图;
图5是行冗余单元格位置优化流程的一个示意图;
图6是行冗余单元格位置优化流程的另一个示意图;
图7是用于存储业务变量的多叉树的树结构示意图;
图8是第一候选勾稽关系树的树结构示意图;
图9是第二候选勾稽关系树的树结构示意图;
图10是根据本公开的报表文档审核装置的一些实施例的结构示意图;
图11是适于用来实现本公开的一些实施例的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
本公开中待审核报表文档可能涉及用户的个人信息。具体的,可能涉及信息的收集、存储、使用等操作。在执行相应的信息相关的操作前,相关组织或个人已尽到包括开展个人信息安全影响评估、向个人信息主体履行告知义务、事先征得个人信息主体的授权同意等义务。
下面将参考附图并结合实施例来详细说明本公开。
参考图1,示出了根据本公开的报表文档审核方法的一些实施例的流程100。该报表文档审核方法,包括以下步骤:
步骤101,确定待审核报表文档是否存在对应的历史勾稽关系树。
在一些实施例中,报表文档审核方法的执行主体(例如,计算设备)可以确定待审核报表文档是否存在对应的历史勾稽关系树。其中,待审核报表文档可以是待进行报表审核的报表文档。实践中,待审核报表文档可以是表格形式的报表文档。上述历史勾稽关系树可以是根据报表文档对应的至少一条勾稽关系、构建的表征报表文档内数据的结构关系的树形结构。勾稽关系是指报表文档内包含的数据之间的、可进行相互核对的关系。实践中,勾稽关系可以是报表文档内包含的数据之间的计算关系。
实践中,具有相同表结构、且对应有相同勾稽关系的报表文档往往对应有相同的勾稽关系树。例如,2022年1月审核的报表文档A和2022年2月审核的报表文档B。其中,报表文档A和报表文档B具有相同表结构、且对应有相同勾稽关系。由于报表文档A的核验时间早于报表文档B,则在对报表文档A进行核验时生成的勾稽关系树可以作为报表文档B的历史勾稽关系树。
作为示例,在确定待审核报表文档是否存在对应的历史勾稽关系树时,可以包括以下步骤:
第一步,对上述待审核报表文档进行文档识别,以识别得到上述待审核报表文档包含的表头信息和表结构信息。
实践中,上述执行主体可以通过OCR(Optical Character Recognition,光学字符识别)技术,对上述待审核报表文档进行文档识别,以识别得到上述待审核报表文档包含的表头信息和表结构信息。
第二步,根据表头信息和表结构信息进行报表匹配,确定是否存在生成有勾稽关系树、对应的表头信息一致且对应的表结构信息一致的历史报表文档。
第三步,响应于存在,生成有勾稽关系树、对应的表头信息一致且对应的表结构信息一致的历史报表文档对应的勾稽关系树,确定为上述待审核报表文档对应的历史勾稽关系树。
需要说明的是,上述计算设备可以是硬件,也可以是软件。当计算设备为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当计算设备体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。应该理解,计算设备的数目根据实现需要,可以具有任意数目的计算设备。
在一些实施例的一些可选的实现方式中,在上述确定待审核报表文档是否存在对应的历史勾稽关系树之前,上述方法还包括:
第一步,获取待审核报表图像。
其中,上述待审核报表图像可以是通过图像扫描得到的报表图像。实践中,上述待审核报表图像可以是通过扫描纸质报表得到的报表图像。
第二步,对上述待审核报表图像进行图像灰度化处理,以生成灰度化处理后图像。
实践中,上述执行主体可以通过加权平均值法,对上述待审核报表图像进行图像灰度化处理,以生成灰度化处理后图像,具体的,上述执行主体可以对上述待审核报表图像中的每个像素对应的RGB色值进行加权求和,以生成像素对应的灰度色值,得到上述灰度化处理后图像。
第三步,对上述灰度化处理后图像进行图像清晰度增强,以生成增强后图像。
实践中,上述执行主体可以通过基于直方图均衡化的图像增强算法对灰度化处理后图像进行图像清晰度增强,以生成增强后图像。具体的,上述执行主体可以通过计算灰度化处理后图像对应的灰度直方图和累计灰度直方图,根据上述灰度直方图和累计灰度直方图对上述灰度化处理后图像中的像素对应的像素值进行重映射。
第四步,对上述增强后图像进行图像畸变矫正,以生成矫正后图像。
第五步,对上述矫正后图像进行图像缩放,以生成缩放后图像。
实践中,上述执行主体可以将矫正后图像缩放至固定图像大小,以生成上述缩放后图像。具体的,在对纸质报表扫描得到上述待审核报表图像,受扫描距离、纸质报表大小等因素的影响,使得采集得到的待审核报表图像的图像尺寸往往不一致,因此,通过图像缩放,实现对图像尺寸的统一化。
第六步,对上述缩放后图像进行内容识别,以生成上述待审核报表文档。
实践中,上述执行主体可以通过TableNet对上述缩放后图像进行内容识别,以生成上述待审核报表文档。具体的,由于需要确定待审核报表文档是否存在对应的历史勾稽关系树,因此,在对缩放后图像进行内容识别时,可以先仅对缩放后图像包括的报表的表头信息和表结构信息进行识别。
可选地,上述执行主体对对上述缩放后图像进行内容识别,以生成上述待审核报表文档,可以包括以下步骤:
第一步,对上述缩放后图像进行初始内容识别,以生成初始待审核报表文档。
具体的,上述执行主体可以先仅对缩放后图像包括的报表的表头信息和表结构信息进行初始内容识别,以生成初始待审核报表文档。
第二步,确定上述初始待审核报表文档包括的最小单元格,作为目标单元格。
第三步,确定上述初始待审核报表文档对应的报表行数和报表列数。
实践中,上述执行主体可以将待审核报表文档对应的起始行位置与结束行位置的差值,作为报表行数,以及将待审核报表文档对应的起始列位置与结束列位置的差值,作为报表列数。
第四步,以上述目标单元格为遍历识别单位,根据上述报表行数和上述报表列数,对上述初始待审核报表文档进行单元格遍历识别。
作为示例,可以参考如下伪代码:
for i in range(n_column):
for j in range(n_row):
单元格遍历识别 cell[i][j]
其中,n_column表示报表列数,n_row表示单元格行数。cell[i][j]表示第i列第j行的单元格。
第五步,响应于上述初始待审核报表文档中存在单元格缺失位置,对上述初始待审核报表文档中的上述单元格缺失位置进行单元格补全。
作为示例,如图2所示的单元格补全过程的示意图,具体的,初始待审核报表文档可以包括4×4的表格,其中,位置为(3,3)的单元格存在单元格缺失,具体表现为单元格对应的边框线缺失,此时可以对位置为(3,3)的单元格进行单元格补全,如对单元格对应的边框线进行补全。
第六步,对于单元格补全后的初始待审核报表文档中的每个已遍历识别单元格执行以下处理步骤:
子步骤1:检测上述已遍历识别单元格相邻位置的单元格内容是否被覆盖在单元格内。
具体的,可以检测已遍历识别单元格相邻位置的单元格内容是否被单元格线框定在单元格内。
第七步,根据得到的检测结果集,对上述单元格补全后的初始待审核报表文档进行行单元格补全和/或列单元格补全,得到上述待审核报表文档。
其中,检测结果表征已遍历识别单元格相邻位置的单元格内容是否被覆盖在单元格内。例如,如图3所示的列单元格补全过程的示意图,具体的,初始待审核报表文档可以包括4×4的表格,其中,检测结果集可以表征:位置为(1,2)的单元格的右侧单元格缺失、位置为(2,2)的单元格的右侧单元格缺失、位置为(3,2)的单元格的右侧单元格缺失、位置为(4,2)的单元格的右侧单元格缺失、位置为(1,4)的单元格的左侧单元格缺失、位置为(2,4)的单元格的左侧单元格缺失、位置为(3,4)的单元格的左侧单元格缺失、位置为(4,4)的单元格的左侧单元格缺失,因此,可以确定第3列的4个单元格缺失,因此可以对第3列进行列单元格补全。行单元格补全的过程与列单元格补全的过程同理,在此不再赘述。
上述第一步至第七步作为本公开的一个发明点,解决了背景技术提及的技术问题二,即“对于扫描得到的报表文档,常存在单元格缺失的情况,从而影响后续报表自动审核的准确度”,实际情况中,受到扫描精度,光线,扫描角度,被扫描纸质报表的清晰度等因素的影响,扫描得到的报表文档常存在表格结构缺失的情况,具体的,包括独立单元格缺失和行/列单元格缺失两种情形。其中,独立单元格缺失表征报表文档中的某一个单元格缺失。行/列单元格表征报表文档中某行单元格或某列单元格缺失。基于此,本公开首先,对缩放后图像进行初始内容识别,以识别得到报表文档包括的表格的表格结构。接着,确定上述初始待审核报表文档包括的最小单元格,作为目标单元格。确定上述初始待审核报表文档对应的报表行数和报表列数。进一步,以上述目标单元格为遍历识别单位,根据上述报表行数和上述报表列数,对上述初始待审核报表文档进行单元格遍历识别。从而实现对报表文档内的单元格的逐一遍历识别。此外,响应于上述初始待审核报表文档中存在单元格缺失位置,对上述初始待审核报表文档中的上述单元格缺失位置进行单元格补全。即发现独立单元格缺失时,进行单元格补全。接着,对于单元格补全后的初始待审核报表文档中的每个已遍历识别单元格执行以下处理步骤:检测上述已遍历识别单元格相邻位置的单元格内容是否被覆盖在单元格内。最后,根据得到的检测结果集,对上述单元格补全后的初始待审核报表文档进行行单元格补全和/或列单元格补全,得到上述待审核报表文档。以此实现对行/列单元格缺失的补全。通过此种方式,实现了对报表文档对应的表结构的完善。侧面提高了后续报表自动审核的准确度。
步骤102,响应于不存在,生成待审核报表文档对应的文档识别信息。
在一些实施例中,上述执行主体可以响应于不存在,生成待审核报表文档对应的文档识别信息。其中,文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容。实践中,单元格位置可以采用坐标的形式表征。例如,单元格位置可以是(3,4,2,5),其中,“3,4”表征单元格位置对应的单元格占据第三行至第四行,“2,5”表征单元格位置对应的单元格占据第二列至第五列,即,单元格行起始位置(start_row)为“3”、单元格行结束位置(end_row)为“4”、单元格列起始位置(start_column)为“2”、单元格列结束位置(end_column)为“5”。单元格内容为单元格位置对应的单元格内的数据。具体的,单元格内容可以包括但不限于:数值型数据和非数值型数据。例如,非数值型数据可以是数值型数据对应的相应描述。如,非数值数据可以是“初期金额”,对应的数值型数据可以是“3000”。实践中,上述执行主体可以通过OCR技术,对上述待审核报表文档进行识别,得到上述文档识别信息。
步骤103,对文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息。
在一些实施例中,上述执行主体可以对文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息。其中,优化后的文档识别信息包括:位置优化后的单元格位置和单元格内容。实践中,当待审核报表文档为扫描得到的文档时,由于光线、角度等影响,会导致扫描得到待审核报表文档中的表格结构出现不清晰的情形,从而导致在后续的文档识别信息生成过程中,出现单元格位置识别错误等情况。如,将多个单元格误识别为一个单元格。由此,需要对冗余单元格位置优化。例如,可以采用人工的方式,对错识别的单元格位置进行更新,以生成上述优化后的文档识别信息。
在一些实施例的一些可选的实现方式中,上述执行主体对文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息。具体的,上述执行主体可以分别对文档识别信息对应的单元格进行行冗余单元格位置优化和列冗余单元格位置优化。其中,行冗余单元格位置优化和列冗余单元格位置优化的优化原理一致,具体的,以行冗余单元格位置优化为例,对上述文档识别信息对应的单元格执行以下行冗余单元格位置优化步骤:
第一步,确定位置优化区域。
实践中,上述位置优化区域可以是人员输入的需要进行位置优化的区域(合并单元格)。
第二步,从上述文档识别信息对应的单元格筛选出满足第一筛选条件组的单元格,作为候选单元格,得到候选单元格组。
实践中,如图4所示的行冗余单元格位置优化流程示意图,其中,上述第一筛选条件组包括:单元格行起始位置(start_row)大于等于上述位置优化区域的区域行起始位置(t_start_row)、单元格的单元格行结束位置(end_row)小于等于上述位置优化区域的区域行结束位置(t_end_row)、单元格行起始位置(start_row)不等于上述位置优化区域的区域行起始位置(t_start_row)且单元格行结束位置不等于上述位置优化区域的区域行结束位置(t_end_row)。
具体的,单元格行起始位置(start_row)大于等于上述位置优化区域的区域行起始位置(t_start_row)对应“start_row>=t_start_row”、单元格的单元格行结束位置(end_row)小于等于上述位置优化区域的区域行结束位置(t_end_row)对应“end_row<=t_end_row”、单元格行起始位置(start_row)不等于上述位置优化区域的区域行起始位置(t_start_row)且单元格行结束位置不等于上述位置优化区域的区域行结束位置(t_end_row)对应“start_row!=t_start_row&end_row!=t_end_row”。
第三步,响应于确定上述候选单元格组为空、且单元格行起始位置大于等于上述位置优化区域的区域行结束位置,对包含上述位置优化区域的单元格的单元格行起始位置和单元格行结束位置进行单元格收缩。
进一步参考图4,当候选单元格组为空、且单元格行起始位置(start_row)大于等于上述位置优化区域的区域行结束位置(t_end_row),即,“start_row>=t_end_row”对包含上述位置优化区域的单元格的单元格行起始位置和单元格行结束位置进行单元格收缩。具体的,上述执行主体可以直接将单元格行起始位置(start_row)-n,以及将单元格行结束位置(end_row)-n,以实现单元格收缩,其中,n= end_row -start_row。
第四步,响应于确定上述候选单元格组为空、且单元格行起始位置小于上述位置优化区域的区域行起始位置且单元格行结束位置大于等于上述位置优化区域的区域行结束位置,将包含上述位置优化区域的单元格的单元格行距离收缩为单位长度。
继续参考图4,当候选单元格组为空、且单元格行起始位置(start_row)小于上述位置优化区域的区域行起始位置(t_start_row)且单元格行结束位置(end_row)大于等于上述位置优化区域的区域行结束位置(t_end_row),将包含上述位置优化区域的单元格的单元格行距离收缩为单位长度。具体的,上述执行主体可以将单元格行起始位置和单元格行结束位置的单元格距离差值(n)收缩为单位一。
第五步,响应于确定上述候选单元格组不为空,从上述候选单元格组筛选出满足第二筛选条件的候选单元格,作为目标单元格组。
其中,上述第二筛选条件为:候选单元格的单元格行结束位置(end_row)与单元格行起始位置(start_row)的差值大于等于0、候选单元格的单元格行结束位置(end_row)与单元格行起始位置(start_row)不同,且候选单元格与除候选单元格以外的单元格之间无单元格交叉。
具体的,候选单元格的单元格行结束位置(end_row)与单元格行起始位置(start_row)的差值大于等于0对应“end_row-start_row>0”、候选单元格的单元格行结束位置(end_row)与单元格行起始位置(start_row)不同对应“start_row!=end_row”。
第六步,响应于确定上述目标单元格组不为空,对上述目标单元格组中的目标单元格进行逆序排序,得到目标单元格序列。
实践中,上述执行主体可以根据目标单元格组中的目标单元格的位置,进行逆序排序,得到上述目标单元格序列。
第七步,对于上述目标单元格序列中的每个目标单元格,响应于确定上述目标单元格的单元格行起始位置大于等于上述位置优化区域的区域行结束位置,对上述目标单元格进行单元格收缩。
参考图4,当上述目标单元格的单元格行起始位置(start_row)大于等于上述位置优化区域的区域行结束位置(t_end_row),上述执行主体可以对上述目标单元格进行单元格收缩,具体的,上述执行主体可以直接将单元格行起始位置(start_row)-n,以及将单元格行结束位置(end_row)-n,以实现单元格收缩,其中,n= end_row -start_row。
第八步,对于上述目标单元格序列中的每个目标单元格,响应于确定上述目标单元格的单元格行起始位置小于上述位置优化区域的区域行起始位置、且上述目标单元格的单元格行结束位置大于等于上述位置优化区域的区域行结束位置,将上述目标单元格的单元格行距离收缩为单位长度。
如图4所示,当目标单元格的单元格行起始位置(start_row)小于上述位置优化区域的区域行起始位置(t_start_row)、且上述目标单元格的单元格行结束位置(end_row)大于等于上述位置优化区域的区域行结束位置(t_end_row),将上述目标单元格的单元格行距离收缩为单位长度。具体的,上述执行主体可以将单元格行起始位置和单元格行结束位置的单元格距离差值(n)收缩为单位一。
上述第一步至第八步作为本公开的一个发明点,解决了背景技术提及的技术问题三,即“由于报表文档的多样性以及存在表结构误识别的情况,因此,常存在冗余单元格的情形,从而无法保证报表自动核验的有效性”,基于此,本公开涉及了针对冗余单元格位置优化逻辑,具体的,由于后续基于勾稽关系的报表文档审核依赖于单元格坐标的准确性,因此,得到准确度的单元格对应的单元格位置至关重要。实践中,由于存在冗余单元格的情形,常存在如将单个单元格错识别成多个单元格等情况。由此,通过设计冗余单元格位置优化逻辑,实现了对报表文档对应的表结构的自动优化。侧面保证了审核的有效性。
此外,上述第一步至第八步揭示了行冗余单元格位置优化的优化逻辑,由于行冗余单元格位置优化和列冗余单元格位置优化的优化原理一致,且均用于进行冗余单元格位置优化,因此,行冗余单元格位置优化的优化逻辑也应作为本公开用于解决技术问题三的发明点之一。
此外,为了能更好地辅助理解第一步至第八步的内容,继续参考如下2个示例:
示例1(针对图4中的实线对应的路径),具体参考图5所示的行冗余单元格位置优化流程的一个示意图,其中,单元格内的数字表征单元格对应的单元格位置,例如,(3,4,1,1)表征单元格行起始位置(start_row)为“3”、单元格行结束位置(end_row)为“3”、单元格列起始位置(start_column)为“1”、单元格列结束位置(end_column)为“1”。其中,单元格位置为(4,4,3,3)为空白单元格,即未包含单元格内容,除单元格位置为(4,4,3,3)以外的单元格,均包含单元格内容。具体的,发现(4,4,3,3)对应的单元格和(3,3,3,3)对应的单元格实际为一个单元格,因此,需要对(4,4,3,3)对应的单元格和(3,3,3,3)对应的单元格进行合并,得到单元格位置为(3,4,3,3)的合并后单元格。此时,按照图4中的实线对应的路径,判断是否存在单元格的行坐标包含于3、4两行内、且与合并后单元格的行坐标不完全一致。经查找,不存在,因此,可以对3、4行的单元格进行直接优化,即将两行合并为1行表示,具体的行数n=2-1=1,接着将包含合并后单元格的单元格的单元格行结束位置(end_row)-n,即end_row-1。于是将(3,4,1,1)更新为(3,3,1,1)、将(3,4,2,2)更新为(3,3,2,2)、将(3,4,3,3)更新为(3,3,3,3)、将(5,5,1,1)更新为(4,4,1,1)、将(5,5,2,2)更新为(4,4,2,2),以及将(5,5,3,3)更新为(4,4,3,3)。
示例2(针对图4中的虚线对应的路径),具体参考图6所示的行冗余单元格位置优化流程的另一个示意图,其中,单元格内的数字表征单元格对应的单元格位置,例如,(2,3,1,1)表征单元格行起始位置(start_row)为“2”、单元格行结束位置(end_row)为“3”、单元格列起始位置(start_column)为“1”、单元格列结束位置(end_column)为“1”。其中,单元格位置为(4,4,2,2)为空白单元格,即未包含单元格内容,除单元格位置为(4,4,2,2)以外的单元格,均包含单元格内容。其中,需要将单元格位置为(2,3,2,2)的单元格和单元格位置为(4,4,2,2)的单元格进行合并,得到的合并后单元格的单元格位置为(2,4,2,2)。此时,按照图4中的虚线对应的路径,首先,判断是否存在单元格的行坐标包含于2、3、4三行内、且与合并后单元格的行坐标不完全一致。经查找,存在单元格横跨2行和3行。其次,判定得到横跨2行和3行的单元格不是独立一行,因此可以进行行冗余单元格位置优化。接着,2、3行的单元格未与其他单元格交叉、且是多行,因此,对2、3行合并为1行。具体的行数n=2-1=1,接着,将包含合并后单元格的单元格的单元格行结束位置(end_row)-n,即end_row-1。同时将第3行以下的所有的单元格的单元格行结束位置和单元格行起始位置-1,即将(2,3,1,1)更新为(2,2,1,1)、将(4,4,1,1)更新为(3,3,1,1),以及将(2,4,2,2)更新为(2,3,2,2)。
步骤104,确定优化后的文档识别信息对应的勾稽关系信息。
在一些实施例中,上述执行主体可以确定优化后的文档识别信息对应的勾稽关系信息。
作为示例,上述执行主体确定优化后的文档识别信息对应的勾稽关系信息,可以包括以下步骤:
第一步,确定优化后的文档识别信息包括的非数值型的单元格内容,作为候选关键词,得到候选关键词集合。
实践中,文档识别信息包括的非数值型的单元格内容可以是数值型数据对应的相应描述,具体的可以是报表文档对应的表头信息。
第二步,筛选出包含有候选关键词集合中的候选关键词的勾稽关系,作为候选勾稽关系,得到候选勾稽关系集合。
第三步,根据目标人员从上述候选勾稽关系集合中筛选出的至少一个候选勾稽关系,生成上述勾稽关系信息。
实践中,目标人员可以是用于配置上述待审核报表文档对应的勾稽关系的人员。
作为示例,候选勾稽关系集合可以包括“勾稽关系A”、“勾稽关系B和“勾稽关系C”。其中,目标人员筛选了“勾稽关系A”和“勾稽关系B”,因此,勾稽关系信息可以包括2个勾稽关系,分别为“勾稽关系A”和“勾稽关系B”。
在一些实施例的一些可选的实现方式中,上述执行主体确定上述优化后的文档识别信息对应的勾稽关系信息,可以包括以下步骤:
第一步,获取目标用户选取的初始业务变量。
其中,上述目标用户可以是配置待审核报表文档对应的勾稽关系的用户。上述初始业务变量可以是上述目标用户选取的第一个业务变量。实践中,业务变量可以存储在业务知识库中,其中,业务知识库内存储的多个业务变量采用多叉树的结构进行存储。具体的,可以参考图7所示的用于存储业务变量的多叉树的树结构示意图,其中,所有的业务变量对应的节点均与根节点直接连接,例如,“业务变量a”节点、“业务变量b”节点、“业务变量c”节点、…、“业务变量z”节点均与根节点直接连接。此外,针对一个勾稽关系,包含业务变量a、业务变量d和业务变量s,其中,业务变量a和业务变量d存在一层运算关系,则“业务变量d”节点为“业务变量a”节点的一级子节点,业务变量a和业务变量s存在二层运算关系,则“业务变量s”节点为“业务变量a”节点的二级子节点。具体的,当用户在配置勾稽关系时,选取了业务变量a作为初始业务变量,则可以进一步根据用于存储业务变量的多叉树,推荐业务变量d作为推荐业务变量。
第二步,根据上述初始业务变量,执行以下勾稽关系生成步骤:
子步骤1:将初始业务变量添加至业务变量队列。
其中,上述业务变量队列初始为空。上述业务变量队列用于有序存储一条勾稽关系对应的业务变量。
子步骤2:根据初始业务变量在预先构建的业务知识库中的节点位置,确定与初始业务变量存在直接逻辑关联关系的节点,作为候选业务变量,得到候选业务变量集合。
进一步参考图7,当用户选取业务变量a作为初始业务变量时,可以将业务变量d、…、业务变量i、…、业务变量s、…、和业务变量p作为候选业务变量集合。
子步骤3:响应于候选业务变量集合为空或上述目标用户未从候选业务变量集合中选取候选业务变量,根据业务变量队列中的业务变量之间的逻辑关联关系,生成上述勾稽关系信息包括的勾稽关系,以及结束上述勾稽关系生成步骤。
实践中,当候选业务变量集合为空可以认为针对待配置的勾稽关系,已无可选的业务变量,可以认为勾稽关系对应的业务变量选择完毕。或目标用户未从候选业务变量集合中选取候选业务变量也可以认为勾稽关系对应的业务变量选择完毕。
第三步,响应于确定上述目标用户从候选业务变量集合中选取候选业务变量,将上述目标用户从候选业务变量集合中选取的候选业务变量,添加至业务变量队列,得到添加后的业务变量队列,作为业务变量队列,以及将上述目标用户从候选业务变量集合中选取的候选业务变量,作为初始业务变量,再次执行上述勾稽关系生成步骤。
步骤105,根据优化后的文档识别信息和勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树。
在一些实施例中,上述执行主体可以根据优化后的文档识别信息和勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树。其中,勾稽关系树可以是根据待审核报表文档对应的勾稽关系信息包括的至少一条勾稽关系、构建的表征待审核报表文档对应的文档识别信息内数据的结构关系的树形结构。
在一些实施例中,上述执行主体根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树,可以包括以下步骤:
第一步,响应于确定上述优化后的文档识别信息包括的单元格内容对应有除目标运算符组以外的运算符,根据上述勾稽关系信息包括的至少一条勾稽关系中的每条勾稽关系对应的运算逻辑、及上述勾稽关系在上述文档识别信息对应的单元格内容,生成第一候选勾稽关系树。
其中,上述第一候选勾稽关系树为多叉树。上述第一候选勾稽关系树中的叶子节点对应单元格内容。上述第一候选勾稽关系树中的除叶子节点以外的节点对应勾稽关系对应的运算符。目标运算符组可以包括:加法运算符和减法运算符。
作为示例,如图8所示的第一候选勾稽关系树的树结构示意图,其中,图8对应的勾稽关系可以是“业务变量a×(业务变量d-业务变量e)+(业务变量b-业务变量c)”。其中,图8上述的第一候选勾稽关系树中的叶子节点均为业务变量。图8上述的第一候选勾稽关系树中的非叶子节点均为运算符。
第二步,响应于确定上述优化后的文档识别信息包括的单元格内容仅对应上述目标运算符组内的运算符,根据上述勾稽关系信息包括的至少一条勾稽关系中的每条勾稽关系对应的运算逻辑、及上述勾稽关系在上述文档识别信息对应的单元格内容,生成第二候选勾稽关系树。
其中,上述第二候选勾稽关系树为多叉树。上述第二候选勾稽关系树中的节点对应单元格内容。上述第二候选勾稽关系树中的节点上的运算符表征与父节点之间的运算逻辑。
作为示例,如图9所示的第一候选勾稽关系树的树结构示意图,其中,图9对应的至少一条勾稽关系可以是:业务变量a=业务变量b+业务变量c、业务变量b=业务变量d+业务变量e-业务变量f、业务变量c=业务变量g+业务变量h、业务变量e=业务变量i-业务变量j+业务变量k。具体的,业务变量a对应的“1200000”可以是在上述文档识别信息对应的单元格内容。业务变量b对应的“600000”可以是在上述文档识别信息对应的单元格内容。业务变量c对应的“550000”可以是在上述文档识别信息对应的单元格内容。
第三步,将上述第一候选勾稽关系树或上述第二候选勾稽关系树,确定为上述勾稽关系树。
上述第一步至第三步的内容,以及相应的两种树形结构的勾稽关系树,作为本公开的一个发明点,解决了背景技术提及的技术问题四,即,“由于报表文档对应的表格结构灵活多样,在对报表文档对应的文档有效内容存储时,常见的存储方式存储效率低下”,实践中,存在部分报表文档中的数据仅存在加减运算关系,因此,设计了第二候选勾稽关系树对应的树形结构来存储此类型的报表文档对应的勾稽关系。此外,考虑到也存在部分报表文档包含除加减以外的复杂运算关系,因此,设计了第一候选勾稽关系树对应的树形结构来存储此类型的报表文档对应的勾稽关系。从勾稽关系复杂程度上,仅包含加减运算关系的报表文档对应的勾稽关系较为简单,而包含除加减以外的复杂运算关系的报表文档对应的勾稽关系较为复杂,因此,通过设计结构更轻便的第二候选勾稽关系树树对应的树形结构,来对仅包含加减运算关系的勾稽关系的报表文档进行存储。同时为了提高普适性,设计了第一候选勾稽关系树对应的树形结构,来对除包含加减运算关系以外运算关系的勾稽关系的报表文档进行存储。通过两种属性结构的勾稽关系树,实现了对不同类型报表文档的灵活、且高效的存储。
此外,树形结构的勾稽关系树,仅有较好的传递性,即在自动检测过程中,从叶子节点出发,当对勾稽关系树中的节点的值进行修改时,会自下而上的进行错误的修正。同时,本公开的勾稽关系树也存在一定的传递局限性和相互独立性,即一个节点出现异常,至多在三层树结构内体现,以及影响至多两个勾稽关系。基于此,在使用本公开的勾稽关系树进行自动核验时,建议自叶子节点出发,自下而上的进行逐层核验。
步骤106,根据勾稽关系信息和勾稽关系树,对待审核报表文档进行文档审核和异常显示。
在一些实施例中,上述执行主体可以根据勾稽关系信息和勾稽关系树,对待审核报表文档进行文档审核和异常显示。实践中,上述执行主体可以依次执行勾稽关系信息包括的至少一条勾稽关系中的每条勾稽关系,并在上述勾稽关系树中实时显示审核结果,当出现异常时,进行异常位置的显示。
在一些实施例的一些可选的实现方式中,上述执行主体根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示,还可以包括以下步骤:
第一步,按照从上述勾稽关系树中的叶子节点至根节点的顺序,通过上述勾稽关系信息包括的至少一条勾稽关系,对上述文档识别信息进行自动核验。
第二步,响应于核验异常,在上述勾稽关系树中高亮显示核验异常对应的节点。
作为示例,继续参考图9,其中,对于勾稽关系“业务变量a=业务变量b+业务变量c”,其中,业务变量a在上述文档识别信息对应的单元格内容应等于业务变量b在上述文档识别信息对应的单元格内容与业务变量c在上述文档识别信息对应的单元格内容的和,但实际自动审核过程中,1200000≠600000+550000,因此,可以在勾稽关系树中,高亮显示“业务变量a”对应的节点、“业务变量b”对应的节点,以及“业务变量c”对应的节点。
在一些实施例的一些可选的实现方式中,本公开对待审核报表文档对应的表结构涉及了4中表结构调整操作,分别为:删除操作、插入操作、合并单元格操作和拆分单元格操作。其中,删除操作可以用于删除某行和/或某列。插入操作可以用于前插一行、后插一行、左插一行和右插一行。合并单元格操作可以用于将单元格进行合并。拆分单元格操作可以用于将单元格进行拆分。具体的,合并单元格操作和拆分单元格操作均是通过更新单元格的坐标实现单元格的合并和拆分的。
示例1:针对删除操作,以删除行操作为例,通过删除操作,可以将待审核报表文档对应的表结构属于该行的单元格进行删除。接着通过更新操作将大于该行的单元格坐标减少一行,以完成删除操作。
示例2:针对插入操作,以向前插入一行为例,首先,通过选择操作,获取大于等于该行的单元格的位置。其次,通过更新操作将所有大于等于该行位置的单元格增加一行,此时更新顺序应为逆序,即由行数大的行向行数小的行进行逆序更新。最后,通过插入操作插入空白行,以完成插入操作。
示例3:针对合并单元格操作,首先,确定要合并的单元格是否可以进行合并。其次,当可以进行合并,通过选择操作获取所有单元格的信息,合并后获取合并后的单元格的信息,并插入表格。接着,通过删除操作删除原有的单元格信息。最后,对表格进行冗余单元格优化(行冗余单元格优化和列冗余单元格优化),以完成合并单元格操作。
示例4:针对拆分单元格操作,首先,确定要拆分的单元格是否为最小单元格。其次,若不是,通过选择操作获取要拆分的单元格的信息,以及将单元格拆分成多个最小单元格。接着,通过插入操作,将拆分得到的多个最小单元格的信息进行插入。最后,通过删除操作删除要拆分的单元格的信息。
本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的报表文档审核方法,提高了对报表文档审核的核验效率和准确度。具体来说,造成核验效率和准确度无法得到保障的原因在于:采用人工核验的方式,针对大量的、对应有不同勾稽关系的报表文档,核验效率和准确度无法得到保障。实际情况中,尤其是金融领域往往存在大量的需要核验的报表文档,其中,不同的报表文档往往对应有不同、且复杂的勾稽关系。在此基础上,面对繁多且不同的勾稽关系、以及大量的待核验报表文档,采用人工的方式无法有效提高核验效率和准确度。基于此,本公开一些实施例的报表文档审核方法,首先,确定待审核报表文档是否存在对应的历史勾稽关系树。实际情况中,常存在具有相同表结构、以及对应相同勾稽关系的报表文档,针对此种情形,当存在对应的历史勾稽关系树时,则无需重新生成相应的勾稽关系树,以此进一步提高核验效率。其次,响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容。当不存在对应的历史勾稽关系树时,则需要对待审核报表文档进行文档内容的提取,以得到待审核报表文档中的内容和内容相应的位置。接着,对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息。通过对冗余单元格位置优化,实现了对误识别,错识别的单元格的优化。进一步,确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系。实践中,不同的报表文档往往对应不同的勾稽关系,因此,需要根据实际情况确定待审核报表文档的勾稽关系信息。除此之外,根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树。实际情况中,报表文档中的数据往往存在对应的计算逻辑(勾稽关系)由此,可以通过生成树形的勾稽关系树来表征报表文档内的数据之间的结构关系。最后,根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。通过此种方式,实现了对大量的、对应有不同勾稽关系的报表文档的自动核验,核验效率和准确度均大大提高。
进一步参考图10,作为对上述各图所示方法的实现,本公开提供了一种报表文档审核装置的一些实施例,这些装置实施例与图1所示的那些方法实施例相对应,该报表文档审核装置具体可以应用于各种电子设备中。
如图10所示,一些实施例的报表文档审核装置1000包括:第一确定单元1001、第一生成单元1002、冗余单元格位置优化单元1003、第二确定单元1004、第二生成单元1005和审核和显示单元1006。其中,第一确定单元1001,被配置成确定待审核报表文档是否存在对应的历史勾稽关系树;第一生成单元1002,被配置成响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容;冗余单元格位置优化单元1003,被配置成对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;第二确定单元1004,被配置成确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系;第二生成单元1005,被配置成根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;审核和显示单元1006,被配置成根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。
可以理解的是,该报表文档审核装置1000中记载的诸单元与参考图1描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于报表文档审核装置1000及其中包含的单元,在此不再赘述。
下面参考图11,其示出了适于用来实现本公开的一些实施例的电子设备(例如,计算设备)1100的结构示意图。图11示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图11所示,电子设备1100可以包括处理装置(例如中央处理器、图形处理器等)1101,其可以根据存储在只读存储器1102中的程序或者从存储装置1108加载到随机访问存储器1103中的程序而执行各种适当的动作和处理。在随机访问存储器1103中,还存储有电子设备1100操作所需的各种程序和数据。处理装置1101、只读存储器1102以及随机访问存储器1103通过总线1104彼此相连。输入/输出接口1105也连接至总线1104。
通常,以下装置可以连接至I/O接口1105:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1106;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1107;包括例如磁带、硬盘等的存储装置1108;以及通信装置1109。通信装置1109可以允许电子设备1100与其他设备进行无线或有线通信以交换数据。虽然图11示出了具有各种装置的电子设备1100,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图11中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置1109从网络上被下载和安装,或者从存储装置1108被安装,或者从只读存储器1102被安装。在该计算机程序被处理装置1101执行时,执行本公开的一些实施例的方法中限定的上述功能。
需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(Hyper Text TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:确定待审核报表文档是否存在对应的历史勾稽关系树;响应于不存在,生成上述待审核报表文档对应的文档识别信息,其中,上述文档识别信息包括:上述待审核报表文档内的单元格对应的单元格位置和单元格内容;对上述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;确定上述优化后的文档识别信息对应的勾稽关系信息,其中,上述勾稽关系信息包括:至少一条勾稽关系;根据上述优化后的文档识别信息和上述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;根据上述勾稽关系信息和上述勾稽关系树,对上述待审核报表文档进行文档审核和异常显示。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一确定单元、第一生成单元、冗余单元格位置优化单元、第二确定单元、第二生成单元和审核和显示单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一确定单元还可以被描述为“确定待审核报表文档是否存在对应的历史勾稽关系树的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
以上描述仅为本公开的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种报表文档审核方法,包括:
确定待审核报表文档是否存在对应的历史勾稽关系树;
响应于不存在,生成所述待审核报表文档对应的文档识别信息,其中,所述文档识别信息包括:所述待审核报表文档内的单元格对应的单元格位置和单元格内容;
对所述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;
确定所述优化后的文档识别信息对应的勾稽关系信息,其中,所述勾稽关系信息包括:至少一条勾稽关系;
根据所述优化后的文档识别信息和所述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;
根据所述勾稽关系信息和所述勾稽关系树,对所述待审核报表文档进行文档审核和异常显示。
2.根据权利要求1所述的方法,其中,在所述确定待审核报表文档是否存在对应的历史勾稽关系树之前,所述方法还包括:
获取待审核报表图像;
对所述待审核报表图像进行图像灰度化处理,以生成灰度化处理后图像;
对所述灰度化处理后图像进行图像清晰度增强,以生成增强后图像;
对所述增强后图像进行图像畸变矫正,以生成矫正后图像;
对所述矫正后图像进行图像缩放,以生成缩放后图像;
对所述缩放后图像进行内容识别,以生成所述待审核报表文档。
3.根据权利要求2所述的方法,其中,所述对所述缩放后图像进行内容识别,以生成所述待审核报表文档,包括:
对所述缩放后图像进行初始内容识别,以生成初始待审核报表文档;
确定所述初始待审核报表文档包括的最小单元格,作为目标单元格;
确定所述初始待审核报表文档对应的报表行数和报表列数;
以所述目标单元格为遍历识别单位,根据所述报表行数和所述报表列数,对所述初始待审核报表文档进行单元格遍历识别;
响应于所述初始待审核报表文档中存在单元格缺失位置,对所述初始待审核报表文档中的所述单元格缺失位置进行单元格补全;
对于单元格补全后的初始待审核报表文档中的每个已遍历识别单元格执行以下处理步骤:
检测所述已遍历识别单元格相邻位置的单元格内容是否被覆盖在单元格内;
根据得到的检测结果集,对所述单元格补全后的初始待审核报表文档进行行单元格补全和/或列单元格补全,得到所述待审核报表文档。
4.根据权利要求3所述的方法,其中,所述确定所述优化后的文档识别信息对应的勾稽关系信息,包括:
获取目标用户选取的初始业务变量;
根据所述初始业务变量,执行以下勾稽关系生成步骤:
将初始业务变量添加至业务变量队列;
根据初始业务变量在预先构建的业务知识库中的节点位置,确定与初始业务变量存在直接逻辑关联关系的节点,作为候选业务变量,得到候选业务变量集合;
响应于候选业务变量集合为空或所述目标用户未从候选业务变量集合中选取候选业务变量,根据业务变量队列中的业务变量之间的逻辑关联关系,生成所述勾稽关系信息包括的勾稽关系,以及结束所述勾稽关系生成步骤;
响应于确定所述目标用户从候选业务变量集合中选取候选业务变量,将所述目标用户从候选业务变量集合中选取的候选业务变量,添加至业务变量队列,得到添加后的业务变量队列,作为业务变量队列,以及将所述目标用户从候选业务变量集合中选取的候选业务变量,作为初始业务变量,再次执行所述勾稽关系生成步骤。
5.根据权利要求4所述的方法,其中,所述对所述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息,包括:
对所述文档识别信息对应的单元格执行以下行冗余单元格位置优化步骤:
确定位置优化区域;
从所述文档识别信息对应的单元格筛选出满足第一筛选条件组的单元格,作为候选单元格,得到候选单元格组,其中,所述第一筛选条件组包括:单元格行起始位置大于等于所述位置优化区域的区域行起始位置、单元格的单元格行结束位置小于等于所述位置优化区域的区域行结束位置、单元格行起始位置不等于所述位置优化区域的区域行起始位置且单元格行结束位置不等于所述位置优化区域的区域行结束位置;
响应于确定所述候选单元格组为空、且单元格行起始位置大于等于所述位置优化区域的区域行结束位置,对包含所述位置优化区域的单元格的单元格行起始位置和单元格行结束位置进行单元格收缩;
响应于确定所述候选单元格组为空、且单元格行起始位置小于所述位置优化区域的区域行起始位置且单元格行结束位置大于等于所述位置优化区域的区域行结束位置,将包含所述位置优化区域的单元格的单元格行距离收缩为单位长度;
响应于确定所述候选单元格组不为空,从所述候选单元格组筛选出满足第二筛选条件的候选单元格,作为目标单元格组,其中,所述第二筛选条件为:候选单元格的单元格行结束位置与单元格行起始位置的差值大于等于0、候选单元格的单元格行结束位置与单元格行起始位置不同,且候选单元格与除候选单元格以外的单元格之间无单元格交叉;
响应于确定所述目标单元格组不为空,对所述目标单元格组中的目标单元格进行逆序排序,得到目标单元格序列;
对于所述目标单元格序列中的每个目标单元格,响应于确定所述目标单元格的单元格行起始位置大于等于所述位置优化区域的区域行结束位置,对所述目标单元格进行单元格收缩;
对于所述目标单元格序列中的每个目标单元格,响应于确定所述目标单元格的单元格行起始位置小于所述位置优化区域的区域行起始位置、且所述目标单元格的单元格行结束位置大于等于所述位置优化区域的区域行结束位置,将所述目标单元格的单元格行距离收缩为单位长度。
6.根据权利要求5所述的方法,其中,所述根据所述优化后的文档识别信息和所述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树,包括:
响应于确定所述优化后的文档识别信息包括的单元格内容对应有除目标运算符组以外的运算符,根据所述勾稽关系信息包括的至少一条勾稽关系中的每条勾稽关系对应的运算逻辑、及所述勾稽关系在所述文档识别信息对应的单元格内容,生成第一候选勾稽关系树,其中,所述第一候选勾稽关系树为多叉树,所述第一候选勾稽关系树中的叶子节点对应单元格内容,所述第一候选勾稽关系树中的除叶子节点以外的节点对应勾稽关系对应的运算符;
响应于确定所述优化后的文档识别信息包括的单元格内容仅对应所述目标运算符组内的运算符,根据所述勾稽关系信息包括的至少一条勾稽关系中的每条勾稽关系对应的运算逻辑、及所述勾稽关系在所述文档识别信息对应的单元格内容,生成第二候选勾稽关系树,其中,所述第二候选勾稽关系树为多叉树,所述第二候选勾稽关系树中的节点对应单元格内容,所述第二候选勾稽关系树中的节点上的运算符表征与父节点之间的运算逻辑;
将所述第一候选勾稽关系树或所述第二候选勾稽关系树,确定为所述勾稽关系树。
7.根据权利要求5所述的方法,其中,所述根据所述勾稽关系信息和所述勾稽关系树,对所述待审核报表文档进行文档审核和异常显示,包括:
按照从所述勾稽关系树中的叶子节点至根节点的顺序,通过所述勾稽关系信息包括的至少一条勾稽关系,对所述文档识别信息进行自动核验;
响应于核验异常,在所述勾稽关系树中高亮显示核验异常对应的节点。
8.一种报表文档审核装置,包括:
第一确定单元,被配置成确定待审核报表文档是否存在对应的历史勾稽关系树;
第一生成单元,被配置成响应于不存在,生成所述待审核报表文档对应的文档识别信息,其中,所述文档识别信息包括:所述待审核报表文档内的单元格对应的单元格位置和单元格内容;
冗余单元格位置优化单元,被配置成对所述文档识别信息对应的单元格进行冗余单元格位置优化,以生成优化后的文档识别信息;
第二确定单元,被配置成确定所述优化后的文档识别信息对应的勾稽关系信息,其中,所述勾稽关系信息包括:至少一条勾稽关系;
第二生成单元,被配置成根据所述优化后的文档识别信息和所述勾稽关系信息包括的至少一条勾稽关系,生成勾稽关系树;
审核和显示单元,被配置成根据所述勾稽关系信息和所述勾稽关系树,对所述待审核报表文档进行文档审核和异常显示。
9.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至7中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275444.5A CN115983223B (zh) | 2023-03-21 | 2023-03-21 | 报表文档审核方法、装置、电子设备和计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275444.5A CN115983223B (zh) | 2023-03-21 | 2023-03-21 | 报表文档审核方法、装置、电子设备和计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115983223A true CN115983223A (zh) | 2023-04-18 |
CN115983223B CN115983223B (zh) | 2023-07-18 |
Family
ID=85970544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310275444.5A Active CN115983223B (zh) | 2023-03-21 | 2023-03-21 | 报表文档审核方法、装置、电子设备和计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115983223B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111612966A (zh) * | 2020-05-21 | 2020-09-01 | 广东乐佳印刷有限公司 | 一种基于图像识别的票据凭证防伪检测方法及装置 |
CN111626693A (zh) * | 2020-04-28 | 2020-09-04 | 北京健康之家科技有限公司 | 业务信息的审核方法及装置 |
CN112183511A (zh) * | 2020-12-01 | 2021-01-05 | 江西博微新技术有限公司 | 一种图像导出表格的方法、系统、存储介质及设备 |
CN112182250A (zh) * | 2020-10-27 | 2021-01-05 | 深圳市万取一搜人工智能有限公司 | 勾稽关系知识图谱的构建方法、财务报表核查方法及装置 |
CN112508346A (zh) * | 2020-11-17 | 2021-03-16 | 四川新网银行股份有限公司 | 一种实现指标化业务数据勾稽的方法 |
CN113887345A (zh) * | 2021-09-16 | 2022-01-04 | 北京来也网络科技有限公司 | 结合ai和rpa的文本信息处理方法、装置及存储介质 |
CN114241499A (zh) * | 2021-12-17 | 2022-03-25 | 深圳壹账通智能科技有限公司 | 表格图片识别方法、装置、设备和可读存储介质 |
CN115438637A (zh) * | 2022-08-19 | 2022-12-06 | 中国银联股份有限公司 | 一种数据核验方法、装置、电子设备及存储介质 |
CN115587098A (zh) * | 2022-10-18 | 2023-01-10 | 上海欧冶金融信息服务股份有限公司 | 一种智能识别图表数据的方法及系统 |
-
2023
- 2023-03-21 CN CN202310275444.5A patent/CN115983223B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111626693A (zh) * | 2020-04-28 | 2020-09-04 | 北京健康之家科技有限公司 | 业务信息的审核方法及装置 |
CN111612966A (zh) * | 2020-05-21 | 2020-09-01 | 广东乐佳印刷有限公司 | 一种基于图像识别的票据凭证防伪检测方法及装置 |
CN112182250A (zh) * | 2020-10-27 | 2021-01-05 | 深圳市万取一搜人工智能有限公司 | 勾稽关系知识图谱的构建方法、财务报表核查方法及装置 |
CN112508346A (zh) * | 2020-11-17 | 2021-03-16 | 四川新网银行股份有限公司 | 一种实现指标化业务数据勾稽的方法 |
CN112183511A (zh) * | 2020-12-01 | 2021-01-05 | 江西博微新技术有限公司 | 一种图像导出表格的方法、系统、存储介质及设备 |
CN113887345A (zh) * | 2021-09-16 | 2022-01-04 | 北京来也网络科技有限公司 | 结合ai和rpa的文本信息处理方法、装置及存储介质 |
CN114241499A (zh) * | 2021-12-17 | 2022-03-25 | 深圳壹账通智能科技有限公司 | 表格图片识别方法、装置、设备和可读存储介质 |
CN115438637A (zh) * | 2022-08-19 | 2022-12-06 | 中国银联股份有限公司 | 一种数据核验方法、装置、电子设备及存储介质 |
CN115587098A (zh) * | 2022-10-18 | 2023-01-10 | 上海欧冶金融信息服务股份有限公司 | 一种智能识别图表数据的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115983223B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3869385A1 (en) | Method for extracting structural data from image, apparatus and device | |
CN111369545A (zh) | 边缘缺陷检测方法、装置、模型、设备及可读存储介质 | |
CN112966583A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN112465065B (zh) | 一种传感器数据关联方法、装置、设备及存储介质 | |
US20210142242A1 (en) | System and method for implementing smart business intelligence testing tools | |
CN113344826A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN116186354A (zh) | 区域画像显示方法、装置、电子设备和计算机可读介质 | |
CN115272182B (zh) | 车道线检测方法、装置、电子设备和计算机可读介质 | |
US11398101B2 (en) | Item validation and image evaluation system | |
CN115983223B (zh) | 报表文档审核方法、装置、电子设备和计算机可读介质 | |
CN113158988A (zh) | 财务报表处理方法、装置以及计算机可读存储介质 | |
CN111414889B (zh) | 基于文字识别的财务报表识别方法及装置 | |
CN111815654A (zh) | 用于处理图像的方法、装置、设备和计算机可读介质 | |
CN114742707B (zh) | 多源遥感图像拼接方法、装置、电子设备和可读介质 | |
CN112445514A (zh) | 一种代码评审方法及相关产品 | |
US20160162639A1 (en) | Digital image analysis and classification | |
CN112465092B (zh) | 一种二维码样本的生成方法、装置、服务器和存储介质 | |
CN111797590B (zh) | 数据核对方法、装置和设备 | |
CN114882557A (zh) | 一种人脸识别方法和装置 | |
CN113807056A (zh) | 一种文档名称序号纠错方法、装置和设备 | |
CN116069831B (zh) | 一种事件关系的挖掘方法及相关装置 | |
CN114495236B (zh) | 图像分割方法、装置、设备、介质及程序产品 | |
CN113989511B (zh) | 图像语义分割方法、装置、电子设备和存储介质 | |
CN114782696A (zh) | 一种信息提取方法、装置、设备和介质 | |
CN117435194A (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 | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |