1. PSENet

PSENet 的两大特点:1. 基于像素分割 2. 基于小 Kenel 进行扩展得到最终标定框。
具体来说特点 2,模型首先生成与文本形状类似的小 Kenel,然后采用逐步规模扩展(progressive scale expasion)来合并像素。网络结构如下:


场景文字检测阅读笔记

图片左边为 FPN,P3、P4、P5 进行上采样,然后和 P2 进行 concat,F 表示 feature map。S1 ,S2,…,Sn 表示逐步扩张的 Kenel,Sn 即为最终 Kenel。

逐步规模扩张算法如下:


场景文字检测阅读笔记

场景文字检测阅读笔记
在像素扩张过程中,若出现同一个像素被两个 Kenel 包含,则采取先到先得原则。

网络训练过程中由于 Kenel 尺寸不同,因此需要不同尺寸的标签。作者采用 Vatti clipping 算法对 GT 进行裁剪得到不同尺寸的标签。

作者在训练过程中应用了在线难例挖掘(Online Hard Negative Mining)。

Hard Negative 指容易被分类为文本的背景图。

2. DB

DB 兼顾了精度和速度。和其他基于分割的场景文本识别模型不同,DB 的阈值是可训练的,并且把图像二值化过程嵌入到训练过程。这样,网络可以对图像每个像素点进行自适应预测 ,来区分文本和背景。由于标准二值化公式是不可微的,作者提出了近似二值化公式,使网络可以端到端训练。

DB 的主要优点:

  • 得益于可微分二值化,网络简化了繁杂的图像分割后处理步骤,大大提高了模型速度。
  • 在推断阶段,网络可以去掉可微分二值化模块,不影响模型性能。(DB 可以理解为用来帮助模型训练的)

网络结构如下如所示:


场景文字检测阅读笔记

左边为 FPN,基于其生成的特征图同时预测概率图(Probability Map)和阈值图(Threshold Map),进而进行二值化,最终得到结果。

如上面提到的,标准二值化公式不可微:
Bi,j={1if Pi.jt,0otherwise.B_{i,j}= \begin{cases} 1& \text{if P}_{i.j}≥t, \\ 0& \text{otherwise.} \end{cases}
因此作者提出了近似二值化公式:
B^i,j=11+ekx \hat{B}_{i,j}=\frac{1}{1+e^{-kx}} 其中 x=Pi,jTi.jx=P_{i,j}-T_{i.j},损失函数采用二分类交叉熵损失函数:
l+=log(11+ekx)l_+=-log(\frac{1}{1+e^{-kx}})l=log{1(11+ekx)}l_-=-log\{1-(\frac{1}{1+e^{-kx}})\}
它们的导数分别为:
l+x=k11+ekxekx\frac{\partial{l_+}}{\partial x}=-k\cdot\frac{1}{1+e^{-kx}}\cdot e^{-kx}lx=k11+ekx\frac{\partial{l_-}}{\partial x}=k\cdot\frac{1}{1+e^{-kx}}
可以看出,它们分别

  • 对负数 xx 敏感(分类为背景)。xx 为负时梯度大,为正时梯度小。
  • 对正数 xx 敏感(分类为文本)。xx 为 正时梯度大,为负时梯度小。

将其可视化如下:

场景文字检测阅读笔记

此外,作者同样采用了 Vatti clipping 算法对 GT 进行裁剪得到不同尺寸的标签和难例挖掘。作者还采用了可变形卷积(Deformable Convolution),来改善卷积效果。

相关文章: