文档版面分析是对文档图像进行自动理解最为重要的部分之一,相关算法大多嵌入在OCR系统中作为系统的核心部分。文档版面分析算法一般接收扫描文档图像或者PDF文件作为输入,目的是按照不同的语义功能对文档版面图像进行分解,例如将整幅版面分解为文字区块、表格区块、图像区块、以及公式区块等。
传统的文档版面分析算法[1-5]普遍采用一种分步处理的解决方案,即将文档版面分析任务分解为一个文档图像的区块定位或者区块分割任务,以及一个文档区块图像的分类任务。输入的文档版面图像首先由区块定位或区块分割算法切分为不同的语义区块,其后再通过区块分类算法为得到的语义区块指定类别。其中区块定位任务一般采用基于规则的无监督分割方法,而区块分类任务则一般基于人工定义的规则[1-3],或者使用一个机器学习分类算法[4-5]。另外也有部分文档版面分析算法是针对特定类别的语义区块所设计,例如针对表格[6]和公式[7- 8]等。
可以看出,文档区块图像分类对于文档版面分析任务至关重要。若只是由区块定位或者区块分割算法得到文档图像的语义区块位置,则无法得到这些语义区块对应的语义类别。通过区块分类算法对这些区块的类别进行预测之后,在后续的处理步骤中我们可以针对不同类别的语义区块采用不同的处理方式:例如文本区块可以直接送入OCR模型中进行文字识别,表格和公式区块需要进行针对性的处理对其结构进行理解,而图像区块则可以不经过任何处理直接进行保存。
文档区块图像分类本质上是一个图像分类任务。图像由大量像素点组成(像素点数目可以达到105甚至106级别),而有意义的图像自由度相比这个巨大的图像空间是极少的,因此图像可以看作是在一个极高维的图像空间中的一个低维嵌入。传统机器学习方法若直接使用图像作为输入,会导致模型参数量巨大,并且在训练过程中模型很难通过学习捕捉到文档区块图像到类别之间的映射关系。另外,不同图像的尺寸与像素点数目并不固定,一般机器学习分类模型一旦确定,便无法接收不同尺寸的输入样本。为了解决上述这些困难,我们需要对文档区块图像进行降维,使用固定维度的低维特征作为区块的特征表示,在这个特征表示上对机器学习分类模型进行训练以及对新样本进行预测。
在本文中,我们提出了一种基于特征提取和机器学习分类的文档区块分类算法,对图像的降维则由精心设计的特征提取实现。在特征提取中,我们设计了32种合理的有意义的特征,对于每一幅文档区块图像均提取这32种特征作为区块图像的特征表示。为了使得特征可以有效表示区块图像的语义类别且具有较高的分辨能力,我们所设计的特征属性包括了几何、灰度、区域、纹理以及内容等方面。而在机器学习分类算法部分,我们测试了包括K近邻(KNN),逻辑回归(LR)和支持向量机(SVM)在内的传统机器学习分类算法,以及基于模型组合的Boosting方法和自动机器学习方法,另外我们也对深度学习分类方法进行了实验。
在我们提出的文档区块图像分类算法的基础上,我们进一步实现了一个简单的基于分步的文档版面分析算法,展示了提出的区块分类算法在文档版面分析任务中的可行性。我们使用游程平滑算法(RLSA)作为无监督分割方法,将文档版面切割为不同的候选区域,再使本文提出的区块分类算法对分割出的语义区块的类别进行预测。
本文后续部分的安排如下:在第2节中我们将详细介绍针对文档区块图像所设计的特征;机器学习分类算法将在第3节中进行描述;在随后一节中,我们将介绍基于区块分类算法所实现的分步文档版面分析算法;实验设置与实验结果分析将在第5节展示;最后,我们在6节对全文进行总结。
文档区块图像分类在本质上是一个图像分类任务。由于图像可以看作在一个极高维空间中的低维嵌入,像素点数量庞大且不固定,直接在图像像素点上使用传统的机器学习分类算法常常会导致模型的参数量过于庞大,难以进行有效的训练。因此在本文中,我们首先对文档区块图像通过特征提取以达到对图像的降维,并在低维特征上使用机器学习算法进行分类。
在本文中的图像降维是基于有效特征提取,即一个非监督的步骤。我们针对文档区块图像的特点,根据领域相关经验与具体实验,并且参考其他文档版面分析上的工作[9-10],设计了32种用以表示原图像信息的手工特征。具体地,我们将特征分为几何、灰度、区域、纹理以及特征五个方面。所有特征的标号与名称如表1所示,我们将在本节中逐一介绍。
几何特征描述文档区块图像的形状,包括图像长宽比和图像重心坐标。我们假设区块灰度图像为I,灰度值为Iij,(i=1,2,...,n, j=1,2,...,m)。则图像长宽比feat1与图像灰度重心坐标(feat2, feat3)定义如下:
(1)
一般来说,文本行图像和公式行图像具有较小的长宽比,而图像块图像和表格块图像长宽比接近1。
我们设计的灰度特征只描述图像中灰度值的统计结果,而忽略灰度值响应所在的空间位置。灰度特征为图像上所有灰度值的一些统计量,包括区块图像灰度直方图、灰度均值与标准差、灰度80-20分位数差和图像密度。
首先,将灰度按照等间距划分为五个区间[0,0.2),[0.2,0.4),[0.4,0.6),[0.6,0.8),[0.8,1],灰度直方图是灰度落在这五个区间中的像素点数目所占比例。这样便可采用灰度直方图的高度作为特征。
灰度值的统计量还包括图像上所有灰度值的均值和标准差,计算方式如下:
(2)
灰度80-20分位数差是常用的灰度分布描述子,其计算方式为:将图像中所有的灰度值从小到大进行排序,排在80%位置的灰度值记为I(0.8),排在20%位置的灰度值记为I(0.2),则灰度80-20分位数差feat11=I(0.8)-I(0.2)。灰度80-20分位数差描述了图像中位于中间60%比例的灰度值范围。
图像密度为二值化图像的均值,定义如下:
(3)
其中X{·}为在{0,1}中取值的示性函数,threshold是大津法[11]得到的二值化阈值。
表1 32种特征列表
Tab.1 List of 32 features
几何特征编号12-3名称长宽比重心坐标灰度特征编号4-89-101112名称灰度直方图灰度均值和标准差灰度80/20分位差图像密度区域特征编号1314-1617-1920名称区域数目区域面积均值、中位数和标准差矩形面积均值、中位数和标准差矩形重叠数目纹理特征编号21-2223-2526-2829-30名称横向跳变率和纵向跳变率横向平滑均值、中位数和标准差纵向游程均值、中位数和标准差波峰间距和波谷间距内容特征编号3132名称长直线数目文字数目
我们将输入图像用大津法[11]得到的阈值进行二值化,并且求得图像中所有的连通区域。我们使用这些连通区域的数目feat13、面积的分布(均值feat14,中位数feat15,标准差feat16)、外接矩形的面积分布(均值feat17,中位数feat18,标准差feat19)以及外接矩形重叠的数目feat20作为区块图像的区域特征,描述图像中连通区域的性质。
例如文字段落区块图像,一般每个文字是由一个或多个连通区域(即连续笔画中像素点所形成的区域)组成,因此连通区域数目较多但面积相对较小,并且面积相对集中,外接矩形重叠的情况也较少。相对而言,图片区块图像往往含有较大的连通区域,且连通区域数目较少,大小较为分散,外接矩形容易出现重叠情况。文字段落和图片区块图像的连通区域外接矩形如图1所示。
图1 连通区域外接矩形
Fig.1 External rectangles of connected regions
灰度特征主要描述图像中灰度值的统计量,而忽略了灰度响应的空间分布情况。我们所设计的纹理特征则主要描述区块二值图像和区块灰度图像中的响应值在空间中的变化规律。
横向跳变率feat21和纵向跳变率feat22描述了逐行扫描区块二值图或者逐列扫描区块二值图时像素值变化的频率。一般来说,文字和公式区块图像的跳变率较高,图像中往往有大片面积相同的黑色或者白色像素点,因此跳变率较低。横向跳变率feat21和纵向跳变率feat22的定义如下:
(4)
其中⊕是异或运算(XOR),threshold则是二值化阈值。
游程平滑算法[12](RLSA)是文档版面分析中一种常用的滤波算法。游程长度定义为逐行扫描或逐列扫描区块二值化图像时连续的白像素或者黑像素的长度。我们使用横向游程的统计量(均值feat23,中位数feat24,标准差feat25)以及纵向游程的统计量(均值feat26,中位数feat27,标准差feat28)作为纹理特征。在文字区块图像或者公式区块图像中,由于文字间距较小,游程长度一般较小并且较为集中,而图像区块往往反之。
大段文字区块图像或者表格区块图像的灰度值在水平方向上的一维投影上具有较强的周期性,而图像区块图像往往不具有这样的周期性。我们计算一维投影上的局部极大值和局部极小值,称之为波峰和波谷,其后通过计算相邻波峰与相邻波谷之间的距离,并使用所有距离的标准差来衡量一维投影的周期性。与周期性相关的两个纹理特征分别为波峰间距标准差feat29和波谷间距标准差feat30。
对区块图像中的内容进行简单的理解可以有效地帮助分类器对不同区块图像的类别加以区分。我们所设计的内容特征包括区块图像中水平长直线的数目feat31以及OCR识别结果feat32:统计长直线数目的主要动机是对表格区块进行区分,这基于表格区块图像中一般存在长直线;而部分区块图像中的文本和符号可以被OCR软件所识别,因此可以用来对文字内容差异性较大的区块进行区分。
首先我们使用Hough变换[13]检测区块图像中的直线。我们观察到绝大多数表格都存在水平表格线但不一定存在竖直表格线,将Hough变换中直线的角度限制在[-π/12,π/12]之内,长度限制在区块图像宽度的一半以上。统计得到的水平长直线数目,根据区块图像高度进行归一化,作为长直线内容特征feat31。另外我们使用开源OCR软件Tesseract[14]对整个区块图像进行字符识别,统计识别出的字符数目,按照图像尺寸进行归一化,作为单位图像面积下的文字内容特征feat32。
在上一节中,我们详细地描述了我们所设计的32种特征。我们对区块图像提取这些特征作为区块图像的低维特征表示,在这种低维特征表示下训练机器学习分类器或者对区块图像进行预测。
在本文中,我们选择了三种经典的机器学习分类算法进行实验,分别为K近邻(KNN),逻辑回归(LR),和支持向量机(SVM)。同时,我们使用自动机器学习(Auto-ML)框架Auto-SKLearn自动对最优的模型选取与组合方式进行学习。最后,我们使用在大规模图像数据集上预训练的深层神经网络模型作为固定的特征提取器,并采用只微调(Fine-tune)最后全连接分类层的方式得到的网络模型作为最终的分类器。
K近邻(KNN)算法[15]是一种最为简单的非参数分类算法。在KNN算法中,样本点嵌入在某个度量空间中(例如在本文中为欧式空间)。一个新样本点的预测类别,由在度量空间所定义的距离上最小的K个样本按照多数表决的方式确定。
K值的选取与数据形式有关。一般情况下,一个较大的K值可以减小噪声数据的影响,但同时计算量也较大。算法在K=1时被称作最近邻算法,在本文实验中,我们设定K=5。
逻辑回归(LR)是机器学习中最为直接的一个线性分类模型[16]。LR可以解决二分类或者多分类问题,通过Sigmoid函数引入了非线性因素。对于一个二分类问题,LR学习如下一个映射函数:
(5)
其中x为输入特征,w为待学习参数,σ(·)是Sigmoid函数,也被称作逻辑函数。
这个映射函数的值域为(0,1),在预测时通过一个阈值(例如0.5)来指定最终的预测类别。映射函数向正类的目标1和负类的目标0进行学习,学习的过程通过对映射输出与真值目标之间的一个损失函数进行优化实现。LR一般使用交叉熵损失函数,定义如下:
(6)
其中t(i)是第i个样本的目标真值(当该样本点为正样本时为1,负样本时为0),y(i)是模型经过Sigmoid函数之后的预测值(值域为(0,1))。
损失函数一般通过梯度下降法进行优化:
(7)
其中η为学习率,其他变量含义与式(6)相同。
支持向量机[17](SVM)是90年代发展出来的经典机器学习分类算法,可以从二元分类问题推广至多元分类问题。对于二分类问题,SVM通过在p维特征空间中构造一个p-1维的超平面将训练样本进行划分。超平面的构造规则基于最大化两类样本到超平面最小距离(Margin),预测时根据样本特征在分类决策函数上的符号确定。对于多分类问题,可以采用1对1或者1对n-1的形式,分别训练多个二分类器实现n元分类。训练样本中距离分类超平面最近的样本点以及被错误分类的样本点称为支持向量,分类超平面完全由这些支持向量决定,而与非支持向量无关,因此该算法被称作支持向量机。
最大化分类间隔可以看作如下优化问题:
s.t. yi(w·xi+b)-1≥0, i=1,2,...,N
(8)
其中x为输入特征,w,b为待学习参数,y为输出。
对于线性不可分的训练数据,可以通过引入软间隔来惩罚错分的样本点,此时优化问题如下:
s.t. yi(w·xi+b)≥1-ξi, i=1,2,...,N
(9)
其中ξ是软间隔,C是软间隔系数。
对于以上的两个优化问题,可根据拉格朗日对偶性得到的对偶问题更加容易求解。因此,一般通过求解对偶形式得到原始问题的最优解。另外通过在对偶形式中引入核函数,相当于在特征空间上进行了高维映射,从而可以将SVM推广至非线性。
在我们的实验中,我们使用SVM的软间隔形式,核函数使用线性核函数与高斯核函数。其中,高斯核函数的定义如下:
(10)
此时的分类决策函数为:
(11)
其中a*,b*为对偶形式中待优化的参数。
在解决一个机器学习分类问题时,模型的预测效果主要基于数据预处理方式、模型选择或组合方式、模型的参数学习、模型的超参数选取以及后处理步骤等方面。自动机器学习(Auto-ML)通过贝叶斯优化、迁移学习或者强化学习等方法,可以自动完成这些机器学习中依赖大量经验并且需要花费大量时间人工处理的步骤。
在本文中,我们使用开源的自动机器学习工具箱Auto-SKLearn[18],在区块图像提取出的特征上,自动对模型进行学习与组合。Auto-SKLearn的算法框架如图2所示:主要包括一个分类器上的贝叶斯优化器模块,元学习模块和模型组合的构建模块。在这种框架下,自动机器学习算法可以在设定的时间内返回一个由预设集合中的模型构成的一个多模型组合。Auto-SKLearn在大量Kaggle比赛数据集上得到的分类器,效果要好于绝大多数富有经验的人类工程师所设计的模型[18]。因此我们选择该算法得到的模型作为传统机器学习算法的基线模型。
图2 Auto-SKLearn框架
Fig.2 Architecture of Auto-SKLearn
上文中所描述的传统机器学习方法,均是在我们所设计的特征上对区块图像进行分类。这主要是由于传统机器学习分类模型,无法在直接使用图像作为输入时进行训练。近些年来,深度学习特别是卷积神经网络[19-20](CNN)的出现,使得直接使用图像作为输入的巨大参数量模型的训练成为了可能,并且在几乎所有的计算机视觉任务上都击败了传统的机器学习分类算法。
卷积神经网络模型将特征提取与分类器进行了结合,可以通过大规模数据进行端到端的训练,其本质是实现有监督的特征学习。卷积神经网络强大的模型表示能力源自于模型中巨大的参数量,但这个特点同时也造成了深度学习模型最大的问题:需要大量的数据进行训练。若训练数据规模较小,则模型极易出现过拟合的情况。
由于文档区块图像的数目远远少于一些大规模图像数据集[21],我们选择了轻量的深层卷积神经网络MobileNet[22]以避免过拟合。MobileNet网络针对移动端和嵌入式设计,只有远小于其他深层神经网络的4.2M参数量,但27个卷积层保证了网络具有足够的模型表示能力。另外在训练阶段,我们采用迁移学习方式:使用在大规模图像数据集ImageNet[21]上预训练的模型,并且将全连接层之前的所有卷积层参数固定,只对最终分类的全连接层参数进行微调(Fine-tune)。这相当于使用在大规模数据集上预训练的特征提取器,迁移至文档区块图像分类任务中,只训练最后的线性分类器,通过降低模型可训练的参数量来避免过拟合。
在我们提出的文档区块图像分类算法的基础上,我们进一步实现了一个分步的文档版面分析算法,以展示区块分类算法在文档版面分析任务中的适用性。分步文档版面算法主要包括两个步骤:游程平滑算法(RLSA)实现对输入文档版面图像进行无监督分割,以及对分割出的逻辑区块使用本文提出的分类算法进行类别预测。分步的文档版面分析算法流程如图3所示。
图3 分步版面分析算法框架
Fig.3 Pipeline of the step-wise page layout analysis algorithm
图4 基于RLSA的文档分割算法流程
Fig.4 Pipeline of RLSA page segmentation algorithm
游程平滑算法(RLSA)作为一种图像滤波方法,在80年代被提出[12],并且被应用于文档切割与文字判别任务中。RLSA简单有效,在近些年的研究中仍在文档版面分析任务[1,4]与自然场景下的文本检测任务[23]中有广泛的应用。
RLSA以任意二值的数列或者矩阵作为输入,例如二值化图像。在二值化图像中,0为黑色像素点(表示内容),1为白色像素点(表示背景)。RLSA是一个一维操作过程,在二值化图像上逐行或者逐列进行,操作的规则为:若连续的白像素点长度(称为游程)小于一个预设的阈值d,则将这部分连续的白色像素点替换为黑色;若游程长度不小于d,则不改变这些白色像素点。
在本文中我们实现了一个基于RLSA的无监督分割算法,算法流程如图4所示。我们首先使用大津法[11]对输入文档版面图像进行二值化,得到的二值化图像如下图左一所示。随后我们对该二值化图像使用RLSA算法逐行进行操作,如下图左二同一行的文字被融合为了文本行。再对该二值图像逐列使用RLSA算法后,文本行被融合为了文本区域,结果如下图左三所示。最后我们使用连通性分析方法,通过计算每个连通区域的外接矩形,得到最终的区块分割结果。整个算法是一个无监督过程。
基于上一小节中所描述的文档分割算法与提出的区块分类算法,我们实现了一个简单的分步文档版面分析算法。对于一幅输入文档版面图像,我们首先使用基于RLSA的无监督分割方法得到候选区块图像,然后在区块图像上提取32维特征向量并使用分类模型对区块类别进行预测。在本节中,我们实现了文字与图像的二分类模型。我们选取了两幅文档版面图像,对使用上述方法得到的文档版面分析结果进行了可视化,如图5所示。
图5 文档版面分析算法可视化结果
Fig.5 Visualzation results of page layout analysis algorithm
在左图中,可以看出文档版面中的不同语义区块被合理的分离,并且标定了正确的类别。但在右图中,文档版面的分割与分类均不准确。这主要是由于使用RLSA进行文档分割基于一个很强的假设:在文档版面图像的横向或者纵向上,相同逻辑区块之间的距离总是小于一个阈值d;而同时不同语义区块之间的距离总是大于这个阈值d。只有满足这个假设,我们才可以使用这个阈值d将相同的语义区块融合,同时不同的语义区块保持分离。然而在实际应用场景中,这个假设很难满足。例如右图中,“中国口岸”四个字之间的距离相比不同逻辑区块之间的距离要大,因此我们无法使用这个基于单一阈值的方法将该文档版面进行正确的分割。对于文档版面分析的更进一步尝试,我们推荐读者阅读我们在文档版面分析上的最新研究[24]。
为了验证本文所提出的文档区块分类算法的有效性,我们在本节中针对所提出的特征向量与不同的机器学习分类模型进行实验,并在一个文档版面分析数据集上计算最终的区块分类评价指标。而分步文档版面分析算法并不是本文的重点,因此我们不对文档版面分析结果进行定量的实验分析。
我们使用ICDAR2017-POD比赛所提供的数据集[25]。数据集包括2400幅经过标注的文档版面图像,其中1600幅图像为训练集,剩余800幅图像为测试集。数据集的标注信息包括语义区块的矩形框位置与类别,其中类别标注包括图像、表格和公式三类。标注文件为XML格式,如图6所示。
图6 ICDAR2017-POD数据集标注
Fig.6 ICDAR2017-POD data annotations
我们将1600幅训练图像中标注的所有6192个语义区块框为小图(其中图像区块699个,表格区块1978个,公式区块3515个),提取32种特征用来训练机器学习分类模型。另外将800幅测试图像中的3190个语义区块框出(其中图像区块317个,表格区块961个,公式区块1912个),用同样的方式提取特征并检验模型的分类准确率。
在本文中,我们设计了包括几何、灰度、区域、纹理和内容五个方面在内的32维特征。我们从6192个训练区块图像中随机选取了1000个,在提取出的32维特征向量上使用t-SNE[26]方法降至3维空间并进行了可视化,如图7所示。
在图中蓝色样本点代表公式区块,红色样本点为表格区块,而绿色样本点为图像区块。可以看出即使降至3维,我们所设计的文档区块特征在空间中仍然具有很强的代表性与分辨能力。三种区块在空间中有较强的差异性。
图7 提取特征的t-SNE 可视化
Fig.7 t-SNE visualization of the extracted features
不同特征提取方式使用不同机器学习方法在ICDAR2017-POD测试集上的分类准确率如表1所示。在我们设计的32维特征向量(Hand-32)中,耗时最长的OCR内容特征feat32需要调用外部系统[14],极大地减低了特征提取的速度。因此我们从32维特征向量中去除了OCR内容特征,对剩余的31维特征向量也进行了实验(Hand-31)。另外我们使用在ImageNet[21]上预训练的深层神经网络模型MobileNet[22],将全连接层的1024维特征作为图像特征(CNN-1024)。由于MobileNet使用Softmax输出与交叉熵损失,与逻辑回归(LR)是相同的。因此我们只微调MobileNet模型的最后一层全连接的训练方式相当于对于特征训练一个LR分类器。
从表中可以看出,是否使用OCR内容特征(Hand-31与Hand-32)对最终分类准确率的影响很小。在K近邻(KNN)之外的其他所有分类方法上,甚至不使用OCR内容特征的效果会更好一些。另外在同样使用逻辑回归进行分类的情况下,深度学习特征(CNN-1024)的分类准确率要明显优于手工提取的特征(Hand-31与Hand-32)。
表2 分类准确率实验结果
Tab.2 Experimental results on classification accuracy
Hand-31Hand-32CNN-1024KNN0.9430.948-LR0.9640.9630.975SVM-L0.9640.964-SVM-G0.9660.962-Adaboost0.9680.967-Auto-SKL0.9810.980-
在不同分类器的对比上,K近邻(KNN)是非参数方法,对数据的学习能力最差,在32维特征向量上有0.948的分类准确率。逻辑回归(LR)与线性支持向量机(SVM-L)在本质上均为线性分类算法,因此效果十分接近。在支持向量机中使用高斯核函数(SVM-G)相比线性SVM并未带来明显的准确率提升。基于模型组合的Adaboost方法要明显好于单模型方法,在32维特征向量上的分类准确率为0.967。而自动机器学习方法(Auto-SKL)具有最高的分类准确率,在31维和32维两种特征向量上分别为0.981和0.980。注意到目前领先的文档区块分类算法[5]在相同的ICDAR2017-POD数据集上只能达到0.938的分类准确率。
为了衡量每一个维度的特征对最终分类算法的贡献,我们使用Scikit-Learn包中的随机森林分类器(sklearn.ensemble.RandomForestClassifier),在6192个训练数据上提取的32维特征向量进行了训练,其中将决策树的数量(n_estimators)设定为100,以防止个别分类器对噪音数据的过拟合情况。最后使用RandomForestClassifier类的特征重要性属性(feature_importances_)来衡量特征对最终分类器的贡献程度。经过降序排序之后的贡献度,以及其对应的特征编号与名称如表3所示。
本文中所有算法在Ubuntu16.04下由Python2.7实现,深度学习部分使用了TensorFlow1.3.0框架。所有实验均在两块E5-2680v4 CPU与单GTX1080 GPU的硬件条件下完成。
特征提取运行时间与图像尺寸有关,在POD测试集上,包括OCR的32种特征提取的平均耗时为320 ms,而不包括OCR的31种特征为26 ms。由于提取特征至多只有32种,传统机器学习模型在预测阶段十分高效,可以达到5000以上的FPS。深度学习模型同时完成特征提取与分类,在CPU环境下耗时65 ms,在使用GPU时只需要6 ms。
表3 特征贡献度列表
Tab.3 List of feature importances
编号特征名称贡献度编号特征名称贡献度编号特征名称贡献度28纵向游程标准差0.126422纵向跳变率0.030210灰度标准差0.007419矩形面积标准差0.114626纵向游程均值0.02904灰度直方图(1)0.00651长宽比0.113914区域面积均值0.02177灰度直方图(4)0.005615区域面积中位数0.06783重心横坐标0.01996灰度直方图(3)0.004932文字数目0.064724横向游程中位数0.019225横向游程标准差0.004520矩形重叠数目0.05818灰度直方图(5)0.016530波谷间距0.004413区域数目0.04562重心纵坐标0.015411灰度80-20分位差0.004318矩形面积中位数0.04479灰度均值0.015027纵向游程中位数0.003731长直线数目0.041812图像密度0.01345灰度直方图(2)0.003217矩形面积均值0.038723横向游程均值0.011229波峰间距0.003016区域面积标准差0.034021横向跳变率0.0109
本文提出了一个基于特征提取和机器学习分类模型的文档版面区块分类算法。我们针对版面区块图像的特点,设计了包括几何特征、灰度特征、区域特征、纹理特征和内容特征在内的32种特征。并且实验了传统机器学习分类模型,自动机器学习方法以及深度学习模型等多种机器学习分类算法。另外,我们还实现了一种简单的分步文档版面分析算法,以展示我们提出的区块分类算法的适用性。在ICDAR2017-POD数据集上的实验结果表明,我们提出的文档版面区块分类算法可以达到0.981的分类准确率,高于目前最好的算法。
[1] Cesarini F, Lastri M, Marinai S, et al. Encoding of modified XY trees for document classification[C]∥Document Analysis and Recognition(ICDAR), 2001, 2001: 1131-1136.
[2] Lin M W, Tapamo J R, Ndovie B. A texture-based method for document segmentation and classification[J]. South African Computer Journal, 2006, 2006(36): 49-56.
[3] Chen K, Yin F, Liu C L. Hybrid page segmentation with efficient whitespace rectangles extraction and grouping[C]∥Document Analysis and Recognition(ICDAR), 2013, 2013: 958-962.
[4] Priyadharshini N, Vijaya M S. Document segmentation and region classification using multilayer perceptron[J]. International Journal of Computer Science Issues(IJCSI), 2013, 10: 193.
[5] Yi X, Gao L, Liao Y, et al. CNN Based Page Object Detection in Document Images[C]∥International Conference on Document Analysis and Recognition(ICDAR), 2017: 230-235.
[6] Hassan T, Baumgartner R. Table recognition and understanding from pdf files[C]∥Document Analysis and Recognition(ICDAR), 2007, 2: 1143-1147.
[7] Chu W T, Liu F. Mathematical formula detection in heterogeneous document images[C]∥Conference on Technologies and Applications of Artificial Intelligence(TAAI). IEEE, 2013, 2013: 140-145.
[8] Gao L, Yi X, Liao Y, et al. A Deep Learning-Based Formula Detection Method for PDF Documents[C]∥International Conference on Document Analysis and Recognition(ICDAR), 2017, 2017: 553-558.
[9] 程娟, 平西建, 周冠玮. 基于多特征和 SVM 的文本图像版面分类方法[J]. 数据采集与处理, 2008, 23(5): 569-574.
Cheng Juan, Ping Xijian, Zhou Guanwei. Layout Analysis Based on Multi-feature and SVM[J]. Journal of Data Acquisition and Processing, 2008, 23(5): 569-574.(in Chinese)
[10] 郭晓宇, 平西建, 周林. 基于连通区域的传真图像版面分割与分类算法[J]. 计算机应用研究, 2012, 29(8): 3198-3200.
Guo Xiaoyu, Ping Xijian, Zhou Lin. Fax Image Layout Analysis Based on Connect Components[J]. Application Research of Computers, 2012, 29(8): 3198-3200.(in Chinese)
[11] Otsu N. A threshold selection method from gray-level histograms[J]. IEEE Transactions on Systems, Man, and Cybernetics, 1979, 9(1): 62- 66.
[12] Wong K Y, Casey R G, Wahl F M. Document analysis system[J]. IBM Journal of Research and Development, 1982, 26(6): 647- 656.
[13] Duda R O, Hart P E. Use of the Hough transformation to detect lines and curves in pictures[R]. SRI International Menlo Park Ca Artificial Intelligence Center, 1971.
[14] Smith R. An overview of the Tesseract OCR engine[C]∥International Conference on Document Analysis and Recognition(ICDAR), 2007, 2: 629- 633.
[15] Cover T, Hart P. Nearest neighbor pattern classification[J]. IEEE Transactions on Information Theory, 1967, 13(1): 21-27.
[16] Cox D R. The regression analysis of binary sequences[J]. Journal of the Royal Statistical Society. Series B(Methodological), 1958: 215-242.
[17] Cortes C, Vapnik V. Support-vector networks[J]. Machine Learning, 1995, 20(3): 273-297.
[18] Feurer M, Klein A, Eggensperger K, et al. Efficient and robust automated machine learning[C]∥Advances in Neural Information Processing Systems, 2015, 2015: 2962-2970.
[19] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition[J]. arXiv preprint arXiv: 1409.1556, 2014.
[20] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]∥Proceedings of the IEEE conference on computer vision and pattern recognition(CVPR), 2016, 2016: 770-778.
[21] Deng J, Dong W, Socher R, et al. Imagenet: A large-scale hierarchical image database[C]∥Computer Vision and Pattern Recognition(CVPR), 2009, 2009: 248-255.
[22] Howard A G, Zhu M, Chen B, et al. Mobilenets: Efficient convolutional neural networks for mobile vision applications[J]. arXiv preprint 1704.04861, 2017.
[23] Jaderberg M, Vedaldi A, Zisserman A. Deep features for text spotting[C]∥European Conference on Computer Vision(ECCV), 2014, 2014: 512-528.
[24] Li Y, Zou Y, Ma J. DeepLayout: A Semantic Segmentation Approach to Page Layout Analysis[C]∥International Conference on Intelligent Computing. Springer, Cham, 2018: 266-277.
[25] Gao L, Yi X, Jiang Z, et al. ICDAR2017 Competition on Page Object Detection[C]∥International Conference on Document Analysis and Recognition, 2017, 1: 1417-1422.
[26] Maaten L, Hinton G. Visualizing data using t-SNE[J]. Journal of Machine Learning Research, 2008, 9(Nov): 2579-2605.
Reference format: Li Yixin, Zou Yajun, Ma Jinwen. Document Region Image Classification via Feature Extraction and Machine Learning Algorithms[J]. Journal of Signal Processing, 2019, 35(5): 747-757. DOI: 10.16798/j.issn.1003- 0530.2019.05.003.
李翌昕 男, 1992年生, 北京人。2014年毕业于中国科学技术大学数学科学学院, 获得理学学士学位。现为北京大学数学科学学院博士研究生, 主要研究方向为计算机视觉。
E-mail: liyixin@pku.edu.cn
邹亚君 女, 1994年生, 湖北人。2016年毕业于中国地质大学(武汉)数学与物理学院, 获得理学学士学位。现为北京大学数学科学学院信息科学系博士研究生, 主要研究方向为图像处理、模式识别。
E-mail: zouyj@pku.edu.cn
马尽文 男, 1962年生, 陕西人。1992年毕业于南开大学数学系, 获理学博士学位。现为北京大学数学科学学院信息科学系主任、教授、博士生导师, 中国电子学会信号处理分会常务委员, 中国工业与应用数学学会理事。主要从事智能信息处理、神经计算、模式识别、生物信息学等方面的研究。
E-mail: jwma@math.pku.edu.cn