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

相关文章

MyBatis-Plus 中 nested() 与 and() 方法详解(最佳实践场景)

《MyBatis-Plus中nested()与and()方法详解(最佳实践场景)》在MyBatis-Plus的条件构造器中,nested()和and()都是用于构建复杂查询条件的关键方法,但... 目录MyBATis-Plus 中nested()与and()方法详解一、核心区别对比二、方法详解1.and()

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2

MySQL中的锁机制详解之全局锁,表级锁,行级锁

《MySQL中的锁机制详解之全局锁,表级锁,行级锁》MySQL锁机制通过全局、表级、行级锁控制并发,保障数据一致性与隔离性,全局锁适用于全库备份,表级锁适合读多写少场景,行级锁(InnoDB)实现高并... 目录一、锁机制基础:从并发问题到锁分类1.1 并发访问的三大问题1.2 锁的核心作用1.3 锁粒度分

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

ModelMapper基本使用和常见场景示例详解

《ModelMapper基本使用和常见场景示例详解》ModelMapper是Java对象映射库,支持自动映射、自定义规则、集合转换及高级配置(如匹配策略、转换器),可集成SpringBoot,减少样板... 目录1. 添加依赖2. 基本用法示例:简单对象映射3. 自定义映射规则4. 集合映射5. 高级配置匹

python中Hash使用场景分析

《python中Hash使用场景分析》Python的hash()函数用于获取对象哈希值,常用于字典和集合,不可变类型可哈希,可变类型不可,常见算法包括除法、乘法、平方取中和随机数哈希,各有优缺点,需根... 目录python中的 Hash除法哈希算法乘法哈希算法平方取中法随机数哈希算法小结在Python中,

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解