基于深度学习的手写表格识别系统研究与实现

2019-05-24 14:17李若月钱强张瀚文
软件导刊 2019年5期
关键词:卷积神经网络

李若月 钱强 张瀚文

摘 要:为了对非固定样式的手写表格文档进行批量识别处理,实现自动录入功能,首先通过空表识别生成单元格信息,分析版面结构;其次对图片进行去噪、倾斜校正、二值化等处理,对手写内容进行分割;最后搭建识别手写字符的卷积神经网络。实验结果表明,最终实现的识别系统能对不同格式的手写表格进行识别并生成数据格式文件。基于空表识别得到单元格信息的手写表格识别系统能对不同样式的表格进行批量识别处理,且通过CNN搭建识别模型,手写汉字也能被识别,使系统通用性更好,便于应用扩展。

关键词:手写汉字识别;表格识别;卷积神经网络;识别系统

DOI:10. 11907/rjdk. 191307

中图分类号:TP303 文献标识码:A 文章编号:1672-7800(2019)005-0017-04

Abstract: In order to carry on the batch recognition processing to the non-fixed style handwritten documents and realize the function of automatic input, at first, the cell structure is generated by identifying the empty table, and the layout structure is analyzed. Then, the image is processed by denoising, skew correction, binarization, and the handwritten content is segmented. Finally, a convolutional neural network for handwritten character recognition is built. The experimental results show that the recognition system can recognize different handwritten forms and generate data format files. The handwritten form recognition system based on recognizing blank table and getting cell information can recognize different forms in batches, and the recognition model is set up by CNN, so handwritten Chinese characters can be recognized, which increases the generality of the system and easiness for application.

Key Words: handwritten Chinese character recognition; form recognition; convolutional neural network; recognition system

0 引言

紙质表格是日常生活工作中应用非常广泛的文档类型,其功能多样、形式各异。为实现管理信息化,将纸质表格上的信息转换为电子数据是企业、单位的必要选择。传统人工数据录入方法整理纸质表格耗费大量人力,且效率低下、成本高昂。尤其是手写表格,由于每个人字迹不一,加大了人工录入工作量,并且录入错误率也较高。虽然已有自动表格录入系统,但这些系统多用于如发票等具有固定形式的表格,且识别对象多为手写数字,难以对其进行推广应用。

虞飞等[1]设计了一种通用机打发票识别系统,使用倾斜检测的方法对表格进行处理,采用统计数字投影的方法识别数字;李彬等[2]提出一种特征目标自动识别表格,通过对感兴趣的区域进行检测,以此识别一张完整的考核测评表。但是上述系统只能针对具有特定或相似格式的表格进行识别处理,是一种通过提取表格线完成模板匹配[3]的简单的表格识别方法。文献[4]提出了表格数据识别处理输出规则概念,成功研发出一种手写表格数字识别系统;Coüasnon等[5]提出一种根据预定义模型对表格进行分类识别处理的方法;Watanabe等[6]提出通过引入分类树获取版面结构并识别多种表格文档图像布局结构的方法;Kieninger[7]提出输入单词边界框信息,再输出文本块逻辑单元,用于标识表格环境和单元格;Zanibbi等[8]通过建立能定义表格的物理和逻辑结构检测表格;文献[9]提出通过交点特征和交点轨迹法对表格单元进行提取的方法。

除金融等行业具有固定格式的手写表格外,在人事登记、医疗、教育等领域还有其它手写表格。这些表格文档数量大、形式不固定,而且待识别内容不仅有手写数字,还有识别难度更大的手写汉字。为扩大应用范围,手写表格的录入、管理以及数据存储有重大研究意义。

表格自动录入系统通常由4部分组成:表格分析、单元格提取、单元格内容识别、数据录入。由于本文研究对象不只局限于具有固定格式的表格,因此分析表格版面结构成为系统工作基础。一个表格文档由不同大小、位置的单元格组成,通过分析表格版面结构,可以得到需要识别的单元格位置。在单元格提取阶段使用位置信息提取其内容,采用卷积神经网络(Convolutional Neural Network,CNN)进行识别,最终将得到的结果生成数据格式文件,以便后期数据管理及系统推广应用。本文系统流程如图1所示。

1 表格信息生成

现有表格识别软件通常先进行图像处理,再进行表格版面结构分析,从而完成表格类型判断[10]。由于现实中的手写表格类型多样、应用广泛,若采用该方法,仅能识别、处理少数固定形式的表格文档,难以扩大应用范围。本文采取生成表格信息的方法完成表格类型判断,并得到其位置信息,该过程可通过空白表格识别完成。

空白表格一般含有两种类型的单元格:有印刷文字的标题单元格与待人工填写的单元格。在获取含需要识别手写内容的单元格过程中,主要难点在于手写汉字或数字提取。因此本文首先依次判断每个单元格内是否含有文字,从而确定其属性,即单元格类型,并将其记录。

根据上述判断,识别并记录每个标题单元格的印刷内容,从而生成数据文件各标题栏。与此同时,记录每个标题单元格对应的待提取内容单元格位置。内容单元格的位置用二元组表示,用于描述其所在行及在该行的位置。定义代码如下所示:

//记录标题格的属性

int type_num;//表格的标题数目

//记录内容单元格对应的标题和位置

int type;//内容单元格对应标题

int x,y;//内容单元格位置信息

2 表格处理

2.1 图片预处理

一般情况下,表格图片可通过拍照、扫描等方式得到,而设备、环境光线等诸多因素会影响最终成像图片质量,使图片留存噪点。噪点是由图像中亮度或颜色随机变化引起的,会给图像带来错误或多余信息,造成图像识别困难。

为了去除图像中的噪点,本文采用中值滤波法对表格图像进行处理。中值滤波是一种非线性平滑滤波,用待处理的像素及其邻近的若干像素组成一个领域,将领域中的像素按照灰度等级进行排序,选择序列中值作为输出像素值以代替原像素值。其抑制效果佳,可以基本保持画面清晰度[11]。

在进行光学扫描时,由于环境、光线等客观原因,可能导致扫描的图像位置不正,同样会影响后期图像识别效果。尤其对于表格文档来说,如果表格框线倾斜会对框线检测和单元格提取造成极大影响, 因此需进行图像校正。

本文采用透视变换(Perspective Transformation)的方法对表格图像进行角度校正[12]。透视变换可以将原始图像投影到一个新的视平面,通过变换矩阵可以将任意一个四边形变换为长方形。经去噪和角度校正后的图像与原始图像对比如图2所示。

通过摄像头得到的图片一般为彩色图像,需要对其进行灰度化处理。在RGB型彩色图像中,若每一个像素点的3种颜色成分值相等,则为灰度图像,其值也称为灰度值。灰度图像和彩色图像一样,可以描述图像整体、局部亮度与色度等级分布及特征。对获得的灰度图像进行二值化处理,以便后期检测与框线提取。图像二值化指将图像上各像素点灰度值设置为0或255,使整个图像呈现黑白分明的效果。二值化算法即取一个阈值,图像任一像素点阴影值高于阈值,则为黑色;阴影值低于阈值,则为白色。

常用全局二值化法极易受光线影响,因为阈值固定,如图像有阴影,该区域则会出现全黑。因此本文采用自适应二值化法处理图像,其每一个像素点比对的阈值根据其邻域其余各像素点灰度值获得,因此处理后的图片受环境光线影响更小[13]。二值化后的图像如图3所示。

2.2 单元格检测及提取

表格图片经过上述预处理后,即可得到含有待识别单元格的表格图像,在单元格提取过程中,将检测并提取表格框架及单元格框线。本文采用数学形态学中腐蚀运算和膨胀运算进行表格框线检测[14]。

腐蚀运算的目的是求图像交集,即实现图像白色部分“领域缩小”,使图像光亮部分缩小,黑暗部分放大。膨胀运算为求图像并集,即实现图像白色部分“领域扩大”,使效果图拥有比原图更大的白色区域。通过先腐蚀后膨胀的方法,去掉表格中除了框线以外的其它部分,即可留下各单元格及其框线,提取表格框架。处理后的图像如图4所示。

3 内容识别

3.1 分割

提取完单元格后可对单元格内容进行识别。字符识别的关键在于分割,分割准确度在一定程度上决定识别成功率。投影法是进行字符分割最简单的方法,其原理是将二值化后的图像在垂直方向进行投影,根据投影后得到的极值判断边界以进行分割[15]。本文使用水平投影和垂直投影实现字符分割。首先对图像进行横向扫描,分割出每一行的内容;再对每一行进行纵向扫描,即可得到每一个字符。

由于投影法效果不是特别理想,可能会出现多个字符粘连的情况,因此本文还采用连通域分割法对字符进行分割优化。连通域分割法针对無粘连字符有很好的分割效果[16]。由于字符间没有粘连,每个字符都是一个单独的连通域。首先在二值化图像中找到一个黑色像素,并将所有与之相连的黑色像素遍历标记,即可判断出每个字符的分割位置。分割后的字符如图5所示。

3.2 识别

在手写数字识别方面已积累诸多研究成果,例如模糊逻辑方法[17]、粗糙集方法[18]、统计方法[19]、梯度与曲率方法[20]等。由于手写表格文档存在手写汉字,且手写汉字识别难度较大,因此本文采用卷积神经网络对分割后的字符进行识别。识别手写汉字的网络结构如图6所示。12层网络从上往下进行,每一层的输入为上一层的输出。输入层大小为96×96×1,使用32个3×3的卷积核对输入图像卷积,然后进行大小为2×2的池化。手写数字识别的网络结构与汉字识别的网络结构相比较为简单,设置输入层大小为28×28×1,使用32个4×4的卷积核对输入进行5层网络的卷积即可。本系统使用的训练数据为mnist数据集和HWDB1.1数据集。

4 实验与应用

在实际问题中的手写表格文档样式各异,应用场景也不同,没有如发票等固定格式表格的普适性。但若能实现手写表格自动识别与录入,将会大幅提高工作效率。因此本文通过实验,验证系统对不同类型表格识别的有效性。对某签到表进行识别处理,最终得到的数据格式文件如图7所示。

为了验证系统对各种类型表格的处理效果,本文选取图书借阅登记表进行实验。首先识别空表,得到单元格描述信息。待批量处理的手写表格图像如图8所示。

将上述图像输入本文系统中,通过图片预处理、表格框线检测与提取、字符分割、手写字符识别等过程,最终得到数据格式文件如图9所示。

由实验结果可以看出,本系统对不同格式的表格图像均能进行批量处理,并得到标准格式数据文件。本系统可生成为xlsx格式文件,根据不同的需求,还可对输出文件格式进行修改。

5 结语

本文设计了一个手写表格文档识别系统。通过识别空表得到单元格信息,因此可以对同类型表格进行批量识别。从实验结果可以看到,本文系统可对不同类型的表格进行批量处理和识别,并得到相应数据格式文件。针对没有粘连的字符,系统识别率达95%以上,能够满足一般实际应用的需要。下一步研究内容是如何提高分割算法准确率和识别模型可靠性。

参考文献:

[1] 虞飞,皮佑国. 通用机打商业发票识别系统研究与实现[J]. 信息技术,2013(6):36-40.

[2] 李彬,赵连军, 刘帅. 表格图像特征目标识别技术的研究[J]. 科技视界,2016(23):105-106.

[3] 蒋东玉,田英鑫. 图像中表格转换成HTML表格的研究与实现[J]. 科学技术创新,2014(24):172-172.

[4] 王行荣,应俊. 手写表格识别系统研究和实现[J]. 计算机科学, 2008,35(6):268-271.

[5] COüASNON B,LEMAITRE A. Handbook of document image processing & recognition[M]. Berlin:Springer,2014.

[6] WATANABE T,LUO Q,SUGIE N. Layout recognition of multi-kinds of table-form documents[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,1995,17(4):432-445.

[7] KIENINGER T. Table structure recognition based on robust block segmentation[C]. Proceedings of the International Society for Optical Engineering, 1998:22-32.

[8] ZANIBBI R, BLOSTEIN D, CORDY J R. A survey of table recognition[J]. International Journal on Document Analysis and Recognition, 2004, 7(1):1-16.

[9] 刘昱. 印刷体表格识别的研究[D]. 哈尔滨:哈尔滨工程大学, 2013.

[10] 张慧. 基于模型驱动的表格识别的研究[D]. 济南:山东大学, 2011.

[11] 高浩军,杜宇人.中值滤波在图像处理中的应用[J].电子工程师,2004(8):35-36.

[12] LO R C,TSAI W H. Perspective-transformation-invariant generalized Hough transform for perspective planar shape detection and matching[J]. Pattern Recognition,1997,30(3):383-396.

[13] 江明,刘辉,黄欢.图像二值化技术的研究[J].软件导刊,2009,8(4):175-177.

[14] 戴青云,余英林.数学形态学在图象处理中的应用进展[J].控制理论与应用,2001(4):478-482.

[15] 杨晓娟,宋凯.基于投影法的文档图像分割算法[J].成都大學学报:自然科学版,2009,28(2):139-141.

[16] 郭丽, 孙兴华. 一种基于连通域的版面分割方法[J]. 计算机工程与应用,2003(5):105-107.

[17] HOUGH P V C. Method and means for recognizing complex patterns[P] .US Patent 3069654, 1962-12-16.

[18] GONZALEZ R C, WOODS R E. Digital image processing[M]. Second Edition. Beijing:Publishing House of Electronics Industry, 2006.

[19] WONG K Y,CASEY R G,WAHL F M. Document analysis system[J]. IBM Journal of Research and Development, 1982, 26(6):647-656.

[20] SHI M,FUJISAWA Y,WAKABAYASHI T,et al. Handwritten numeral recognition using gradient and curvature of gray scale image[J]. Pattern Recognition, 2002, 35(10):2051-2059.

(责任编辑:江 艳)

猜你喜欢
卷积神经网络
卷积神经网络语言模型研究
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法