在本文中,作者通过采用最先进的计算机视觉技术,在数据挖掘系统的数据提取阶段,填补了研究的空白。如图1所示,该阶段包含两个子任务,即绘制元素检测和数据转换。为了建立一个鲁棒的Box detector,作者综合比较了不同的基于深度学习的方法,并找到了一种合适的高精度的边框检测方法。为了建立鲁棒point detector,采用了带有特征融合模块的全卷积网络,与传统方法相比,可以区分近点。该系统可以有效地处理各种图表数据,而不需要做出启发式的假设。在数据转换方面,作者将检测到的元素转换为具有语义值的数据。提出了一种网络来测量图例匹配阶段图例和检测元素之间的特征相似性。此外,作者还提供了一个关于从信息图表中获取原始表格的baseline,并发现了一些关键的因素来提高各个阶段的性能。实验结果证明了该系统的有效性。
图表数据是一种重要的信息传输媒介,它能简洁地分类和整合困难信息。近年来,越来越多的图表图像出现在多媒体、科学论文和商业报告中。因此,从图表图像中自动提取数据的问题已经引起了大量的研究关注。
如图1所示,图表数据挖掘系统一般包括以下六个阶段:图表分类、文本检测和识别、文本角色分类、轴分析、图例分析和数据提取。在上述所有阶段中,数据提取是最关键、最困难的部分,其性能取决于定位的质量。在本工作中,作者主要讨论了数据提取阶段。本阶段的目标是检测地块区域中的元素,并将它们转换为具有语义的数据标记。
如图2所示,该任务有两个子任务:绘图元素检测和数据转换
作者从目标检测领域学习方法,建立了一个鲁棒的数据提取系统。然而,应该清楚的是,图表图像与自然图像有明显的不同。如图3所示,(a)是来自COCO数据集的图像,(b)是来自合成图表数据集的图像。首先,与一般对象相比,图表图像中的元素具有很大范围的长宽比和大小。图表图像包含了不同元素的组合。这些元素可以是非常短的,比如数字点,也可以是长的,比如标题。其次,图表图像对定位精度高度敏感。虽然在0.5到0.7范围内的IoU值对于一般的目标检测是可接受的,但对于图表图像则是不可接受的。如图3b所示,即使当IoU为0.9时,在条形图像上仍有较小的数值偏差,这显示了图表图像对IoU的敏感性。因此,对于图表数据的提取,检测系统需要高精度的边框或点,即具有较高的IoU值。
因此,对于图表数据的提取,检测系统需要高精度的边界边框或点,即具有较高的IoU值。
目前,最先进的计算机视觉技术还没有被图表挖掘方法完全采用。此外,使用基于深度学习的方法进行图表挖掘的比较也很少。人们认为,基于深度学习的方法可以避免硬启发式假设,并且在处理各种真实图表数据时更稳健。在本研究中,作者使用已发表的真实数据集,试图填补数据提取阶段的这一研究空白。在所提出的框架中,首先检测到主区域中的元素。基于数据挖掘系统中前几个阶段的轴分析和图例分析结果,作者将检测到的元素转换为具有语义值的数据标记。这项工作的贡献可以总结如下。(i)为了构建一个鲁棒的Box detector,作者综合比较了不同的基于深度学习的方法。作者主要研究现有的目标检测方法是否适用于条型元素检测。特别是,它们应该能够(1)检测具有较大长宽比范围的元素,并能够(2)定位具有较高IoU值的对象。(ii)为了构建一个鲁棒的point detector,作者使用一个带有特征融合模块的全卷积网络(FCN)来输出一个热图掩模。它能很好地区分近点,而传统的方法和基于检测的方法很容易失败。(iii)在数据转换的图例匹配阶段,一个网络被训练来测量特征相似性。当特征提取阶段存在噪声时,它比基于图像的特征具有鲁棒性。最后,作者提供了一个公共数据集的baseline,这可以促进进一步的研究。
作者所提出的方法的总体架构如图4所示。在功能上,该框架由三个组成部分组成:一个预先训练好的图表分类模型,用于检测边框或点的元素检测模块,以及用于确定元素值的数据转换。在下面的部分中,作者首先介绍box detector和point detector的细节。接下来,作者将提供数据转换的实现细节。
为了提取不同尺度上的鲁棒特征,作者使用了带有FPN的ResNet-50 。FPN使用带有横向连接的自顶向下体系结构,以融合来自单一尺度输入的不同分辨率的特性,使其能够检测具有大高宽比范围的元素。为了检测具有高IoU的边框,作者选择CascadeR-CNN作为作者的box detector。如图5(a)所示,box detector有四个阶段,一个区域候选网络(RPN),三个用于检测。第一个检测阶段的采样遵循Faster R-CNN。在接下来的阶段中,通过简单地使用上one-stage的回归输出来实现重新采样。
点是图表数据中的另一个常见的图表元素。如前所述,相应的图表类型包括散点、线和面。一般来下,点密集分布在地块区域,数据以(x,y)的格式表示。在这项工作中,作者使用基于分割的方法来检测点,这可以帮助区分近点。
网络结构
如图5(b)所示,从主干网络中提取了四级的特征图,记为,其大小分别为输入图像的1/16、1/8、1/4和1/2。然后,在上采样阶段,对来自不同深度的特征进行融合。在每个合并阶段中,来自最后一个阶段的特征映射首先被输入到上采样模块,使其大小增加一倍,然后与当前的特征映射连接起来。接下来,使用由两个连续的层构建的融合模块,生成这个合并阶段的最终输出。在最后一个合并阶段之后,然后使用由两个层构建的头模块。最后,将特征图上采样到原图大小。
标签生成
为了训练FCN网络,作者生成了一个热图掩模。二进制映射将轮廓内的所有像素设置为相同的值,但不能反映每个像素之间的关系。与二值分割图相比,作者为掩模上的这些点绘制高斯热图。利用高斯核函数计算了高斯值。如果两个高斯分布重叠,而一个点有两个值,作者使用最大值。
其中(x、y)是掩模上的点坐标,(、)是目标点的中心。σ是一个决定大小的高斯核参数。在这里,作者将σ的值设为2。
后处理
在测试阶段,Point detector输出一个热图掩模。作者首先过滤主绘图区域外的输出噪声。然后,作者使用一个高置信度阈值来输出正区域。通过寻找连接分量的中心,得到最终的点输出。在连通分量分析过程中,对于较大的连通区域,作者也随机选择该区域内的点作为输出。
在检测到元素之后,作者需要确定元素的值。在这个阶段,目标是将绘图区域中检测到的元素转换为具有语义值的数据标记。如图6所示,本阶段进行了图例匹配和值计算。
图例匹配:
根据在数据挖掘系统中从第五阶段得到的图例分析结果,作者可以得到图例的位置。如果存在图例,作者需要提取元素和图例的特征。然后利用l2距离来度量特征的相似性,并将元素划分为相应的图例。基于图像的特征,如RGB特征和HSV特征,在检测结果不够紧密时不鲁棒。因此,作者提出训练一个特征模型来度量特征相似性。
该网络直接从patch输入图像x学习映射到嵌入向量。它由多个模块组成,使用conv-BN-ReLU层构建,最后为每个patch输入输出一个128d的嵌入向量。在训练阶段,网络使用三倍的损失进行优化。这种损失的目的是通过一个距离边际将正对和负对分开。同一集群的嵌入向量应该距离较小,不同的集群应该距离较大。在测试阶段,将裁剪后的图例补丁和元素补丁输入到模型中。对于每个元素,在特征维度上距离最小的图例是对应的类。
数值计算:
根据第四阶段得到的轴分析结果,作者可以得到检测到的勾选点的位置及其对应的语义值。然后,作者分析了相邻勾选点之间的数值关系,包括线性或指数的情况。最后,作者计算了单位尺度的值,并使用插值方法来确定元素的值。
本研究中使用了两组数据集,分别为Synth2020和UB PMC2020。第一个数据集Synth2020,是Synth2019的扩展版本。使用Matplotlib库创建了多个不同类型的图表。第二个数据集是来自PubMedCentral的科学出版物中的真实图表,它具有不同的图像分辨率和更多的图像不确定性。作者将ICPR2020官方训练数据集随机分为训练集和验证集。表1给出了这两个数据集分割的详细信息。
在Box detector实验中,作者选择条形数据进行训练。主特征提取器是在ImageNet上预先训练过的ResNet-50。在回归阶段,作者采用RoIAlign抽样候选到7x7的固定大小。batch size为8,初始学习率设置为0.01。采用随机梯度下降(SGD)对模型进行优化,训练的最大周期为20。在推理阶段,利用非最大抑制(NMS)来抑制冗余输出。
在point detector实验中,作者选择散点型数据进行训练。在训练阶段,作者使用MSE损失来优化网络。采用多种数据增强,包括随机裁剪、随机旋转、随机翻转和图像失真,以避免过拟合。作者采用OHEM 策略来学习困难样本。正样本和负样本的比例为1:3。使用Adam优化器对模型进行优化,最大迭代次数为30k,batch size为4。
在数据转换实验中,作者训练模型提取特征进行聚类。训练的输入大小为24x24,嵌入维数设置为128。采用Adam优化器对模型进行优化,最大迭代次数为50k。batch size为8,初始学习率设置为0.001。
Box detector的评估:
当IoU的值分别设置为0.5、0.7、0.9时,用Score_a和f-measure来评估Box detector的性能。Score_a使用ICPR2020竞赛的评价机制。训练后的模型分别在Synth2020验证集和UB PMC2020测试集上进行了测试。由于Synth2020的测试集目前不可用,所以作者使用验证集来测试Synth2020数据集上的模型性能。
为了进行比较,作者实现了不同的检测模型,包括one-stage和two-stage的检测模型。one-stage模型是SSD 和YOLO-v3而two-stage模型是Faster R-CNN。如表2所示,one-stage模型的性能表现最差,多级回归磁头有助于获得较高的精度。此外,附加的FPN结构有效地有助于检测具有较大高宽比范围的元素。在Synth2020和UB PMC2020数据集上,具有FPN结构的Cascade R-CNN模型表现最好。因此,对于条形数据检测,具有多元回归头和FPN结构的模型取得了令人印象深刻的性能。
One-stage模型在早期的迭代中输出了糟糕的结果。同时,NMS不能有效地过滤这些误差输出,如图7(b).所示NMS不能抑制这些输出,因为这些长矩形之间的离子值单位小于0.5由于这些原因,该模型不能达到全局最优解。
Point detector的评估:
在本节中,将根据竞赛中发布的评价机制来评估point detector的性能。训练后的模型在Synth2020验证、UB PMC2020验证和测试集上进行了测试。
作者将作者的方法与传统的图像处理方法,如连接组件分析和基于检测的方法。该检测模型是基于faster R-CNN。为了训练faster R-CNN模型,作者将点(x,y)扩展为一个矩形(x −r,y −r,x+r,y +r),其数据格式为(left,top,right,bottom)。作者还实现了另一种基于分割的方法Pose ResNet,该方法最初被提出用于pose point检测。Pose ResNet模型采用了下采样和上采样的结构,没有考虑不同深度的特征融合。
如表3所示,该方法简单而有效,在三个测试集上都优于其他方法。如图8所示,在Synth2020验证集上,有许多情况下,散点被连接并形成一个更大的连接分量。在UB PMC2020测试集上,在情节区域有许多噪声,如文本元素。传统的图像处理方法不能区分构成较大分量的近点。当点数较大或相邻点连接时,基于检测的方法失败。与Pose ResNet相比,特征融合方法有助于区分相邻点,如图8(d).所示该方法能有效地处理这些情况,并准确地定位相邻点。
数据转换特征的鲁棒性:
作者选择行型数据来评估数据转换的性能。数据转换的性能取决于图例匹配阶段和值计算阶段。值计算阶段的性能取决于OCR引擎是否能正确识别勾点值。忽略了OCR引擎引起的误差,作者讨论了从训练网络的图例匹配阶段提取的特征的鲁棒性。如表4所示,作者比较了对ground truth和预测结果进行图例匹配阶段时的性能。对于简短的表示法,这里的s1、s2、s3分别表示平均名称得分、平均数据序列得分和平均得分,这在评估脚本中声明。
当使用ground truth作为输入时,元素的位置是相当准确的。从训练网络中提取的特征与RGB和HSV特征连接后的特征具有可比性。通过考虑特征的级联,可以进一步提高性能。当使用预测检测结果时,元素的位置可能不够紧凑,这可能会在提取特征时引入噪声。实验结果表明,该方法的特征比基于图像的特征更具有鲁棒性。
拟建系统的评价结果:
如表5所示,作者提供了作者提出的ICPR2020比赛的系统性能,这可以作为一个baseline,便于进一步的研究。对于简短的表示法,这里的s0、s1、s2和s3分别表示视觉元素检测得分、平均名称得分、平均数据序列得分和平均得分。在本工作中,没有采用额外的数据或模型集成策略。结果表明,作者的系统在UB PMC2020测试集上的性能优于Rank1和Rank2的结果,证明了该系统的有效性。
在本工作中,作者讨论了一个数据挖掘系统中的数据提取阶段。为了建立一个可靠的Box detector,作者比较了不同的目标检测方法,并找到了一个合适的方法来解决表征图表数据的特殊问题。具有多元回归头和FPN结构的模型取得了令人印象深刻的性能。为了建立鲁棒的point detector,与基于图像处理的方法和基于检测的方法相比,该基于分割的方法可以避免困难的启发式假设,并很好地区分近点。对于数据转换,作者提出了一种测量特征相似性的网络,它比基于图像的特征更稳健。在实验中,作者在数据提取的每个阶段都进行了实验。作者找到了提高每个阶段效果的关键因素。在公共数据集上的整体性能证明了该系统的有效性。由于近年来出现的图表越来越多,作者相信从图表数据的自动提取领域将迅速发展。作者希望这项工作能够提供有用的见解,并为比较提供一个baseline。