ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

EAST模型与seglink模型

2019-11-30 14:56:12  阅读:540  来源: 互联网

标签:map links seglink 模型 feature 卷积 EAST segment segments


EAST模型与seglink模型

一、EAST(Efficient and Accuracy Scene Text)模型

相关资料:https://blog.csdn.net/attitude_yu/article/details/80724187(中文翻译)

论文原文:https://arxiv.org/abs/1704.03155

代码地址:https://github.com/argman/EAST

 

内容:

1.概述:该模型只有两个阶段:

第一个阶段是基于全卷积网络(FCN)模型,直接产生文本框预测;

第二个阶段是对生成的文本预测框(可以是旋转矩形或矩形)经过非极大值抑制(NMS,简单地说就是基于高度相关的条件下通过阈值合并相邻文本框)以产生最终结果。该模型放弃了不必要的中间步骤,进行端到端的训练和优化

 

2.网络结构

                        特征提取-特征合并-输出层

 

 

输入:虽然这个网络中没有提输入,但是还是有必要简单了解一下,该模型的输入的图像为512x512;

此外,虽然原文用的PVANet网络,但实际运用中多采用vgg16;

 

特征提取:首先,利用在ImageNet数据集上预训练的卷积网络参数初始化;然后,基于VGG16模型从特征提取阶段中提取四个级别的特征图(记为fi),其大小分别为输入图像的1/32 1/16 1/8和1/4。另外,提取了pooling-2到pooling-5后的特征图用于特征合并。

 

特征合并:逐层合并,在每个阶段合并。

首先,将来自上一个阶段的特征图首先被输入到一个unpooling层来扩大其大小;然后,与当前层特征图进行合并(通道);最后,通过conv1×1 减少通道数量和计算量;conv3×3,将局部信息融合以最终产生该合并阶段的输出。在最后一个合并阶段之后,conv3×3层会生成合并分支的最终特征图并将其送到输出层。

 

输出层:

包含若干个conv1×1操作,以将32个通道的特征图投影到1个通道的分数特征图Fs和一个多通道几何图形特征图Fg。几何形状输出可以是RBOX或QUAD中的任意一种

RBOX:几何形状由4个通道的水平边界框(AABB)R和1个通道的旋转角度θ表示。AABB 4个通道分别表示从像素位置到矩形的顶部,右侧,底部,左侧边界的4个距离

QUAD:使用8个数字来表示从矩形的四个顶点到像素位置的坐标偏移,由于每个距离偏移量都包含两个数字(Δxi;Δyi),因此几何形状输出包含8个通道。

3.关键操作

 

(a)文本矩形(黄色虚线)和缩小的矩形(绿色实线); ——缩小:一般将标注框缩小0.3比例的大小进行训练,减少标注误差。

(b)文本score 特征图;

(c)RBOX框几何图;

(d)每个像素到矩形边界的4个通道距离;

(e)旋转角度。

 

对上述过程总结:

首先,缩小矩形,然后生成一个旋转矩形,以最小面积覆盖该区域;然后,对于RBOX标注框,计算每个有正分数的像素与文本框4个边界的距离;对于QUAD 标注框,计算每个有正分数的像素与文本框4个顶点的坐标偏移。

 

NMS:局部感知(本文提出逐行合并几何图形,假设来自附近像素的几何图形倾向于高度相关)

1.先对所有的output box集合结合相应的阈值(大于阈值则进行合并,小于阈值则不合并),将置信度得分作为权重加权合并,得到合并后的bbox集合;

 

2.对合并后的bbox集合进行标准的NMS操作。

 

 

4.损失函数:

 

 其中,Ls和Lg分别表示分数图和几何图的损失,λg表示两个损失之间的重要性(本文实验λg=1)

 

 

 

 

对应的值:ls:分数损失,是指预测值与标注值之间的损失,具体采用的方法是:类平衡交叉熵(解决类别不平衡训练)

lg指图形损失:包括RBOX的损失,采取的是IOU损失以及角度损失;和QUAD损失,计算的则是文本框的预测偏移量。

 

 

 

二、SEGlink

1.论文网址:https://arxiv.org/abs/1703.06520

2.代码地址:https://github.com/bgshih/seglink

3.具体实现解读:

(1)网络结构图

 

 

输入与输出:

首先是输入,因为网络全部采用卷积结构,所有对输入图片大小没有要求,可以是任意大小和任意长宽比

输出文章称为segments和links。segments可以理解为是一个一个的小框,这些小框类似于SSD中的default boxes,它们不一定一个框能框一个字,可能就框一个字的一部分,一个segment用公式

 

表示,其中xb,yb表示segment的中心,wb,hb表示segment的宽和高,θb表示该segment的旋转角。links就是将segments连接起来,说白了就是两个框是不是同一个文本的一个概率值。

 

网络的backbone(骨架)采用的是VGG-16,将VGG中所有的全连接层改为卷积层(fc6、fc7改为conv6、conv7),并在conv7后面还加了若干个卷积层(conv8_1 - conv11),训练与检测的网络结构类似于SSD,只是这里的feature map是从conv4_3,conv7,conv8_2,conv9_2,conv10_2,conv11这6个层中提取出来的。最后这六层feature map经过卷积处理得到segments和links

 

(2)Segment的检测方法:

首先需要计算default box(均是没有旋转角的矩形);

default boxes的位置可以这样理解,相对于每一个卷积出来的feature map中的每个点都可以找到在原图中的对应点,这个对应于feature map上的在原图中的点就是default boxes的位置。值得注意的是因为提取出了6层feature map,每层都要输出segments。具体的定义如下:

假定输入图片大小为wi x hi;segments定义为b:

 

其中:1个点在feature map上的坐标为(x,y)对应原图的坐标为(xa,ya)

 

 

此外根据经验函数可得出al(default box 的长宽均为该常数):

 

 

每个feature ma 经过卷积后输出的pipline为7;其中两个表示segment的置信度(0,1)以及五个位置偏移量:

 

因此可以求得segment的位置

 

 

(3)links的检测方法:其中links分为Within-Layer与Cross-Layer Link

 

Within-Layer link 检测

  一个link连接着相邻两个segment,表示他们是属于同一个字或者在同一框中。link的作用不仅是将相邻的segment连接起来,还可以区分邻近的segment但是不属于同行或者同一个标定框。

  检测link使用的feature map与检测segment使用的是同一feature map,所以对于同一层feature map来说,一个segment有其他8个相邻的segment,那links就是每个feature map经过卷积后输出16个通道,每两个通道表示segment与邻近的一个segment的link。

 

Cross-Layer Link

  简单的说就是相邻层的feature map之间的segments相连(为了避免不同层输出segment是同一个位置可能只是大小不一样,最终导致不同层产生的框的合并会出现问题);

  这个网络有个重要的属性方便我们进行Cross-Layer Link连接,就是我们提取出来的6个feature map中,上一层的大小是下一层的四倍(长宽各两倍)。但是值得注意的是,只有feature map是偶数的时候才满足这个属性,所以在实际操作中,输入图像的长宽大小都要缩放到128的整数倍。例如,一张1000*800的图片,首先会先缩放到1024*768大小。

  由于上层的feature map为下一层的四倍大小,那相当于一个segment与另一层的四个segment相邻。这时除1-th的feature map外,其他五个feature map每个经过卷积后都要输出8个通道,每两个通道表示一个Cross-Layer Link。

 

每层feature map的输出:

 

 

 

(4)利用Links连接segments

 

 

上述思路大致可以简述为:

1.将连接后的所有segments当作一个集合B;

2.求解B集合中的旋转角的平均值,作为文本框的旋转角

3.将tanθb作为斜率建立一些列直线,然后利用最小二乘法(B中所有segments的中心点到直线距离的的最小值)找到那条直线。

4.将segment的中心垂直投影到找到的直线。然后找到最远的两个点,其坐标均值为最终输出的框的中心,然后就是长度为两点距离;θ为均值

 

(5)训练

正样本:

(1)default box的中心在标定文本框内

(2)default box的长宽al与文本框的高h满足一定公式:

 

负样本:不满足上述两点即为负样本

 

位置偏移量:计算方式

 

 

损失函数:

 

 

参数解读:

ys,yl:segments 和links的标签值

cs,cl:segments 和links的预测值

 

Lconf:softmax loss,用于计算segments和links置信度的损失

 

Ns:图像中所有正样本的default boxes的个数

Nl:图像中所有正样本的links的个数

λ作者默认均为1;

 

(6)结果:

 

不足:还是不能很好的的解决同行的画在一个框的问题。例如(a),(b)中的红色的框。

 

 

 

标签:map,links,seglink,模型,feature,卷积,EAST,segment,segments
来源: https://www.cnblogs.com/windfish/p/11962451.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有