赞
踩
(1)以特征金字塔网络(FPN)为骨干,提取feature map:
自然图像中的文本大小各不相同。为了在所有尺度上构建高层次的语义特征图,我们使用了一个深度为50的ResNet[14]的特征金字塔结构[32]主干。FPN采用自顶向下的体系结构,融合了单尺度输入的不同分辨率特性,提高了精度,同时降低了边际成本。
(2)区域建议网络(RPN)为生成文本建议(ROI):
RPN用于为后续的快速R-CNN和掩码分支生成文本建议。我们根据锚的大小在不同的阶段分配锚。具体来说,锚点的面积分别设置为{P2, P3, P4, P5, P6}五个阶段的{32,64,128,256,512}像素。各阶段还采用不同的纵横比{0.5,1,2}。通过这种方式,RPN可以处理各种大小和长宽比的文本。RoI Align用于提取提案的区域特征。与RoI pooling相比,RoI Align保存了更精确的位置信息,这对于掩模分支中的分割任务非常有利。需要注意的是,在之前的作品中,并没有采用特殊的文本设计,例如文本的特殊纵横比或锚点的方向。
(3)fast R-CNN:
快速R-CNN分支包括一个分类任务和一个回归任务。这个分支的主要功能是为目标检测提供更准确的信息,fast R-CNN的输入为7×7(ROI Align产生)。
(4)Mask Branch:
掩码分支中有两个任务,包括全局文本实例分割任务和字符分割任务。如图所示,给一个输入RoI,其大小是固定的16×64,通过四个卷积层和一层de-convolutional分支预测feature map(32×128大小),包括全局文本实例映射,36个字符映射和背景地图的字符。无论文本实例的形状如何,全局文本实例映射都可以精确地定位文本区域。字符图由36个字符组成,包括26个字母和10个阿拉伯数字。字符的背景图(不包括字符区域)也需要进行后处理
在训练过程中,ROI Align之后fast RCNN模块和Mask模块是同时进行的。也就是说RPN处理过剩下的大概1000-2000个框都需要进入后续的fast RCNN模块和Mask模块。这么多框进入fast RCNN模块可以理解,进入Mask模块可以起到类似随机crop的操作,更加有利于Mask模块中FCN的学习。
在测试阶段,ROI Align之后,先经过fast RCNN模块生成更加少更加精确的文本框,然后再利用这些文本框进行Mask模块的ROI Align操作。
其中,求类别得分这步利用了pixel voting算法。如上图所示,对于每一个特征图通过阈值192进行二值化操作。然后计算每一个特征图中高亮区域的均值,均值得分最高的为预测的类别。
推测部分还对传统的Edit Distance进行了改进,提出了Weighted Edit Distance ,应该是识别之后的矫正工作,保证输出结果为一个真实存在的单词。
多任务损失:
主要包含3个损失,RPN模块的损失,Fast RCNN模块的损失,这些都和faster RCNN的一样。Mask 模块的损失。其中平衡因子a1=1,a2=1。
Mask 模块的损失包含了全局的实例分割的损失和每一个字符的语意分割的损失。其中平衡因子beita=1。
其中Lglobal是binary cross-entropy 损失。S表示gigmoid函数。
Lchar表示加权的soft-max loss 。其中T表示类别数目,N表示所有的像素数目。W表示用于平衡字符和背景的权值。
(1)Mask TextSpotter对曲面的文本具有较好的召回率。
(2)Mask TextSpotter支持整体端到端的训练,是一个集检测+识别的一体化的框架。
(3)识别部分只能识别26个字母+10个数字,简单的场景或许可以,实际应用的话,不现实。如果这里想进行更多类别的分类也不实际。
参考文章:https://blog.csdn.net/qq_14845119/article/details/81505673
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。