基于分割的识别算法是自然场景文本识别算法的一个重要分支(Wang 等,2012;Bissacco 等,2013;Jaderberg 等,2014),通常包括3 个步骤:图像预处理、单字符分割和单字符识别。基于分割的自然场景文本识别算法通常需要定位出输入文本图像中包含的每个字符的所在位置,通过单字符识别器识别出每一个字符,然后将所有的字符组合成字符串序列,得到最终的识别结果。
一个早期的自然场景文本识别系统(Wang 等,2011),以单字符的得分和位置作为系统输入,利用图形模型从一个特定的词典中找到与识别结果相对应的最佳匹配文本,将其作为最终的识别结果。该方法不仅在识别性能上超过了当时最领先的商用OCR 系统ABBYY,同时也奠定了自然场景文本识别领域的基准性能。受启发于深度卷积神经网络在视觉理解任务(LeCun 等,1998)的成功应用,堆叠多层神经网络的无监督特征学习方式被广泛应用于自然场景文本识别任务( Wang 等, 2012; Liu 等,2016c;Mishra 等,2016),用以训练一个高性能的字符识别模块。
特别地,字符间距算法或集束搜索(beam search)算法(Liu 等,2002)被用于处理后续字符串转录,从一个特定的字典中匹配到最佳的识别结果。为了进一步改善自然场景文本识别算法的识别性能,尺度不变特征变换(scale-invariant feature transform,SIFT)描述子(Phan 等,2013)、笔画(Yao等,2014b)及中级视觉特征(Gordo,2015)等算法被用于提取更鲁棒的文本图像视觉特征表达。
具体而言,与Wang 等人(2011)不同,Phan 等(2013)将基于分割的识别算法中的单字符识别任务视为寻找字符集与特定字典的最佳匹配任务,通过在任意方向上提取文本图像的尺度不变特征变换描述子,获取图像特征表达,用于后续的自然场景文本识别。Yao 等人(2014b)为单字符识别器设计了一个新颖的特征表达,即笔画(Strokelets),可以通过字符边框位置由深度神经网络自动地学习得到,并从多个图像尺度上捕获字符的结构特征。经过大量的实验验证及可视化分析得出,笔画特征在鲁棒性、泛化性和可解释性上都显著优于传统的特征描述子。
上述提到的算法均依赖于字典匹配获取最佳的识别结果。然而,算法的搜索时间与字典的规模相关。随着待匹配字典规模的增加,算法的搜索空间也大大增加,因此,依赖于字典匹配获取最佳识别结果的自然场景文本识别算法很难直接应用于实际的应用中。为了解决上述难点,无字典约束的自然场景文本识别算法开始被广泛探索。Mishra 等人(2012)利用大规模的字典作为高阶统计语言模型,克服了需要特定字典来匹配识别结果的缺点,实现了无字典约束的自然场景文本识别。其他研究人员则利用更大规模的数据(Bissacco 等,2013)和更复杂的网络结构(Jaderberg 等,2014;Guo 等,2016),例如Maxout 网络(Goodfellow 等,2013)等,改善无字典约束的自然场景文本识别算法的识别性能。
尽管基于分割的自然场景文本识别算法从识别性能和泛化性能上都明显优于传统文本识别算法,但基于分割的自然场景文本识别算法要求精准的字符分割结果。特别地,字符分割被视为计算机视觉领域最具挑战性的研究课题之一。因此,基于分割的自然场景文本识别算法的识别性能高度依赖并受限于单字符分割的性能。
自然场景文本识别算法的另一个重要分支是无需分割的识别算法。无需分割的自然场景文本识别算法旨在将整个文本行视为一个整体,直接将输入的文本图像映射为目标字符串序列,从而避免了单字符分割的缺点和性能限制,此类方法也是当前的主流方法。无需分割的自然场景文本识别算法如图所示,通常包括4 个阶段:图像预处理阶段、特征提取阶段、序列建模阶段和预测转录阶段。
图像预处理阶段旨在提升输入图像的质量,从而改善后续文本图像特征表征,降低识别难度。常用的图像预处理算法包括:背景擦除、超分辨率和不规则纠正等。
1)背景擦除。自然场景文本大多具有十分复杂的背景,且背景中的部分纹理特征与文本特征从视觉上看是十分相似的,这大大增加了自然场景文本识别的难度。除了建模更加复杂精密的特征提取阶段(Liu 等,2018b) 和合成背景复杂的文本数据(Fang 等,2019;Wu 等,2019)外,一个简单且直接的方法是将文本从复杂的背景中剥离。尽管传统的图像二值化方法(Casey 和Lecolinet,1996)针对文档图像具有较好的处理性能,但这类方法很难处理自然场景文本复杂多变的字体风格和多种环境噪声干扰。Luo 等人(2021)利用生成对抗网络(Goodfellow等,2014)移除背景,保留文本特征。该 方法大大降低了后续识别网络的难度,并显著改善了识别性能。
2)超分辨率。自然场景文本通常受到多种环境噪声的干扰而呈现低分辨率的特点。较低的分辨率会加大后续识别网络出现误识别及字符缺漏的风险。图像超分辨率算法能够根据给定低分辨率的图像有效输出对应的较高分辨率的图像,降低后续识别网络的识别难度。传统的超分辨率算法,如双线性插值、双三次插值等,旨在重构整幅自然场景文本图像的纹理特征,并不完全适用于低分辨率的自然场景文本(Wang 等,2020c)。相比于简单地将自然场景图像超分辨任务视为回归任务( Dong 等,2016),研究人员(Wang 等,2020c;Mou等,2020)采取多任务的网络结构设计,将超分辨率与自然场景文本识别任务有机结合,显著改善了自然场景低分辨率文本的识别性能。
3)不规则纠正。不规则纠正的目的在于规范化输入的自然场景文本图像,将不规则的文本排布恢复为常规的水平平直文本,从而降低后续识别网络的识别难度。不规则自然场景文本是指含有透视变换或不规则排布的自然场景文本。空间变换网络(Jaderberg 等,2015b)作为早期的纠正模块,常被用于纠正整幅自然场景文本图像(Shi 等,2016;Liu 等,2016b)或单字符区域的文本图像(Liu 等,2018b)。Shi 等人(2019) 应用薄板样条插值( thin plate spline,TPS)算法(Bookstein,1989)处理更加复杂的文本形变。越来越多精细设计的纠正网络被提出,例如, Luo 等人(2019)通过预测输入自然场景文本图像不同区域的偏置,设计了一个多目标的像素级自然场景文本图像纠正网络。Zhan 等人(2019)为了改善自然场景文本图像纠正性能,提出了一个新颖的线性拟合变换和一个迭代的基于薄板样条插值的纠正网络。Yang 等人(2019)基于图像属性(中心线、尺度和旋转方向等)提出了一个对称性限制的自然场景文本图像纠正网络。
为了处理多变的文本噪声,越来越复杂的图像预处理模块设计已经成为一种新的行业趋势。然而,复杂的模块设计除了带来识别性能的提升,也意味着时间和内存的大量消耗。研究人员应该根据实际的应用场景理性权衡评估算法的性能和速度需求。随着不规则文本检测技术的迅猛发展,自然场景文本识别算法中的不规则纠正模块是否是解决文本排布规则的唯一方案值得思考。
图像预处理包括且不限于上述内容,不同处理算法间可以叠加使用。图像预处理能够通过改善输入自然场景文本图像的质量,显著地提高后续识别网络的识别性能。虽然近年来自然场景文本识别算法获得了迅猛发展,但是上述基础的图像预处理方案却很少在领域中应用。因此,设计更加精巧的图像预处理算法值得研究人员及相关从业人员的关注。
特征提取阶段旨在将输入的自然场景文本图像映射为鲁棒的高级视觉特征表达,强调待识别字符特征,抑制无关背景及属性特征,如字体、颜色和尺度等。
早期,Su 和Lu(2014) 应用方向梯度直方图(HOG)特征描述子构建自然场景文本图像的序列文本特征。得益于视觉理解等任务的成功应用,度卷积神经网络(Yin 等,2017;Cheng 等,2018;Liu等,2018b;Zhan 和Lu,2019;Luo 等,2019;Wan 等,2020)及其变体广泛地应用于特征提取阶段,例如VGGNet(Visual Geometry Group Network)(Simonyan 和Zisserman, 2015; Shi 等, 2017a; Jaderberg 等,2015a;Yu 等,2020;Yang 等,2017)。
为了获得更强大的视觉特征表达,更多精心设计的、复杂的神经网络相继应用于自然场景文本识别领域,如残差神经网络(He 等,2016a;Liu 等,2016b;Fang 等,2018;Wang 等,2020b;Shi 等,2019;Chen 等,2020;Xie 等,2019c;Li 等,2019;Zhan 等,2019;Yang 等,2019;Baek 等,2019a;Qi 等,2019;Zhu 等,2019;Zhan 和Lu,2019) 和DenseNet ( Huang 等, 2017; Gao 等,2018;Gao 等,2019)等。研究人员尝试从多个不同的角度改善特征提取阶段的特征表征。
例如,Lee和Osindero(2016)应用递归卷积神经网络建立参数高效的特征表征。相比于传统的卷积神经网络而言,递归卷积神经网络能够在相同的参数规模下,建模更加紧凑的特征空间。受启发于循环卷积神经网络在图像分类中的成功应用,Wang 和Hu(2017)设计了一个门控循环神经网络,通过控制识别模型内部视觉特征的信息流动,改善自然场景文本的序列特征表征。不同于上述算法,Liu 等人(2018e)专注于实时的自然场景文本识别,并提出了新颖的二进制卷积神经网络层。经过大量的实验验证,二进制的特征表征显著加快了推理速度,降低了内存消耗。一些研究(Gao 等,2018;Zhang 等,2019b;Liao 等,2021;Huang 等,2020;Fang 等,2018)认为,直接使用深度卷积神经网络在原始自然场景文本输入图像上进行特征提取会引入大量的额外噪声,从而增加后续识别网络的识别难度。
因此,将深度卷积神经网络与注意力机制(Bahdanau 等,2015)相结合,强化有效的前景文本区域,弱化背景噪声。特别地,Liao支在与检测分支结合后,可进一步达到端到端自然场景文本检测与识别系统的领先水平。近期,Zhang等人(2020b)利用网络结构搜索确定特征提取阶段的网络结构,改善自然场景文本识别算法对于丰富多样的输入文本图像的泛化性。
更深的网络结构以及更先进的特征提取算法通常会带来更好的图像特征表征,改善具有复杂背景的自然场景文本识别算法的识别性能。然而,识别性能的提升往往以大量的计算及内存消耗为代价。在未来的领域研究中,背景擦除的图像预处理算法与相对简单的特征提取器的结合也许是改善复杂背景的自然场景文本识别算法识别性能的有效方案。
序列建模阶段,作为视觉特征表征阶段与转录解码阶段的衔接桥梁,旨在建模字符与字符之间的语义相关性,捕获序列文本间的上下文信息。多层双向长短期记忆网络(Graves 等,2009)能够捕获长期的上下文依赖关系,常作为序列建模模块(Su 和Lu,2014,2017;Shi 等,2017b,2019;Liu 等,2016b;Wang 和Hu,2017;Wang 等,2018a;Cheng 等,2018;Gao 等,2018;Luo 等,2019;Chen 等,2020; Li 等,2019;Zhan 等,2019;Yang 等,2019;Baek 等,2019a)广泛地应用于自然场景序列文本识别算法中。
Litman等人(2020)通过在不同网络深度增加监督信息,成功地堆叠了多层双向长短期记忆网络,改善了上下文信息即语义信息的建模过程。然而,一些研究人员认为(Yin 等,2017;Fang 等,2018;Xie 等,2019b;Gao 等,2019;Qi 等,2019)双向长短期记忆网络或许不应该成为自然场景文本识别算法的必需组成部分。尽管双向长短期记忆网络能够有效地建模上下文信息,但其递归的网络结构耗时严重,还可能引起训练过程中的梯度消失及梯度爆炸问题。因此,部分研究人员选择滑窗(Yin 等,2017)或深层一维卷积神经网络(Fang 等,2018;Xie 等,2019b;Gao等,2019)代替双向长短期记忆网络建模语义信息。
尽管在早期的领域研究中,深度卷积神经网络广泛应用于提取视觉特征表征(Wang 等,2012;Mishra等,2016;Liu 等,2016c),但深度卷积神经网络也可以通过精准地控制感受野范围建模语义特征。近年来,一些研究人员(Yu 等,2020;Qiao 等,2020b)更多地专注于建模全局语义信息。Yu 等人(2020)通过多路并行传输,设计了一个全局语义推理模块捕获全局语义信息。Qiao 等人(2020b)借助自然语言处理领域强大的预训练模型作为监督信息,指导语义特征的学习。
语义特征对于基于图像的自然场景文本识别任务而言是十分重要的。尽管基于循环神经网络(Hochreiter 和Schmidhuber,1997)及其变体的网络结构,例如长短期记忆网络和双向长短期记忆网络,能够有效地建模语义信息,捕获长期的上下文依赖关系,但它仍然存在一些局限性。相反,深度卷积神经网络或Transformer(Vaswani 等,2017) 结构通过精准的感受野设计,不仅能够建模文本的语义信息,而且能够高效地并行处理。通过深度卷积神经网络或Transformer 结构建模自然场景文本的语义信息也许将成为领域内的新趋势。
预测转录阶段旨在将自然场景文本图像特征向量解码为目标字符串序列。预测转录阶段根据选用解码器的不同,大致可以分为基于时序连接序列(connectionist temporal classification,CTC)解码的自然场景文本识别算法和基于注意力机制解码的自然场景文本识别算法两大类。