ECCV 2022 | 亚马逊提出GLASS:场景文字识别中的全局到局部注意力

本文主要是介绍ECCV 2022 | 亚马逊提出GLASS:场景文字识别中的全局到局部注意力,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

点击进入—> CV 微信技术交流群

转载自:CSIG文档图像分析与识别专委会

ae104c7c3426b9f0d8e6ae55fbaefa69.png

论文:https://arxiv.org/abs/2208.03364

代码(已开源):

https://github.com/amazon-research/glass-text-spotting

本文简要介绍ECCV 2022录用论文“GLASS: Global to Local Attention for Scene-Text Spotting”的主要工作。这篇文章针对场景文字端到端识别任务,提出了一个从全局到局部的注意力模块。这个模块结合了全局特征(从共享的主干网络中提取的特征)和局部特征(从原图中裁剪下来的图片,然后再送入一个识别的主干网络提取的特征)融合到一起再进行识别,极大提升了模型的性能。同时文章还提出了一个新的损失函数来提升模型对旋转文本识别的能力。在多个公开数据集上,该论文提出的模型都取得了很好的效果。论文提出的模型也可以用到现在有的框架上。

559b77e308322da1edf280f48a5312ef.png

图1. 场景文字端到端识别方法总览。(a)两阶段检测识别。一个独立的文本检测器后面跟着一个独立的识别器。两者是单独训练的。(b) 端到端文字识别。检测与识别协同优化。(c)论文提出的模块同时结合了(a)和(b)的优势。特征图使用交错注意进行融合,提高了对缩放和旋转的鲁棒性,以及整体性能。

一、研究背景

场景文字端到端识别,即在自然场景图片中检测出文本实例并识别出文字的内容,近年来在性能上有了显著的提高。它现在通常用于许多真实的场景中,比如自动驾驶、文档分析和地理定位等。场景文字端到端识别挑战在于,有些单词可能跨越整个图像,而另一些单词,可能就只占据图像很小的一部分,例如,离得很远导致几乎看不到的交通标志。两者的尺度变成非常大,导致了模型性能不佳。论文为了解决文本尺度的变化大,以及文本旋转的问题,提出了一个GLASS模块,在极端尺度变化的情况下增强了模型的性能,并且还设计了一个周期的,针对旋转的损失函数,增强了模型对于任意旋转角度的文本的检测性能。

二、方法原理简述

90f0961c699ae926d0f12e8139dea52a.png

图2. 网络整体框架图。

图片输入到主干网络提取特征,然后输入到检测器中,这个检测器是一个基于Rotated Mask RCNN的检测器,先用一个Rrotated RPN来生成一些旋转的一些Pproposal,然后提取RoI特征,然后对这些旋转的Proposal进行一个精调。得到一个精细的旋转框。然后再用这些旋转框进行Rotated RoIAlign提取RoI特征, 生成Mask。然后就到了识别部分。首先检测部分生成的旋转框从主干网络输出的特征中使用Rotated RoIAlign 提取识别部分的RoI特征这部分Global 的特征,然后再用检测部分生成的旋转框从输入的图片中把旋转文本Crop出来,再送入到一个Res34的主干网络中提取特征,这部分就是Local的特征。最后把这两个特征送入到Interleaved Feature Attention进行融合,然后再送入到识别器中。这里使用的识别器是ASTER。下图是图1中GALSS的详细结构。

225456181b2a20cc9a90af74f4e29f31.png

图3. 全局到局部注意特征融合。

图2中的这个 Local特征是从图片裁剪得到的特征,分辨率高。全局特征5dce0edf8f0392bd879ca4aabf9a1ab3.png是从Backbone采样的特征,其感受野比局部特征eaabf055d0b320756fb6023ad18ba862.png要大。首先,先把这两个特征在通道上分组,分成K组,然后再拼接起来。然后送入到这个Interleaved Attention中,通过卷积和Softmax得到一个热图,然后乘上原来的特征进行加权求和。总共得到K组这样的特征,然后再把这个特征加回到拼接的特征那里。得到最后的特征96bf3bb0b74467d6fcf0daedb7561289.png9ce1bf502c2927a269b5f50927872d67.png就是送入识别的那个特征。

4543d40877b41e74f83d6de85153204e.png

用于端到端监督训练的总损失函数为

9414f59eee42917c7fee1a5296ab58e4.png的计算与Mask RCNN中一致,9211664feb8e72ae82bc26a51861560a.png的计算与ASTER一致,3067eff3ec54bfb67dfb6489c30c319a.png的计算如下

ab57a4b29add555a78067171c3ae7ce7.png

计算角度损失时,使用了文章提的基于正弦函数的Loss来计算。

三、主要实验结果及可视化结果

下面是本文的一些实验结果

e837c0a00d69a6d70c6d0f5a600e5cf5.png

3cde2cd92d146f1c74846ca3d1c1ffc8.png

b0834d79a98af2c1dbf75b67280cb316.png

3c89a24c817532a5790071af21bfd2f3.png

b1fc1996ce607872d26f9c11febb0315.png

18cc98a3dc0c530d5a9aa524b2ee2e87.png

268682be1d1e7323da7d873f509421d1.png

下面是一些可视化图

5b0b01c8048699742469e37f10629eef.png

四、总结及讨论

本文对现有的场景文字端到端识别提出了两个扩展。首先是提出了一个GLASS模块, 将全局和局部特征结合起来,实现端到端文本识别。另一个是为旋转文本检测提出了一个新的损失函数。在多个数据集上,都证明了本文提出方法的有效性。

参考文献

[1] Ronen R, Tsiper S, Anschel O, et al. GLASS: Global to Local Attention for Scene-Text Spotting[C]. ECCV 2022.

[2] Liao M, Pang G, Huang J, et al. Mask textspotter v3: Segmentation proposal network for robust scene text spotting[C]. ECCV 2020.

[3] Liu Y, Shen C, Jin L, et al. Abcnet v2: Adaptive bezier-curve network for real-time end-to-end text spotting[J]. TPAMI, 2021.


原文作者:  Roi Ronen, Shahar Tsiper, Oron Anschel, Inbal Lavi, Amir Markovitz, and R. Manmatha.

撰稿:黄明鑫 编排:高 学  

审校:连宙辉 发布:金连文

 

点击进入—> CV 微信技术交流群

CVPR/ECCV 2022论文和代码下载

 

后台回复:CVPR2022,即可下载CVPR 2022论文和代码开源的论文合集

后台回复:ECCV2022,即可下载CVPR 2022论文和代码开源的论文合集

后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF

目标检测和Transformer交流群成立
扫描下方二维码,或者添加微信:CVer222,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲扫码或加微信号: CVer222,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!▲扫码进群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看

这篇关于ECCV 2022 | 亚马逊提出GLASS:场景文字识别中的全局到局部注意力的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757122

相关文章

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Linux alias的三种使用场景方式

《Linuxalias的三种使用场景方式》文章介绍了Linux中`alias`命令的三种使用场景:临时别名、用户级别别名和系统级别别名,临时别名仅在当前终端有效,用户级别别名在当前用户下所有终端有效... 目录linux alias三种使用场景一次性适用于当前用户全局生效,所有用户都可调用删除总结Linux

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码

《在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码》在MyBatis的XML映射文件中,trim元素用于动态添加SQL语句的一部分,处理前缀、后缀及多余的逗号或连接符,示... 在MyBATis的XML映射文件中,<trim>元素用于动态地添加SQL语句的一部分,例如SET或W

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象

Python中异常类型ValueError使用方法与场景

《Python中异常类型ValueError使用方法与场景》:本文主要介绍Python中的ValueError异常类型,它在处理不合适的值时抛出,并提供如何有效使用ValueError的建议,文中... 目录前言什么是 ValueError?什么时候会用到 ValueError?场景 1: 转换数据类型场景

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD