向AI转型的程序员都关注了这个号👇👇👇
文章目录
一、背景
二、方法
2.1 Adaptive Scale Fusion (ASF) 模块
2.2 Binarization
2.3 Adaptive Threshold
2.4 Deformable Convolution
2.5 Label Generation
2.6 Optimization
三、效果
论文:Real-Time Scene Text Detection with Differentiable Binarization and Adaptive Scale Fusion
代码:
https://github.com/open-mmlab/mmocr/tree/main/configs/textdet/dbnetpp
出处:TPAMI 2022 | 和 DBNet 出自同一团队
一、背景
文本检测的目的是在图像中定位出文本的位置,是文本识别的基础。
基于分割的方法能够得到像素级的表达,但是,后处理的处理方式对检测结果影响很大。
如图 2 所示的蓝色箭头表示的后处理方式是基于分割方法的基础处理方式:
首先,将分割结果图使用二值化的方式变成二值化图
然后,使用启发式的方法(如像素聚合)将一簇的像素聚合成文本区域
这两个过程是独立进行的,不能参与训练过程,会导致检测准确率较低
本文的作者首先提出了 DBNet,将特征图二值化的过程构建成了一个可微的过程,可以直接参与到训练中,如图 2 红色箭头所示:
首先,还是生成分割结果图,但也同时会预测一个 threshold map,也就是图 2 中高亮的那个特征图,这样不同位置的阈值是不同的,这样做的原因在于,作者认为文本区域的边界区域的置信度应该是比中心区域低的。
然后,作者引入了二值化操作的一个近似方法:Differentiable Binarization (DB),使用 threshold map 来对分割图进行二值化,这样就可以联合优化分割过程和二值化过程,可以得到更好的检测结果
DBNet++ 的出发点:
在 DBNet 中,作者在分割网络中直接对多尺度的特征图聚合来提高对不同尺度的鲁棒性,直接聚合缺少了对特征的选择性
DBNet++ 中,作者提出了 Adaptive Scale Fusion (ASF) module,来动态聚合多尺度特征图
ASF 模块的特点:
ASF 是一个 stage-wise attention 模块,并且其中引入了 spatial attention 模块,能够在空间维度学习不同尺度和不同空间位置的权重,达到 scale-robust 特征融合
DBNet++ 和 DBNet 的关联:
第一点,DBNet++ 在 DBNet 的基础上引入了 ASF 模块,加强分割网络中不同尺度特征的融合
第二点,DBNet++ 将 DBNet 中的理论分析更完善化了
DBNet++ 的贡献:
联合优化分割网络的 DB 模块,能够获得更加鲁棒的结果并提升文本检测的效果
在 infer 过程中,DB 模块可以被移除且对最终效果没有明显的影响,故在 infer 过程中不会带来额外的时间消耗
ASF 模块能够给分割网络引入更鲁棒的特征
DBNet++ 在多个文本检测数据集上达到了 SOTA 的效果,包括水平、多方向旋转、弯曲形状等.
二、方法
DBNet++ 的总体框架结构如图 3 所示:
2.1 Adaptive Scale Fusion (ASF) 模块
不同尺度的特征图可以看做是从不同角度和感受野得到的特征图,所以如何融合不同尺度的特征图来得到文本区域是很重要的。
比如,浅层特征或大尺度的特征图可以看到更多的细节信息和小的文本实例,深层特征或小尺度的特征图可以看到大尺度的文本实例并且捕捉到全局信息。
为了更好的利用不同尺度的特征图,特征金字塔或 U-Net 结构在分割网络中使用的比较广泛.
ASF 模块为了更好的融合不同尺度的特征,没有使用简单相加的方式,而是让网络自己选择不同尺度和不同位置特征的重要性,对特征进行动态的聚合。
ASF 模块的结构如图 4 所示:
2.2 Binarization
标准二值化(Standard Binarization)和可微二值化(Differentiable Binarization)的函数曲线如图 5a 所示,标准二值化在 0 处是不可微的。
从图 6 可以看出,当错误的预测距离边界较近的时候,DB 能够增强梯度反向传播,能够让模型更关注于优化那些模棱两可的区域,此外 sigmoid 激活函数能够缓解最低上限和最大下限,DB 能够进一步降低对极值的惩罚。
2.3 Adaptive Threshold
threshold map 是否有监督信号得到的结果如图 7 所示,当有监督信号的时候,就有高亮清洗的文本边界,这说明 border-like threshold map 有利于最终的结果。所以,作者给 threshold map 施加了 border-like 监督信号,然后用 threshold map 来二值化分割结果。
2.4 Deformable Convolution
为了覆盖到更多的 aspect ratio,作者在 res-18 和 res-50 的 conv3、conv4、conv5 中使用了 3x3 的可变形卷积。
2.5 Label Generation
Label generation 的方法和 PSENet 中一样,给定图像,每个 polygon 区域都被描述为一个分割区域集合:
1、可变形卷积、ASF 模块、DB 模块分别带来的效果提升
2、ASF 的提升:ASF 中的 spatial attention 在 MSRA-TD500 提升 0.5%,在 CTW1500 提升 1%
3、对 Threshold map 监督的效果,在 MLT-2017 上,res-18 提升了 0.7%,res-50 提升了 2.6%
4、ASF 和 PPM [64] 及CCA [20] 的对比
5、和其他方法的对比
6、和 DBNet 的对比
定量分析:在 res-18 和 res-50 中带来的 F-measure 的提升
Total-Text:0.5%、1.3%
CTW1500:2.9%、1.9%
ICDAR 2015:0.8%、0.0%
MSRA-TD500:3.6%、2.3%
MLT-2019:1.3%、1.0%
定性分析:
DBNet++ 有更强的尺度鲁棒能力,尤其对大尺度的文本目标更鲁棒,而 DBNet 出现了一些误检,如图 10。
不同数据集的尺度多样性分析:
ICDAR 2015 和 TotalText 数据集没有 MSRA-TD500 和 CTW1500 数据集中数据的尺度丰富
从图 11c 和 图 11d 中也能看出,数据尺度越丰富,ASF 带来的提升就越大,这也证明了 DBNet++ 带来的尺度鲁棒性能的提升
DBNet++ 的限制性:
- 对于 text in text 的情况,难以处理
- 这也是 segmentation-based 方法的局限性
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx
