摘要
我们介绍了法国街道名称标志(FSNS)数据集,该数据集由从法国Google街景图片中裁剪的超过100万张街道名称标志图像组成,每个图像都包含同一街道名称标志的多个视图,每个图像都经过归一化,标题大小写折叠了地图上显示的地面真实文本。

笔者相信,FSNS数据集足够大且复杂,可以训练一个非常复杂的深度网络来解决“端到端”的街道名称提取问题,或者探索单个复杂工程网络与设计和训练的多个子网络之间的设计权衡。我们为张量流及其在FSNS数据集上的结果提供了这样一个“端到端”网络。
介绍
户外图像文本的检测和识别越来越引起计算机视觉、机器学习和光学字符识别领域的研究兴趣。透视失真、不受控制的源文本质量以及文本布局缺乏重要结构的结合,为准确识别世界上所有语言的文本这一尚未完全解决的问题增加了额外的挑战。
为了证明这种兴趣,已经出现了几个与该问题相关的数据集:包括ICDAR 2003 Robust Reading,SVHN,以及COCO-Text,这些数据集和其他数据集的详细信息如表1所示。

虽然这些数据集都对该领域做出了有用的贡献,但与典型的深度神经网络的规模相比,大多数数据集都非常小。随着数据集大小的增加,保持基本事实的准确性变得越来越困难,因为注释任务必须委托给越来越多的较少参与项目的工作人员。
例如,在COCO-text数据集中,笔者对基本事实的准确性进行了审计,发现注释者发现了清晰的文本区域,召回率为84%,转录文本内容的准确率为87.5%。即使在编辑距离下,文本内容的准确性仍然只有92.5%,缺少标点符号是最大的错误类别。

合成数据已被证明是这个问题的一个很好的解决方案,并且只要合成数据生成器包括目标问题中将存在的格式/失真,就可以很好地工作。然而,一些真实世界的数据,就其本质而言,可能很难预测,因此在许多情况下,真实数据仍然是首选。
在生成一个足够准确的注释,足够大的真实图像数据集以满足现代数据饥渴的深度网络系统的需求方面仍然存在困难,这些系统可以提供尽可能多的数据集,而不必返回我们想要的泛化。

为了使OCR更像图像字幕,我们提出了法国街道名称标志(FSNS)数据集,笔者认为这是第一个提供同一物理对象的多个视图的数据集,因此学习系统有机会补偿任何单个视图中的退化。
FSNS 数据集的基础知识
顾名思义,FSNS数据集是一组来自法国街道的带有街道名称的标志。一些示例图像如图所示。每个图像带有四个水平布局的像素的图块,每个图块包含一个预先检测到的街道名称标志,或者在少于四个独立视图的情况下随机噪声相同的物理标志。
因此,文本检测问题在很大程度上被消除,尽管每个磁贴图像中的标志大小和方向仍然可变。此外,每个标志都带有多个文本行,最多3行重要文本,并可能还有其他不相关文本的附加行。图像中的每个图块都是同一物理标志的不同视图,从不同的位置和不同的时间拍摄。来自同一街道其他地方的同一街道名称的不同物理标志作为单独的图像包含在内。有超过1万个不同的物理迹象。

不同的视图质量不同,可能是从锐角拍摄的,也可能因运动、与相机的距离或无意的隐私过滤而模糊。有时,某些图块可能是完全不同的标志的视图,当两个标志连接到同一柱子时,可能会发生这种情况。这些问题的一些示例如图所示。
多视图可以减少户外图像的一些常见问题,例如前景物体的遮挡,目标物体位于画面边缘导致的图像截断以及不同的照明。其他问题无法通过多个视图解决,例如弯曲、腐蚀或褪色的标志。
然后,系统的任务是通过组合来自多个视图的信息来获得最佳的规范文本结果,方法是独立处理每个图块并组合结果,或者通过组合识别系统(很可能是深度网络)中的信息。

FSNS 数据集是如何创建的
以下过程用于创建 FSNS 数据集:
- 路名检测器应用于来自法国的所有谷歌街景图像。检测器在每个街道名称标志周围返回一个图像矩形及其地理位置(纬度和经度)。
- 将同一地理位置的多个图像收集在一起(空间聚类)。
- 来自标志的文本是使用 reCAPTCHA [3]、OCR 和人工操作员的组合转录的。
- 将转录文本呈现给人工操作员以验证转录的准确性。不正确的样本被重新路由以进行人工转录(返回步骤3),或者如果已经是人类转录的结果,则丢弃。
- 图像按地理位置(按纬度/经度)进行分类,以便火车、验证、测试和私人测试集来自不相交的地理位置,中间有 100 米宽的“墙”条未使用,以确保无法从不同的集合查看相同的物理标志。
- 由于道路是可能在不相交的地理部分之间通过的长实体,因此在不同子集的多个位置可能存在同一街道名称的多个标志。因此,在生成每个子集时,将丢弃具有与任何先前生成的子集中的真值字符串匹配的真值字符串的任何图像。因此,每个子集都有一组不相交的真值字符串。
- 真值字符串包含所选编码集之外的字符或编码标签长度超过最大值 37 的所有图像都将被丢弃。因此,要处理的字符集受到严格控制。
请注意,转录是从原始转录中系统地折叠的标题大小写,以使其表示街道名称在地图上的显示方式。此过程包括删除不相关的文本,包括选区或建筑物编号等数据。
归一化真值文本
FSNS 数据集变得更加有趣,因为真相文本是街道名称的规范化表示,因为它应该写在地图上,而不是标志上文本的简单直接转录。主要的规范化是文本的标题大小写转换,通常以全部大写形式写在符号上。标题大小写指定如下:
单词:au,aux,de,des,du,et,la,le,les,sous,sur总是以小写形式出现。前缀:d', l' 始终以小写形式出现。所有其他单词,包括 d' 和 l' 之后的后缀,始终以首字母大写,其余字母以小写形式出现。
另一个主要的规范化是,标志上的一些文本(不是街道名称的一部分)被丢弃。虽然这似乎是一个相当模糊的指令,但对于一个人来说,即使不懂法语,在阅读几个标志后也变得容易,因为实际的街道名称符合一个相当明显的模式,而无关的文字通常更小。

图中显示了符号和真值文本之间文本的一些规范化示例。因此,转录标志的任务不是一个基本的 OCR 问题,而可能更像是图像字幕,因为它需要解释标志的含义,而不仅仅是其字面内容。特此为使用 FSNS 数据集的研究人员提供了多种设计选项,包括将文本后处理添加到 OCR 引擎的输出和训练单个网络以“端到端”学习整个问题。
挑战
由于所需的任务种类繁多,FSNS 数据集在机器学习中提供了丰富而有趣的挑战。以下是模型需要学习的不同过程的摘要,以发现正确的解决方案:
- 定位每个图像中标志内的文本行。
- 识别每行中的文本内容。
- 丢弃不相关的文本。
- 标题大小写规范化。
- 合并来自多个符号的数据,忽略来自模糊或不一致的符号的数据。
以上都不是挑战的明确目标。机器学习的当前趋势是构建和训练单个大型/深度网络来解决所有问题,而无需在一端或另一端使用额外的算法片段,或者将训练好的组件粘合在一起。

我们相信FSNS数据集足够大,可以训练单个深度网络来学习上述所有任务,我们在Sect中提供了一个示例,因此,我们建议基于FSNS数据集的竞赛应衡量:
- 单词召回:OCR 输出中存在的真实数中以空格分隔的单词的比例。
- 单词精度:OCR 输出中真实中存在的以空格分隔的单词的比例。
- 序列错误:将多个空格折叠为单个空格后,网络未完全生成的真值文本字符串的分数。
单词记忆和精确性几乎是普遍使用的,不需要介绍。我们在这里添加序列错误,因为字符串足够短,我们可以预期其中相当多的字符串是完全正确的。仅使用这些指标允许端到端系统直接与由针对特定子问题设计的较小组件构建的系统竞争。
结论
FSNS数据集提供了一个有趣的机器学习挑战。我们已经证明,使用单个端到端网络可以获得整个任务的合理结果,并且可以通过应用通用正则化方法和/或改变网络结构来轻松改进STREET网络。或者,还有许多其他可能的方法涉及将算法或学习的解决方案应用于问题的某些部分。以下是一些:
- 通过图像处理甚至运动方法的结构来检测标志的位置/方向,校正透视并应用简单的OCR引擎。
- 文本行查找,然后在单个文本行上进行 OCR。
- 通过模糊检测、障碍物检测、对比度,甚至确定图像中有多个物理标志,检测最糟糕的迹象并丢弃它们。
将这些方法与端到端方法进行比较将非常有趣,并为未来的研究方向提供有用的信息。
●—<参考文献>—●
【1】 Breuel,T.M.,Ul-Hasan,A.,Al-Azawi,MA,Shafait,F.:使用LSTM网络打印英语和Fraktur的高性能OCR。
【2】 Graves,A.,Fernández,S.,Gomez,F.,Schmidhuber,J.:连接主义时间分类:使用递归神经网络标记未分割的序列数据。
【3】 Graves,A.,Jaitly,N.:使用递归神经网络实现端到端语音识别。
【4】 Hochreiter,S.,Schmidhuber,J.:长短期记忆。神经计算。
【5】 Netzer,Y.,Wang,T.,Coates,A.,Bissacco,A.,Wu,B.,Ng,A.Y.:使用无监督特征学习读取自然图像中的数字。在:NIPS深度学习和无监督特征学习研讨会,西班牙格拉纳达,2011 年卷,第 4 页。