写点什么

【文本检测与识别白皮书】第三章 - 第三节:算法模型 2

  • 2022-10-24
    上海
  • 本文字数:7050 字

    阅读完需:约 23 分钟

【文本检测与识别白皮书】第三章 - 第三节:算法模型 2

CTPN

CTPN,全称是“Detecting Text in Natural Image with Connectionist Text Proposal Network”(基于连接预选框网络的文本检测)。CTPN 直接在卷积特征映射中检测一系列精细比例的文本建议中的文本行。CTPN 开发了一个垂直锚定机制,可以联合预测每个固定宽度提案的位置和文本/非文本得分,大大提高了定位精度。序列建议由递归神经网络自然连接,该网络无缝地合并到卷积网络中,形成端到端可训练模型。这使得 CTPN 能够探索图像的丰富上下文信息,使其能够强大地检测极其模糊的文本。CTPN 可以在多尺度和多语言文本上可靠地工作,而不需要进一步的后处理,不同于以前需要多步骤后过滤的自下而上的方法。


CTPN 算法原理:


CTPN 包括三个关键的工作,使其对文本定位的可靠和准确:detecting text in fine-scale proposals, recurrent connectionist text proposals, and side-refinement。Detecting text in fine-scale proposals:与 RPN 类似,CTPN 本质上是一个完全卷积的网络,允许任意大小的输入图像。它通过在卷积特征图中密集滑动一个小窗口来检测文本线,并输出一系列精细尺度(例如,固定的 16 像素宽度)文本建议,如图 1 (b).所示。


CTPN 以非常深的 16 层 vggNet(VGG16)为例来描述方法,它很容易适用于其他深度模型。CTPN 的体系结构如图 1.(a).所示,使用一个小的空间窗口,3×3,来滑动最后一个卷积层的特征图(例如,VGG16 的 conv5)。conv5 特征图的大小由输入图像的大小决定,总步幅和接受域分别固定为 16 像素和 228 像素。总步幅和接受域都是由网络体系结构固定的。在卷积层中使用滑动窗口允许它共享卷积计算,这是减少昂贵的基于滑动窗口的方法的计算的关键。CTPN 模型的网络结构如下图所示:


检测处理过程总结如下。给定一个输入图像,有 W×H×C conv5 特征图(通过使用 VGG16 模型),其中 C 是特征图或通道的数量,W×H 是空间排列。当探测器在 conv5 中密集地滑动一个 3×3 的窗口时,每个滑动窗口都采用 3×3×C 的卷积特征来产生预测。对于每个预测,水平位置(x 坐标)和锚定位置都是固定的,这可以通过将 conv5 中的空间窗口位置映射到输入图像上来预先计算。检测器输出每个窗口位置上的 k 个锚点的文本/非文本分数和预测的 y 坐标(v)。检测到的文本建议是由文本/非文本得分为>0.7(具有非最大抑制)的锚点生成的。通过设计的垂直锚定和精细尺度检测策略,检测器能够通过使用单尺度图像处理大尺度和长宽比的文本线。这进一步减少了它的计算量,同时也预测了文本行的准确定位。与 RPN 或 Faster R-CNN 系统相比,CTPN 的精细尺度检测提供了更详细的监督信息,自然会导致更准确的检测。


Recurrent Connectionist Text Proposals:

为了提高定位精度,CTPN 将一条文本线分割成一系列精细尺度的文本建议,并分别进行预测。显然,独立考虑每一个孤立的建议并不是不可靠的。这可能会导致对与文本模式具有相似的结构的非文本对象进行大量的错误检测,如窗口、砖块、叶子等。。也可以丢弃一些包含弱文本信息的歧义模式。图 3(top)给出了几个例子。文本具有很强的顺序特征,其中顺序上下文信息对做出可靠的决策至关重要。这已经被最近的工作证实,其中一个循环神经网络(RNN)被应用于编码这个上下文信息,用于文本识别。研究结果表明,序列上下文信息极大地简化了裁剪词图像的识别任务。RNN 为经常使用它的隐藏层来编码这些信息提供了一个自然的选择。为此,CTPN 建议在 conv5 上设计一个 RNN 层。


Side-refinement:CTPN 可以准确、可靠地检测到精细尺度的文本建议。通过连接文本/非文本得分为> 0.7 的连续文本建议,文本行构造很简单。文本行的构造如下。首先,当(i) Bj 是距离 Bi 最近的水平距离,(ii)该距离小于 50 像素,(iii)其垂直重叠时,CTPN 将 Bi(Bj)定义为> 0.7。其次,将两个建议分为一对,如果 Bj−> Bi 和 Bi−> Bj。然后,通过顺序连接具有相同提议的成对来构造一条文本线。精细尺度检测和 RNN 连接能够预测垂直方向上的准确定位。在水平方向上,图像被划分为一个等于 16 像素宽度的建议序列。当水平两侧的文本提案没有被地面真实文本线区域完全覆盖,或者一些边提案被丢弃(例如,文本得分较低)时,这可能会导致不准确的本地化,如图 4 所示


这种不准确性在一般的对象检测中可能不是关键的,但在文本检测中也不应被忽视,特别是对于那些小规模的文本行或单词。为了解决这个问题,CTPN 提出了一种侧细化方法,该方法可以准确估计每个锚/方案在左右水平侧的位置(称为侧锚或侧建议)的偏移量。与 y 坐标预测相似,计算相对偏移量为:


其中,xside 是距离当前锚点最近的水平侧(例如,左侧或右侧)的预测 x 坐标。是 x 轴上的真实(GT)边坐标,它是根据 GT 边界框和锚点位置预先计算出来的。是 x 轴上锚的中心。瓦是锚的宽度,它是固定的,w a= 16。当 CTPN 将检测到的一系列检测到的精细文本建议连接到一个文本行时,侧建议被定义为开始和结束建议。CTPN 只使用边建议的偏移量来细化最终的文本行边界框。图 4 给出了几个通过侧细化改进的检测例子。侧边细化进一步提高了定位精度,导致 SWT 和多语言数据集的性能提高了约 2%。请注意,CTPN 的模型同时预测了侧边细化的偏移量,如图 1 所示。它不是从一个额外的后处理步骤中计算出来的。


实验结果:

CPTN 选用 ICDAR2011、ICDAR 2013、ICDAR 2015、SWT 和多语言数据集作为实验的数据集,得到了如下的实验结果。实验首先讨论了针对 RPN 和 Faster R-CNN 系统的精细检测策略。如表 1(左)所示,单个 RPN 很难执行精确的文本定位,因为它会产生大量错误检测(精度低)。通过使用 Fast R-CNN 检测模型重新规划 RPN 方案,Faster R-CNN 系统大大提高了定位精度,F-measure 值为 0.75。一个观察结果是,Faster R-CNN 也会增加对原始 RPN 的回忆。这可能得益于 Fast R-CNN 的联合边界框回归机制,该机制提高了预测边界框的准确性。RPN 提案可能粗略地本地化了文本行或单词的主要部分,但根据 ICDAR 2013 标准,这些提案不够准确。

显然,拟议的精细文本提议网络(FTPN)在精确度和召回率方面显著提高了更快的 R-CNN,这表明 FTPN 通过预测一系列精细文本提议而不是整个文本行,更加准确和可靠。实验讨论了循环连接对 CTPN 的影响。如图 3 所示,上下文信息非常有助于减少错误检测,例如类文本异常值。这对于恢复高度模糊的文本(例如,非常小的文本)非常重要,这是 CTPN 的主要优势之一,如图 6 所示。这些吸引人的特性带来了显著的性能提升。如表 1(左)所示,通过循环连接,CTPN 将 FTPN 从 F-measure 值 0.80 大幅提高到 0.88。运行时间。通过使用单个 GPU,CTPN(用于整个检测处理)的实现时间约为每幅图像 0:14s,短边为 600。没有 RNN 连接的 CTPN 大约需要 0.13s/image GPU 时间。因此,所提出的网络内递归机制略微增加了模型计算量,并获得了可观的性能增益。



图 5 显示了 CTPN 在几个挑战性图像上的检测结果。可以发现,CTPN 在这些具有挑战性的情况下非常有效,其中一些情况对于以前的许多方法来说都很困难。它能够高效地处理多尺度和多语言(如中文和韩文)。


实验对五个基准进行了全面评估。在不同的数据集中,图像分辨率有很大的不同。实验将 SWT 和 ICDAR 2015 的图像短边设置为 2000,其他三个设置为 600。实验将 CTPN 和最近公布的几种方法进行了比较。如表 1 和表 2 所示, CTPN 在所有五个数据集上都达到了最佳性能。在 SWT 上,CTPN 在召回率和 F-measure 上都有显著的改进,在精确度上略有提高。

CTPN 的检测器在多语言上对 TextFlow 表现良好,这表明 CTPN 的方法可以很好地推广到各种语言。在 2013 年 ICDAR 上,通过将 F-measure 从 0.80 提高到 0.88,它的表现明显优于最近的 TextFlow 和 FastText。精度和召回率都有相当大的提高,分别提高了 5%和 7%以上。此外,实验还将 CTPN 与首次提交后发布的几种方法进行了进一步比较。它在 F-measure 和召回方面不断取得实质性的改进。这可能是因为 CTPN 具有很强的检测极具挑战性的文本的能力,例如,非常小的文本,其中一些文本甚至对人类来说是不受欢迎的。如图 6 所示,CTPN 检测器可以正确检测到那些具有挑战性的,但其中一些甚至被 GT 标记遗漏,这可能会降低 CTPN 的评估精度。


实验进一步研究了各种方法的运行时间,如表 2 所示。FASText 达到 0:15s/图像 CPU 时间。通过获得 0:14s/图像,CTPN 的方法略快于它,但需要 GPU 时间。虽然直接比较它们并不公平,但随着近年来深度学习方法在目标检测方面的巨大成功,GPU 计算已成为主流。无论运行时间如何,CTPN 方法都大大优于 FastText,F-measure 提高了 11%。CTPN 可以通过使用较小的图像比例来减少时间。与 Gupta 等人使用 GPU 的 0:07s/图像的方法进行了比较。CTPN 通过使用 450 的比例尺,它减少到 0:09s/图像,同时在 ICDAR 2013 上获得 0.92/0.77/0.84 的 P/R/F。


结论:

连接主义文本提议网络(CTPN)——一种高效的文本检测器,可以进行端到端的培训。CTPN 直接在卷积映射中检测精细比例文本建议序列中的文本行。CTPN 开发了垂直锚机制,可以联合预测每个提案的精确位置和文本/非文本分数,这是实现文本精确定位的关键。CTPN 提出了一个网络内 RNN 层,它优雅地连接顺序文本提议,允许它探索有意义的上下文信息。这些关键技术的发展导致了检测高度挑战性文本的强大能力,错误检测更少。CTPN 在五个基准上实现了最新的性能,每幅图像的运行时间为 0:14s,因此非常高效。


SeglinkCVPR2017 的一篇论文《Detecting Oriented Text in Natural Images by Linking Segments》介绍了一种可以检测任意角度文本的检测算法,这种方法被称为 Seglink。


SegLink 的算法原理:

SegLink 主要思想是将文本分解为两个局部可检测的元素,即片段(分割)和链接。段是覆盖单词或文本行的一部分的定向框;一个链接连接两个相邻的段,表示它们属于同一个单词或文本行。这两个元素都被一个端到端训练的全卷积神经网络在多个尺度上密集地检测到。最终的检测是通过结合由链接连接的段而产生的。与以前的方法相比,SegLink 在准确性、速度和训练的容易用性等方面都有所提高。在标准的 ICDAR 2015 附带性(挑战 4)基准上,它达到了 75.0%的 f-mrasure,大大超过了之前的最佳指标。它在 512×512 图像上以超过 20 FPS 的速度运行。此外,SegLink 能够检测长行非拉丁文本,如中文。


SegLink 模型的主要思想:

SegLink 的方法用前馈 CNN 模型检测文本。给定一个大小为 wI×hI 的输入图像 I,该模型输出固定数量的片段和链接,然后通过它们的置信度分数进行过滤,并组合成整个单词边界框。边界框是一个旋转的矩形,用 b=(xb,yb,yb,wb,hb,θb)表示,其中 xb,yb 是中心的坐标,wb,hb 是宽度和高度,θb 是旋转角。


SegLink 模型的网络结构如下:


该模型以 VGG16 作为网络的主要骨干,将其中的全连接层(fc6, fc7)替换成卷积层(conv6, conv7),后面再接上 4 个卷积层(conv8, conv9, conv10, conv11),其中,将 conv4_3,conv7,conv8_2,conv9_2,conv10_2,conv11 这 6 个层的 feature map(特征图)拿出来做卷积得到 segments(切片)和 links(链接)。这 6 个层的 feature map(特征图)尺寸是不同的,每一层的尺寸只有前一层的一半,从这 6 个不同尺寸的层上得到 segment 和 link,就可以实现对不同尺寸文本行的检测了(大的 feature map 擅长检测小物体,小的 feature map 擅长检测大物体)。


segments 检测:

segment 也是有方向的边界框,用 s =(xs、ys、ws、hs、θs)表示。SegLink 通过估计输入图像上的一组默认框的置信度分数和几何偏移量来检测片段。每个默认框都与一个特征地图位置相关联,它的分数和偏移量可以从该位置的特征中预测出来。为简单起见,SegLink 只将一个默认框与一个特征映射位置关联起来。


links 检测     在 segment 与 segment 的 link(链接)方面,主要存在两种情况,一种是层内链接检测(Within-Layer Link Detection)、另一种是跨层链接检测(Cross-Layer Link Detection)。如下图:


Within-Layer Link Detection:

层内链接检测表示同一特征层,每个 segment 与 8 邻域内的 segment 的连接状况,链接不仅是将片段组合成整个单词的必要条件,而且还有助于分离两个相邻的单词——在两个相邻的单词之间,链接应该被预测为负的。Cross-Layer Link Detection:Seglinks 网络中,在不同的特征层上以不同的尺度检测到片段。每一层都可以处理一系列的尺度。Seglinks 使这些范围重叠,以避免错过它们边缘的尺度。但结果是,同一单词的片段可以同时在多层上检测到,从而产生冗余。为了解决这个问题,Seglinks 进一步提出了另一种类型的链接,称为跨层链接。一个跨层链接将两个特征层上的段按照相邻的索引连接起来。


合并算法合并算法的思想如下:前馈后,网络产生许多段和链路(数量取决于图像大小)。在组合之前,输出片段和链接将通过它们的置信度分数进行过滤。分别为分段和链接设置了不同的过滤阈值,即α和β。将每个 segment 看成 node,link 看成 edge,建立图模型,然后,在图上执行深度优先搜索(DFS),以找到其连接的组件。每个组件都包含一组由链接连接的段。用 B 表示一个连接的组件,该组件中的段按照 Alg1 中的程序进行组合。Alg1 算法其实就是一个平均的过程。先计算所有的 segment 的平均θ作为文本行的θ,再根据已求的θ为已知条件,求出最可能过每个 segment 的直线(线段,这里线段就是以 segment 最左和最右的为边界),以线段中点作为 word 的中心点(x,y),最后用线段长度加上首尾 segment 的平均宽度作为 word 的宽度,用所有 segment 的高度的平均作为 word 的高度。


实验结果:

Seglink 使用三个公共数据集(即 ICDAR 2015 附带文本(挑战 4)、MSRA-TD500 和 ICDAR 2013)和标准评估指标,对方法进行实验得到了如下几张表的实验结果。首先是在 ICDAR 2015 Incidental Text 上的实验结果。表 1 列出并比较了拟议方法和其他最先进方法的结果。一些结果来自在线排行榜。SegLink 的表现大大优于其他方法。就 f-measure 而言,它的表现比第二好的高 10.2%。考虑到某些方法的精度接近甚至高于 SegLink,改进主要来自 Recall。如图 6 所示,Seglink 的方法能够从非常杂乱的背景中区分文本。此外,由于其明确的链接预测,SegLink 可以正确地分离彼此非常接近的单词。



在数据集 MSRA-TD500 的实验数据如表 2 所示:根据表 2,SegLink 在精度和 f-测量方面得分最高。得益于其完全卷积设计,SegLink 的运行速度为 8.9 FPS,比其他产品快很多。SegLink 也很简单。SegLink 的推理过程是检测网络中的一个前向传递,而之前的方法【《Detecting texts of arbitrary orientations in natural images》、《Robust text detection in natural scene images》、《Multi-oriented text detection with fully convolutional networks.》】涉及复杂的基于规则的分组或过滤步骤。TD500 包含许多混合语言(英语和汉语)的长文本行。图 7 显示了 SegLink 如何处理此类文本。可以看到,段和链接沿着文本线密集检测。它们会产生很长的边界框,很难从传统的对象检测器中获得。尽管中英文文本在外观上存在巨大差异,但 SegLink 能够同时处理它们,而无需对其结构进行任何修改。



Seglink 在数据集 IC13 上的实验结果如表 3 所示。表 3 将 SegLink 与其他最先进的方法进行了比较。分数由中央提交系统使用“Deteval”评估协议计算。SegLink 在 f-measure 方面取得了非常有竞争力的结果。只有一种方法在 f-度量方面优于 SegLink。然而,该主要用于检测水平文本,不太适合定向文本。就速度而言,SegLink 在 512×512 图像上的运行速度超过 20 FPS,比其他方法快得多。


局限性:SegLink 的一个主要限制是需要手动设置两个阈值,α和β。在实际应用中,通过网格搜索可以找到了阈值的最优值。简化这些参数将是 seglink 未来工作的一部分。另一个缺点是,SegLink 无法检测到字符间距非常大的文本。图 8.a、b 显示了这两种情况。检测到的链接连接相邻的段,但无法连接遥远的段。


总结:SegLink 提出一种新的文本检测策略,由一个简单和高效的 CNN 模型实现。在水平方向、面向方向和多语言的文本数据集上的优越性能很好地证明了 SegLink 是准确、快速和灵活的。在未来,将进一步探索其在检测弯曲文本等变形文本方面的潜力。此外,研究人员还想将 SegLink 扩展到一个端到端识别系统。


参考文献:

Liu C Y, Chen X X, Luo C J, Jin L W, Xue Y and Liu Y L. 2021. Deep learning methods for scene text detection and recognition. Journal of Image and Graphics,26(06):1330-1367(刘崇宇,陈晓雪,罗灿杰,金连文,薛洋,刘禹良. 2021. 自然场景文本检测与识别的深度学习方法. 中国图象图形学报,26(06):1330-1367)[DOI:10. 11834 / jig. 210044]Tian Z, Huang W L, He T, He P and Qiao Y. 2016. Detecting text in natural image with connectionist text proposal network / / Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer: 56-72 [ DOI: 10. 1007 / 978-3-319- 46484-8_4]Shi B G, Bai X and Belongie S. 2017b. Detecting oriented text in natural images by linking segments/ / Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, USA: IEEE: 2550-2558 [DOI: 10. 1109 / CVPR. 2017. 371]Ren S Q, He K M, Girshick R B and Sun J. 2015. Faster R-CNN: towards real-time object detection with region proposal networks/ / Proceedings of 2015 Annual Conference on Neural Information Processing Systems. Montreal, Canada: [s. n. ]:91-99Girshick, R.: Fast r-cnn (2015), in IEEE International Conference on Computer Vision (ICCV)R. B. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hierarchies for accurate object detection and semantic segmentation. In CVPR, 2014

用户头像

上海合合信息科技股份有限公司人工智能团队 2022-08-01 加入

在上海市领军人才合合信息董事长镇立新博士带领下,于复杂场景文字识别、智能图像处理、自然语言处理等人工智能领域拥有10 余年研发创新与技术积累,具备专业的行业理解与技术成果。

评论

发布
暂无评论
【文本检测与识别白皮书】第三章 - 第三节:算法模型 2_人工智能_合合技术团队_InfoQ写作社区