文本是传递语义信息的最基本媒介, 它在日常生活中无处不在: 路牌、商店招牌、产品包装、餐馆菜单等, 这种自然环境中的文本被称为场景文本[1]. 自然场景中的文本检测及识别技术可以广泛地应用到场景分析与理解、视觉障碍导航、智能交通管理、无人驾驶等领域. 由于场景文本具有不同的尺度和形状, 包括水平文本、多方向文本和曲线文本, 因此对每个文本实例的边界框或区域进行定位仍然是一项具有挑战性的任务. 基于分割的场景文本检测方法能够预测像素级的结果来描述各种形状的文本, 近年来受到了广泛的关注. 然而, 大多数基于分割的方法推理速度慢, 模型和后处理步骤复杂, 限制了它们在真实环境中的部署. 同时已有高效的文本检测器多数是针对四边形文本实例设计的, 在检测曲线文本时存在不足.
为了解决这些问题, 本文提出了一种可以检测任意形状文本的方法, 同时可以在速度和准确度之间达到很好的平衡. 本文方法主要有3个步骤: (1)使用轻量级的分割网络提取特征, 预测文本的概率图和阈值图; (2)根据可微二值化模块将概率图和阈值图结合得到近似的二值图, 自适应地预测图像中每个位置的阈值, 从而很好的区分前景和背景中的像素; (3)对近似二值图进行简单后处理, 得到文本区域.
2 相关工作目前基于深度学习的自然场景文本检测方法可以分为3类: 基于区域建议的方法、基于分割的方法和混合方法[2].
基于区域建议方法的主要思想是先对自然场景文本图像提取候选框, 然后对每个区域进行分类和回归, 最后得到文本检测结果. Textboxes[3]方法可以快速地计算文本在每个区域存在的可能性, 将常用的卷积核修改成
基于分割的方法主要借鉴了全卷积神经网络(FCN)的思想, 针对图像中每一个像素点进行分类判断, 以达到语义级别分割的目的. EAST方法[5]首先通过FCN输出文本区域像素级检测结果, 然后将上述结果通过NMS算法获得文本区域. TextSnake方法[6]将文本实例描述为一个以对称轴为中心的重叠圆盘序列, 每个圆盘都与潜在的可变半径和方向相关, 这种几何属性是通过FCN模型来估计的. PSENet[7]为每个文本实例生成不同比例的内核, 并逐渐将最小比例内核扩展为具有完整形状的文本实例. 基于分割的方法通常需要复杂的后处理, 会降低推理速度.
混合方法是将上述的两种方法相结合来进行场景文本检测. LOMO方法[8]可以多次逐步定位文本, 通过迭代细化逐步感知整个长文本, 考虑文本实例的几何特性对不规则文本进行精确再现. FTSN模型[9]从实例感知语义分割的角度, 利用语义分割任务和基于区域建议的目标检测任务的优点, 对文本实例进行联合检测和分割.
本文方法侧重于在不损失推理速度的情况下, 将二值化过程包含到训练周期中来改进分割结果.
3 基于分割的任意形状场景文本检测图1为本文提出方法的总体框架. 首先, 为了提高效率, 本文采用一种计算效率高的分割头来细化特征. 分割头包括两个关键模块: 特征金字塔增强模块(FPEM)和特征融合模块(FFM)[10]. 如图1所示, FPEM是可级联的, 可以附加在主干之后, 使不同尺度的特征更深入和更具表现力, 然后利用特征融合模块(FFM)将不同深度的FPEM产生的特征融合得到最终的分割特征F. 其次, 利用特征F对概率图(P)和阈值图(T)进行预测, 根据可微二值化模块(DB)将概率图和阈值图结合得到近似的二值图(B'), 自适应地预测图像中每个位置的阈值[11]. 最后, 在推理阶段, 通过边界框形成从近似二值图中获得文本区域的边界框.
3.1 特征金字塔增强模块FPEMFPEM是一个U型模块, 如图2所示, 它由两个阶段组成: Up-Scale增强和Down-Scale增强. Up-Scale增强作用于输入的特征, 它以步长32, 16, 8, 4像素在特征图上迭代增强. 在Down-Scale阶段, 输入的是由Up-Scale增强生成的特征, 增强的步长从4到32, 同时该阶段输出的特征就是最终FPEM的输出. 本文使用分离卷积代替常规卷积来构建FPEM的连接部分(见图2虚线部分), 因此FPEM能够以较小的计算开销扩大感受野和加深网络.
与FPN类似, FPEM能够通过融合低层和高层信息来增强不同尺度的特征, 同时它还有两个优点: (1) FPEM是一个级联模块, 随着级联数目m的增加, 不同尺度的特征图融合更充分, 特征的感受野变得更大; (2) FPEM的计算开销很小, 它建立在分离卷积的基础上, 计算量大约为FPN的1/5.
3.2 特征融合模块FFM采用特征融合模块FFM对不同深度的特征
3.3 可微二值化模块DB
根据分割网络生成的概率图
${B_{i,j}} = \left\{ \begin{array}{l} 1,\;\;\;{P_{i,j}} \ge t\\ 0,\;\;\;{\text{其他}} \end{array} \right.$ | (1) |
其中, t为预定义的阈值,
式(1)中描述的标准二值化是不可微的, 在训练过程中不能随着分割网络进行优化. 为了解决这一问题, 本文使用步长函数进行二值化:
$B_{i,j}^{'} = \frac{1}{{1 + {e^{ - k({P_{i,j}} - {T_{i,j}})}}}}$ | (2) |
其中, B'是近似二值图, T是从网络中学习的自适应阈值图, k是放大系数, 本文设置为k=50. 该近似二值化函数与标准二值化函数相似, 但具有可微性, 因此可以在训练期间随分割网络进行优化. 自适应阈值的可微二值化方法不仅可以区分文本区域和背景, 而且可以分离出连接紧密的文本实例.
DB提高性能的原因可以用梯度的反向传播来解释, 以二元交叉熵损失为例, 定义
${l_ + } = - \log \frac{1}{{1 + {e^{ - kx}}}}$ | (3) |
${l_ - } = - \log \left(1 - \frac{1}{{1 + {e^{ - kx}}}}\right)$ | (4) |
可以用链式法则很容易地计算出损失的微分:
$\frac{{\partial {l_ + }}}{{\partial x}} = - kf(x){e^{ - kx}}$ | (5) |
$\frac{{\partial {l_ - }}}{{\partial x}} = kf(x)$ | (6) |
由微分可知: (1)梯度被放大系数k增大; (2)梯度的放大对大多数错误预测区域都是显著的, 从而有利于优化和帮助产生更显著的预测. 此外, 当
概率图的标签生成是受到PSENet[7]的启发, 如图4所示, 给定一个文本图像, 其文本区域的每个多边形由一组线段来描述:
$G = \left\{ {{S_k}} \right\}_{k = 1}^n$ | (7) |
式中, n是顶点的数量, 在不同的数据集中可能不同, 如ICDAR2015数据集的4个顶点和Total-Text数据集的16个顶点. 然后, 使用Vatti裁剪算法将多边形G缩小到
$D = \frac{{A(1 - {r^2})}}{L}$ | (8) |
其中, r是收缩比, 设置为0.4.
通过类似的过程, 可以为阈值图生成标签. 首先将文本多边形G以相同的偏移量D展开至
3.5 损失函数
损失函数L可以表示为概率图
$L = {L_s} + \alpha \times {L_b} + \beta \times {L_t}$ | (9) |
根据损失的数值,
本文对
${L_s} = {L_b} = \sum\nolimits_{i \in {S_l}} {{y_i}\log {x_i} + (1 - {y_i})\log (1 - {x_i})} $ | (10) |
${L_t} = \sum\nolimits_{i \in {R_d}} {|y_i^* - x_i^*|} $ | (11) |
其中,
在推理阶段, 使用概率图来生成文本边界框, 框的形成过程包括3个步骤: (1)将概率图二值化为常数阈值(0.2), 得到二值图; (2)从二值图中得到连通区域(缩小后的文本区域); (3)使用Vatti裁剪算法中的偏移量D'对缩小的区域进行扩展. D'计算为:
$ {D{'}} = \frac{{{A{'}} \times {r{'}}}}{{{L{'}}}} $ | (12) |
其中, A'是收缩多边形的面积, L'是收缩多边形的周长, r'设置为1.5.
4 实验与分析 4.1 数据集SynthText是一个包含800 k图像的合成数据集, 此数据集仅用于对本文的模型进行预训练.
ICDAR2015是多方向文本检测常用的数据集, 它由1000张训练图像和500张测试图像组成, 文本实例以单词级标注.
Total-Text是包含各种形状文本的数据集, 包括水平、多方向和曲线文本实例, 它由1255张训练图像和300张测试图像组成, 文本实例以单词级标注.
4.2 实验设计对于所有模型, 首先使用SynthText数据集对它们进行100 k次迭代预训练, 然后使用1200 epochs对真实数据集上的模型进行微调, 训练批大小设置为8. 本文遵循多学习率策略, 当前迭代的学习率
训练数据的数据扩充包括: (1)在
在训练阶段, 忽略所有数据集中标记为“DO NOT CARE”的模糊文本区域. 在推理阶段, 保持测试图像的高宽比, 并通过为每个数据集设置合适的高度来重新调整输入图像的大小. 推理速度测试批大小为1, 在单个线程中使用单个1080ti GPU, 推理时间包括模型前向传播时间和后处理时间.
本文检测性能评测方法主要考虑3个性能参数: 准确率Precision、召回率Recall和综合评价指标F-measure, 其中综合评价指标是准确率与召回率的调和平均值, 该值是评价文本检测方法性能的综合指标. 定义如下:
$Precision = \frac{{|TP|}}{{|E|}}$ | (13) |
$Recall = \frac{{|TP|}}{{|T|}}$ | (14) |
${{F - measure}} = \frac{{2 \times Precision \times {{Recall}}}}{{Precision + {{Recall}}}}$ | (15) |
其中,
为了验证特征金字塔增强模块FPEM和特征融合模块FFM的有效性, 在数据集ICDAR2015实验中, 与特征金字塔FPN进行了实验对比, 如表1所示, 不管主干网络是ResNet-18还是ResNet-50, FPEM-FFM都具有较高的性能(73.72% vs 79.14%, 75.59% vs 79.96%)和速度(4.26 vs 21.31, 2.84 vs 14.22).
为了验证可微二值化模块DB的有效性, 在数据集ICDAR2015实验中进行了有无DB模块的实验对比, 从表1中可以看到DB显著地提高了数据集上ResNet-18和ResNet-50的性能. 对于ResNet-18主干网, DB在ICDAR2015数据集上实现了1.93%的性能提升. 对于ResNet-50主干网, DB在ICDAR2015数据集上实现了2.46%的性能提升. 此外, 在两个主干网中, 有DB模块比没有DB模块的速度都提高了约2倍.
从表1中可以看到ResNet-50主干网模型比ResNet-18模型性能更好, 但运行速度更慢. 具体来说, ResNet-50模型比ResNet-18模型的性能高1.35%, 但时间成本约为ResNet-18的1.6倍.
本文将所提出的方法与之前的方法在两个标准数据集上进行了比较, 包括多方向文本数据集ICDAR2015和曲线文本数据集Total-Text.
ICDAR2015数据集是一个面向多方向的文本数据集, 它包含许多小的和低分辨率的文本实例. 在表2中可以看到, 与之前最快的方法EAST相比, “FPEM-FFM-DB(ResNet-50)”的性能比它高4.22%, 运行速度快了两倍. 当使用ResNet-18主干时, “FPEM-FFM-DB(ResNet-18)”速度可以达到43 fps, F-measure为81.07%.
本文在曲线文本数据集Total-Text上验证所提出方法的鲁棒性, 如表3所示, 本文的方法在性能和速度上都达到了较好的结果. 具体来说, “FPEM-FFM-DB(ResNet-50)”在性能上比之前的最新方法高出1.15%, 同时运行速度比之前的方法都快. 使用ResNet-18主干网可以进一步提高速度, 但性能会有所下降. 与最近的基于分割的方法PSENet相比, “FPEM-FFM-DB(ResNet-50)”速度快10.5倍, “FPEM-FFM-DB(ResNet-18)”速度快17.9倍.
5 结论与展望
本文提出了一种可以高效准确的检测任意形状文本的框架, 该框架包括由特征金字塔增强模块和特征融合模块组成的轻量级分割头和分割网络中的可微二值化过程, 该分割头既有利于特征提取, 又能带来较小的额外计算量, 可微二值化模块可以显著地提高文本检测的性能. 即使使用轻量级主干网络(ResNet-18), 本文的方法也能以较快推理速度在测试数据集上实现可比较的性能. 虽然本文的方法呈现出了一个可以与其他先进方法相媲美的效果, 但是实现实时精确的自然场景文本检测任务还面临诸多挑战, 未来仍有很多工作有待去解决.
[1] |
Wang XB, Jiang YY, Luo ZB, et al. Arbitrary shape scene text detection with adaptive text region representation. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA. 2019. 6442–6451.
|
[2] |
Liu XY, Meng GF, Pan CH. Scene text detection and recognition with advances in deep learning: A survey. International Journal on Document Analysis and Recognition, 2019, 22(2): 143-162. DOI:10.1007/s10032-019-00320-5 |
[3] |
Liao MH, Shi BG, Bai X, et al. Textboxes: A fast text detector with a single deep neural network. Proceedings of the 31st AAAI Conference on Artificial Intelligence. San Francisco, CA, USA. 2017. 4161–4167.
|
[4] |
Liao MH, Shi BG, Bai X. Textboxes++: A single-shot oriented scene text detector. IEEE Transactions on Image Processing, 2018, 27(8): 3676-3690. |
[5] |
Zhou XY, Yao C, Wen H, et al. East: An efficient and accurate scene text detector. Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA. 2017. 2642–2651.
|
[6] |
Long SB, Ruan JQ, Zhang WJ, et al. Textsnake: A flexible representation for detecting text of arbitrary shapes. Proceedings of the 15th European Conference on Computer Vision. Munich, Germany. 2018. 19–35.
|
[7] |
Wang WH, Xie EZ, Li X, et al. Shape robust text detection with progressive scale expansion network. Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA. 2019. 9328–9337.
|
[8] |
Zhang CQ, Liang BR, Huang ZM, et al. Look more than once: An accurate detector for text of arbitrary shapes. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA. 2019. 10544–10553.
|
[9] |
Dai YC, Huang Z, Gao YT, et al. Fused text segmentation networks for multi-oriented scene text detection. Proceedings of 2018 24th International Conference on Pattern Recognition. Beijing, China. 2018. 3604–3609.
|
[10] |
Wang WH, Xie EZ, Song XG, et al. Efficient and accurate arbitrary-shaped text detection with pixel aggregation network. Proceedings of 2019 IEEE/CVF International Conference on Computer Vision. Seoul, Republic of South Korea. 2019. 8439–8448.
|
[11] |
Liao MH, Wan Y, Yao C, et al. Real-time scene text detection with differentiable binarization. arXiv preprint arXiv: 1911.08947, 2019.
|
[12] |
Tian Z, Huang WL, He T, et al. Detecting text in natural image with connectionist text proposal network. Proceedings of the 14th European Conference on Computer Vision. Amsterdam, the Netherlands. 2016. 56–72.
|
[13] |
He P, Huang WL, He T, et al. Single shot text detector with regional attention. Proceedings of 2017 IEEE International Conference on Computer Vision. Venice, Italy. 2017. 3066–3074.
|
[14] |
Lyu PY, Liao MH, Yao C, et al. Mask TextSpotter: An end-to-end trainable neural network for spotting text with arbitrary shapes. Proceedings of the 15th European Conference on Computer Vision. Munich, Germany. 2018. 71–88.
|
[15] |
Xu YC, Wang YK, Zhou W, et al. TextField: Learning a deep direction field for irregular scene text detection. IEEE Transactions on Image Processing, 2019, 28(11): 5566-5579. DOI:10.1109/TIP.2019.2900589 |
[16] |
Liu ZC, Lin GS, Yang S, et al. Towards robust curve text detection with conditional spatial expansion. Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA. 2019. 7261–7270.
|