自然图片的检测和识别是计算机视觉领域的两个主要的问题,在运动视频分析,自动驾驶,工业自动化等方面有广泛的应用。目前面临的共同的有挑战性的问题关键在于文本是如何被不同的环境状况表示或影响。目前的SOTA场景文本检测和识别方法在深度学习架构下获得了很大的进步并且在处理多分辨率和多方向文本上在基准数据集上取得了优秀的准确率。然而,目前仍然有集中现存的挑战影响场景图片中的文本,由于这些模型不能概括不可见数据和不充分标注数据,使得现在的方法表现不好。因此,不同与先前的该领域的综述,这篇综述的目标如下:首先,首先不仅提供给读者一个场景文本检测和识别的近年进展的综述,而且陈述使用统一评估框架的大量的实验结果,评估在有挑战的情况下搜寻方法的预训练模型,并在这些技术上使用相同的评估标准。其次,提出场景文本检测和识别几点现存的挑战,即平面旋转,多方向,多尺度文本,透视失真,光照反射,局部遮挡,复杂的字体和特殊字符。最后,文章对这个领域的潜在研究方向进行了展望,以处理场景文本检测和识别技术遇到的一些潜在的挑战。
文本是至关重要的交流工具并且在我们的生活中扮演了重要的角色。它可以作为一种传递信息的方式嵌入到文本或者场景。辨认文本被认为是一个主要的模块,对于多种基于计算机视觉的应用,如机器人,工业自动化,图片搜索,即时翻译,汽车辅助,运动视频分析。通常,文本辨认领域可以被分成两个主要部分:识别扫描打印文档中的文本和在日常场景中捕获的文本,(例如,在城市,乡下,铁路,室内和室外的建筑,遭受各种几何扭曲的影响,光照和环境的状况的图片中的文本),后者被叫做自然场景文本,Figure 1 对两种类型的文本图片进行了举例,为了辨认扫描打印文档中的文本,OCR技术被广泛的运用在[1,13-15],在阅读分辨率令人满意的打印文档上实现了令人满意的效果。然而,这些传统的OCR方法在被用于检测和识别场景图片中的文本时面临了许多复杂的挑战导致他们在大多数情况下失效。
自然场景文本检测和识别的挑战可以被分为以下几类:
1.文本多样性:文本在颜色,字体,方向和语言上存在巨大的差异。
2.场景复杂性:与文本外观相似的场景元素,例如标签,砖块,标志。
3.失真因素:图像失真的影响由于几种影响例如运动模糊,相机分辨率不足,捕捉角度和部分遮挡。
在文献中,许多方法被提出针对于场景文本检测和识别的多种挑战。这些方案可以被分为传统机器学习方法[17-19],和深度学习方法[39-56]。一个经典的方法通常基于结合特征提取技术与机器学习模型来检测或识别场景中的文本。尽管这些方法中的一些在检测或识别水平文本上实现了很好的表现,这些方法有代表性的难以处理包含多方向和弯曲文本的图片。另一方面,基于深度学习的方法展示了其在不利情况下检测和识别文本的有效性。
早期的场景文本检测和识别方法的研究对传统方法,大多在深度学习时代以前,进行了全面的回顾。而最近的综述更多关注于深度学习时代的场景文本检测和识别方法的进展。尽管这两类涵盖了传统方法和基于深度学习两类方法的进展,他们主要关注于总结和比较所看论文的报道的结果。
这篇文章关注于文章之间的差异通过不仅回顾场景文本检测和识别领域的研究进展,着重于基于深度学习的方法。而且使用相同的评价方法在有挑战的数据集上评估一些SOTA方法的表现。除此之外,这篇文章研究了现存技术的短处通过进行一系列广泛的实验,然后分析和讨论结果。最后这篇文章提出了潜在的未来研究方向和最佳实践,有潜力引导设计更好的模型可以解决不利情况下的场景文本检测和识别问题。
在过去十年中,研究者提出了许多方法用于理解自然场景图片中的文本,这些方法,首先定位图片中的文本区域,通过对每个可能的文本区域预测边框,然后识别每一个检测区域的内容。因此,这些从图片中解释文本的过程可以分为两个子任务,即文本检测和文本识别任务。文本检测关注于从图片中检测和定位文本区域,另一方面,文本识别任务只关注转换被检测的文本区域到计算机可理解和编辑的字符,单词或文本行。在这一小节,传统的和最近的文本检测和识别算法将会被讨论。
如图2所示,场景文本检测任务可以被分为经典基于机器学习的方法和基于深度学习的方法,这一节,我们将会回顾与这些类别相关的方法。
2.1.1 经典的基于机器学习的方法
这一节总结了用于场景文本检测的传统方法,可以分为两种主要的方法,即基于“滑动窗口”和“连同分支”的方法。
在滑动窗口方法中[17-22],输入图像构造一个图像金字塔,来扫描所有可能的文本位置与尺度,通过使用固定大小的滑动窗口。然后,一个固定类型的图片特征(例如平均差和标准差,方向梯度直方图和边界区域)从每一个窗口中获得,并且通过一个经典的分类器进行分类(如随机蕨,自适应增强和许多弱分类器,例如,决策树,对数似然函数,似然比检验等)来检测每一个窗口中的文本。例如,在早期的Chen和Yuille的工作中,强度直方图,强度梯度和地图方向特征在测试图像的每个滑动窗口位置中被获得。接下来,几个弱对数似然分类器,在使用相同类型特征表示的文本上进行训练,用于使用AdaBoost架构迭代一个强分类器用于文本检测。在[20]中,HOG特征从每一个滑动窗口中提取,并且一个随机蕨分类器用于多尺度的字符检测,非极大值抑制方法用于分别检测每一个字符,然而,这些方法只适用于检测水平文本,并且在具有任意方向文本的场景图片上检测效果较差。
基于连通分支的方法旨在提取具有相似特性的图片区域(如颜色,质地,边界和角点)来创造可以使用传统分类器(如SVM,随机森林,最近邻)讲其分为文本和非文本类别的候选分支。这些方法检测图片中的字符并且讲这些检测到的字符组合成一个单词或者一个文本行。与基于滑动窗口的方法不同,基于连通分支的方法更加有效和鲁棒性,它们提供一个更低的false positive率(将背景识别为文字,误检),这在场景文本检测中是十分重要的。
最大稳定极值区域(MSER)和笔画宽度改变(SWT)是两个主要的典型基于连通分支的方法,构成了许多后续文本检测工作的基础。然而,上面提到的经典方法致力于检测单个字符或分支,很容易造成丢弃具有不明确字符的区域或者生成大量的误检,减少了他的检测性能。
除此之外,他们需要多重复杂的连续步骤,很容易向后续的步骤传播错误。除此之外,这些方法在一些困难的情况下可能会面临失败,例如检测非均匀照明的文本和具有多个连接字符的文本。
2.1.2 基于深度学习的方法
深度学习的出现改变了研究人员处理文本检测任务的方式并且很大程度扩大了这个领域的研究范围。因为深度学习技术与经典基于机器学习的方法相比有很多的优势(例如更快和更简单的流程,检测不同横纵比的文本,提供更好的在合成数据上训练的能力)得到了广泛的应用。在这一小节,我们对基于深度学习的文本检测方法的近期n进展进行了回顾,表1对该领域的一些目前的SOTA方法进行了比较。
早期的深度学习文本检测方法通常由多个阶段组成,例如,Jaderberg[33]等扩展了卷积神经网络的架构来训练一个有监督的学习模型以产生文本显著性特征图, 然后通过过滤和NMS对多种尺度上的边界框进行组合。Huang等人利用传统的连通分量方法和深度学习来提升最终检测去的预测能力。在这个方法中,经典的MSER高对比度区域检测器被用于输入图像来寻找候选字符,然后,一个CNN分类器被用于过滤出非文本候选,通过生成一个置信映射在接下来用于获取检测结果。之后在[32]中,聚合通道特征(ACF)检测器被用于生成文本候选,接下来一个CNN用于边界框回归,来减少错误被预测为真的候选。然而,这些早期的深度学习方法主要关注于检测字符,因此当字符出现在复杂的背景下时,他们的性能可能出现下降。例如,当背景元素和字符在外观上相近时,或者字符被几何变化影响时。
近期的深度学习文本检测方法受目标检测管道的起法可以被分为基于边界框,基于分割的方法和混合方法,如图2所示。
基于边界框的文本检测方法将文本看作一个目标,旨在直接预测候选的边界框。例如,TextBoxes[36]方法修改了SSD方法的内核通过采取长的默认锚和过滤器来解决文本实例中高宽比的显著变化,在[71]中,Shi等人采用了继承自SSD的架构来将图片分解成更小的片段,然后将他们连接到文本实例,所以叫做SegLink,通过使用相邻文本片段的空间关系或者连接预测,使得SegLink能够检测长距离的拉丁文或非拉丁文文本,这些文本具有很大的横纵比。连接文本建议网络Connectionist Text Proposal Network (CTPN)[34],一个Faster-RCNN[105]的改良版本,使用一个锚机制来对每一个固定宽度的建议同时进行定位和打分,然后用递归神经网络RNN按顺序连接proposals。 Cupta等人提出了一个全卷积回归网络受YOLO网络的启发,同时为了减少false-positive文本的出现,使用了一个随机森林分类器。然而这些受传统目标检测问题启发的方法,可能很难解决多方向的文本,并且需要进一步措施将文本元素组合成文本行来产生一个固定方向的文本框,因为不同于传统的目标检测问题,检测单词或者文本区域需要更大长宽比的边界框。
考虑到场景文本通常具有任意形状,几个工作尝试提升了多方向文本检测的性能,例如,He等人[106]提出了一种多方向的文本检测方法,基于直接回归法来生成任意四边形文本,通过计算文本区域中的每个点和顶点坐标之间的偏移量。这个方法在定位四边形边界的场景文本时尤其有优势,很难识别构成的字符并且在尺度上有明显的变化和透视失真问题。在EAST[35]中,FCN用于直接检测文本区域,无需使用候选聚合和字区分等步骤,接下来NMS用于检测单词或者行文本,这个方法在每一个文本区域的点上预测单词或行文本旋转的box或者矩形。Ma等人[38]介绍了旋转区域建议网络RRPN,基于Faster-RCNN,为了检测场景图片中任意方向的文本。接下来,Liao等人[37]将TextBoxes扩展为TextBoxes++,通过改善网络架构和训练过程。TextBoxes++将文本的矩形边界框取代为四边形以检测任意方向的文本。尽管基于边界框的方法有简单的结构,但他们需要复杂的anchor设计,在训练阶段很难调整,在检测弯曲文本时可能会面临失败。
基于分割的方法[39-45,47]将文本检测视为语义分割问题,这种方法致力于在像素级别上对图片中的文本区域进行分类,如图4(a)所示,这些方法,首先从FCN[102]生成的分割图中提取文本块,在后处理过程中获得文本的边界框。例如,Zhang等人[39]采取了FCN来预测文本区域的显著图,以及预测给定图像的每一个字符中心。Yao等人[40],改善了FCN以产生三种类别的分数图:文本/非文本区域,字符类别,和输入图片的字符连接方向。然后一个分词后处理方法被使用来获取文本的边界框通过分割图。尽管这些基于分割的方法[39,40]在旋转或者不规则文本上表现很好,但很难准确的区分相邻的单词实例。
为了解决相邻字符的连接问题,Pixellinks[43]对于利用每个像素的8个方向的信息来高亮文本边缘,Lyu[44]提出了角点检测方法来产生位置敏感的得分图。在[42]中,TextSnake被提出,通过预测文本区域和中心线和几何属性来检测文本实例。这个方法不需要字符级别的注释并且能供重建文本实例的精确形状和区域走向。受[105]的启发,[46]使用了字符亲和图来将被检测的字符连接为一个单独的文本,并且使用一个弱监督框架来训练字符级的检测器。最近,在[113]中一个渐进式尺度扩展网络(PSENet)被提出,寻找多尺度的核并且分准确的分离相近的文本实例。然而[46,113]中的方法需要大量的图片用于训练,增加了运行时间并且在资源有限的平台上构成困难。
最近,几个工作[47,48,127,128]将场景文本检测看作一个实例分割问题,如图4(b)所示,许多这类方法采用了Mask R-CNN[124]的架构来提升场景文本检测的表现,这是有效的来实现文本区域的注释文本实例的语义分割,并且可以检测任意形状的文本实例。例如,受Mask R-CNN的启发,SPCNET[128]使用了文本上下文模型来检测任意形状的文本和一个重新打分机制来抑制false positives误检。
然而,[48,127,128]有一些缺点,可能降低他们的表现:首先,在处理复杂背景时,可能会出现边界框的错误,其中预测的边界框不能覆盖整个文本图片。其次,这些方法旨在从背景中分离文本像素,这可能导致在文本边界上有许多错误标记的像素[47]。
混合方法[103,108,109,129]使用基于分割的方法来预测文本的得分图,并通过回归来获得文本的边界框。例如,单发文本检测器(SSTD)[91]使用注意力机制来增强图片中的文本区域,并且在特征级别上将减少背万扰。Liao等人[96]提出了旋转敏感的回归用于固定方向的场景文本检测,这个方法充分利用了旋转不变特征通过主动旋转卷积过滤器。然而,这个方法不能捕获存在于场景图片中的其他可能的文本形状[46]。Lyu等人[97]提出了一个方法检测并分组文本区域的角点来生成文本框。除了可以检测长的固定方向的文本并且处理相当大的长i宽比变化,这个方法需要简单的后处理过程。Liu等人[47]提出了一个新的基于Mask R-CNN的架构,即,金字塔mask文本检测器(PMTD)采用了一个软金字塔标签,l属于[0,1],对于文本实例中的每一个像素,然后将获得的2D软mask重新解释到3D空间中。他们也介绍了一个新颖的平面聚类算法来提取最优的文本框,基于3D形状并且在ICDAR LSVT数据集上实现了SOTA表现。PMTD也在多方向数据集上实现了较高的性能。然而,由于他的架构明确的被设计用于多方向文本,很难将其应用在弯曲数据集上,并且在文章中只展示了使用多边形边界框的边界框结果。
在下一节中,我们将描述场景文本识别方法。
场景文本识别任务目标为将被检测的文本区域转换成字符或单词。通常,大小写敏感的字符类通包括:10个数字,26个小写字母,26个大写字母,32个ASCII标点符号,和句尾符号。然而,文章中提出的文本识别使用不同种类的字符类,表3提供了他们的数量。
因为场景文本图像的特性不同于扫描文档,很难基于传统的OCR或手写识别方法来开发一个有效的文本识别方法,如[133-138]。正如我h们在第一节中提到的,这是因为从自然场景中捕获的图片常常包含两种挑战情况瞎的文本,如低分辨率,或模糊,环境状况,并且有不同的字体,多方向的角度,语言和词典。研究人员提出不同的技术解决上述有挑战性的问题,这些方法可以分为基于传统机器学习的方法和基于深度学习的文本识别方法,这些将在接下来讨论。
2.2.1传统基于机器学习的方法
在过去二十年中,传统场景文本识别方法[28,29,145]使用标准图像特征如HOG和SIFT,和一个经典的机器学习分类器,如SVM或者k近邻,接下来一个统计语言模型或视觉结构预测被用于梳理被错误分类的字符。
大多数经典基于机器学习的方法采用一个自底向上的方法,被分类的字符被连接成一个单词。例如,在【20,77】中,在每一个滑动窗口中首先提取HOG特征,接下来一个预训练的最近邻或SVM分类器用于分类输入图像的字符。Neumann和Matas【96】提出了一系列手工制作的特征,包含方向和孔面积比例,使用SVM分类器用于文本识别。然而,这些方法【20,22,77,96】不能得到有效的识别准确率,由于手工特征的低表示能力,或构建能够解决自然场景文本识别的模型。其’s他工作采取自顶向下的方法,单词从完整的输入图片中直接进行识别,而不是检测和识别单个字符。例如,Almanzan【144】将单词识别视为一个基于内容的图像检索问题,单词图像和单词标签被嵌入到欧式空间中并且嵌入式向量用于匹配图像和标签。这些方法的一个主要问题是不能识别字典数据集之外的输入单词图像。
2.2.2 基于深度学习的方法
随着深度神经网络架构的研究进展【114,147-149】,许多研究人员提出基于深度学习的模型【22,60,80】来应对场景文本识别中的挑战。表3阐明了几种目前表现效果最好的基于深度学习的文本识别方法的对比【16,52-55,61-71,150-152】。例如,Wang【80】提出了一个基于CNN的特征提取架构用于字符的,接下来使用NMS技术来获得最终的单词预测。Bissaco【22】采用了全卷积神经网络FCN用于字符特征表示,接下来一个n元文法方法用于识别字符。相似的,【60】设计了一个深度卷积神经网络架构和多个softmax分类器,在一个新的合成文本数据集上进行训练,每一个文本图像中的字符被这些独立的分类器预测。这些早期的基于深度卷积神经网络的文本识别方u法【2的60,80】需要定位每一个字符,由于复杂的背景,无关的符号和场景文本图片中相邻字符的短距离,这是十分具有挑战性的。
用于单词识别,Jaderberg【32】构造了一个90k的英文单词分类任务通过一个CNN架构。尽管这个方法【32】相比于独立字符预测【22,60,80】的方法展示出了更好的单词识别性能,但其仍然具有两个主要的缺点:(1)这个方法不可以识别未登录的词汇,(2)长单词的变形会影响其识别的准确率的考虑到场景文本通常以字符序列的形式出现,许多近期的工作将每一个输入序列映射到不定长的输出序列中。受语音识别的启发,许多基于序列的文本识别方法【52,54,55,61,62,68,150】使用连结主义时间分类connectioniset temporal classification (CTC)来预测字符序列。图像5阐述了文章中常用的三种主要的基于CTC的文本识别架构。再第一类【55,157】中,卷积神经网络模型(如VGG ,RCNN, ResNet)用于CTC,如图5(a),例如在【157】中,一个滑动窗口首先被用于行文字图片来有效的捕获上下文信息,接下来一个CTC预h测被用于e预测输出单词。Rossetta【55】只使用卷积神经网络提取特征,通过ResNet作为一个骨架来预测特征序列。尽管减少了计算复杂度,这些方法【55,157】缺少上下文信息,且准确率较低。
为了更好地提取上下文信息,几个工作【52,62,150】使用循环神经网络RNN结合CTC来识别预测序列和目标序列之间的条件概率(图5b)。例如,在【52】中,一个VGG模型作为骨架来提取输入图像的特征,连接一个双向长短时e期记忆网络(BLSTM)用于提取上下文信息,接下来一个CTC loss用于识别字符序列。之后,Wang【62】提出了一种基于RCNN循环卷积神经网络的新的架构,叫做有控制门的RCNN,使用一个门来调节循环神经网络的递归连接。然而,图6(ad)表明,这些方法不能够识别不规则文本,因为字符排列在2维图像平面上,而基于CTC的方法只能用于一维的序列对其。因此,这些方法需要将2维的图像特征转换为1维的图像特征,将导致相关信息的缺失【152】。
为了解决不规则输入文本图像,Liu【54】提出了一个一个空间注意残留网络(STAR-Net)利用空间变换网络(STN)【154】处理文本扭曲z。【5d4】中显示了STN和残留卷积模块,BLSTM和CTC架构的使用,如图5(c),允许在各种形变情况下进行场景文本识别。近期,Wang【152】介绍了一种2D-CTC技术来克服基于1维CTC方法的限制。这个方法【152】可以直接用于2维的概率分布来产生更精确的识别。有鉴于此,如图6(b)中所示,除了时间步骤,一个额外的高度维度也用于路径搜索,在高度维度上考虑到所有可能路径,来更好的对齐搜索空间,并关注于相关性特征。
主义里机制首先用于机器翻译【160】也被用于场景文本识别【16,53,54,61,63,65,66,70】,一个暗含的注意力被自动的学习获得以增强深解码过程中的深度特征。图像7表示了在文章中使用的五种主要的基于注意力机制的文本识别架构。对于规则的文本识别,一个基础的基于1维注意力机制的编码器和解码器架构在图7(a)中表示,用于识别文本图片在【61,161,162】中。例如,Lee和Osindero【61】提出了一种带有注意力建模的递归循环神经网络(R2AM),一个递归的CNN用于图片编码来学习更广泛的上下文信息,接下来,一个1维的基于注意力的解码器用于序列生成。然而,在不规则文本上直接训练R2AM是困难的由于横向的字符布局【163】。
类似于基于CTC的方法在处理不规则文本的情况,许多基于注意力机制的方法【16,56,65,70,166】使用图片矫正模块来控制扭曲的文本图像如图7(b)所示。例如,Shi【16,53】提出了一种文本识别系统连接了基于注意力机制的序列和一个STN模块来用于矫正不规则文本(如弯曲的或者明显扭曲的),接下来,矫正后的图片中的文本使用RNN网络进行识别。然而,在不考虑人为设计的几何ground truth 的情况下,训练一个基于STN的模型是十分困难的,尤其是,在复杂的任意方向或强弯曲图像文本中。
近期,许多方法【65,70,166】提出了几种技术来矫正不规则文本。例如,取代于矫正整个单词图片,Liu【65】提出了一种字符注意的神经网络(Char-Net)用于识别扭曲的场景字符。Char-Net包括一个单词级的编码器,和一个字符级的编码器,一个基于LSTM的解码器。不同于STN,Char-Net可以检测和矫正独立地字符通过一个简单的局部空间转换。这可以对更复杂形式的扭曲文本进行进行检测,使用全局的STN则不容易进行识别。然而,当图片包含切断和模糊的文本时,Char-Net通常会失败。在【70】中,一个健壮的直线拟合被提出来纠正场景文本图片的预期曲率失真,通过一个迭代的方式。有鉴于此,一个迭代的矫正网络使用薄板样条曲线(TPS)形变被用于增加曲型图像的矫正,并提升识别的性能。然而,这些方法的主要缺点是较高的计算成本由于多个改善步骤。Luo【166】提出了两种机制来提升文本识别的性能,一个新的多目标矫正的注意力网络(MORAN)用于矫正不规则文本图像并且一个部分传感机制用于增强在解码器中基于注意力的网络的敏感性。然而,这个方法在遇到复杂的背景是时会失败,因为文本图片的弯曲角度过大。
为了处理固定方向的场景文本,Cheng【66】提出了一种任意方向网络(AON)从四个固定的方向提取图片的深度特征,一个设计好的过滤门用于生成综合特征序列。最后,一个1维的基于注意力的解码器用于生成字符序列。方法的整体架构如图7(c)所示。尽管AON可以使用单词级别的注释进行训练,由于使用了复杂的四个方向的神经网络,导致了多余的表示。
基于注意力机制的方法的性能在许多有挑战性的情况下可能会减弱,例如低质量的图片或严重扭曲的文本,受这些情况影响的文本可能导致错误对齐或注意力偏移问题【152】。为了减少这些问题的严重程度,Cheng【64】提出了一个集中注意力网络(FAN),由一个用于字符识别的注意力网络和一个用于调整AN的注意的集中网络组成。【64】中表示FAN可以自动地改善注意力偏移问题,因此提升了规则文本识别的性能。
一些方法【63,151,164】使用了2维的注意力机制【167】,如图7(d)所示,来克服1维注意力机制的缺点。这些方法可以在解码过程中学会关注2维空间中的单个字符特征,可以使用字符级【63】或单词级【164】的注释进行训练。例如,Yang【63】介绍了一种辅助密集字符检测任务,使用一个全卷积神经网络FCN用于鼓励视觉表征的学习来提高不规则文本识别能力。之后Liao【151】提出了一个架构叫做字符注意FCN(CA-FCN),使用2维空间代替1维空间对不规则的场景文本识别任务进行建模。在这个网络中,一个字符注意力模块【168】被用于预测任意形状图像中的多方向的字符。然而,这个架构要求字符级的注释并且不能端到端进行训练【48】。与之相反,Li【164】提出了一个使用单词级注释的模型,使这个模型可以在不利用字符级注释的情况下,同时使用真实数据和合成数据进行训练。然而,在编码和解码过程中都使用了两层RNN网络,这种方法阻碍了计算并行化,且计算量非常大。
为了解决这些基于2维注意力方法的计算成本问题【63,151,164】,在【165】和【71】中,2维注意力机制中的RNN步骤被移除了,一个卷积注意力网络【169】作为代替,能够进行不规则的文本识别,以及完全的并行处理可以加速处理速度。图7(e)展示了这种基于注意力类别的一一般方框图。例如,Wang【71】提出了一种简单且健壮的卷积注意力网络(SRACN),卷积注意力网络解码器直接用于2维的卷积特征。SRACN不需要将输入图片转换为序列表示,并且直接将文本图片映射为字符序列。同时,Wang【65】将场景文本识别问题考虑为一个时空预测问题,提出了集中注意卷积LSTM(FACLSTM)网络用于场景文本识别,在【165】中表明FACLSTM处理文本识别问题更加有效,尤其是对于弯曲场景文本数据集,如CUT80【140】和SVT-P【170】。
在这一小节中,我们提出了一个广泛的评价标准用于一些搜集到的最先进的场景文本检测【35,43,46,47,110,112,113】和识别【16,52-56】技术在最近的公开数据集上【75,84,126,139,140,170,171】包含各种各样的挑战。场景文本检测或识别方案的一个重要特征是可推广,他显示了在一个数据集上训练好的模型是否能够在其他数据集上检测或识别有挑战的文本实例。这个评估策略是一个尝试用于弥补通常使用一个特定数据集进行训练和评估文本检测和识别方法的不足。因此,为了评估这些方法的泛化能力,我们提出在未见模型上比较检测和识别模型。
尤其是,我们选择了以下方法来评估基于深度学习的自然场景文本检测方法的最新进展:RMTD【47】,CRAFT【46】,EAST【35】,PAN【110】,MB【112】,PSENETj13】和Pixellink【43】。对于每一个模型除了MB,我们使用来自作者github页面的预训练模型使用ICDAR15数据集进行训练。对于MB,我们在ICDAR15上训练算法根据作者提供的代码。为了测试这些检测器,ICDAR13,ICDAR15,和COCO-Text数据集被使用,这个评估策略避免了不带偏见的评估,并且允许评估这些技术的泛化性。表5阐述是哟的测试图片数量。
为了对场景识别方法进行评估,以下基于深度学习的技术被收集:CLOVA【56】,ASTER【16】,CRNN[52],ROSETTA[55],STAR-Net[54],RARE[53]。因为最近的合成文本ST和MJ合成数据集被广泛的用于建立识别模型,我们使k些合成数据集来比较最先进的方法。所有的识别模型使用ST和MJ数据集进行训练,使用ICDAR13,ICDAR15,COCO-Text数据集,除此之外,还有四个常用的数据集,III5K,CUT80,SVT,SVT-P数据集进行评估。如表5所示,这些数据集主要包含规则或水平的图片的数据集以及弯曲旋转,扭曲,也叫做不规则文本图片的数据集。在评估过程中,我们使用36个i的字符数,10个数字和26个英文字母。
在本节的其余部分,我们首先总结每个数据集中的挑战。以及展示评估策略。接下来,我们提出了定量和定性的分析,以及对场景文本检测方法的讨论,和对场景文本识别方法的讨论。
3.1数据集
目前已经引入了几种场景文本检测和识别的数据集。这些数据集可以被分类为合成数据集,主要用于训练目的,如【174】和【60】,和真实o数据集被广泛用于评估检测的性能。表5比较了近期的一些检测和识别的数据集,剩余部分给出了这些数据集的摘要。
3.1.1 MJSynth
MJSynth数据集是一个合成数据集,专为场景文本识别任务设计。图8(a)展示了数据集的一些例子。这个数据集包括890万单词box灰度合成图像,由gagle字体和ICDAR03和SVT数据集的图片生成,这个数据集中的所有图片都具有字符级的ground-truth进行注释,并且90k个公共英文单词用于这些图像的生成。
3.1.2 SynthText
SynthText在自然数据集中【174】包括858750个合成场景图片和720万个单词实例,以及2890万个字符。这个数据集的大多数文本实例有单词和和字符级旋e,以及文本序列如图8(b)。他们通过将自然图像与不同字体、大小、方向和颜色的文本进行下进行创建。这个数据集被设计用于评估场景文本检测,用于训练多个检测管道。然而,在许多文本识别任务中,也组合了数据集的裁剪单词图片和MJ数据集用于提升识别性能。
3.1.3 ICDAR03
ICDAR03数据集包括水平摄像头捕获的场景文’y本图片。这个数据集主要被近期的文本识别方法使用,包括1156和100个文本实例用于训练和测试。在本篇文章中,我们使用相同的测试图片来评估最先进的识别方法。
3.1.4 ICDAR13
ICDAR13数据集包括水平文本图片(第i个groundtruth注释由左上角的关联宽度和高度的边框的索引给出,Gi中1n1i,x2i,y2i])在ICDAR2013竞赛中使用,在许多检测和识别任务中作为基准数据集。数据集的检测部分包括229张图片用于训练和233张图片用于测试,识别部分包括848张单词图片用于训练和1095张单词图片用于测试。所有的测试数据有很好的质量,文本区域通常在图像中心。
3.1.5 ICDAR15
ICDAR15数据集u可以用于检测和识别任务的评估。检j块有1500张图片,包括1000张训练图片,和500张测试图片。识别部分包括4468张图a片用于训练和2077张图片用于测试。这个数据集包括多种方向的单词级文本,相比于ICDAR2013,在不同的光照和复杂的背景下拍摄。然而,数据集中的大部分图片是在室内拍摄的。在场景文本检测中,ICDAR13中使用的矩形ground-it了th不适合表示多方向的文本,因为(1)会造成不必要的重叠,(2)不能准确地定位边缘文本。(3)提供不必要的背景噪声。因此,ICDAR15注释使用四边形表示,包括四个角点的坐标。
3.1.6 COCO-Text
这个数据集在【172】中第一次介绍,目前,时最大的且最具挑战性的文本检测和识别数据集。nc5所示,这个数据集包含63686张注释的图片,其中43686张训练图片和20000张图片用于验证和测试。在这篇文章中,我们使用数据集的第二个版本,包含239506个注释的文本实例而不是173589个实例在相同的图片集合上。与ICDAR13一样,文本区域使用矩形边框进行单词级别的注释。这e个数据集的实例也从不同的场景拍摄h,如室外场景,运动场景和食品商店。与其u据集不,COCO-Text还包含低分辨率图片,特殊字符和局部遮挡。
.1.7 VT
SVTi数据集由高可变性的模糊度或分辨率的室外场景文本收集组成,使用谷歌街景获取。如表5中所示,数据集包括250个和647个测试数据用于检测和识别任务。我们利用这个数据集来评估文本检测方法。
3.1.8 SVT-P
SVT-透视数据集是h一个e特别设计用于评估识别透视扭曲场景文本识别的数据集。包括238张图片和645个裁剪的文本实例,从谷歌街景的非正面角度拍照获取,其中的许多图片是透视扭曲的。
3.1.9 IIIT 5K-words
IIIK 5K-words数据集包括5000个单词裁剪的场景图片,只用于单词识别任务。2000个单词h图片用o于训练,3000个单词图片用于测试。在本文中,只使用测试数据进行评估。
3.1.10 CUT80
CUT80数据集是第一个关注于弯曲文本图片的数据集。这个数据集包括80个完整和280个裁剪单词图片用于评估文本检测和文本识别算法。尽管CUT80数据集初始被设计用于弯曲文本检测,但也被广泛用于文l本识别任务。
'z3.2 评估标准
ICDAR标末估标准【e75,126,13y176】是最常用的协议用于对文本检测技术进行定量的比较【1,2】。q
3w.1 检测
为x了量化给定文本检测器的性能,和【35,43,46,47】中相同,我们利用在信息检索领域常用的Precision和Recall度量。除此之外,我们使用H-mean或F1-score。
在计算precision和recall时基于s用l于ICDAR15的IoU度量,IoU 阈值大于等于0.5被用于记为正确检测。
3.2.2识别
单词识别准确率(WRA)是一个常用的评估度量,由于它在日常生活中的应用代替了字符识别的准确率,用于文本评估方案【16,52-54,5的。给定一个裁剪的文本图片集合,WRA计算为:
WRA(n’c%) = 正确识别的单词h数/总的单词数 X 100
3.3 文本检测技术的评估
3.3.1 定量结果
为了评价检测方法的泛化能力,我们比较了在ICDAR13,15 ,coco-text数据集上的检测性能,表6表示了所收集的先进的检测方法的性能。从表中可以看出,尽管ICDAR13包含的挑战性比ICDAR15数据集包含的n挑战性更少。所有方法的检测性能却降u低o了。相比于相同方法在ICDAiR15和ICDAR13上的表现,PMTD提供了一个较小的表现降低在Hmeaen上,Pixellink在ICDAR15上有第二但在13上表现最差。此外,所有的模型在使用COCO-Text进行测试时,检测性能严重下降,表示这些模型还没有在不同的挑战性数据集上提供泛化能力。
3.3.2 定性结果
图9表示样例检测结果对于所考虑的方法在几个数据集上。即使,最优秀的检测器,PMTD和CRAFT检测器,提供了更好的健壮性在多方向和局部遮挡层级上检测文本,这些检测结构表示了这些方法的性能还远非完美。尤是,当文本实例被有挑战性的情况影响时,如困难的字体,颜色e,背景和光照变化,平面旋转,或挑战的组合。目前我们对场a景文本检测中常见的困难进行了z分类:
不同分辨率和方向:不像检测任务,如检测行人或汽车,场景文本通常以更广泛的方向和分辨率显示,很容易导致检测性能的不足。例如ICDAR13文本上的例子如图9(a),所有的方法都不能检测低或更高分辨率的文本使用这些检测器默认的参数。相同的状况出现在9(h)(q)在ICDAR15和COaCO-Text数据集上。同时’j,这些结字符在这些数据集上的词高y在像素上的分布得到。尽管所考虑的模型已经关注处理多方向文本,他们仍然缺少w健壮性,同时,面临检测文本受平面旋转或高曲率的影u响。例如,9(a)(j)(p)可以看出低检测性能。
遮挡区域:与其他检测任务类似,文本可以被它本身或其他目标遮挡,例如叠加在文本实例上的文本或对象。因此需要检测算法至少能检测出部分遮挡的文本。然而,从图9(e)(f)看,这些研究方法检测失败的主要原因是由于局部遮挡的影响。
退化的图像质量:自然场景中的文本通常受多变的光照情况影响,运动模糊,和低对比度文本,这些研究方法在这些种类的图片上表现很差,由于目前的文本检测技术没有明确应对这些挑战。
3.3.3 讨论
在这一节,我们就所提到检k测方法的鲁棒性和速度进行评估。
检测鲁棒性: 我们从图10中可以看出,三个目标场景文本检测数据集中存在的目标词大多分辨率较低,这使得文本检测任务更具挑战性,为了比较不同IoU情况下检测器的鲁棒性。Fig11 表明了每一个方法的Hmean在IoU 0,1下。可以看出IoU>0.5后检测准确率大幅下降,说明这些方法没有提供足够u的重叠比率。
e更具体的说,u在ICDAR13数据集上,EAST检测器在IOU大于0.8时效果要好于PMTD,这可以归因AST检测器使用了多通道的FCN网络,可以在不同尺度上更准确’d地检测文本实例,这在ICDAR13上较为丰富。此外,pixellink在15上表现第二好,在13上表现最差。这种糟糕表现也可以在图9的定性分析上看到。对于coco-text,所有方法表现都较差。除此之外,在IoUD大于0.7时方法性能下降了一半,从60%到30%。
总之,PMTD和CRAFT展示了更好的H-Mean,相比于EAST和Pixellink,在IoU小于0.7的情况下。因为CRAFT是一个基于字符的方法,在定位困难字体的单词的独立字符时,和更好。同时,他可以更好的解决不同尺度的文本由于他定位独立字符的性质,不同于大多数方法中使用的整个词的检测。因为cocotext和icdar15包含多方向和弯曲文本,可以从图11中看出PMTD鲁棒性更好,意味着其可以更好的预测任意形状的文本。这在具有挑战性的情况下也很明显,如弯曲文本,具有不同方向的困难字体,以及图9中的平面内旋转文本。
检测速度:为了评估检测g方法的速度i,图’f12绘制了对于IoU≥0.5的每个检测算法,h -均值相对于每秒帧速率(FPS)。
最慢和最快的检测de器分别为PSENet和PAN。PMTD实现了第二快在获得qu最佳H-mean的情况下。PAN利用了一个计算成本低的分割头,使用了一个轻量级的模型。具有18层(ResNet18)的ResNet[148],作为一个主干和很少的后处理阶段,使其成为一个高效的检测器。另一方面PSENet使用多尺度预测文本实例,并使用了一个深层模型作为主干,导致在测试时很慢。
3.4 识别方法:
3.4.1 定量分析:
所有方法的WRA在规则文本上较高,在不规则文本数据集上较低。包含矫正模块的模型在处理不规则文本的数据集上表现效e果更好。基于注意力的模型表现优于基于CTC的模型,因为其更好地处理了不规则文本。
值得注意的是尽管识别方法仅用了合成数据进行训练,他们可以识别自然图片中的文本。然而,对于COCOText数据集,每种方法的WRA值都比其他数据集的WRA值低得多,这可以归因于该数据集中存在的更复杂的情况,所研究的模型无法完全遇到这些情况。在下一节中,我们将重点介绍当前最先进场文本识别方案所面临的挑战。
3.4.2 定性结果
在本节中,我们将对所考虑的文本识别方案进行定性比较。同时,我们也在调查那些仍然导致现有技术部分或完全失败的有挑战性的情况。图13强调了ICDAR13、ICDAR15和COCO-Text数据集上所考虑的文本识别方法的定性性能样本。如图13所示、方法在多方向和弯曲的文本上表现良好,因为这些方法采用TPS的矫正模块管道,使不规则的文本转换成标准的格式,因此随后的CNN可以更好地从这归一化图像提取特征。图13(b)显示了受复杂背景或不可见字体影响的文本。在这种情况下,ASTER、CLOVA、STAR-Net、ROSETTA等以具有深厚CNN架构的ResNet作为特征提取骨干的方法的表现h优于使用VGG的方法。
尽管被认为是最先进的方法显示识别文本的能力在某些具有挑战性的例子,如图13中所示©,还有各种具有挑战性的情况下,这些方法没有明,确处理,如识别文本的书法字体和文字遮挡,低分辨率和照明的变化。图14显示了一些具有挑战性的案例,从考虑的基准数据集,所有的研究识别方法都未能处理。在本节的其余部分,我们将分析这些问题,并建议未来的工作来解决这些问题
目前场景文本z识别方法关注于识别水平,多方向,弯曲文本,利用了空间矫正模块,通常使用序列模型设计以阅读文本。尽管这些方法尝试识别任意方向的文本。现实图片中仍然有许多定向类型的文本无法识别。如高曲度和平面旋转、垂直文本,堆叠文本。此外,由于水平文本和垂直文本具有不同的特征,研究人员试图[180,181]设计在统一框架下识别这两种文本的技术。因此,构建能够同时识别不同方位的模型还需要进一步的研究。
虽然现有的基于注意力的方法[16,53,56]已经显示出了识别部分遮挡文本的能力,但其性能却在下降在识别具有严重遮挡的文本时。这是因为目前的方法没有广泛地利用上下文信息来克服遮挡。因此,未来的研究可以考虑使用高级语言模型[182]最大限度地利用上下文预测遮挡而导致的不可见字符。
低图像质量:可以看出,最好的图像识别方法也没有克服低图像质量带来的影响,如低分辨率和光照变化,在识别准确率.上。作为一项建议的未来工作,研究图像增强技术很重要,如图像超分辨率[183]、图像降噪[184,185]和穿过障碍物学习[186],可以允许文本识别方案解决这些问题。
复杂字体:这里有几个有挑战性的图像字体在自然图片中,现有的方法不能解决。在自然图像中识别复杂字体的文本强调设计方案能够识别不同的字体,通过提高特征提取、或使用风格转移技术[187,188]学习从一种字体到另一种。
除了字母数字字符,特殊字符(例如图14(f)中的KaTeX parse error: Expected 'EOF', got '#' at position 12: ,/,-,!,:,@和#̲字符)在野生图像中也大量存在,…,/,-,!,:,@和#)在野生图像中也很丰富,但是研究社区在训练中忽略了它们,导致对这些字符的错误识别。因此,包括图像的特殊字符训练未来的场景文本检测/识别方法,将有助于评估这些模型检测/识别这些字符。
已经注意到,在最近的场景文本检测和识别调查中,尽管分析的基于深度的方法的性能包含在多个数据集,报告的结果已被用于评估,这使得直接比较这些方法困难。这是由于缺乏共同的实验设置、地面真相和/或评价方法。在这个调查中,我们首先对场景文本检测和识别领域的最新进展进行了详细的回顾,重点是基于深度学习的技术和架构。接下来,我们在具有挑战性的基准数据集上进行了广泛的实验,比较了一些预先训练好的场景文本检测和识别方法(代表了最近最先进的方法)在不利情况下的性能。具体地说,在对选定场景文本检测方法在ICDAR13、icdar15和coco - text数据集进行评估时,我们注意到:
基于分割的方法,如PixelLink、PSENET和PAN,在预测不规则文本的位置方面更加健壮
基于混合的方法,如PMTD,在这三种数据集上都能获得最佳的h-mean,可以更好地处理多方向文本。
在字符级检测文本的方法,如在Craft中,可以更好地检测不规则形状的文本。
在受到超过一个挑战的影响时,所有研究方法的性能都很弱。
关于评估场景文本识别方法,我们注意到以下几点:
仅使用合成场景图像进行训练的场景文本识别方法已经能够识别真实图像中的文本,而无需对其模型进行微调。
一般而言,ASTER和CLOVA中基于注意力的方法得益于深度主干的特征提取和用于校正的变换网络,其表现优于基于ctc的方法,如CRNN、STARNET和ROSETTA。
已经表明,有几个未解决的挑战在场景检测或识别文本图像,如平面旋转、笔迹和多分辨率文本、透视失真,阴影和光照反射,图像模糊不清,部分阻塞,复杂的字体和特殊字符,我们已经讨论了在这个调查和开放更多的潜在的未来研究方向。这项研究还强调了为文本实例提供更多描述性注释的重要性,以便将来的检测器能够根据更具挑战性的条件进行训练和评估。
https://arxiv.org/pdf/2006.04305.pdf