EAST
EAST模型的网络结构 包含特征提取分支(Feature extractor stem)、特征合并分支(Feature-merging branch)以及输出层(Output layer)三个部分。
EAST模型是一个全卷积神经网络(FCN),主要用于预测每个像素是否是文本或单词。它剔除了之前一些卷积神经网络中的区域候选、文本格式化等操作,使得模型结构更加简洁明了。
在特征提取分支部分,EAST模型通常使用预训练的卷积神经网络(如VGG16)进行初始化,并从不同阶段的卷积层中抽取出特征图。这些特征图的大小和尺度有所不同,以便于检测不同尺度的文本行。
特征合并分支则是将不同尺度的特征图进行合并,以生成包含多尺度信息的最终特征图。这一步骤有助于模型更准确地检测不同尺度的文本。
输出层部分,模型通过卷积操作得到score map(分数图)和几何图形特征图。分数图用于表示每个像素属于文本区域的概率,而几何图形特征图则用于表示文本区域的几何形状和位置。
此外,EAST模型还采用了端到端的训练和优化策略,使得整个网络可以协同工作以产生更准确的文本检测结果。
模型介绍
CTPN在水平文本的检测方面效果比较好,但是对于竖直方向的文本,或者多方向的文本,CTPN检测就很差。然而,在实际场景中,我们会遇到多种存在竖直方向文本的情况,例如很多书本封面的文本,如 图1 所示。
在实际场景中,尤其是处理如书本封面这样的文本时,确实会遇到很多竖直方向的文本。为了应对这种情况,可以考虑以下几种策略:
改进CTPN模型:通过调整anchor机制、引入旋转不变性特征或采用多方向预测等方法,可以改进CTPN模型以更好地检测竖直方向或多方向的文本。这需要一定的算法设计和实验验证。
使用其他文本检测模型:除了CTPN之外,还有很多其他的文本检测模型可以处理竖直方向或多方向的文本。例如,EAST(Efficient and Accurate Scene Text Detector)和SegLink等模型在处理多方向文本时表现出色。这些模型采用了不同的算法设计和特征提取方法,可以更好地适应不同方向和形状的文本。
预处理和后处理:在文本检测过程中,可以通过预处理和后处理来改善竖直方向文本的检测效果。例如,在预处理阶段,可以对图像进行旋转或变换以将竖直文本转换为水平文本;在后处理阶段,可以对检测到的文本框进行旋转或调整以更好地匹配竖直文本的方向和形状。
使用多种模型融合:可以将多种文本检测模型进行融合,以充分利用不同模型的优点。例如,可以先使用CTPN检测水平文本,再使用其他模型检测竖直方向或多方向的文本,并将两者的结果进行融合和优化。
因此,很多学者也提出了各种改进方法,其中,比较经典一篇的就是旷世科技在2017年提出来的EAST[1]模型。
模型结构
EAST模型的网络结构确实包含特征提取分支(Feature extractor stem)、特征合并分支(Feature-merging branch)以及输出层(Output layer)三个部分。
EAST模型是一个全卷积神经网络(FCN),主要用于预测每个像素是否是文本或单词。它剔除了之前一些卷积神经网络中的区域候选、文本格式化等操作,使得模型结构更加简洁明了。
在特征提取分支部分,EAST模型通常使用预训练的卷积神经网络(如VGG16)进行初始化,并从不同阶段的卷积层中抽取出特征图。这些特征图的大小和尺度有所不同,以便于检测不同尺度的文本行。
特征合并分支则是将不同尺度的特征图进行合并,以生成包含多尺度信息的最终特征图。这一步骤有助于模型更准确地检测不同尺度的文本。
输出层部分,模型通过卷积操作得到score map(分数图)和几何图形特征图。分数图用于表示每个像素属于文本区域的概率,而几何图形特征图则用于表示文本区域的几何形状和位置。
此外,EAST模型还采用了端到端的训练和优化策略,使得整个网络可以协同工作以产生更准确的文本检测结果。
EAST的网络结构总共包含三个部分:Feature extractor stem(特征提取分支), Feature-merging branch(特征合并分支) 以及 Output layer(输出层),网络结构如 图2 所示:
每一部分网络结构:
1)特征提取分支
- 使用backbone网络提取特征,论文默认backbone为PVANet;
也可以使用其他的卷积网络,比如VGG16等
2)特征合并分支
由于在一张图片中,各个文字尺寸大小不一致,所以需要融合不同层次的特征图,小文字的预测需要用到底层的语义信息,大文字的预测要用到高层的语义信息。
-
上一步提取的feature map f1被最先送入unpool层(将原特征图放大2倍);
-
然后与前一层的feature map f2进行拼接;
-
接着依次送入卷积核大小为1×1和3×3的卷积层,核数通道数随着层递减,依次为128,64,32;
-
重复上面三个步骤2次;
-
最后将经过一个卷积核大小为3×3,核数通道数为32个的卷积层;
3)输出层
网络层的输出包含文本得分和文本形状,根据不同的文本形状又分为RBOX和QUAD两种情况:
-
RBOX:主要用来预测旋转矩形的文本,包含文本得分和文本形状(AABB boundingbox 和rotate angle),一共有6个输出,这里AABB分别表示相对于top,right,bottom,left的偏移;
-
QUAD:用来预测不规则四边形的文本,包含文本得分和文本形状(8个相对于corner vertices的偏移),一共有9个输出,其中QUAD有8个,分别为 ( x i , y i ) , i ∈ [ 1 , 2 , 3 , 4 ] (x_{i},y_{i}),i\in[1,2,3,4] (xi,yi),i∈[1,2,3,4]。
模型loss
EAST损失函数由两部分组成,具体公式如下:
L = L s + λ g L g L=L_{s}+λ_{g}L_{g} L=L