论文阅读Mask R-CNN with PAN

论文题目: Mask R-CNN with Pyramid Attention Network for Scene Text Detection
论文原文:论文链接

创新点

在本文中,我们提出了一种新的基于Mask R-CNN的文本检测方法,该方法能够以自由的方式稳健地检测来自自然场景图像的多方向和弯曲文本。为了增强Mask R-CNN用于文本检测任务的特征表示能力,使用金字塔注意网络(PAN)作为Mask R-CNN的新骨干网络

模型

基于Mask R-CNN的文本检测网络由四个模块组成:

  1. PAN特征金字塔骨干网络,负责在整个图像上计算多尺度卷积特征金字塔;
  2. 产生矩形文本proposal的区域提议网络(RPN);
  3. Faster R-CNN检测器,对提取的proposal进行分类并输出相应的四边形边界框;
  4. Mask预测网络,用于预测输入proposal的文本掩码。
    网络整体架构

PAN金字塔注意网络

金字塔注意网络(PAN)主要由两个模块组成,即Feature Pyramid Attention(FPA)模块和Global Attention Up-sample(GAU)模块。 FPA模块对高级特征执行空间金字塔注意,并结合全局池化以学习更好的高级特征表示。 GAU模块附加在每个解码器层上,以提供全局上下文作为低级特征的指导,以选择类别本地化细节。

FPA结构,如图2所示:
FPA结构

  1. 在ResNet50或ResNeXt50之上构建PAN
  2. 将ResNet50或ResNeXt50中Res-4层的输出特征图作为输入,在其上分别以3,6,12的采样率执行3×3扩张卷积,以更好地提取上下文信息。将这三个特征图连接起来,并通过1×1卷积层降维处理。
  3. FPA在输入Res-4上进一步形成1×1卷积,其输出与上述上下文特征图对应位置相乘。
  4. 提取的特征与全局池化分支的输出特征加在一起,以获得最终的金字塔注意特征。

GAU模块,如图3所示:
GAU模块

  1. 对低级特征执行3×3卷积,以减少来自CNN的特征图的通道。
  2. 对高级特征进行全局池化后,通过1×1卷积与实例归一化[35]和ReLU非线性,然后乘以低级特征。
  3. 通过上采样的高级特征与加权的低级特征相加,以生成GAU特征。

通过上述FPA和GAU模块,我们构建了一个具有三个级别的强大特征金字塔,即P2,P3和P4,其大小分别为原图的1/4,1/8和1/16。整体PAN架构如图4所示
PAN结构

RPN区域提议网络PRN

三个RPN分别连接到P2,P3和P4,每个RPN在相应的金字塔等级上密集地滑动一个小网络,以执行文本/非文本分类和边界框回归。

小网络实现为3×3卷积层,后面是两个1×1卷积层,分别用于预测文本分数和矩形边界框位置。

具体来说,
我们通过使用6个纵横比{0.2, 0.5, 1.0, 2.0, 4.0, 8.0}和一个尺度{32,64,128},在{P2,P3,P4}的每个金字塔等级上的每个滑动位置设计6个anchor。将所有三个RPN的检测结果聚合在一起以构建proposal集{D}。

然后,我们使用标准的非最大抑制(NMS)算法,其IoU阈值为0.7,以删除{D}中的冗余提议,

最后,为Faster R-CNN和Mask预测网络选择评分Top-N的propoasl。在训练和测试阶段N均设为2000。

Fast R-CNN & Mask预测网络

为实现这一目标,提出了一种Skip-RoIAlign方法来融合P2,P3和P4级别的特征。

具体地说,

首先,对于每个propoasl,我们分别在P2,P3和P4金字塔等级上应用ROIAlign,得到三个固定大小为7×7的特征图;

然后,连接这些特征图,并且用1×1卷积层进行降维处理,以获得最终的ROI特征;

最后,将这些ROI特征送到Faster RCNN和Mask预测网络中以和mask预测。

  • 对于Faster RCNN,将ROI特征进行全局平均池化后,进行文本/非文本分类,四边形边界框回归

  • 对于Mask预测网络,在ROI特征后进行四个连续的3×3卷积层,之后上采样到14×14大小的特征图,进行Mask预测
    Fast R-CNN & Mask预测网络

损失函数

RPN的的损失函数

每个单独的RPN有两个兄弟输出层,即文本/非文本分类层和矩形边界框回归层。 多任务丢失功能可表示如下:
RPN损失函数
Lambda_loc为平衡参数,设置为3。
RPN网络的总损失为三个单独的RPN网络的总和。

Faster R-CNN的损失函数

文本和非文本分类,Bounding Box回归
Faster R-CNN的损失函数
Lambda_loc为平衡参数,设置为1。

Mask预测网络的损失函数

采用标准的二值交叉熵损失
Mask预测网络的损失函数
全局损失函数如下:
全局损失函数
Lambda_mask为Mask分支的平衡参数,这里设置为0.03125

实验

数据集

ICDAR-2017 MLT

ICDAR-2015

SCUT-CTW 1500

实验细节

对于ICDAR-2017 MLT和ICDAR-2015数据集,我们直接使用Fast R-CNN模块预测的四边形边界框作为最终检测结果,

对于弯曲文本检测数据集SCUT-CTW 1500,我们使用由Mask预测网络预测的文本Mask为最终检测结果。

部件评估

结论:

  • ResNeXt50比ResNet50好
  • PAN比FPN好
    在这里插入图片描述

对比实验

在这里插入图片描述
在这里插入图片描述
部分实验结果展示
在这里插入图片描述
在ICDAR-2017 MLT上的部分实验结果
在这里插入图片描述
在SCUT-CTW 1500上的部分实验结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42367386/article/details/89817533