有低计算成本的分割部分和可学习的后处理。分割分割部分由特征金字塔增强模块(FPEM)和特征融合模块(FFM)组成。 FPEM是可级联的U形模块,可以引入多级信息来指导更好的分割。 FFM可以将不同深度的FPEM提供的特征收集到最终特征中进行分割。 可学习的后处理是通过像素聚合(PA)实施的,该算法可以通过预测的相似度矢量精确地聚合文本像素。
- 通过分割网络预测文本区域,内核和相似度向量。FPEM + FFM
- 从预测的内核重建完整的文本实例。
贡献
- 提出了一个轻量级的分割部分,它由特征金字塔增强模块(FPEM)和特征融合模块(FFM)组成,这是两个可以改善网络特征表示的高效模块。
- 提出像素聚合(PA),其中文本相似性矢量可以通过网络学习,并用于选择性地聚合文本内核附近的像素。
- 提出的方法在两个弯曲的文本基准上达到了最先进的性能,同时仍保持了58 FPS的推理速度。
整体架构
分割部分有两个关键模块:特征金字塔增强模块(FPEM)和特征融合模块(FFM)。
FPEM是可级联的,并且具有较低的计算成本,可以将其附加在主干网后面,以使不同比例尺的特征更深入,更具表达力。之后,使用特征融合模块(FFM)将不同深度的FPEM产生的特征融合到最终的特征中进行分割。PAN预测文本区域以描述文本实例的完整形状,并预测内核以区分不同的文本实例。 网络还预测每个文本像素的相似度矢量,因此同一文本实例中像素和内核的相似度向量之间的距离很小。
Lightweight Backbone是ResNet-18,由主干的conv2,conv3,conv4和conv5阶段生成4个特征图(相对于输入图像,它们具有4、8、16、32像素的步幅)。 我们使用1×1卷积将每个特征图的通道数减少到128,并获得瘦特征金字塔Fr。然后使用 n c n_c nc 个级联的FPEM增强这个特征金字塔。每一个FPEM产生一个增强的特征金字塔,因此有 n c n_c nc 个特征金字塔 F 1 , F 2 , ⋯ , f n c F^1, F^2, \cdots, f^{n_c} F1,F2,⋯,fnc 。然后使用FFM把 n c n_c nc 个特征金字塔融合在一起得到 F f F_f Ff , 步长是4,通道数是512。使用 F f F_f Ff 预测出文本区域,内核和相似度向量。最后使用简单有效的后处理算法获得最终的文本实例。
特征金字塔增强模块(FPEM)
“+”, “2×”, “DWConv”, “Conv” 和 “BN” 分别代表 逐元素相加,2× 线性上采样,深度卷积,常规卷积和批量归一化
包含两个阶段:放大增强和缩小增强。放大增强作用在输特征金字塔上。 在此阶段,对步长分别为32、16、8、4个像素的特征图进行迭代增强。 在缩小阶段,输入是通过放大增强生成的特征金字塔,并且增强从4步进行到32步。与此同时,缩小增强的输出特征金字塔是FPEM的最终输出。
与FPN的不同 :首先,FPEM是可级联的模块。 随着级联数nc的增加,不同尺度的特征图被更充分地融合,特征的感受野变大。 其次,FPEM在计算上高效。 FPEM是通过可分解卷积构建的,它需要最少的计算。 FPEM的FLOPS约为FPN的1/5。
特征融合模块(FFM)
“ +”是逐元素加法。 “ C”是上采样和级联的操作。4×128通道
像素聚合(PA)
文本像素和相同文本实例的内核的距离是小的。聚合损失
L
a
g
g
=
1
N
∑
i
=
1
N
1
∣
T
i
∣
∑
p
∈
T
i
l
n
(
D
(
p
,
K
i
)
+
1
)
L_{agg} = \frac{1}{N} \sum_{i=1}^N \frac{1}{|T_i|} \sum_{p \in T_i} ln(\mathcal{D}(p, K_i) + 1)
Lagg=N1i=1∑N∣Ti∣1p∈Ti∑ln(D(p,Ki)+1)
D ( p , K i ) = m a x ( ∣ ∣ F ( p ) − G ( K i ) ∣ ∣ − δ a g g , 0 ) 2 \mathcal{D} (p, K_i) = max(||\mathcal{F}(p) - \mathcal{G}(K_i)|| - \delta_{agg}, 0)^2 D(p,Ki)=max(∣∣F(p)−G(Ki)∣∣−δagg,0)2
其中, N N N 是文本实例的数量。 T i T_i Ti 是第 i i i 个文本实例。 D ( p , K i ) D(p, K_i) D(p,Ki) 定义了文本像素 p p p 和 文本实例 T i T_i Ti 的内核 K i K_i Ki 之间的距离。 δ a g g \delta_{agg} δagg 是一个常量,在实验中设置为 0.5,用来过滤一些简单的样本。 F ( p ) \mathcal{F}(p) F(p) 是 像素 p p p 的相似度向量。 G ( ⋅ ) \mathcal{G}(\cdot) G(⋅) 是内核 K i K_i Ki 的相似度向量,可以通过 ∑ q ∈ K i F ( q ) / ∣ K i ∣ \sum_{q \in K_i} \mathcal{F}(q) / |K_i| ∑q∈KiF(q)/∣Ki∣ 计算
此外,聚类中心需要保持区别。 因此,不同文本实例的内核应保持足够的距离。
L
d
i
s
=
1
N
(
N
−
1
)
∑
i
=
1
N
∑
j
=
1
j
≠
i
N
l
n
(
D
(
K
i
,
K
j
)
+
1
)
\mathcal{L}_{dis} = \frac{1}{N(N-1)} \sum_{i=1}^N \sum_{j=1 \\ j \neq i}^N ln(\mathcal{D}(K_i, K_j) + 1)
Ldis=N(N−1)1i=1∑Nj=1j=i∑Nln(D(Ki,Kj)+1)
D ( K i , K j ) = m a x ( δ d i s − ∣ ∣ G ( K i ) − G ( K j ) ∣ ∣ , 0 ) 2 \mathcal{D}(K_i, K_j) = max(\delta_{dis} - ||\mathcal{G}(K_i) - \mathcal{G}(K_j)||, 0)^2 D(Ki,Kj)=max(δdis−∣∣G(Ki)−G(Kj)∣∣,0)2
L d i s L_{dis} Ldis尝试使内核之间的距离不小于我们所有实验中设置为3的 δ d i s δ_{dis} δdis
后处理步骤
- 在内核的分割结果中找到连接的组件,每个连接的组件都是一个内核。
- 对于每个核 K i K_i Ki,有条件地将其相邻文本像素(4向) p p p 合并在预测文本区域中,而它们的相似性向量的欧几里得距离小于d。
- 重复步骤2,直到没有合格的邻居文本像素。
损失函数
L = L t e x + α L k e r + β ( L a g g + L d i s ) \mathcal{L} = \mathcal{L}_{tex} + \alpha \mathcal{L}_{ker} + \beta(\mathcal{L}_{agg} + \mathcal{L}_{dis}) L=Ltex+αLker+β(Lagg+Ldis)
其中 L t e x \mathcal{L}_{tex} Ltex 是文本区域损失, L k e r \mathcal{L}_{ker} Lker 是内核损失。 α \alpha α 和 β \beta β 是平衡因子,在所有实验中设置为 0.5 和 0.25。
dice loss
L
t
e
x
=
1
−
2
∑
i
P
t
e
x
(
i
)
G
t
e
x
(
i
)
∑
i
P
t
e
x
(
i
)
2
+
∑
i
G
t
e
x
(
i
)
2
\mathcal{L}_{tex} = 1 - \frac{2 \sum_i P_{tex}(i) G_{tex}(i)}{\sum_i P_{tex}(i)^2 + \sum_i G_{tex}(i)^2}
Ltex=1−∑iPtex(i)2+∑iGtex(i)22∑iPtex(i)Gtex(i)
L k e r = 1 − 2 ∑ i P k e r ( i ) G k e r ( i ) ∑ i P k e r ( i ) 2 + ∑ i G k e r ( i ) 2 \mathcal{L}_{ker} = 1 - \frac{2 \sum_i P_{ker}(i) G_{ker}(i)}{\sum_i P_{ker}(i)^2 + \sum_i G_{ker}(i)^2} Lker=1−∑iPker(i)2+∑iGker(i)22∑iPker(i)Gker(i)
其中 P t e x ( i ) P_{tex}(i) Ptex(i) 和 G t e x ( i ) G_{tex}(i) Gtex(i) 分别是分割结果中和真实结果中文本实例中第 i i i 个像素的值。