当前位置: 首页 > news >正文

论文解读 | [CVPR2020] ContourNet:向精确的任意形状场景文本检测迈出进一步

目录

1 研究背景和目的

1.1 主要贡献:

1.2 两个挑战:

2 ContourNet

3 方法论

3.1 Adaptive-RPN

3.2 LOTM 

3.3 点重定位算法

4 实验和结果


论文地址:ContourNet: Taking a Further Step toward Accurate Arbitrary-shaped Scene Text Detection

1 研究背景和目的

场景文本检测是一项在复杂背景中检测文本区域并用边界框标记它们的任务。在这篇文章中,作者提出了一种不区分尺度的自适应区域建议网络(AdaptiveRPN),通过仅关注预测和地面真实边界框之间的联合交集(IoU)值来生成文本建议。一个新的局部正交纹理感知模块(LOTM)在两个正交方向上对提案特征的局部纹理信息进行建模,并用一组轮廓点表示文本区域。

1.1 主要贡献:

1、我们提出了一种新的FP抑制方法,通过在两个正交方向上对局部纹理信息进行建模,这是一种更直接的方法,与以前的方法相比,计算量更少。

2、所提出的自适应RPN有效地处理了大规模方差问题,并实现了文本区域的更精细定位,这可以很容易地嵌入到现有方法中。

1.2 两个挑战:

第一个挑战是误报(FP)

第二个挑战是场景文本的大规模变化

2 ContourNet

 ContourNet 主要由三部分组成:自适应区域建议网络(Adaptive-RPN)、局部正交纹理感知模块(LOTM) 和点重定位算法。

自适应区域建议网络(Adaptive-RPN):首先通过自动学习文本区域上的一组边界点来生成文本建议,这些边界点指示文本实例的空间扩展。Adaptive-RPN 的训练对象由预测和图像真实边界框之间的 loU 值驱动。与传统的 RPN 方法相比,Adaptive-RPN 对场景文本的大规模变换不敏感,并且可以自动考虑文本区域的形状信息,以实现更精细的定位。

局部正交纹理感知模块(LOTM):为了捕获文本轮廓区域中的不同纹理特征。LOTM 以两个正交方向上(水平/垂直)对建议特征的局部纹理信息进行建模,并用两个不同热力图中的轮廓点表示文本区域,其中任一热力图仅对特定方向上的纹理特征做出响应。

点重定位算法:通过同时考虑两个正交方向的响应,有效地过滤具有强单向或弱正交激活的预测。以这种方式,文本区域被检测并用一组高质量的轮廓点表示。

3 方法论

3.1 Adaptive-RPN

图2 红点是提案边界框预定义的一组点,绿点是细化点(最后真实边界框的点),皇上虚线表示回归的偏移量(红点-->绿点)

Adaptive-RPN 只关注预测边界框和真实边界框之间的 loU 值,这是一种比例不变的度量,并使用一组预定义点 P={(x_{l}, y_{l})}^{n}_{l=1}(1个中心点,n-1 个边界点)来代替建议表示的4维向量。并通过公式1细化这一组预定义点(红点)为真实边界点(绿点)

可以细化表示为:

 其中{\Delta x_{l}, \Delta y_{l}}^{n}_{l=1}是到预定义点的预测偏移量,w_{c} 和 h_{c} 是当前边界框建议的宽度和高度。

 如图2所示,预测的偏移量用于处理当前提案边界框中n个预定义点的局部细化。然后,我们使用下面方程的max-min函数将这些细化点与4个极值点绑定,以表示预测的边界框(Ground-truth bounding box)。其中,中心点 ({x}', {y}') 用于规范化边界框(例如,如果x_{tl} > {x}',则 x_{tl} = {x}'

3.2 LOTM 

图3、LOTM(左),点重定位算法(右) 

如图3所示,LOTM 包含两个分支(水平/垂直) 。在水平方向上,在特征图上滑动大小为 1×k 的卷积核,来模拟水平方向上的局部纹理信息,它只关注 k 范围区域中的纹理特征。而垂直方向上通过大小为 k×1 的卷积核来模拟垂直方向上的纹理特征。k 是超参数,用于控制纹理特征感受野的大小。最后,实施两个 Sigmoid 层,将两个方向上的热图标准化为[0, 1]。这样就可以在两个正交方向上检测文本区域,并在两个不同的热图中用轮廓点表示。

3.3 点重定位算法

Point Re-scoring Algorithm(点重定位算法)用来进一步处理来自 LOTM 的两个热图。如下算法所示,首先通过非最大抑制(NMS)处理不同热图中的点,以实现紧密表示。然后抑制具有强单向或弱正交响应的预测,最后选择两个热图中具有不同响应的点作为候选。最后,文本区域就可以用这些高质量轮廓点组成的边界框表示。

NMS_{H} 和 NMS_{V}  分别表示水平和垂直方向的NMS操作。 θ = 0.5,以更好的权衡召回率和精度。

4 实验和结果

相关文章:

论文解读 | [CVPR2020] ContourNet:向精确的任意形状场景文本检测迈出进一步

目录 1 研究背景和目的 1.1 主要贡献: 1.2 两个挑战: 2 ContourNet 3 方法论 3.1 Adaptive-RPN 3.2 LOTM 3.3 点重定位算法 4 实验和结果 论文地址:ContourNet: Taking a Further Step toward Accurate Arbitrary-shaped Scene Tex…...

干货分享|数据可视化报表制作技巧

脑中想得再好,也要看最终的效果呈现。但偏偏有些用户分析思维不差,就是数据分析报表的制作拖了后腿,导致始终无法完美呈现数据可视化分析效果。本文将总结奥威BI软件上的常用的数据可视化报表制作技巧,供大家随时查阅。 BI数据可…...

Longhorn,企业级云原生容器分布式存储 - 备份与恢复

Longhorn,企业级云原生容器分布式存储 - 备份与恢复快照手动快照周期性快照和备份使用 Longhorn UI 设置周期性快照使用 StorageClass 设置 Recurring Jobs分离卷时允许 Recurring Job容灾卷创建容灾(DR)卷备份设置备份目标使用阿里云OSS备份存储准备工作为 S3 兼容…...

亿级高并发电商项目-- 实战篇 --万达商城项目 十(安装与配置Elasticsearch和kibana、编写搜索功能、向ES同步数据库商品数据)

亿级高并发电商项目-- 实战篇 --万达商城项目搭建 一 (商家端与用户端功能介绍、项目技术架构、数据库表结构等设计) 亿级高并发电商项目-- 实战篇 --万达商城项目搭建 一 (商家端与用户端功能介绍、项目技术架构、数据库表结构等设计&#x…...

windwos安装spring-cloud-alibaba-nacos

windwos安装spring-cloud-alibaba-nacos前言一、预备环境二、下载源码或者安装包1.启动2.关闭总结前言 这个快速开始手册是帮忙您快速在您的电脑上,下载、安装并使用 Nacos。 一、预备环境 Nacos 依赖 Java 环境来运行。如果您是从代码开始构建并运行Nacos&#x…...

Spring Boot 项目如何统一结果,统一异常,统一日志

1 统一结果返回目前的前后端开发大部分数据的传输格式都是json,因此定义一个统一规范的数据格式有利于前后端的交互与UI的展示。1.1 统一结果的一般形式是否响应成功;响应状态码;状态码描述;响应数据;其他标识符&#…...

Ubuntu下用Lean源码编译openwrt及一行命令u盘启动openwrt安装x86硬盘上

Ubuntu下用Lean源码编译openwrt 源码地址:https://github.com/coolsnowwolf/lede 1:首先微软云服务器装好 Ubuntu 64bit,推荐 Ubuntu 20.04 LTS x64,免费一年。ip设置在地球某处。总结就是每一步需要下载的都得下载完,…...

JavaScript Number 对象

JavaScript 是一门非常强大的编程语言,它提供了许多内置对象来帮助开发者在编写 JavaScript 应用时更轻松地处理数据。其中一个非常有用的对象是 JavaScript Number 对象,它可以帮助我们处理数值类型的数据,例如整数和浮点数。在本文中&#…...

【原创】java+swing+mysql银行ATM管理系统

本文主要介绍使用javaswingmysql去设计一个银行ATM管理系统,模仿实现存款、取款、转账、余额查询等功能。 功能分析: 隐含ATM管理系统一般分为管理员和用户角色,管理员可以进行用户管理、账单管理,用户可以进行转取存款等功能如…...

博弈论--总结

博弈分类 按照是否对外产出或消耗 零和博弈:博弈过程作为整体对外无产出也无消耗。非零和博弈:博弈过程作为整体对外有产出或有消耗。 按照博弈参与人数 1人博弈2人博弈3人博弈n人博弈 按照博弈是否重复 注:同一规则的同一博弈过程反复…...

AMBA低功耗接口规范(Low Power Interface Spec)

1.简介 AMBA提供的低功耗接口,用于实现power控制功能。目前AMBA里面包含2种低功耗接口: Q-Channel:实现简单的power控制,如上电,下电。 P-Channel:实现复杂的power控制,如全上电,半上…...

matlab-汽车四分之一半主动悬架模糊控制

1、内容简介汽车四分之一半主动悬架模糊控制651-可以交流、咨询、答疑2、内容说明半主动悬架汽车 1/4 动力学模型建立 本章主要对悬架类型进行简要介绍,并对其进行对比分析,提出半主动悬架的优越性,论述半主动悬架的工作原理,并对…...

【安全加密】通信加密算法介绍

加密常用于通信中,如战争中电台通讯有明码和密码,密码需要不断更换密码本;另外,商用软件也需要用到加密技术,如根据电脑的mac地址设置权限,防止软件被恶意传播。 文章目录一、介绍1. 单向散列/哈希算法2. 对…...

kubernetes教程 --组件详细介绍

组件详细介绍 NameSpace 在 Kubernetes 中,名字空间(Namespace) 提供一种机制,将同一集群中的资源划分为相互隔离的组。 同一名字空间内的资源名称要唯一,但跨名字空间时没有这个要求。 名字空间作用域仅针对带有名字…...

数字化系统使用率低的原因剖析

当“数字化变革”成为热门话题,当“数字化转型”作为主题频频出现在一个个大型会议中,我们知道数字化时代的确到来了。但是,根据Gartner的报告我们看到一个矛盾的现象——85%的企业数字化建设与应用并不理想、但对数字化系统的需求多年来持续…...

<<Java开发环境配置>>7-Apache Tomcat安装教程环境变量配置IDEA配置

一.Apache Tomcat简介: Apache是普通服务器,本身只支持html即普通网页。不仅可以通过插件支持php,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)。Apache只支持静态网页,但像php,cgi,jsp等动态网页就需要Tomc…...

互联网大厂测开面试记,二面被按地上血虐,所幸Offer已到手

在互联网做了几年之后,去大厂“镀镀金”是大部分人的首选。大厂不仅待遇高、福利好,更重要的是,它是对你专业能力的背书,大厂工作背景多少会给你的简历增加几分竞争力。 如何备战面试的? 第一步:准备简历…...

网络管理之设备上线技术的发展现状和趋势

网络和网络设备无处不在 随着社会的发展和技术的进步,人类文明开始向信息时代演进,网络逐渐变成现代社会不可或缺的一部分,极大程度影响了人类的认知形式、思维方式与生活模式。从家庭网,到企业网;从无线网&#xff0…...

SQL67 返回固定价格的产品

描述有表Productsprod_idprod_nameprod_pricea0018sockets9.49a0019iphone13600b0018gucci t-shirts1000【问题】从 Products 表中检索产品 ID(prod_id)和产品名称(prod_name),只返回价格为 9.49 美元的产品。【示例结…...

webpack 开发环境的基本配置(webpack打包样式资源、html、图片、devserver、开发环境配置、以及其他资源)

A.打包样式资源 1. 创建文件 2. 下载安装 loader 包 npm i css-loader style-loader less-loader less -D 3. 修改配置文件 /*webpack.config.js webpack的配置文件作用: 指示 webpack 干哪些活(当你运行 webpack 指令时,会加载里面的配置&#xff…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​&#xff1a; 下载安装DevEco Studio 4.0&#xff08;支持HarmonyOS 5&#xff09;配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​&#xff1a; ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言&#xff1a; 最近在做行为检测相关的模型&#xff0c;用的是时空图卷积网络&#xff08;STGCN&#xff09;&#xff0c;但原有kinetic-400数据集数据质量较低&#xff0c;需要进行细粒度的标注&#xff0c;同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...