searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

SVTR模型,单视觉模型来进行场景文字识别介绍

2023-04-28 06:05:17
99
0

1. 核心思想

之前的场景文字识别,通常需要两个模块(1-视觉模型用来提取特征,2-序列模型用来文本转译),这篇论文提出了只用1-视觉模型来进行场景文字识别,条件是视觉模型能够提取到--有判别力的字符特征(包含字符内形体特征和字符间的依赖特征)。为此,论文提出了一个特制的视觉模型SVTR。

2. 详细过程

整个网络如下图所示,对于输入的图片,首先进行Patch Embedding将图片转换成字符组块的token,然后接入3层高度渐进递减的混合blocks来行特征提取(blocks里面的核心是Local/Global Mixing),最后通过一个全连接层来进行文本接结果输出。

 

2.1 图片分块Patch Embedding模块

对于输入图片,第一步就是获取表征字符部件属性的特征块。对于获取特征块,传统的方法有两种:
  1. 通过kenal、stride都为4的不交叠卷积层
  2. 通过kenal=7、stride=4的交叠卷积层

这篇论文,采取了2层kenal=3、stride=2的CONV+BN+GELU模块,来获取特征块。相比传统的两种方式,在消融实验中有精度提升。



2.2 混合模块Mixing Blocks


  • 混合模块Mixing Blocks中主要创新点为全局混合(global mixing)和局部混合(local mixing)
  • 全局混合(global mixing),基本思想类似与自注意力机制。
  • 局部混合(local mixing)的基本思想类似于卷积,也就是只关注像素点周围(论文中设置为7*11)的区域。具体实现方式如下:
  1. 同全局混合(global mixing),得到自注意力相关系数attn
  2. 制作一组mask(红点区域内的值设置为0,区域设置为-inf)
  3. relationship = softmax(attn+mask)(softmax前,红点区域值不变,区域部分都变为-inf,经过softmax后,红点区域外的值均为0,红点区域内的值则为相关系数)
  4. relationship和value进行矩阵乘积,在添加一个全连接的线性变化,得到混合结果


  • 论文作者认为,局部混合(local mixing)模块擅长提取细粒度的特征,也就是一个字符内部的形体特征,而全局混合(global mixing)模块擅长提取粗粒度的特征,也就是字符间的相互关系等语言学的特征。
  • 在每一组全局混合(global mixing)或局部混合(local mixing)完成后,还要跟上一组MLP(有两个fc和一个激活层组成),然后还有LN和shortcut,重复一定次数来组成一个block。


2.3 合并模块merge

  • 在每一组混合模块Mixing Blocks完成后,需要加一个合并模块merge,它通过一个stride=(2,1)的3X3卷积,来达到使高度降低一半而宽度不变的特征尺寸变换,以及特征维度的变换。
  • 高度减半不仅能降低整体的计算量,还可以融合高度方向的特征,来获取到不同颗粒度的图像特征。而增加特征维度,可以用来补偿高度降低带来的特征损失。



2.4 combine和predict

  • 最后一个混合模块Mixing Blocks之后,会跟一个combine模块,内部有avgpool、全连接linner、激活层hardswish和一个dropout组成。
  • avgpool会将高度继续浓缩到1,宽度保持W/4不变。这边采取avgpool而不是conv的原因,作者解释说是防止在特征高度特别小(h=2)情况下conv所产生的畸变。
  • combine完成后,再接一个N个节点的全连接fc来直接进行预测,得到一个W/4宽度的特征序列。对于全连接fc,如果是英文,则N=37,如果是中文,则N=6625。
  • 最终W/4宽度的特征序列,也是利用CTCdecode的解码方式解码得到最终识别结果。


2.5 实施参数

不同SVTR尺度模型的具体实施参数(中间的混合模块Mixing Blocks,都是先进行几个局部混合local mixing,再进行几个全局混合global mixing)
 

 

3. 消融实验

在消融实验中,作者研究了图片分块Patch Embedding、Merging操作以及局部混合local mixing和全局混合global mixing排列方式的影响。

 

4. 模型评估

  • 作者将SVTR和现有的SOTA模型进行了对比。
    •   英文数据集上,SVTR都能达到或接近最优的准确率水平,同时在推理速度上则有比较大的优势。
    •   中文数据集上,SVTR则能领先SAR算法9.6%的精度,同时推理速度是它的1/6,相比SRN算法,推理速度略快,而精度上则领先了12%。
0条评论
0 / 1000
钱****翔
5文章数
0粉丝数
钱****翔
5 文章 | 0 粉丝
原创

SVTR模型,单视觉模型来进行场景文字识别介绍

2023-04-28 06:05:17
99
0

1. 核心思想

之前的场景文字识别,通常需要两个模块(1-视觉模型用来提取特征,2-序列模型用来文本转译),这篇论文提出了只用1-视觉模型来进行场景文字识别,条件是视觉模型能够提取到--有判别力的字符特征(包含字符内形体特征和字符间的依赖特征)。为此,论文提出了一个特制的视觉模型SVTR。

2. 详细过程

整个网络如下图所示,对于输入的图片,首先进行Patch Embedding将图片转换成字符组块的token,然后接入3层高度渐进递减的混合blocks来行特征提取(blocks里面的核心是Local/Global Mixing),最后通过一个全连接层来进行文本接结果输出。

 

2.1 图片分块Patch Embedding模块

对于输入图片,第一步就是获取表征字符部件属性的特征块。对于获取特征块,传统的方法有两种:
  1. 通过kenal、stride都为4的不交叠卷积层
  2. 通过kenal=7、stride=4的交叠卷积层

这篇论文,采取了2层kenal=3、stride=2的CONV+BN+GELU模块,来获取特征块。相比传统的两种方式,在消融实验中有精度提升。



2.2 混合模块Mixing Blocks


  • 混合模块Mixing Blocks中主要创新点为全局混合(global mixing)和局部混合(local mixing)
  • 全局混合(global mixing),基本思想类似与自注意力机制。
  • 局部混合(local mixing)的基本思想类似于卷积,也就是只关注像素点周围(论文中设置为7*11)的区域。具体实现方式如下:
  1. 同全局混合(global mixing),得到自注意力相关系数attn
  2. 制作一组mask(红点区域内的值设置为0,区域设置为-inf)
  3. relationship = softmax(attn+mask)(softmax前,红点区域值不变,区域部分都变为-inf,经过softmax后,红点区域外的值均为0,红点区域内的值则为相关系数)
  4. relationship和value进行矩阵乘积,在添加一个全连接的线性变化,得到混合结果


  • 论文作者认为,局部混合(local mixing)模块擅长提取细粒度的特征,也就是一个字符内部的形体特征,而全局混合(global mixing)模块擅长提取粗粒度的特征,也就是字符间的相互关系等语言学的特征。
  • 在每一组全局混合(global mixing)或局部混合(local mixing)完成后,还要跟上一组MLP(有两个fc和一个激活层组成),然后还有LN和shortcut,重复一定次数来组成一个block。


2.3 合并模块merge

  • 在每一组混合模块Mixing Blocks完成后,需要加一个合并模块merge,它通过一个stride=(2,1)的3X3卷积,来达到使高度降低一半而宽度不变的特征尺寸变换,以及特征维度的变换。
  • 高度减半不仅能降低整体的计算量,还可以融合高度方向的特征,来获取到不同颗粒度的图像特征。而增加特征维度,可以用来补偿高度降低带来的特征损失。



2.4 combine和predict

  • 最后一个混合模块Mixing Blocks之后,会跟一个combine模块,内部有avgpool、全连接linner、激活层hardswish和一个dropout组成。
  • avgpool会将高度继续浓缩到1,宽度保持W/4不变。这边采取avgpool而不是conv的原因,作者解释说是防止在特征高度特别小(h=2)情况下conv所产生的畸变。
  • combine完成后,再接一个N个节点的全连接fc来直接进行预测,得到一个W/4宽度的特征序列。对于全连接fc,如果是英文,则N=37,如果是中文,则N=6625。
  • 最终W/4宽度的特征序列,也是利用CTCdecode的解码方式解码得到最终识别结果。


2.5 实施参数

不同SVTR尺度模型的具体实施参数(中间的混合模块Mixing Blocks,都是先进行几个局部混合local mixing,再进行几个全局混合global mixing)
 

 

3. 消融实验

在消融实验中,作者研究了图片分块Patch Embedding、Merging操作以及局部混合local mixing和全局混合global mixing排列方式的影响。

 

4. 模型评估

  • 作者将SVTR和现有的SOTA模型进行了对比。
    •   英文数据集上,SVTR都能达到或接近最优的准确率水平,同时在推理速度上则有比较大的优势。
    •   中文数据集上,SVTR则能领先SAR算法9.6%的精度,同时推理速度是它的1/6,相比SRN算法,推理速度略快,而精度上则领先了12%。
文章来自个人专栏
计算机视觉
5 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0