文章目录
1. 前言
本周开始看模型篇,本周目标:CTPN,RRPN,DMPNet,EAST,冲鸭!!
第一篇,CTPN(Connectionist Text Proposal Network),其实是基于Faster R-CNN改进的,将RPN的体系结构扩展到文本识别上面,达到了state-of-art水平。
2. 实现
2.1 关键idea
1.开发了一种锚(anchor)回归机制,可以联合预测每个文本提案的垂直位置和文本/非文本得分,从而获得极好的定位精度;
2.RNN网络内递推机制,它优雅地在卷积特征映射中处理顺序文本建议;
3.CNN+RNN无缝集成,以满足文本序列的本质,形成统一的端到端可培训模型。能够在一个进程中处理多尺度和多语言的文本,避免了进一步的后过滤或细化。
2.2 模型结构
1.用VGG16的前5个Conv stage(到conv5)得到feature map(WxHxC);
2.在Conv5的feature map的每个位置上取3x3xC的窗口的特征,这些特征将用于预测该位置k个anchor对应的类别信息,位置信息;
3.将每一行的所有窗口对应的3x3xC的特征(Wx3x3xC)输入到RNN(BLSTM)中,得到Wx256的输出;
4.将RNN的Wx256输入到512维的fc层;
5.fc层特征输入到三个分类或者回归层中。第二个2k scores 表示的是k个anchor的类别信息(是字符或不是字符)。第一个2k vertical coordinate和第三个k side-refinement是用来回归k个anchor的位置信息。2k vertical coordinate表示的是bounding box的高度和中心的y轴坐标(可以决定上下边界),k个side-refinement表示的bounding box的水平平移量。这边注意,只用了3个参数表示回归的bounding box,因为这里默认了每个anchor的width是16,且不再变化(VGG16的conv5的stride是16)。回归出来的box如上图a中那些红色的细长矩形,它们的宽度是一定的;
6.用简单的文本线构造算法,把分类得到的文字的proposal(图b中的细长的矩形)合并成文本线。
2.3 具体细节
1.检测小尺度文本框(Detecting Text in Fine-scale Proposals)
- k个anchor的设置:宽度固定为16,高度范围为11~273像素(每次除以0.7)
- 预测k个