APP下载

工厂检测检验用手写表格的识别及数字化处理方法

2023-05-09方浩东鲍敏

软件工程 2023年5期
关键词:预处理

方浩东 鲍敏

关键词:预处理;形态学检测;Tesseract-OCR;表格框架;动态掩膜

中图分类号:TP391 文献标识码:A

1 引言(Introduction)

当前,我国的大部分轴承生产企业处于向数字化[1]、智能化演进的阶段。在这个大趋势下,一部分企业已经开始实施数据自动化接入工作,但出于对成本、工具及工作效率等因素的考虑,通常在原料入厂检验及现场首检、抽检环节仍然使用了较多的需要人工手写的表格。

常见的原料检测数字化方式包括直接在上位机或App上录入数据,但是这两种方式存在效率低和数据兼容性问题。马致远等[2]提出基于Faster-RCNN(区域生成网络)的表格检测算法,将文档中的表格信息提取出来。毛尚伟等[3]提出基于Transfer-crf神经网络实现对电子表格结构的识别。潘炜等[4]设计一种基于光学字符识别技术和TensorFlow深度学习框架的表格文本识别模型,可以实现对表格的批量识别。然而,深度学习对海量数据集训练出最佳算法模型,对企业硬件要求高,增加成本的同时会导致训练时间过长。基于此,本文设计一套字符识别系统:基于形态学[5]提取表格框架,设计动态掩膜结合角点检测实现单元格分割,基于Tesseract-OCR[6]训练专用字库对单元格内字符进行识别,主要包括表格图像预处理模块、表格提取和单元格分割模块及字符识别三大模块。

2 表格图像预处理模块(Preprocessing module ofform image)

本研究要处理的表格图片总共分为七类,依次为热处理、正标套圈大圈、正标套圈小圈、轴承成品、非标套圈、联轴器、钢球检验报告单。

2.1 消噪处理

噪声的存在对图像的质量有着很大的影响,它会使图像模糊、丢失关键信息等。噪声主要有两个来源方式,分别是在获取和传输过程中会产生噪声。在获取图像时会受材料特性、环境因素和电子元器件等因素的影响而产生各种噪声,在传输过程中会受传输设备或传输介质等因素的影响而产生噪声。常见的噪声主要有椒盐噪声、高斯噪声、泊松噪声、乘性噪声四种。

本文采用高斯滤波[7]的方法对图像进行消噪处理。高斯滤波是一种线性的平滑滤波,它将频域处理和时域处理相结合。对需要识别的图像进行平均加权计算,使得图像上每一个像素点都是由它本身和相邻其他像素点值计算得到,从而实现将噪声信息过滤掉,对图像起到一个平滑作用。

一维高斯函数分布式:

二维高斯函数分布式:

高斯函数是单值函数,它在所有的方向上都是单调递减的,其中心点像素不会受到距离中心点较远处像素過大的影响,从而能保证中心点和边缘处的特性;并且,二维高斯函数是旋转对称的,它在各个方向上的平滑程度都是相同的,因此使用高斯滤波能有效消除待处理图像中的噪声影响。

2.2 二值化处理

在对图像进行数字化处理的过程中,二值化处理[8]是不可或缺的步骤,它将灰度图像转化为二值图像,能显著减少图像中的干扰信息。图1(a)为输入样本图,是由众多像素点组成,而像素点又是通过RGB(红绿蓝)三原色表现的,二值化就是让图像像素点矩阵中的值为255(白色)或0(黑色),即让整个图像呈现出只有黑色和白色的效果。本文使用自适应阈值二值化cv2.adaptiveThreshold函数对图像进行二值化处理,该函数在去除背景和提取前景的有用信息方面更加有效,如图1(b)所示。

2.3 倾斜矫正

由于纸质数据在拍摄时难免存在倾斜现象,会对后期表格处理存在干扰,尤其对文字不能分割成单个字符时,会降低识别的准确率,因此对倾斜的图像进行校正,会对识别准确率有很大程度的提高。

图像进行灰度化和二值化处理后,对倾斜图像校正的关键问题在于要准确找到它的倾斜角度,本文采用霍夫变换,其基本实现原理是首先识别图像中的几何图形,从中检测到对应的直线,然后通过计算直线的倾斜角度判断图形的倾斜度数,最后进行旋转校正;而表格图像的框线是横平竖直的,所以使用霍夫变换对表格图像进行倾斜校正,能获得一个很好的识别结果。

对图像进行矫正计算得到角度脱粒图像及直线图像,如图3所示。

3.3 动态掩膜

由于待识别表格复杂且表格上有很多信息是固定的,因此全部进行识别会大大增加识别时间,而且会降低识别精度。为了解决上述问题,本文提出一种基于传统图像掩膜方式的动态掩膜方法,将不感兴趣的区域遮蔽。图像掩膜是借鉴制作PCB(印制电路板)的过程,计算机中则是将图像当作一个矩阵,图像掩膜即制作一个模板图像,对需要保留有用信息的部分置为“1”,而无用信息部分置为“0”进行过滤处理,之后对待处理图像操作就是将掩膜图像矩阵与待处理图像矩阵进行乘积运算,从而得到最后需要处理的图像,掩膜过程如图6所示。

因为不同的表单固定区域是不同的,所以会先对不同的表格定义其需要掩膜内容的坐标交点信息,并存入数组中,再根据得到的表单类型到mylisty和mylistx数组中匹配对应的交点位置信息,以交点位置定位绘制掩膜图像,将掩膜图像与目标图像实施与运算操作,动态掩膜流程图如图7所示。

未掩膜操作如图8(a)所示,对输入样本图片掩膜并提取单元格信息如图8(b)所示。

由图8可知,经过掩膜后单元格明显减少,识别内容也会相应减少。

4 字符识别模块(Character recognition module)

本文基于Tesseract-OCR[11]完成表格内文字的识别,由于表单上的字符含有数字、英文、中文、特殊字符等,但Tesseract-OCR自带的字库存在识别效率低、识别精度不高的问题,所以利用jTessBoxEditor工具训练专门针对原料检验单识别的字库,训练步骤如下。

(1)准备训练样本图片,分别准备手写和印刷数字、英文、中文、特殊符号共10万余张照片数据集,进行灰度化处理后将文件保存到待训练文件夹下。

(2)合并样本图片,使用jTessBoxEditor将所有样本图片合并成一个tif文件。

(3)生成box文件,执行tesseract langyp.figen.exp0.tiflangyp.figen.exp0 -lbatch.nochopmakebox命令,生成tif文件对应的box文件,其中langyp为语言名称,figen为生成的字体名称。

(4)修改box文件,针对生成的box文件,会出现一些错误识别和字符切分出错的问题,例如两个字符在一个字符识别框中,如图9所示。

使用jTessBoxEditor工具将合并在一起的字符识别框分割为两个部分,如图10所示。

(5)生成font_properties文件,执行echo figen 0 0 0 0 0后生成,其中figen为训练的字体名。

(6)生成tr训练文件,执行langyp.figen.exp0.tr命令訓练文件。

(7)生成字符集文件,执行unicharset_extractor langyp.figen.exp0.box命令。

(8)生成shape文件,执行shapeclustering -F font_properties -U unicharset -O langyp.unicharset langyp.figen.exp0.tr命令。

(9)生成聚集字符特征文件,执行mftraining -F font_properties -U unicharset -O命令。

(10)生成字符正常化特征文件,执行cntraining langyp.figen.exp0.tr命令。

(11)合并训练文件,执行combine_tessdatafigen命令。

完成训练后,将字库拷贝放入工程项目doc/fonts目录下,当表格单元格分割完毕后,需要对单元格内的字符信息进行识别,由于需要对识别后的信息再填充进新的数字表格中,因此对单元格的左上角坐标进行标记,调用训练的字库将字符识别完毕后存入对应的空表格内。

5 实验结果分析(Analysis of results)

本文对样本表格在原生Tesseract-OCR、未进行掩膜实验、腾讯OCR和掩膜实验进行识别实验对比,结果详见表1。

实验硬件环境:CPU为第九代英特尔酷睿i7处理器,显卡为NVIDIA GeForce GTX 1650,内存为16 GB。软件环境:python 3.6.8,Windows 10 64位操作系统。实验证明,原生Tesseract-OCR识别字符准确率很低,难以达到识别精确度的标准;腾讯OCR比未进行掩膜实验的识别速度快且精度也高,但是该OCR引擎不能对参数进行设置,只能对整张表格进行识别;而掩膜实验识别所需时间比未掩膜实验少一半且比腾讯OCR快1.36 s,识别准确率也提高了1%。

6 结论(Conclusion)

本文利用形态学检测原理及Tesseract-OCR字符识别技术,结合角点检测方法实现对原料手写表格的识别,描述了对图像预处理的过程,以及动态掩膜及单元格分割与字库训练步骤。将本文所提手写表格识别系统与市场主流腾讯OCR技术进行对比实验,证明本文所提系统对原料表格识别速度更快、准确率更高,同时该识别系统可以部署到企业的所有上位机中,能很好地运用到企业的实际生产过程中,降低生产成本、提高工作效率和实现数据的二次利用率。

作者简介:

方浩东(1997-),男,硕士生.研究领域:数字化及自动化.

鲍敏(1977-),男,博士,副教授.研究领域:智能制造,生产过程数据分析.

猜你喜欢

预处理
求解奇异线性系统的右预处理MINRES 方法
基于预处理MUSIC算法的分布式阵列DOA估计
藏红花酸预处理对大鼠心肌缺血再灌注损伤中Caspase-3、TNF-α、NF-κB表达的影响
关于对称正定的H—矩阵的预处理方法
CCMP生产废水的预处理技术研究
络合萃取法预处理H酸废水
PMU数据预处理及压缩算法
基于自适应预处理的改进CPF-GMRES算法
远端缺血预处理心肌保护作用的研究进展
远端创伤预处理心肌保护作用的研究进展