文献下载地址:点这儿
github代码:1和2
随着图像目标检测技术的发展,深度卷积神经网络被应用于文档图像分析领域。与一般彩色和模式丰富的对象不同,文档图像中的表格具有限制深度学习结构能力的属性。尺寸和纵横比的显著变化以及文档组件之间的局部相似性是主要的挑战,需要全局特征进行检测,同时需要局部特征来分离临近的对象。为了应对这些挑战,我们提出了TableSegNet,这是一种紧凑的全卷积网络体系结构,可以同时检测和分离表格。TableSegNet由一条深卷积路径和一条浅卷积路径组成,前者用于检测低分辨率的表区域,后者用于定位高分辨率的表位置,并将检测到的区域拆分为单独的表。为了提高检测和分离能力,TableSegNet在特征提取过程中使用宽卷积核大小的卷积块,在主输出中使用额外的表格边界分类。TableSegNet从一开始就只有810万个参数,并且只接受文档图像的训练,在ICDAR2019上以0.9的 I o U IoU IoU阈值获得了最先进的F1分数,在ICDAR2013表格检测数据集上获得了最高数量的正确检测表格。
(交并比 I o U IoU IoU(Intersection Over Union)是指目标预测边界框和真实边界框的交集和并集的比值,即物体Bounding Box 与 Ground Truth 的重叠度, I o U IoU IoU的定义是为了衡量物体定位精度的一种标准)
关键词:文档分析与识别·页面分割·表格检测·语义分割·卷积神经网络
表格检测是识别文档图像并将其转换为数字形式的关键步骤之一。与文本或图片等其他组件不同,表格数据将被识别并转换为结构化形式,并用于进一步的数据分析。传统的表检测方法通常来自组件分析模块,用于提取字符、单词行和分隔符,如水平/垂直线和空格。这些组件将被提供给基于规则(rule-based)的算法,以确定表区域和非表区域。
近年来,深度卷积神经网络(CNN)在文档分析和识别方面取得了重大进展。几种深度CNN方法有效地将特征提取阶段与使用传统滑动窗口或区域建议方法(region propasal)的区域分类和定位相结合。深度CNN中的区域建议通常首先找到大致的对象位置,然后使用额外的子网络对精确位置进行分类和微调。为了减少被建议的区域的(region propasal)数量,必须提供固定数量的 带有/不带有 特定纵横比的位置作为预定义参数。表格的大小和纵横比在文档图像中可能会有很大的变化,从几行文字到整个页面或页面列。被检测表格的准确位置通常是从低分辨率的特征图中预测出来的,这不是一项容易的任务。第二种深度CNN基于编码器-解码器结构,例如,这种类型的网络仅使用卷积算子从输入图像中提取特征,并预测每个像素的对象标签。由于文档对象(如表内外的文本行)之间的局部相似性,像素级分类方法难以分离非常接近的表区域。
为了提高训练过程的效率,基于深度CNN的方法通常在特征提取或编码器和解码器阶段重用预先训练的模型。传输的模型通常参数数量庞大,可能不适合文档图像领域,因为它们是为一般图像识别任务设计和训练的。此外,继承模型和体系结构还意味着接受文档图像域中传输模型的上述缺点。
我们提出了TableSegNet,一种用于在文档图像中精确定位表格的全卷积神经网络(FCN)。TableSegNet使用一条深度卷积路径来学习全局表区域特征,使用一条较浅的路径来学习局部特征,这有助于分离临近的表格,并以高分辨率微调表位置。通过在最终预测掩码中引入额外的表边界类,提高了表分离能力。为了扩大学习到的特征映射的接受域,TableSegNet在两个特征提取路径的后期阶段使用了具有宽卷积核大小(3×7)和(7×3)的卷积块。与其他深度CNN模型中的数千万个参数相比,TableSegNet只有810万个参数,在ICDAR2019表格检测数据上,它的加权平均F1分数达到了93.34%。当 I o U IoU IoU阈值为0.9时,TableSegNet的F1得分达到90.83%,而之前最好的方法为89.7%。在ICDAR2013表格检测数据上,TableSegNet从156个真实表格中准确的检测了其中的149个;这是迄今为止达到的最高数字。所有的TableSegNet模型都是纯基于公共文档图像进行训练的,没有从其他领域进行迁移学习。
在下一节中,我们将回顾基于深度CNN的文档图像表格检测的相关工作。第3节描述了TableSegNet的体系结构及其主要组件。TableSegNet评估实验以及与相关的基于规则和基于深度CNN的方法的比较将在第4节中描述。第5节得出结论和观点。
一般图像目标检测的成功自然导致了深层CNN在文档图像表格检测中的应用。第一类网络基于传统的滑动窗口方法,即区域建议(region propasal),其中图像区域被建议分类为不同的类别。由于窗口的数量可能很大,深度CNN框架使用不同的方法来选择区域建议。R-CNN(基于区域的CNN)[8]和Fast R-CNN[3]应用选择性搜索(selective search)来查找2000个潜在区域,而Faster R-CNN[9]使用一个称为区域建议网络(RPN)的小型网络来检测这些建议。被检测物体的标签和准确位置将由一个完全连接的分类和一个预测网络确定。另一种方式是,SSD(单次检测)[5]和YOLO[4]将最终的特征映射绘制成网格,建议的数量基于单元的数量和预定义的默认框,具有不同的比例和纵横比(称为anchors锚框)。第二种用于语义分割的深层CNN只使用卷积层来标记每个像素。FCN通常由编码器路径和解码器路径组成,例如U-net[6]或SegNet[7]。编码器路径获取输入图像,并通过一系列卷积和下采样层生成抽象的特征映射。原则上,任何高级功能学习者,如VGG[10]、ResNet[11]、DenseNet[12]或HRNet[13]都可以用作编码器。解码器路径使用提取的特征映射,通过一系列具有或不具有上采样层的卷积层来预测每个像素的标签。为了提高FCN的效率和有效性,已经提出了不同的方法,比如在编码器和解码器路径中串联相同大小的特征映射[14],或者用转置卷积层替换上采样层[15]。
在上述通用图像目标检测框架的基础上,人们提出了一系列工作来检测文档图像中的表格和其他组件。DeepDeSRT[16]、DeCNT[17]和Cascade TableNet[18]将更快的R-CNN作为表检测的基本框架。对于学习特征图,DeepDeSRT使用ZFNet[19]和VGG-16[10]作为主干(backbone),而DeCNT使用可变形卷积。为了提高精度,Cascade TableNet结合了两种方法:Cascade RCNN[20]解决了高质量检测的悖论,以及一种改进的HRNet,以获得可靠的高分辨率表示和语义分割以及对象检测的多级表示[18]。在第二个方向上,显著性检测网络[21]的编码器基于VGG-16,其修改旨在利用表格和图表的固有特性。前两个卷积层使用大小分别为(3×7)和(7×3)的内核,以提高在早期阶段提取表相关特征(例如行、间距、列和行)的能力。解码器路径由一系列扩展的卷积层组成。dhSegment[22]的体系结构由编码器/收缩路径和解码器/扩展路径组成,编码器/收缩路径遵循深度剩余网络ResNet-50体系结构,解码器/扩展路径将低分辨率编码器特征映射映射到全输入分辨率特征映射。收缩路径使用ImageNet图像分类任务中预先训练的权重。扩展路径包括五个块加上最终的卷积层,该卷积层为每个像素分配一个类。简而言之,有人试图将用于一般图像对象检测/分割的深层CNN框架转换为文档图像中的表格检测。 这种转换不仅包括结构,还包括在不同的一般图像分类任务上学习的参数。更多的方法可以在其他相关著作中找到,例如[23–26]。
将模型体系结构和参数从一个通用领域转移到一个更具体的领域会带来一些好处。首先,该模型能够从大量、种类繁多的图像对象中继承学习到的特征。ResNet-50是在ImageNet数据集上训练的,该数据集由128万张训练图像组成,分为1000个类别。它已经成功地被转移到解决不同的任务,如目标检测和实例分割,例如[27]。其次,它有助于减少训练时间,因为深度CNN模型通常需要较长的GPU运行时间。然而,迁移学习也面临着几个问题。一般的预训练模型通常具有大量的参数。例如,ResNet-50由2300多万个参数组成,当它被用作检测模型的主干时,这个数字会增加更多。大量的参数(以及复杂的体系结构)是由于学习非常抽象的特征以准确识别许多对象的高要求。一个预先训练好的模型的继承意味着在设计和训练阶段接受所有的假设,而所有的假设可能都不适合文档分析和表检测等特定领域。文档组件的特征不同于一般图像对象的特征,因此学习的特征映射(例如,用于识别狗或猫)可能不适合区分表格区域和文本列或段落。
图1:768×640高分辨率图像(左)和48×40低分辨率FCN输出(右)中的表格真实值(ground truth)图示。FCN能够很好地检测表区域,但由于表的紧密排列以及表与边界区域之间的局部相似性,分割能力受到限制
图2:带表底真值(左)的输入图像和用于训练的TableSegNet的两个输出掩码:两个类的表区域检测掩码(中)和三个类的表分割掩码(右)
与FCN相比,区域建议网络(RPN)在文档图像分析领域中具有一些优势。让我们举一个例子,如图1所示。滑动不同大小和纵横比的窗口以检测两个具有高置信度的表相当容易,但FCN将检测到的区域分离为两个表要困难得多。这两个表的位置非常接近,表和公共边界区域都具有相同的局部特征,例如,具有空白和对齐文本或分隔符。此外,像素级标记的感受野也比滑动窗口的感受野小。对于U-net情况,最深特征图中每个细胞的感受野取决于每个卷积层中的层数和内核大小。假设U-net的编码器路径有五层,每层有一个卷积层,卷积核大小为(3×3)和一个(2×2)最大池化,那么瓶颈层中每个细胞的感受野将为32×32像素,或输入图像的1/10到1/20大小。对于区域建议,如果将输入图像(或学习的特征图)划分为(4×4)(对于SSD)或(7×7)(对于YLO)的网格,则每个锚点覆盖更大的输入区域。FCN的这个缺点对于文档图像来说变得更为关键,因为如果我们只查看图像的一小部分,就很难区分表格区域和文本段落。
该区域建议也有局限性。首先,其性能取决于建议的数量,包括锚anchor的尺寸和纵横比。对于像表格这样的文档区域,大小和比例可以是整个页面与几行文本的比例。这意味着锚应该覆盖各种各样的表格形状,以获得更好的检测性能。其次,检测到的目标的精确位置通常由一个预测网络进行调整,该网络从最终的特征图中获取输入。更抽象的特征地图将具有更低的分辨率,并面临更多的空间信息损失。文档图像的特点是其主要内容由字符和背景空间组成,而不是像一般图像对象那样具有丰富的颜色或丰富而可分辨的图案。如果图像很小,适合所需的输入张量大小,或者用于不同的层次尺度,则上下文信息(例如线分隔符和小组件)可能会很快消失。
为了克服上述限制,我们提出了一种新的用于表检测和分割的FCN体系结构,称为TableSegNet,如图3所示。TableSegNet使用两条特征提取路径,用于两种不同的目的。更深的路径称为检测路径,目的是提取更抽象的特征,具有更大的感受野。它的主要重点是准确地检测表区域,而较少关注表之间的确切位置和公共边界。检测路径使用更多的卷积块,并使用一个低分辨率输出掩码来指导训练过程,称为辅助输出。在我们的实现中,检测路径由六个卷积块组成,从768×640像素的输入图像生成大小为12×10的特征图。在这种情况下,特征图中的每个细胞都有一个4x4的感受野(使用(3×3)内核大小和步长1),在之前的24×20的特征图中。如果我们使用大小为(7×7)的核(或者在我们的实验中使用两个(7×3)和(3×7)核的组合),那么感受野增加到8×8,或者它覆盖了输入的1/3 至 1/2 s i z e size size 区域。对于文档图像,该区域足够大,可以将表格区域与其他组件区分开来。
图3:用于文档图像中表格区域检测和分割的TableSegNet体系结构。TableSegNet使用两条卷积路径来学习全局表检测特征和局部表边界细化特征。检测路径由六个(3+1+2)卷积块组成,细化路径由三个(2+1)卷积块组成。辅助两类检测输出的大小为48×40,主三类分割输出的大小为(768×640),与输入图像的大小相等
在深度CNN模型中,使用多个输出或多个头(multi-head)进行图像分类,例如GoogLeNet[28],语义分割,例如BiSeNet[29,30]和PSPNet[31],或图像分析,例如边缘检测[32]。辅助输出有两个主要目的:它有助于提高网络的识别能力,这被认为是为了解决消失梯度问题,同时提供正则化[28,33]。此外,通过不同输出学习的特征可以以不同的方式进行融合,以提高网络的泛化能力。辅助输出的数量可能会有所不同,比如TableSegNet、GoogLeNet(一个或两个)[28],或者BiSeNet[29]这样的两个,深度监督网络[33],或者[30]中的许多。TableSegNet的一个独特的特点是两个输出中的类数不同。辅助输出有一个用于表区域检测的两类掩码。主输出有一个三级掩码,用于高分辨率的表格检测和微调表格位置。
正如前面所分析的,对同一类别的邻近对象进行分割并不是FCN的优势。文本行或行间距等小对象在表格列或文本列、标题和表格内容等组件之间无法区分。此外,在低分辨率下分离这些对象更加困难。细化路径使用较少的卷积块以更高的分辨率学习局部特征映射。该特征图与更抽象的区域特征相结合,以同时检测、优化位置和分离表格。为了增强分割能力,我们在TableSegNet的主要输出中添加了一个表示表边界区域的类别(如图2所示)。这个额外的分类旨在引导网络学习更多有区别的功能,帮助优化表格区域的位置并分离非常接近的表格。在实验部分,我们将展示这个表边界类对TableSegNet性能的贡献。
全局和局部特征的结合是提高一般模式识别任务性能的主要方法之一。全局特征概括了整个图像或其中很大一部分的内容,通常会导致抽象的表示,但有关空间细节的信息会丢失,而局部特征只包含关于特定图像区域的描述符[34]。在语义分割任务中,U-Net体系结构中的跳过连接将来自深层、粗糙层的语义信息与来自浅层、精细层的外观信息结合起来,以产生准确、详细的分割结果[6,14,15]。RefineNet的级联架构利用了卷积不同阶段的不同细节级别,并将其融合以获得高分辨率预测[35]。为了提高效率,BiSeNet[29]使用空间路径来保存空间信息,并使用快速下采样策略来获得足够感受野的特征图。
使用深度CNN的许多表格检测方法的一个典型特性是,表格特征提取的主干是从预先训练的模型中借用的,通常用于图像分类,这些模型对于特定的图像分割任务可能是有效的[36]。TableSegNet不使用任何预先训练的模型或预先构建的体系结构。检测和细化路径都是新设计的,由两种卷积块组成。这个属性非常重要,因为TableSegNet可以适应不同的任务,并且可以使用任何输入图像、三通道RGB或一通道灰度图像,或者[18]中所述的变换图像的组合进行训练。此外,实验结果表明,卷积块中的小卷积核大小与宽内核大小的组合对TableSegNet的整体性能起着重要作用。
TableSegNet在检测和优化路径中使用两种类型的卷积块。第一种类型包括一个典型的(3×3)卷积层,然后是归一化、激活(重复两次并调用(3×3)卷积块)和一个最大池层(图4a)。第二种类型使用内核大小为(3×3)、(7×3)和(3×7)的三个卷积块从水平和垂直方向的较大输入字段中吸收信息。来自三个卷积块的所有输出被串联,并在最大池层之前通过一个(1×1)卷积块(图4b)。我们称这种类型的块为宽卷积块。
TableSegNet在检测和优化路径中使用两种类型的卷积块。第一种类型包括一个典型的(3×3)卷积层,然后是归一化、激活(重复两次并调用(3×3)转换块)和一个最大池层(图4a)。第二种类型使用卷积核大小为(3×3)、(7×3)和(3×7)的三个卷积块从水平和垂直方向的较大输入字段中吸收信息。来自三个卷积块的所有输出被串联,并在最大池层之前通过一个(1×1)卷积块(图4b)。我们称这种类型的块为宽卷积块。
图4:TableSegNet中使用的两种卷积块:a具有(3×3)卷积、归一化、激活(重复两次)和(2×2)最大池化序列的(3×3)卷积块;b宽卷积块连接三(7×3)、(3×3)、一(3×7)个卷积、归一化、激活(重复两次)的输出,然后应用(1×1)卷积进行降维和(2×2)最大化。这两种类型的输出张量都是c通道输入的1/2大小
与(3×3)内核相比,更大的卷积核大小有助于以更大的感受野学习功能,但需要更多参数,并降低网络速度。此外,由于输入张量的大,在早期阶段大核大小的有效性受到限制。例如,输入大小为768×640时,(7×7)卷积核有助于覆盖输入图像的1/91宽度区域。因此,TableSegNet在特征提取路径的早期阶段使用(3×3)卷积块,在后期阶段使用宽卷积块(图3中带有轮廓圆的Conv Pool块)。输入大小为24×20时,(3×7)卷积核在输入区域的1/3上运行,与768×640的输入大小相比,这是一个更大的感受野。
检测路径由三个(3×3)和三个宽卷积块组成。前三个窄卷积块从768×640的输入图像生成96×80的特征图。卷积核组的数量分别为32、64和128。从这个阶段开始,使用三个宽卷积块来提取大小为48×40、24×20和12×10的特征图,并使用相同数量的卷积核(128)。最后两个特征图被上采样并与48×40特征图连接,然后由一个(1×1)转换块组合成128通道特征图。该检测特征映射被上采样到96×80分辨率,并由细化路径学习的特征映射进行补充。
细化路径仅由两个(3×3)和一个宽卷积块组成。它采用与检测路径相同的输入,并使用相同数量的卷积核,但生成的特征图尺寸更大,为96×80。与典型的U形结构不同,这种细化特征映射是独立于检测特征映射学习的。其主要目的是补充局部信息,以便更好地定位表格和表格边界区域。此路径中的最后一个宽卷积块有助于改善感受野,同时保持局部细节信息。
在表1中,我们展示了实现中检测和优化路径的详细配置。这两条路径采用相同的输入大小,并在每个卷积块之后产生相同的输出。主要区别在于,检测路径使用三个宽卷积块,而优化路径仅在路径末端使用一个宽卷积块。
为了产生高分辨率的预测掩模,人们提出了不同的特征融合方案。U-Net体系结构中的跳过连接将深层、粗糙层的语义信息与浅层、精细层的外观信息结合起来,以产生准确而详细的分割[6,15]。BiSeNet[29]使用特征融合模块将低级空间信息和高级上下文信息结合起来。在实现中,BiSeNet使用预先训练好的轻量级模型,如Exception39或Resnet18来提取上下文信息。不同抽象级别或不同地图大小的特征地图的组合不仅用于语义分割任务,如U-Net、BiSeNet或PSPNet[31],还用于高分辨率表示学习[13]。
TableSegNet有两个输出:一个用于提高表区域检测能力的粗略预测掩码,以及一个用于表和表边界区域检测的精细预测掩码。对于粗预测,使用一个简单的(3×3)卷积算子,输出通道数为两个,对应于表格和背景标签。对于主输出,特征融合首先由两个(3×3)转换块执行。128个通道的融合特征映射通过(3×3)卷积算子再次卷积,三个输出通道对应于表格、表格边框和背景标签。该输出掩模从96×80上采样到768×640,以获得最终的预测掩模。
大多数传统的基于规则的方法将输入作为黑白图像。这一要求反映了文档的主要内容以前景和背景像素的形式表示的基本特性。此外,许多算法的实际输入是表示字符、分隔符、图形或图像的连接组件。例如,表格检测可以基于文本块的垂直排列[1,2]。单词或文本行被分组到区域中,然后被视为候选表格。对于基于深度CNN的方法,输入通常是3通道RGB或变换后的图像。主要原因是大多数深层CNN模型都是在RGB图像数据集上训练的,这些模型的继承需要精确的输入维度。为了提高迁移学习的有效性,一些作者提出使用预处理或变换的图像,如加厚文本区域和缩小空白区域,用不同距离变换的污损图像[18,24]。TableSegNet的输入只是灰度图像,因为它有助于避免彩色文本或彩色背景等颜色变化的影响,并减少网络参数和运行时间。为了简单起见,我们还将输入图像的规格化大小设置为768×640像素,这大约等于A4大小纸张的比例。
表1-表2-表3
TableSegNet有两个输出张量。主输出与768×640大小的输入图像尺寸相同,包含三类标签:表格、表格边框和背景。辅助输出的大小为48×40,由两个标签组成:表格和背景。如图3所示,辅助输出指示检测器路径将更多注意力集中在表区域检测上。通过将检测特征与通过细化路径学习的局部特征相结合,将有助于表的精确定位。在我们的实验中,通过将扩展区域减去掩模的腐蚀区域,从表格掩模生成表格边框类,如图2所示。膨胀和侵蚀操作符的内核大小为16x16(大约一行文本)。
FCN的输出通常通过额外的后处理步骤得到改善。语义分割的一种常见方法是将完全连接的条件随机场(CRF)添加到网络的最后一层[21,37,38]。CRF有助于平滑分割输出,并恢复对象结构。文档图像的一些常用方法已被使用,如阈值化、形态学操作、形状矢量化或其他特殊操作[22,39,40]。通过一个额外的表边框类,TableSegNet的后处理步骤变得更容易,可以执行以下任务:
1.查找候选表区域:在掩码上应用连通成分分析来查找候选表区域。
2.过滤掉小区域:过滤掉小区域或边界较短的区域(小于区域长度或宽度的60%)。表格区域的最小大小约为输入图像高度的两行文字和宽度的1/5(在我们的实现中为24和116像素)。
3.拆分表格区域:如果表格区域的垂直或水平直方图投影值小于预定义阈值(宽度或高度的60%),则会对其进行垂直或水平拆分。
图5:TableSegNet 和TableSegNet 的样本预测,其中没有一个主要组件。从左到右:输入图像,带有蓝色矩形的地面真值表、表区域、表边界区域或背景(对于没有表边界类的TableSegNet),检测到的表为红色矩形。可以检测到所有表格区域,但并非所有表格都被正确识别(在线彩色图)
TableSegNet已经在Tensorflow1中实现。主损失函数和辅助损失函数的交叉熵相同,相应的损失权重分别为1.0和0.3。在培训过程中,我们使用了Adam优化器,学习率为0.0001,培训批量为2。我们使用的辍学率为0.2。数据增强是用0.75到1.25的随机比例值缩放输入图像。我们在一台配备NVIDIA Tesla P100 GPU和16GB内存的机器上对TableSegNet进行了培训。
ICDAR2013[41]和ICADR2019[40]表格检测是评估表格检测算法最广泛使用的数据集之一。ICDAR2019表格检测(现代)数据来自不同种类的PDF文档,如科学期刊、表格、财务报表。它包含各种格式的中英文文档。训练集由600页共977个表格组成,测试集中相应的数字为240页共449个表格。ICDAR2013数据是通过系统地从谷歌搜索中收集PDF生成的,以尽可能客观地进行选择。所收集的文件,其出版物已知在美国政府和欧盟领域。与ICDAR2019数据不同,ICDAR2013的列车集仅包含78页,包含98个表,而测试集包含128页,包含156个表(我们使用的页面仅包含表)。造成这种差异的原因是组织者希望阻止针对特定文档类或源的培训系统尝试[41]。由于模型包含数百万个参数,深度学习方法通常需要大量的训练数据。我们收集了更多用于培训的数据源,并将TableSegNet的性能与其他相关工作进行了比较。第一个数据源来自土拨鼠收藏[42],第二个数据源来自互联网2。如[18]所述,通过消除地面真相注释错误来清理收集的数据。这个额外的数据集由1934页和2835个表组成,如表2所述。
对于一般的目标检测任务,召回率、精确度和谐波F1分数是性能评估的三个基本指标。召回代表检测能力,或检测率,定义为检测到的对象占真实对象(或地面真实)总数的比例。精度是正确检测与检测到的对象总数的比例。F1的成绩使这两项指标协调一致。
F 1 = 2 × ( R e c a l l × P r e c i s i o n ) ( R e c a l l + P r e c i s i o n ) F1 = \frac{2 × (Recall × Precision) }{ (Recall + Precision)} F1=(Recall+Precision)2×(Recall×Precision)
对于像表格这样的二维对象,正确检测的数量取决于一个更精确的量 IoU(联合上的交集),它测量检测区域与地面真值区域的重叠。在ICDAR2019表格检测比赛中,使用不同的 IoU 值来确定是否正确检测到区域:
其中GTP定义表格区域的基本真值区域,DTP定义检测到的表格区域。 I o U IoU IoU的范围从0到1,其中1表示可能的最佳分割。四个 I o U IoU IoU值0.6、0.7、0.8、0.9和加权平均F1(WAvg.F1)用于性能比较:
在这种情况下,高 I O U IOU IOU被认为比低 I O U IOU IOU更重要[40]。
在文档分析和表检测领域,传统上使用正确检测的表的数量来评估算法的性能。在ICDAR2013表格检测竞赛中,如果检测到的表格是完整和纯粹的,那么它就是正确的。完整意味着它包括所有子对象(字符),而纯度只包括地面真值区域中的子对象。此外,还根据字符级别计算了查准率和查全率。原因是表格级别没有考虑小错误(例如,标题部分缺失)和大错误(例如,区域大部分缺失)之间的差异[41]。在我们的实验中,我们使用了所有提到的度量来评估TableSegNet模型。
在第一个实验中,我们评估了TableSegNet的主要组件的有效性,包括细化路径、宽转换块和附加的表边界类。我们在ICDAR2019列车数据集上培训了TableSegNet和TableSegNet,但没有其主要组件之一。我们将数据集分为三部分;两部分用作训练数据,另一部分用作验证数据。训练过程重复了三次。我们在ICDAR2019测试数据集上评估经过训练的模型, I o U IoU IoU阈值为0.9,这是确定比赛中正确检测的最高要求。
检测结果如表3所示。如果没有宽卷积块,TableSegNet只能正确检测449个表中的364个。这意味着宽卷积块在检测文档图像中的表时起着重要作用。另一方面,在后面的卷积层中使用较宽的内核大小也会增加参数的数量。宽卷积块花费了TableSegNet参数总数的近一半。额外的表边界类花费不多,但它有助于提高检测的正确性,将正确检测的数量从377个表增加到390个表。细化路径需要大约50万个参数,并且有效地提高了检测结果的精度。
在图5中,我们在从ICDAR2019测试数据集获取的相同输入图像上显示了上述所有模型的密集预测掩模和输出。在本例中,检测到了所有表区域,但并不是所有表都被正确识别。如果没有细化路径或额外的表边界类,TableSegNet将更难分离附近两个结构相似的表。TableSegNet的宽卷积块有助于更好地检测表区域并更有效地分离表。
在第二个实验中,我们评估并比较了TableSegNet与其他深度学习方法在ICDAR2019和ICDAR2013表格检测数据上的预测性能。
在ICDAR2019数据上,我们分两个阶段训练TableSegNet。第一阶段使用ICDAR2019扩展数据集进行培训,并使用ICDAR2019培训集进行验证。第二阶段仅使用ICDAR2019训练集对模型进行微调。微调过程与第一个实验中的步骤相同:将数据集分为三个部分,并且重复三次训练—验证步骤 。
表4
在表4中,我们展示了TableSegNet和其他最佳方法对ICDAR2019测试数据的预测性能。使用不同的 I o U IoU IoU阈值来计算召回率、精确度、 F 1 F1 F1和加权平均 F 1 F1 F1(W平均 F 1 F1 F1)分数。使用相同的1934页扩展训练数据集,TableSegNet的 W W W平均值为93.34%,相比之下,CascadeTabNet的 W W W平均值为90.1%,而使用MMDetection框架和三级Cascade mask R-CNN的 W W W平均值为91.8%[18]3。CascadeTabNet和Cascade mask R-CNN使用的HRNet主干网(hrnetv2p-w32)有大约4500万个参数[13],远大于TableSegNet的810万个参数。仅使用给定的600个培训页面,TableSegNet就可以实现W平均值为90.47%的 F 1 F1 F1,而U-Net(team Cinners table)的平均值为68.0%[40]。
在一般的图像目标检测中,越高的 I o U IoU IoU阈值意味着检测到的目标位置越精确。对于表对象,确切的位置更可取,因为缺少表的一行或一列可能会带来更大的问题,因为这可能会导致不恰当地使用表数据。TableSegNet的最高IoU阈值为0.9, F 1 F1 F1得分为90.83%,而TableRadar和NLPR-PAL团队使用的两种最佳方法分别为89.7%和85.0%。TableRadar团队在比赛中使用了区域建议(faster-RCNN),NLPR-PAL团队使用FCN进行像素级分类。我们不知道这两个团队是如何建立他们的模型的,也不知道他们使用了什么数据集来训练他们的模型,因此表4中给出的性能主要用于参考目的。在后处理步骤中,TableRadar合并重叠区域大于3的区域表4中的标记表示论文中有一个令人困惑的数字。在0.9 I o U IoU IoU阈值下, F 1 F1 F1得分为0.901,等于加权平均 F 1 F1 F1值。一个预定义的阈值,用于避免过度分割。相比之下,NRPL-PAL通过距离变换和多级阈值将原始单标签映射转换为一组包含逐渐缩小的区域的标签映射,以避免相邻表区域的错误合并。概率图的多任务输出被汇总为一个单一概率图,在该概率图上执行分水岭变换以获得表区域分隔符[40]。 在表4中,当 I o U IoU IoU从0.8变为0.9时,我们还可以看到精确度和召回率的快速下降。TableRadar从95.1%下降到89.7%,NLPR-PAL从93.9%下降到85.0%。这一现象表明,在文档图像中定位表格对于区域建议和像素标记方法都具有挑战性。当F1成绩达到94.22%和90.83%时,TableSegNet显示了它的有效性。
在图6中,我们展示了一些成功和失败案例的典型例子。TableSegNet能够检测有边框和无边框的表。它通常无法合并公共边界不清晰、缺少小表的表。对于图6e这样的困难情况,TableSegNet仍然无法正确定位所有表。
图6一些成功案例(a和b)和失败案例(c、d、e)错误地检测和分离表格。TableSegNet通常无法合并公共边界不清晰(c和e)且缺少小表(d)的表。从左到右:输入图像,包括表格基本真相、基本真相遮罩、预测遮罩、表格检测
根据ICDAR2013的数据,培训过程更简单。我们使用ICDAR2019扩展数据集进行培训,使用ICDAR2013培训数据集进行验证。我们使用竞争对手的性能度量来评估TableSegNet,包括检测到的完整和纯表的数量、精确度、召回率以及子对象级别(单个字符)的 F 1 F1 F1分数。我们还在表5中的数据集上比较了几种最佳方法的性能,包括使用从PDF文件[43]和页面图像[2]中提取的文本的基于规则的方法,基于深度CNN的方法,如DeepDeSRT[16]、TableNet[23]、Cascade TableNet[18],以及两个商业系统ABBYY FineReader 11.0和OmniPage 18 Professional的结果。
在每个性能标准中,黑体数字是最好的结果。一些基于深度学习的方法,如DeepDeSRT、TableNet和CascadeTabNet,在随机选择的页面集上进行了测试,我们以斜体显示结果
表5 几种基于规则和深度CNN的最佳方法在ICDAR2013测试数据集上的检测性能
在156个表中,TableSegNet正确检测到149个表(纯表和完整表),四个部分检测到 (缺失一行),以及一个错误检测,它合并了三个垂直关闭的表,如图7所示。与其他基于规则和深度CNN的方法相比,TableSegNet在字符级别的正确检测数量和检测精度方面取得了最高的性能。值得一提的是,一些基于深度CNN的方法没有在测试集中评估模型,而是随机选择页面。例如,DeepDeSRT和TableNet在一组随机选择的34张图像上进行了测试,因为剩下的图像用于训练[16,23]。Cascade Tablenet使用了40张随机选择的图像进行微调,其余的用于测试[18]。没有报告纯表和完整表的数量,因此我们仅将其结果用于参考目的。据主办方报道,有两个商业系统在比赛中获得了冠军,FineReader的完整和纯表格数量分别为142和148张,Omnipage分别为141和130张[40]。TableSegNet检测到149个纯表和完整表,这是一个非常有竞争力的结果。
图7 IDCDAR 2013测试数据集上四个部分检测到的表(缺少标题或最后一行)和一个TableSegNet错误(合并三个表和附近图形的一部分)
我们介绍了TableSegNet,这是一种全卷积的体系结构,专门为文档图像中的表检测而设计。TableSegNet的主要特点包括在特征提取过程的后期使用宽卷积块以提高检测能力;在最终的稠密预测图中使用独立的细化路径和附加的表边界类,以提高表位置的准确性和附近表的分割。TableSegNet只有810万个参数,而且只接受文档图像的训练,在两个基准数据集上取得了最好的性能。
未来,有几个方向可以改进TableSegNet。卷积块可以使用更紧凑、更高效的卷积算子构建,比如使用深度可分离卷积[44]或扩展卷积[45]。TableSegNet不使用另一个深层CNN框架作为特征提取主干,因此其输入可以是任何形状,如原始输入图像或任何变换的图像。还可以将TableSegNet应用于其他对象类型,如图形、数学表达式或一般物理文档布局分析。