论文解读 | [AAAI2020] 你所需要的是边界:走向任意形状的文本定位
目录
1、研究背景
2、研究的目的
3、方法论
3.1 Boundary Point Detection Network(BPDN)
3.2 Recognition Network
3.3 Loss Functions
4、实验及结果
论文连接:https://ojs.aaai.org/index.php/AAAI/article/view/6896
1、研究背景
最近,旨在同时从杂乱图像中检测和识别文本的端到端文本识别在计算机视觉中受到了越来越多的关注。由于文本检测广泛的实际应用,如办公自动化、网络内容安全、智能交通系统、地理位置和视觉搜索,从自然图像中自动阅读文本已引起极大关注。
在过去的十年中,场景文本检测和识别作为阅读系统的两个独立的子任务被广泛研究,但事实上,文本检测与识别是高度相关且相互补充的。最近的端到端文本识别方法证实了这一假设,该方法将检测和识别阶段与端到端可训练神经网络相结合。这些定位方法遵循类似的流程。首先,检测每个文本实例的水平/定向边界框。然后,裁剪检测到的边界框内的图像块或CNN特征,并将其馈送到序列识别模型。得益于特征共享和联合优化,可以同时增强检测和端到端识别的性能。尽管取得了可喜的进展,但大多数现有的点样方法受到处理不规则形状文本(如曲线文本)的困扰。对于一般的端到端OCR系统,处理具有任意形状的文本是不可避免的,因为曲线文本和其他类型的不规则文本在我们的现实世界中非常常见。
2、研究的目的
传统的方法中,检测到的每个文本实例的边界框都是用矩形来表示,但矩形框在描述不规则文本的边界框时有很大的局限性,因为它包含或多或少的背景信息,这给文本识别阶段带来了困难。在本文中,检测的目的是预测一组边界点,其对于描述场景文本的各中妆容更灵活。同时,边界点可以准确获取不规则文本区域的CNN特征。利用边界点,不规则文本可以容易地被转换或矫正为规则文本。为了有效 的提取文本边界点,采用从粗到细的策略,使用两级CNN检测器检测每个文本实例的最小定向矩形框。然后,在定向矩形框中执行边界的预测。基于边界点的方法比矩形框更灵活、更准确地表示任意形状的文本。
3、方法论
图1
如图1所示, 主要由三部分组成:定向矩形框检测器、边界点检测网络和识别网络。
定向矩形框检测器:应用 RPN,主干配备有 ResNet-50,以生成水平文本建议。然后通过预测每个提案(矩形框)的中心点、高度、宽度和方向,生成每个提案的定向矩形框。
边界点检测网络(BPDN):回归每个定向矩形框的边界点。
识别网络:利用预测的边界点,将特征图矫正为常规图,供识别网络使用。
图2
图2(a)中,BPDN 可以预测每个水平建议的边界点,但受到各种方向和形状的文本实例的影响,包含了更多的背景噪声和更强的变形。为了缓解这种影响,预测每个建议的定向矩形框(图2(a)中红色边框)。具体细节:预测其中心点(绿点),高度(h),宽度(w)和方向(绿点-->红点的那个箭头)。然后沿着方向重新计算宽()、高(
),最后画出的红色矩形框就为定向矩形框,红点为定向矩形框的中心。然后通过 RotateRolAlign(图1) 将特征图转换为水平图,称为最小矩形框,如图2(b)。图2(c)表示从均匀分布在最小矩形框的上下两侧的一组默认点回归到边界点。图2(d)将边界点与原始图像对齐。
3.1 Boundary Point Detection Network(BPDN)
BPDN 由四个堆叠的 3X3 卷积层和一个完全连接层组成。受 RPN 的启发,建议基于默认锚点(默认点)进行回归。预定义一组默认点供边界点参考,如图2(c)。默认点在最小矩形框的长边均匀分布,每条长边 K 个点,共 2K 个点。用这 2K 个默认点通过坐标偏移得到 2K 个边界点。
BPDN 模块会给 2K 个默认点预测 4K 个向量来作为 2K 个边界点的坐标偏移。有了坐标偏移(Δx, Δy),那么边界点()就可以表示为(图3中红色的点):
其中,()为默认点,图3中蓝色的点。
和
为最小矩形框的宽和高。
图3,图2中的c图放大后
为了与原始特征一致,我们使用如下公式
将变换为水平特征图(图2中c)中的边界点() 还原为原始的边界点 (
)(图2中d)。(
) 是定向矩形框的中心点。
和
分别等于
和
。
和
为最小矩形框的宽和高,
和
为定向矩形框的宽和高。α 是从 x 轴的正方向到平行与定向矩形框的长边的角度。
3.2 Recognition Network
CRNN 是第一种通过将 CRNN 和 RNN 结合在端到端网络中,将文本识别视为序列到序列问题的方法。识别分支的架构如图4所示。
图4 ,识别分支的架构由三个堆叠的卷积层组成。“Att.GRU”代表GRU解码器和
一个完全连接层。|s| 表示解码字符数,实验中设置为63,对应数字(0, 9), 英文
字符(a/z, A/Z)和序列结束符。
首先,将矫正后的特征输入编码器提取更高级的特征序列 。然后采用基于注意力的解码器将
转化为符号序列
,其中
是标签序列的长度。在步骤
,解码器根据编码器输出
,内部状态
和上一步骤中预测的结果
来预测字符。在当前步骤中,解码器通过其注意力机制计算注意力权重
的向量来开始。然后,根据下面公式加权特征
。
其中 都是可训练的权重。
将 和
作为输入,RNN 通过 下面公式 计算输出向量
和新的状态向量
,其中
是
和
的独热嵌入的连级。
在我们的方法中,GRU 被用作 RNN 单位。最后,通过
预测当前步骤符号的分布,其中 和
是可学习的参数。
3.3 Loss Functions
目标函数的损失由四个部分组成,
其中 是 RPN 的损失,
是从轴对齐矩形建议回归到定向矩形框的损失(获得定向矩形框的损失)。
是边界点的损失,计算为平滑-L1 损失。
为识别损失。
计算如下,其中
是第 i 个预测边界点(默认点),其关联的目标边界点是
。
在识别网络中,识别损失可以表示为
4、实验及结果
略
相关文章:

论文解读 | [AAAI2020] 你所需要的是边界:走向任意形状的文本定位
目录 1、研究背景 2、研究的目的 3、方法论 3.1 Boundary Point Detection Network(BPDN) 3.2 Recognition Network 3.3 Loss Functions 4、实验及结果 论文连接:https://ojs.aaai.org/index.php/AAAI/article/view/6896 1、研究背景 最近,旨在…...
数据挖掘流程简单示例10min
数据挖掘流程简单示例10min 套路: 准备数据实现算法测试算法 任务1:亲和性分析 如果一个顾客买了商品X,那么他们可能愿意买商品Y衡量方法: 支持度support : 所有买X的人数 置信度confidence : 所有买X和Y的人数所有买X的人数…...

KDJB1200六相继电保护测试仪
一、概述 KDJB1200继电保护测试仪是在参照电力部颁发的《微机型继电保护试验装置技术条件(讨论稿)》的基础上,广泛听取用户意见,总结目前国内同类产品优缺点,充分使用现代新的的微电子技术和器件实现的一种新型小型化微机继电保护测试仪。可…...

从WEB到PWA 开发-发布-安装
见意如题!本文主要来说说PWA开发!作为一个前端程序员,在没有任何Android/IOS的开发情况下,想想我们有多少种方法来开发一个原生移动应用程序!我们可以有非原生、混合开发,PWA等等手段。类似uniappÿ…...

FPGA纯vhdl实现MIPI CSI2 RX视频解码输出,OV13850采集,提供工程源码和技术支持
目录1、前言2、Xilinx官方主推的MIPI解码方案3、纯Vhdl方案解码MIPI4、vivado工程介绍5、上板调试验证6、福利:工程代码的获取1、前言 FPGA图像采集领域目前协议最复杂、技术难度最高的应该就是MIPI协议了,MIPI解码难度之高,令无数英雄竞折腰…...
《NFL橄榄球》:卡罗来纳黑豹·橄榄1号位
卡罗来纳黑豹(英语:Carolina Panthers)是一支位于北卡罗来纳州夏洛特的职业美式橄榄球球队。他们是国家美式橄榄球联合会的南区其中一支球队。他们与杰克逊维尔美洲虎在1995年加入NFL,成为扩充球队。 2018年球队市值为23亿美元&am…...

我说我为什么抽不到SSR,原来是这段代码在作祟...
本文是龚国玮所写,熊哥有所新增修改删减,原文见文末。 我说我为什么抽不到SSR,原来是加权随机算法在作祟 阅读本文需要做好心理准备,建议带着深究到底的决心和毅力进行学习! 灵魂拷问 为什么有 50% 的几率获得金币&a…...
MySQL MGR 集群新增节点
前言 服务器规划现状(CentOS7.x) IP地址主机名部署角色192.168.x.101mysql01mysql192.168.x.102mysql02mysql192.168.x.103mysql03mysql192.168.x.104proxysql01proxysql、keepalived192.168.x.105proxysql02proxysql、keepalived 新增服务器IP&#x…...

【单目标优化算法】蜣螂优化算法(Dung beetle optimizer,DBO)(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

【C++】类和对象入门必知
面向过程和面向对象的初步认识类的引入类的定义类的访问限定符封装类的作用域类的实例化类对象模型this指针C语言和C实现Stack的对比面向过程和面向对象的初步认识 C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解…...
day38 动态规划 | 509、斐波那契数 70、爬楼梯 746、使用最小花费爬楼梯
题目 509、斐波那契数 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1 F(n) F(n - 1) F(n - 2),其…...
2023年备考软考必须知道的6件事
不知不觉,距离2023年上半年软考也只有不到100天的时间了,报名入口也将在3月13日正式开通,你是正在犹豫是否参加考试? 还是已经开始着手准备复习? 关于软考考试你还有哪些疑问? 2023年备考软考必须知道的6件事,建议收藏…...

GLOG如何控制输出的小数点位数
1 问题 在小白的蹩脚翻译演绎型博文《GLOG从入门到入门》中,有位热心读者提问说:在保存日志时,浮点型变量的小数位数如何设置? 首先感谢这位“嘻嘻哈哈的地球人”赏光阅读了小白这不太通顺的博客文章,并提出了一个很…...

2022年全国职业院校技能大赛(中职组)网络安全竞赛试题A(6)
目录 模块A 基础设施设置与安全加固 一、项目和任务描述: 二、服务器环境说明 三、具体任务(每个任务得分以电子答题卡为准) A-1任务一:登录安全加固(Windows) 1.密码策略 a.密码策略必须同时满足大小…...

Safety-Gym环境配置与安
官网: https://github.com/openai/safety-gym https://github.com/openai/safety-starter-agents 一、安装依赖环境配置 建议使用python 3.7及以下环境,因为官方的safety-rl是基于tensorflow1.13.1实现,而tensorflow1.13.1只能支持python…...

3月再不跳槽,就晚了
从时间节点上来看,3月、4月是每年跳槽的黄金季! 以 BAT 为代表的互联网大厂,无论是薪资待遇、还是平台和福利,都一直是求职者眼中的香饽饽,“大厂经历” 在国内就业环境中无异于一块金子招牌。在这金三银四的时间里&a…...

HTTP cookie格式与约束
cookie是前端编程当中经常要使用到的概念,我们可以使用cookie利用浏览器来存放用户的状态信息保存用户做了一些什么事情。session是服务器端维护的状态。session又是如何和cookie关联起来。后面介绍cookie和session的使用。Cookie 是什么?RFC6265, HTTP …...

docker基础
docker基础 docker概述 docker的出现?docker解决思想docker历史docker链接docker能干什么?开发-运维 docker安装 镜像(image)容器(container)仓库(repository)底层原理 docker命令 帮助命令镜像命令 docker-images查看所有本地主机上的镜像docker-searc…...

【微信小程序】--JSON 配置文件作用(三)
💌 所属专栏:【微信小程序开发教程】 😀 作 者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! &#…...
EDA-课设
EDA-课程设计-电子闹钟 一、实验目的 1.掌握多层电路在 QuartusII 集成开发环境中的实现; 2.熟练掌握基于 QuartusII 集成开发环境的组合逻辑电路设计流程; 3.掌握基于 QuartusII 集成开发环境的时序逻辑电路设计流程; 4.理解有限状态机设计…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...

练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...