[发明专利]一种计算机处理复杂表单的方法有效
申请号: | 201711025018.7 | 申请日: | 2017-10-26 |
公开(公告)号: | CN107741924B | 公开(公告)日: | 2020-02-21 |
发明(设计)人: | 路通;吴子涵 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F40/18 | 分类号: | G06F40/18;G06F40/253;G06F40/284;G06F8/20 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 胡建华;于瀚文 |
地址: | 210023 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机 处理 复杂 表单 方法 | ||
本发明公开了一种计算机处理复杂表单的方法,执行如下步骤:步骤1,对表单图像进行预处理;步骤2,提取出表格区域中的所有表格单元格;步骤3,分析单元格内信息键值对的逻辑关系,基于ABNF范式设计规则;步骤4,根据步骤3中设计的规则使用开源词法分析器Lex和语法分析器Yacc构造编译器;步骤5,使用设计的语言描述表格单元格,通过解析描述语言得到表格单元格内逻辑结构。
技术领域
本发明涉及一种版面分析方法,特别是一种计算机处理复杂表单的方法。
背景技术
随着信息时代的来临,数字信息已经成为人类最重要的资源。而表格是最常见的一种信息载体,如何将表格中的信息电子化、数字化,已经成为研究的热点之一。
表单版面分析作为表单文档电子化的重要部分,然而由于表单结构的多样性,很难通过一种单一的规则来分析表单中的逻辑结构,本发明对复杂表单的版面分析进行了深入的探讨。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种处理复杂表单的综合方法,实现了复杂表单的半自动化处理,节省了大量的人力和时间,提高了工作效率。
本发明公开了一种处理复杂表单的综合方法,执行如下步骤:
步骤1:对表单图像进行预处理;
步骤2:提取出表格区域中的所有表格单元格;
步骤3:分析单元格内信息键值对的逻辑关系,基于ABNF范式设计规则(引用文献:RFC 5234-Augmented BNF for Syntax Specifications:ABNF);
步骤4:根据步骤3中设计的规则使用词法分析器Lex和语法分析器Yacc构造编译器(引用文献:ANSI C Yacc grammar,Lex–A Lexical Analyzer Generator);
步骤5:使用设计的语言描述表格单元格,通过解析描述语言得到表格单元格内的逻辑结构,其中,设计的语言即为步骤3中定义的一组规则,描述语言即为符合规则的字符串
步骤1包括如下步骤:
步骤1-1,去除表单图像中红色的印章:遍历表单图像中的所有像素点,如果像素点红色通道值大于200且蓝色通道和绿色通道值均小于200,则判定该像素点是印章像素点,令该像素点各通道值均为255;
步骤1-2,对表单进行倾斜校正:提取出表单图像中所有线段,如果线段的左右端点分别是其外接矩形的左上端点和右下端点,则判定该线段是顺时针偏转线段;如果线段的左右端点分别是其外接矩形的左下端点和右上端点,则判定该线段是逆时针偏转线段;筛选出顺时针偏转线段和逆时针偏转线段,组成顺时针偏转线段组和逆时针线段组,计算顺时针线段组中线段偏转正弦值之和,记为:Clockwise,计算逆时针线段组中线段偏转正弦值之和,记为:Counterclockwise,通过如下公式计算线段的正弦值tan:
tan=height/width,
其中,height为线段外接矩形的长度,width为线段外接矩形的宽度;
如果Clockwise大于Counterclockwise则选用顺时针线段组,判定表单顺时针方向倾斜,否则选用逆时针线段组,判定表单逆时针方向倾斜;假设选用的线段组的正弦值之和为tansum,选用线段组中线段个数为m,计算倾斜角度的正弦值tanaverage:
tanaverage=tansum/m,
通过如下公式计算倾斜角度α:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711025018.7/2.html,转载请声明来源钻瓜专利网。