场景文本检测已广泛应用于各种应用领域,如在线教育、产品搜索、即时翻译和视频场景解析。随着深度学习的蓬勃发展,文本检测算法在规则的文本检测任务中的表现得到很大的提升。然而,由于自然场景中文本图像的多样性,以往的文本检测方法在检测任意形状和多方向文本的任务中的表现仍有提升空间。目前在场景文本检测任务中的方法大致可以分为基于分割和基于回归两大类。而在复杂文本检测任务和弯曲文本检测任务中使用锚点框策略的基于回归的方法往往能获得更好的表现。
通过卷积神经网络回归计算文本锚点框的几何特性,再将文本锚点框的几何属性生成节点特征,再构造成局部图,并将局部图送到图神经网络来挖掘文本锚点框之间的深层连通关系,这种方法对自然场景文本检测任务性能提升的有效性已在用于任意形状文本检测的深度关系推理图网络(Deep Relational Reasoning Graph Network for Arbitrary Shape Text Detection, DRRG)中被证实[1]。为了用锚点框的特征构造局部图,本文在锚点框预测模块使用改进的VGG-16作为骨干网络生成锚点框,并将锚点框的几何属性与骨干网络提取出的特征融合生成原始节点特征。根据文本图像中文本区域的自身性质,同一文本实例中的文本组件通常顺序连接形成链,对应了拓扑结构中的0维Betti数(即节点的联通数)的性质。然而传统的图卷积网络往往只能注意到邻接节点的信息而忽略了图自身的拓扑特征,在自然场景文本检测任务中使用传统图卷积网络的方法会导致锚点框漏检和文本实例划分出错等问题。针对这个问题,本文提出的融合拓扑特征的图卷积模块提取出了图中的拓扑特征,并与原始节点特征融合,然后送入图卷积网络进行锚点框连接关系的判断,有效提升了文本检测的效果。
1 相关工作 1.1 基于回归的文本检测算法文本检测任务可以看成是特殊的目标检测任务,但它与一般目标检测算法相比存在着特殊之处。在一般的目标检测算法中,检测出的判定框只需与目标重叠率高于一个阈值就可认为是检测有效,而在文本检测任务中则需要正确检出且覆盖整个文本长度才能认为是检测有效。受目标检测算法[2-4]的启发,基于回归的方法通常通过直接回归文本边界框或连接文本组件的几何信息来推断文本区域。受Faster RCNN[3]的启发,连接文本建议网络(Connection Text Proposal Network,CTPN)使用垂直锚回归机制检测小规模文本锚点框[5],并使用循环神经网络来利用前后文的信息进行文本位置的预测。TextBoxes[6]通过使用长卷积核来改进单目标检测(Single Shot Detector,SSD)[4],从而提高了水平文本检测的效果,TextBoxes++[7]则进一步优化了卷积内核,并修改了网络的输出,使其能够从多个角度检测文本。然而,这些方法无法检测弯曲文本。为了解决这个问题,TextSnake[8]将文本实例表示为一系列重叠的圆。而为了更好地检测任意形状的文本,TextDragon[9]在TextSnake[8]的基础上改为使用一系列带角度的锚点框来表示文本区域,并首先检测文本的局部区域,然后根据它们的几何关系对这些文本锚点框进行分组。然而以上这些方法都只是单纯的通过锚点框浅层的几何特征来进行文本区域的判断,在本文的方法中则对锚点框之间的连接关系进行推理。
1.2 连接关系推理基于回归的方法往往在长文本和复杂形状文本的检测任务中表现得更为出色,然而这些方法在检测任务中的表现很大程度上依赖于锚点框文本实例划分中的连接方法是否有效。CTPN[5]中采取直接将相邻文本框连接起来的策略,这种方法虽然简单易实现,但只能用在水平文本检测中。而在PixelLink[10]的方法中则借助了卷积神经网络(Convolutional Neural Networks,CNN),在连接元素之间进行了一个连接关系二分类预测。但这种借助CNN的方法很大程度受到卷积核的限制,对距离稍远的锚点框进行连接关系的预测结果不佳。为了避免这一问题,本文选择基于图卷积网络的锚点框连接策略。
2 方法 2.1 总体框架本文方法的框架如图1所示,由锚点框预测模块和融合拓扑特征的图卷积网络模块组成。锚点框预测模块使用融合了特征金字塔网络[11](Feature Pyramid Networks,FPN) 的VGG-16作为主干网络来提取特征,将用于文本成分预测和图形神经网络。在获得文本组件的几何信息后,生成局部图以粗略地建立文本组件之间的连接。之后在融合拓扑特征的图卷积网络模块中提取局部图的拓扑特征,与局部图的原始节点特征融合,并将其输入图卷积网络[12](Graph Convolutional Networks, GCN),以进一步推断锚点框之间的连接关系。
![]() |
图 1 方法总览 Figure 1 Overview of our method |
锚点框预测模块的结构如图2所示,图中H为图片的高,W为图片的宽,除了得到锚点框的8维预测结果外,还将其与上采样后得到的32维特征融合得到一个40维的特征
![]() |
图 2 锚点框预测模型 Figure 2 Anchor box prediction module |
$ {w_i} = \left\{ {\begin{array}{*{20}{l}} {{w_{\min }}},&{{h_i} \leqslant 2{w_{\min }}} \\ {{h_i}/2},&{2{w_{\min }} < {h_i} < 2{w_{\max }}} \\ {{w_{\max }}},&{2{w_{\max }} \leqslant {h_i}} \end{array}} \right. $ | (1) |
式中:
在Textsnake[8]和傅里叶轮廓嵌入网络[13](Fourier Contour Embeding Net,FCENet)等方法中使用的文本中心区域(Text Center Region,TCR)和文本区域(Text Region,TR)概念可有效提高文本检测的精确度。如图3所示,本文通过将TR区域的两端收缩
![]() |
图 3 TCR和TR示意图 Figure 3 Illustration of TCR and TR |
文本锚点框检测模块的损失函数
$ {L}_{\mathrm{a}}={L}_{\mathrm{r}}+{L}_{\mathrm{c}} $ | (2) |
$ {L}_{\mathrm{r}}={L}_{\mathrm{h}}+{L}_{\mathrm{s}\mathrm{i}\mathrm{n}}+{L}_{\mathrm{c}\mathrm{o}\mathrm{s}} $ | (3) |
$ {L}_{\mathrm{s}\mathrm{i}\mathrm{n}}=\mathrm{s}\mathrm{m}\mathrm{o}\mathrm{o}\mathrm{t}{\mathrm{h}}_{\mathrm{L}1}(\mathrm{si}\widehat{\mathrm{n}}\,\theta -\sin\, \theta ) $ | (4) |
$ {L}_{\mathrm{c}\mathrm{o}\mathrm{s}}=\mathrm{s}\mathrm{m}\mathrm{o}\mathrm{o}\mathrm{t}{\mathrm{h}}_{\mathrm{L}1}(\mathrm{co}\widehat{\mathrm{s}}\,\theta -\cos \theta ) $ | (5) |
$ {L}_{\mathrm{h}}=\frac{1}{{ O}}{\sum }_{i\in O}\left(\mathrm{l}\mathrm{o}\mathrm{g}(h+1) {\sum }_{k=1}^{2}{\mathrm{s}\mathrm{m}\mathrm{o}\mathrm{o}\mathrm{t}\mathrm{h}}_{\mathrm{L}1}\left(\frac{{\widehat{h}}_{ki}}{{h}_{ki}}-1\right) \right) $ | (6) |
式中:
图神经网络经过近年来的发展,在节点分类任务中的表现已经得到了广泛的认证[14-16]。由于文本检测任务通常只需要连接锚点框附近的其他锚点框,因此本文不会为每张任务图片都生成一个完整的图,而是只需生成多个局部图。将中枢点用
$ u=1-\frac{D({p,v}_{i}) }{\mathrm{max}({H},{W}) },{v}_{i}\in {V}_{p} $ | (7) |
式中:
$ \frac{{\overline{G}}_{a}\cap {\overline{G}}_{b}}{{\overline{G}}_{a}\cup {\overline{G}}_{b}} < \zeta, \;\;\; a,b\in S $ | (8) |
式中:
为了获得局部图中节点的原始节点特征,将图2中得到的
将拓扑特征融合到图神经网络中可提升预测结果在前人的工作中已得到验证[19-20]。结合文本检测中文本图像的特点,由于0维Betti数十分契合锚点框自身的特性,本文选择0维Betti数作为要使用的拓扑特征,如图4所示。将一个局部图表示为
![]() |
图 4 拓扑特征融合模块 Figure 4 Topological feature fusion module |
$ \varnothing ={G}^{\left(0\right) }\subseteq {G}^{\left(1\right) }\subseteq \cdots {G}^{(n-1) }\subseteq {G}^{\left(n\right) }=G $ | (9) |
当一个0维Betti数在
$ {G}^{(c,i) }=({V}^{(c.i) },{\boldsymbol{E}}^{(c,i) }) $ | (10) |
$ {V}^{(c,i) }=\{v\in V|{f}_{i}\left({m}^{\left(c\right) }\right) \le {a}^{(c,i) }\} $ | (11) |
$ {\boldsymbol{E}}^{(c,i) }=\left\{\right(a,b) \in \boldsymbol{E}|\mathrm{max}\{{f}_{i}\left({m}^{\left(a\right) }\right) ,{f}_{i}\left({m}^{\left(b\right) }\right) \}\le {a}^{(c,i) }\} $ | (12) |
通过子图可以统计出一系列的持久同源性元组,对元组进行append操作得到一个用来收集拓扑特征的数组
$ {\boldsymbol{t}}^{\left(\boldsymbol{v}\right) }={\boldsymbol{m}}^{\left(\boldsymbol{v}\right) }+{\boldsymbol{e}}^{\left(\boldsymbol{v}\right) } $ | (13) |
把融合了拓扑特征的图用
本文使用图卷积网络来推导锚点框之间的深层连接关系,受Wang[21]等的启发,本文中的图卷积层表示为
$ {\boldsymbol{Y}}^{\left(l\right) }=\sigma \left(\right({\boldsymbol{T}}^{\left(\boldsymbol{l}\right) } \oplus \boldsymbol{L}{\boldsymbol{T}}^{\left(l\right) }) {\boldsymbol{W}}^{\left(\boldsymbol{l}\right) }) $ | (14) |
式中:
$ \boldsymbol{L}={\boldsymbol{D}}^{-1/2}\hat{\boldsymbol{E}}{\boldsymbol{D}}^{-1/2} $ | (15) |
式中:
$ \hat{\boldsymbol{E}}=\boldsymbol{E}+{\boldsymbol{I}}_{\boldsymbol{N}} $ | (16) |
$ {\boldsymbol{D}}_{ii}={\sum }_{j}{\hat{\boldsymbol{E}}}_{ij} $ | (17) |
式中:
为了检验本文方法对弯曲文本以及多方向文本的检测能力,本文采用Total-Text[22]数据集和CTW1500[23]数据集作为实验数据集。
Total-Text[22]数据集由1255张训练集图像以及300张测试集图像组成,总共包含11459个文本行。数据集包含水平、多向和弯曲各种情况的文本实例,大部分为英文文本,包含少量中文文本,采用多边形标注。
CTW1500[23]数据集由1000张训练集图像以及500张测试集图像组成,包含大量弯曲文本。每行标注包含32个数字,前4个数字为该弯曲文本在整张图上的矩形框坐标值;剩下的28个值(14个点)为与左上角坐标形成的差值。
3.2 实验细节为了提高模型的鲁棒性,训练过程分为2个阶段:在SynthText[24]数据集上的预训练阶段以及在特定数据集上的微调阶段。在预训练阶段对图像的文本区域进行随机裁剪操作,并将其大小调整为512×512,每次训练所选取的样本数设置为12,采用Adam优化器对模型进行2轮的训练,学习率为0.0001。在微调阶段,对数据进行随机裁剪操作后将其大小调整为640×640,每次训练所选取的样本数设置为4,使用SGD 优化器对模型进行600轮训练。微调阶段的初始学习率为0.01,每迭代100轮后学习率减少0.002。此外,一些常见的数据增强技术也被应用到训练中,如旋转、裁剪、颜色变化和翻转等。
本实验平台操作系统为Ubuntu 20.04。图像处理单元为NVIDIA GeForce RTX 3060显卡,显存为12 G,CUDA版本为11.0。深度学习框架为python 3.7搭配pytorch 1.9。
3.3 实验结果与分析对于弯曲和多方向文本的部分实验效果如图5所示,从图5(c)和图5(e)对比可以看出,由于加入了拓扑特征,联系了锚点框之间的上下文信息,对文本区域的判断更加完整精确。此外通过对比图5(d)和图5(f)可以发现融入拓扑特征后模型对于文本实例的划分有了明显改善。
![]() |
图 5 实验效果对比图 Figure 5 Comparison of experimental results |
通过与近年来提出的几种文本检测方法进行对比,验证了本文方法的有效性。本文采用精确率(Precision)、召回率(Recall)和F分数(F-Score)3种指标作为评价标准。精确率可以表示预测为正的样本中有多少是真正的文本区域,召回率可以表示图片中有多少文本区域被正确预测了,但精确率和召回率都只能关注到测试性能的一个方面,F分数则是对它们进行了综合考虑。这3种评价标准的计算方式为
$ \mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}=\frac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{P}} $ | (18) |
$ \mathrm{Recall}=\frac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{N}} $ | (19) |
$ F-\mathrm{S}\mathrm{c}\mathrm{o}\mathrm{r}\mathrm{e}=(1+{\beta }^{2}) \frac{\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}\times \mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}{{\beta }^{2}\times \mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}\times \mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}} $ | (20) |
式中:TP为重叠度(Intersection over Union,IoU)大于0.5的预测结果数,FP为IoU小于0.5的预测结果数,FN为没有被检测出来的文本数量,超参数β表示Precision和Recall在性能评估中的相对重要程度,本文中β设置为1。
实验结果数据如表1和表2所示。可以看出在CTW1500[23]数据集中,本文提出的方法在召回率、精确率和F分数这3个评价指标均产生了有竞争力的结果,值得一提的是本文方法的F分数在几个对比方法中是最高分。而在Total-Text[22]数据集中的召回率和F分数均是最高分。可以看出本文方法的有效性和鲁棒性。
![]() |
表 1 CTW1500实验数据对比 Table 1 Comparison experimental results of five methods on the CTW1500 database |
![]() |
表 2 Total-Text实验数据对比 Table 2 Comparison experimental results of five methods on the Total-Text database |
此外,为了验证拓扑特征对文本检测有效性的提升,本文继续在CTW1500和Total-Text数据集上进行消融实验,实验结果如表3、表4所示。消融实验以仅使用了VGG-16+FPN的锚点框推断骨架网络作为baseline,分别设置加入图神经网络的模型和同时加入图神经网络以及拓扑特征的模型作为对照组。从消融实验的结果来看,加入图神经网络和拓扑特征后对模型在多个指标上都产生了较为明显的性能提升,其中CTW1500数据集上的召回率指标更是比baseline提升了3%的性能。
![]() |
表 3 CTW1500上的消融实验结果 Table 3 Ablation experimental results on the CTW1500 database |
![]() |
表 4 Total-text上的消融实验 Table 4 Ablation experimental results on the Total-text database |
但同时,在实验的过程中也发现了本文方法中可能存在的一些问题。如图6所示,在一些含有极短文本任务的图像中有时会出现对短文本的漏检情况。推测是文本实例过短导致生成的锚点框数量过少,使生成的局部图中节点过少,最终导致无法很好地推断出锚点框之间的连接关系。在未来的工作中将会继续研究这个问题。
![]() |
图 6 极短文本漏检示意图 Figure 6 Missing detection of extremely short text |
本文提出了一种嵌入拓扑特征的自然场景文本检测方法。首先通过骨干网络生成一系列文本锚点框,利用锚点框的几何属性和位置信息,将锚点框作为图的节点生成多个局部图。然后提取出局部图中的拓扑特征并与原始节点特征相融合,得到融合了拓扑特征的局部图。最后将融合了拓扑特征的局部图送入图卷积网络,推断节点之间的深层连接关系,根据推断出的连接关系对锚点框进行连接,最终得到文本区域。本文对拓扑特征提取模块做了消融实验对比,在2个公开数据集上验证了拓扑特征对模型性能的提升作用。此外,将本文方法与近年来的一些文本检测算法进行了性能对比,证明本文方法具有一定竞争力。
虽然本文提出并验证了拓扑特征可以有效提高文本检测的效果,但仍存在局限性。下一步的工作主要是研究如何在文本区域较短、锚点框和节点较少的情况下仍然能有效进行文本区域的判断。
[1] |
ZHANG S X, ZHU X B, HOU J B, et al. Deep relational reasoning graph network for arbitrary shape text detection[EB/OL]. arXiv:2003.07493. (2020-08-30)[2023-05-12]. https://doi.org/10.48550/arXiv.2003.07493.
|
[2] |
ROSS B, GIRSHICK, JEFF D, TREVOR D, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]//Proc of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2014: 580-587.
|
[3] |
GIRSHICK R. Fast R-CNN[EB/OL]. arXiv:1504.08083. (2015-09-27)[2023-05-12]. https://doi.org/10.48550/arXiv.1504.08083.
|
[4] |
LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multi box detector[C]//Proc of the 2016 European Conference on Computer Vision. Amsterdam: Springer, 2016: 21-37.
|
[5] |
ZHI T, HUANG W, TONG H, et al. Detecting text in natural image with connectionist text proposal network[C]//Proc of the 2016 European Conference on Computer Vision. Amsterdam: Springer, 2016: 56-72.
|
[6] |
LIAO M, SHI B, BAI X, et al. TextBoxes: a fast text detector with a single deep neural network [C]//Proc of the AAAI Conference on Artificial Intelligence. San Francisco: AAAI, 2017: 186-196.
|
[7] |
LIAO M, SHI B G, BAI X. TextBoxes++: a single-shot oriented scene text detector[J].
IEEE Trans on Image Processing:a Publication of the IEEE Signal Processing Society, 2018, 27(8): 3676-3690.
DOI: 10.1109/TIP.2018.2825107. |
[8] |
LONG S B, RUAN J Q, ZHANG W J, et al. Textsnake: a flexible representation for detecting text of arbitrary shapes[C]//Proc of the European conference on computer vision. Munich: Springer, 2018: 20-36.
|
[9] |
WEI F, HE W H, YIN F, et al. Textdragon: an end-to-end framework for arbitrary shaped text spotting[C]//Proc of the IEEE/CVF International Conference on Computer Vision, Long Beach: IEEE, 2019: 9076-9085.
|
[10] |
DAN D, LIU H F, LI X L, et al. Pixellink: detecting scene text via instance segmentation[C]//Proc of the AAAI Conference on Artificial Intelligence. New Orleans: AAAI, 2018: 296-308
|
[11] |
LIN T Y, DOLLAR P, GIRSHICK R, et al. Feature pyramid networks for object detection[C]//Proc of the IEEE Conference on Computer Vision and Pattern Recognition. Hawaii: IEEE, 2017: 2117-2125.
|
[12] |
DEFFERRARD M, BRESSON X, VANDERGHEYNST P, et al. Convolutional neural networks on graphs with fast localized spectral filtering[C]//Advances in Neural Information Processing Systems. Barcelona: MIT, 2016: 29.
|
[13] |
ZHU Y Q, CHEN J Y, LIANG L Y, et al. Fourier contour embedding for arbitrary-shaped text detection[C]//Proc of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Nashville: IEEE, 2021: 3123-3131.
|
[14] |
MA C X, SUN L, ZHONG Z Y, et al. ReLaText: exploiting visual relationships for arbitrary-shaped scene text detection with graph convolutional networks[EB/OL]. arXiv:2003.06999. (2020-03-16)[2023-05-12]. https://doi.org/10.48550/arXiv.2003.06999.
|
[15] |
KOHLI H, AGARWAL J, KUMAR M. An improved method for text detection using Adam optimization algorithm[J].
Global Transitions Proceedings, 2022, 3(1): 230-234.
DOI: 10.1016/j.gltp.2022.03.028. |
[16] |
LIU Z, FANG Y, HUANG C, et al. GraphXSS: an efficient XSS payload detection approach based on graph convolutional network[J].Computers & Security, 2022, 114: 102597.
|
[17] |
MA J Q, SHAO W Y, YE H, et al. Arbitrary-oriented scene text detection via rotation proposals[J].
IEEE Trans on Multimedia, 2018, 20(11): 3111-3222.
DOI: 10.1109/TMM.2018.2818020. |
[18] |
ASHISH V, NOAM S, NIKI P, et al. Attention is all you need[J].
Advances in Neural Information Processing Systems, 2017, 30(10): 6000-6010.
|
[19] |
GAO H, XIANG Y, SUI Y, et al. Topological graph convolutional network based on complex network characteristics[J]. IEEE Access, 2022, 10: 64465-64472
|
[20] |
JIANG W. Graph-based deep learning for communication networks: a survey[J]. Computer Communications, 2022, 185: 40-54
|
[21] |
WANG Z, ZHENG L, LI Y , et al. Linkage based face clustering via graph convolution network[C]//Proc of the IEEE/CVF International CONference on Computer Vision. Long Beach: IEEE, 2019: 1117-2225.
|
[22] |
CHENG C K, CHAN C S, LIU C L. Total-text: toward orientation robustness in scene text detection[J].
International Journal on Document Analysis and Recognition(IJDAR), 2020, 23(1): 31-52.
DOI: 10.1007/s10032-019-00334-z. |
[23] |
YUAN T L, ZHU Z, XU K, et al. A large chinese text dataset in the wild[J].
Journal of Computer Science and Technology, 2019, 34(3): 509-521.
DOI: 10.1007/s11390-019-1923-y. |
[24] |
GUPTA A , VEDALDI A , ZISSERMAN A, et al. Synthetic data for text localisation in natural images[C]//Proc of the IEEE CONFERence on Computer Vision and Pattern Recognition. Las Vegas : IEEE, 2016: 2315-2324.
|