动机
作者认为现在的解决文本检测的方法都是自下而上的建模方式,都是基于像素级、小组件,因此会对噪声比较敏感,且依赖于复杂的启发式后处理操作。
网络框架
网络处理步骤
1. 特征提取:图片送入“特征提取和增强”模块(CNN+FPN)拿到多层次融合的特征图 ,步长为4;
2. 水平建议生成模块:生成“水平文本框”。用“中心点热图”和“大小热图”预测水平文本框的中心点和大小;
3. 定向文本建议生成模块:对上一步生成的“水平文本框”的角点进行回归,生成定向文本框(倾斜的文本框);
4. 任意形状文本轮廓生成网络:对上一步生成的“定向文本框”进行细化,生成任意形状的文本框。
水平文本建议生成模块
通过两个卷积模块对 进行卷积得到中心热图(center heatmap)和大小热图(size heatmap)。
定向文本建议生成模块
主要作用:对“水平边界框”的角点进行回归,生成“定向文本框”。
1. 沿着“水平边界框”的边界均匀采样个点 X。(训练时用的是 ground-truth 的水平文本框,测试时预测框);
2. 使用 CLM(轮廓定位机制)来估计这些采样点(X)的新位置。
3. 角点生成模块 将每个文本框的角点计算为:。表示角点的数量。
CLM
1. CLM 中有一个 CFE(轮廓特征提取器),根据采样点X()从特征图中获取采样点的特征,。( 叫做语义特征)
2. 考虑轮廓点的位置信息 :计算为:。表示轮廓点的最左上角坐标。
3. + 生成 原始轮廓特征 。
4. 轮廓上有一些点时多余的,因此, 输入到 CIA 做一些特征强化,生成更具代表性的边界框特征 。
5. 送入 OPH(偏移预测头)生成角点的偏移量。OPH 由3个 1x1 卷积组成,前两层有 Relu,滤波器数量分别为256,64,2。
6. 新的角点
注意:CLM 中的OPH 用来预测点的偏移,输入的是角点预测的就是角点的偏移,输入的是轮廓点预测的就是轮廓点的偏移。
CIA
主要作用:由得到,丰富轮廓的特征表示。
流程:特征 一次走 9x9 的 CirConv(输出128维,有128个滤波器)--Relu--BN 和 7个CIA Unit(三种不同的空洞率:1,2,4。输出维度为,,N是点的数量,即 ),然后将四组特征进行 cat 得到特征 C,之后走一个 1x1 conv 和 maxpool 得到特征 P,最后特征 C 和 P 做一个 feature distributed 即可得到。
CIA Unit
输入到 CIA Unit 的特征 被扩张循环卷积沿着闭合轮廓的点的循环行编码:生成特征、、。N是轮廓点数量,表示特征维度。
对于轮廓特征 ,由于轮廓点的冗余性和噪声,我们只使用 局部汇聚节点来收集沿着轮廓的的信息。轮廓的全局上下文,也可以看作是一个全局语义汇聚节点。 与局部汇聚节点的特征联级,形成聚合特征
其中, 表示最大池化操作, 表示特征收集操作,它是通过无参数策略实现的,例如自适应平均池化。
同理,从 中得到聚合特征 。
轮廓点和汇聚节点之间的相关性 可以表示为
表示第 i 个轮廓点和第 j 个汇聚节点之间的关系。因此,汇聚节点特征被分布到轮廓点,生成聚合特征
表示元素相加。
任意形状文本轮廓生成网络
主要作用: 对定向文本框进行细化。
1. 在定向文本框上初始化 个点(训练时:定向文本框是 ground-truth; 测试时:定向文本框是定向文本建议生成模块的结果);
2. 使用 K 个 CLM 对 个初始点进行优化,使其贴近文本。
3. 可能有假正例,使用 RCLM(可靠的轮廓定位机制)对回归的点进行过滤。增加检查到的轮廓的置信度。
4. RCLM 输出:最终的轮廓点位置 以及轮廓置信度。
RLCM
相较于 CLM,RCLM 中多了一个 CSM(轮廓评分机制)。
1. 与 CLM 相同,轮廓点输入 CFE(轮廓特征提取器)获取轮廓特征, 经过 CIA 得到 。
2. 送入 OPH 生成轮廓点新坐标 ,同时送入 CSM 生成轮廓评分 S
表示轮廓评分网络,是网络参数。在 中
1. 首先经过一个1x1 卷积(256个滤波器)得到特征表示 。
2. 用平均池化操作 和最大池化操 作生成全局特征表示
3. 最后,三个全连接层(隐藏尺寸为:512、256和2)和一个 softmax 层,生成文本/非文本的最终轮廓得分。
注意:前两个全连接层配备有 LeakyReLU-BN-Dropout