本文正在参加「金石方案 . 瓜分6万现金大奖」

导读

回顾了场景文本检测和辨认范畴的3篇论文,分别是检测,辨认以及端到端的办法。

基于深度学习的办法能够在天然图画中检测和辨认杂乱的文本实例。

OCR in the Wild:文本检测和识别的SOTA

介绍

光学字符辨认(OCR)包括主动解码图画中的文本实例。此任务的杂乱性因运用而异。一方面,从扫描的报纸上阅览单词是比较简单的,由于文本是直的,共同的,和布景有很好的对比。另一方面,在天然图画中运用创造性字体的曲折文本实例不只读起来更有挑战性(文本辨认):它还需求一个棘手的开始过程来定位图画中的文本(文本检测)。传统的核算机视觉技能能够很好地处理前者,而后者需求先进的(SOTA)深度学习办法结合CNNs和RNNs。

阅览场景文本,即阅览文本实例“in the wild”,需求两个过程:

  • 文本检测:找到图画中的文本实例的方位。
  • 文本辨认:解码检测到的文本实例的每个字符。

OCR in the Wild:文本检测和识别的SOTA

场景文本检测的pipeline

由于字体的杂乱性,上图中的“Metropolitain”和“Rome”这两个单词很有挑战性!

为了更好地了解场景文本检测和辨认,本文会讨论:

  • Textsnake [Long et al., 2018],一种文本检测算法,能够处理十分杂乱的文本形状。
  • MORAN [Luo et al., 2019],一种运用校对网络和注意力机制纠正和阅览杂乱文本框的文本辨认算法。
  • FOTS [Liu et al., 2018],一种同享检测过程和辨认过程卷积的端到端办法,提高了鲁棒性和功率。
  • 一个有趣的试验成果,将FOTS和Textsnake结合。

文本检测

这些SOTA检测算法都运用了U-net结构。它们一般由于选择输出的通道和后处理办法而有所不同。事实上,切割一般不够精确,后处理是重建文本框的必要条件。

U-net用在上下文检测中

下图显现的编码器每一步的切割图是在那一层履行一次反卷积的成果(图画来自[Zhang et al., 2019])。这种可视化强调了编码器是如何故失掉空间信息的代价逐渐提取深度特征的。因而,逐渐地将编码的映射合并到解码的映射(灰色箭头)能够取回编码期间丢失的空间信息。

OCR in the Wild:文本检测和识别的SOTA

给出了U-net的总体结构,并在每个编码过程中给出了深层次特征的可视化描述。每一步的卷积和通道的数量取决于主干架构

Textsnake: A Flexible Representation for Detecting Text of Arbitrary Shapes [Long et al., 2018]

与大多数检测算法不同,Textsnake处理任意形状的文本结构。为此,算法核算一条1像素的粗线,穿过文本实例的中心,如下图中的绿色所示。与这条线的每个点相关的半径r使制作描绘文本区域的圆成为可能。此外,视点表明用于拉平文本时所必要的旋转。

OCR in the Wild:文本检测和识别的SOTA

Textsnake的检测参数

输出通道如下:

  • TR (Text Region): 指示了文本和非文本区域的切割图。
  • TCL (Text Center Line): 穿过文本实例中心的区域。
  • radius, cos , sin : 用来构建圆所需的参数。

关于TCL的练习,只考虑TR中的像素。因而,TCL不学习区别文本和非文本像素,然后简化了其任务。因而,TR图能够用来掩码TCL图然后能够过滤误报。然后运用迭代striding算法为剩下的每个TCL区域获取一串像素。最后,重建文本框。

OCR in the Wild:文本检测和识别的SOTA

Textsnake的输出以及文本框重建pipeline

Textsnake只需求文本框坐标来练习。事实上,练习TCL图不需求任何额定的标记,由于它的GT能够直接从边界框核算出来(更多细节见论文)。

该算法能够在in the wild场景精确检测出杂乱文本框的概括。下图b和c展示了Textsnake的将文本拉平的才能。它在略微曲折的文本实例上履行得十分好。可是,跟着视点的添加,从“STARBUCKS”的首字母和尾字母能够看出,纠正的质量会下降。

OCR in the Wild:文本检测和识别的SOTA

Textsnake的成果,(a) 绿色: ground truth. 黄色: 检测到的文本概括。(b) 文本承认和纠正。(c) 和 (b) 一样,可是用的是咱们自己的完成

文本辨认

文本辨认主要有两种办法,都是运用CNN对图画进行预处理,然后运用RNN对文本进行解码。

  • CRNN + CTC [Shi et al., 2016]:现在最常用的办法(例如Tesseract)。CRNN = 在CNN后边接一个RNN。
  • CNN + Attention RNN:现在文本辨认的主要研究范畴,本节详细介绍的论文便是选用这种办法。

文本辨认中的注意力RNNs

如上所述,CNN首要对输入的文本图画进行预处理。这包括(大多数时分)经过将图画高度降低到1像素和添加通道数量来使图画变平。然后,得到的阵列在宽度轴上被切割成w个向量,w是宽度,构成注意力神经网络的输入。

注意力机制答应RNN在发生每个输出时,即文本中的每个字母,聚集于正确的输入。因而,它指定了应该对每个输入(即图画的每个区域)给予多少关注,而不管它们在序列中的哪个方位。下图是注意力机制的示意图。

OCR in the Wild:文本检测和识别的SOTA

注意力机制

Moran: A multi-object rectified attention network for scene text recognition [Luo et al., 2019]

Moran的结构结合了两个网络。第一个检测网络MORN在第二个检测网络ASRN读取文本之前对文本框进行了修正(与Textsnake一样,但并非一切的检测网络都是这样做的)。

  • MORN首要处理输入图画(即文本框),用CNN对图画进行校对。为此,它的输出图为图画的每个对应区域指定在x和y方向(即2个输出映射)上应该移动的像素数,以拉直文本。
  • ASRN运用注意力RNN来解码文本。天然图画中大量的噪声经常误导网络聚集在图画的过错部分。ASRN经过一种称为分部拾取的正则化办法克服了这个问题。它由随机混合附近输入的注意力权重的分数组成。

OCR in the Wild:文本检测和识别的SOTA

MORAN结构

MORAN的一个显著特点是它只需求弱标签,即输出文本。事实上,网络是用单一的损失函数端到端练习的。经过向后传达解码过错,MORN能够学会纠正图画!

MORN在曲折文本中的表现不如在歪斜文本中的好,下图a。可是,它依然设法删除了可能混杂注意力层的无用特征(赤色圆圈)。为了解码文本,ASRN将其注意力一个一个地吸引到每个字母上(下图b)。此外,由于分部拾取,它不会被暗影等特征混杂。尽管MORN纠正还远远不够完美,但它满足有效地答应ASRN正确解码文本(下图c)。

OCR in the Wild:文本检测和识别的SOTA

Moran的成果 (a) MORN的成果。(b) 运用/不运用分部拾取的解码。(c) MORAN和其他网络的比较。

端到端的办法

Fots: Fast oriented text spotting with a unified network [Liu et al., 2018]

用于文本检测和辨认的神经网络都是为了从输入图画中提取文本特征。因而,它们是高度相关的。因而,对这两个过程运用不同算法的主要缺陷是核算两次相同的信息。FOTS经过在CRNN+CTC解码器(上述)中重用检测算法EAST (Efficient and Accurate Scene Text Detector) [Zhou et al., 2017]的卷积核算解决了这个问题。

在FOTS中,文本框直接从同享特征中提取,而不是从原始图画中提取。在同享特征表明检测过程的倒数第二层生成的特征映射,即核算检测输出的映射。因而,辨认部分能够运用较小的CNN,由于它的输入已经被处理过了。

FOTS十分高效。事实上,它利用EAST来避免无用的核算,EAST以其高速和同享特征而出名。该算法还能够处理歪斜的文本实例,办法是将从同享特征中裁剪出来的相应文本框进行调整。此外,端到端办法提高了检测过程的鲁棒性。

OCR in the Wild:文本检测和识别的SOTA

FOTS和传统办法的比较

试验:Textsnake 和 FOTS 结合

在之前的试验中,我完成了一个基于FOTS的自定义算法,可是检测部分运用的是Textsnake而不是EAST。曲折的文本能够被纠正,可是在同享特征内的纠正而不是对原始图画的纠正。该算法在检测和辨认方面都有很好的表现。可是,对文本的纠正有时是十分糟糕的,甚至对人来说辨认都是一个挑战。但在下图的情况下,解码器的输出作用很好:只有“MEDECINS”中的“M”缺失了!实际上,同享特征的每个元素都有一个很大的感受野,因而,框中的元素包含关于字母缺失部分的信息。例如,关于“MONDE”中字母“E”缺失部分的信息包含在同享特征中。

OCR in the Wild:文本检测和识别的SOTA

结合FOTS和Textsnake得到的成果,文本校对作用较差,但辨认作用更好。请注意,从原始图画校对的文字只是为了可视化。

参考文献

Liu, Xuebo, et al. “Fots: Fast oriented text spotting with a unified network.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2018.

Long, Shangbang, et al. “Textsnake: A flexible representation for detecting text of arbitrary shapes.” Proceedings of the European conference on computer vision (ECCV) . 2018.

Luo, Canjie, Lianwen Jin, and Zenghui Sun. “Moran: A multi-object rectified attention network for scene text recognition.” Pattern Recognition 90 (2019): 109-118.

Shi, Baoguang, Xiang Bai, and Cong Yao. “An end-to-end trainable neural network for image-based sequence recognition and its application to scene text recognition.” IEEE transactions on pattern analysis and machine intelligence 39.11 (2016): 2298-2304.

Zhou, Xinyu, et al. “East: an efficient and accurate scene text detector.” Proceedings of the IEEE conference on Computer Vision and Pattern Recognition. 2017.

Zhang, Zheng, et al. “Multi-oriented text detection with fully convolutional networks.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.

英文原文:www.sicara.ai/blog/ocr-te…