OCR in the Wild:文本检测和识别的SOTA( 二 )
- CRNN + CTC [Shi et al. ,2016]:目前最常用的方法(例如Tesseract) 。 CRNN = 在CNN后面接一个RNN 。
- CNN + Attention RNN:目前文本识别的主要研究领域 , 本节详细介绍的论文就是采用这种方法 。
注意力机制允许RNN在产生每个输出时 , 即文本中的每个字母 , 聚焦于正确的输入 。 因此 , 它指定了应该对每个输入(即图像的每个区域)给予多少关注 , 而不管它们在序列中的哪个位置 。 下图是注意力机制的示意图 。
文章插图注意力机制
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通过一种称为分部拾取的正则化方法克服了这个问题 。 它由随机混合邻近输入的注意力权重的分数组成 。
文章插图MORAN结构
MORAN的一个显著特点是它只需要弱标签 , 即输出文本 。 事实上 , 网络是用单一的损失函数端到端训练的 。 通过向后传播解码错误 , MORN可以学会矫正图像!
【OCR in the Wild:文本检测和识别的SOTA】MORN在弯曲文本中的表现不如在倾斜文本中的好 , 下图a 。 然而 , 它仍然设法删除了可能混淆注意力层的无用特征(红色圆圈) 。 为了解码文本 , ASRN将其注意力一个一个地吸引到每个字母上(下图b) 。 此外 , 由于分部拾取 , 它不会被阴影等特征混淆 。 虽然MORN矫正还远远不够完美 , 但它足够有效地允许ASRN正确解码文本(下图c) 。
文章插图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以其高速和共享特征而闻名 。 该算法还可以处理倾斜的文本实例 , 方法是将从共享特征中裁剪出来的相应文本框进行调整 。 此外 , 端到端方法提高了检测步骤的鲁棒性 。
文章插图FOTS和传统方法的比较
实验:Textsnake 和 FOTS 结合在之前的实验中 , 我实现了一个基于FOTS的自定义算法 , 但是检测部分使用的是Textsnake而不是EAST 。 弯曲的文本可以被矫正 , 但是在共享特征内的矫正而不是对原始图像的矫正 。 该算法在检测和识别方面都有很好的表现 。 然而 , 对文本的纠正有时是非常糟糕的 , 甚至对人来说识别都是一个挑战 。 但在下图的情况下 , 解码器的输出效果很好:只有“MEDECINS”中的“M”缺失了!实际上 , 共享特征的每个元素都有一个很大的感受野 , 因此 , 框中的元素包含关于字母缺失部分的信息 。 例如 , 关于“MONDE”中字母“E”缺失部分的信息包含在共享特征中 。
文章插图
- JBL PARTYBOX ONTHEGO体验 转为派对打造
- play|“玩手机”用英文怎么说?play the phone?!
- 公司|小米道歉
- 监控平台选Prometheus还是Zabbix?
- 英威腾DA180-N带你开启EtherCAT总线新时代
- OLED屏已在准备!华为P50曝光
- 内存泄露原因找到了,罪魁祸首是Java TheadLocal
- Go 监控的标配:实战 Prometheus
- 教你使用Prometheus监控MySQL与MariaDB
- 本周末,来成都国际音响展聆听真力The Ones
