Revisiting Proposal-based Object Detection阅读笔记

Revisiting Proposal-based Object Detection阅读笔记

论文地址:link

Abstract

For any object detector, the obtained box proposals or queries need to be classified and regressed towards ground truth boxes.

对于任何物体检测器来说,获得的 box proposals或queries需要被分类并回归到真实框上。(也就是对于每个预测框与要找到相对应的GT)

The common solution for the final predictions is to directly maximize the overlap between each proposal and the ground truth box, followed by a winner-takes-all ranking or non-maximum suppression.

常见的最终预测解决方案是直接最大化每个proposal与真实框之间的重叠,然后通过winner-takes-all ranking或非最大值抑制进行分类。

本文提出了一个简单有效的替代方案。

对于Proposals回归,即回归到Proposals和真实边界框之间的交集区域。

交集区域就是Proposal中包含GT也就是目标的区域。

通过这种方式,每个Proposal只指定包含物体的部分,避免了一个盲目的修复问题,即需要将proposal回归到它们的视觉范围之外。反过来,我们替换了胜者通吃策略,并通过取一个围绕物体的proposal group的回归交集的并集来获得最终预测。

在这里插入图片描述

Introduction

文中提到目前物体检测常见设置的两个问题,并提出了一个简单的解决方案。

  • 首先,任何物体检测器的目标,例如 [6, 34, 35],无论其架构如何,都是要准确地学习独立代表图像中真实物体的提议框。正如图1中所强调的,这通常是一个提出不当的问题。在检测器的前向传播过程中,生成的提议框通常只捕获其范围内的部分真实物体。学习进行完美的真实物体对齐导致了一个盲目的内部绘制挑战。
  • 其次,在所有检测器的前向传播过程中,一个常见的现象是,总是有多个提议或查询与一个真实物体相关。==尽管它们为真实物体提供了互补的视角,但非最大值抑制或排名只是为了排除重复的检测。==这样做的同时,这些方法忽视了被丢弃提议中的宝贵信息。

本文decompose the problems of proposal-to-ground truth regression and proposal candidate selection into easier to solve intersection and union problems.

proposal-to-GT: intersection

proposal candidate: union

  • Intersection-based Regression

我们为提议的回归设定了一个新目标:不是预测与真实物体的重叠,而是仅预测交集区域。因此,我们只在proposal的视觉范围内向真实物体回归。

  • Intersection-based Groupin

给定一组预测了真实物体交集的提议,我们通过取交集区域的并集形成最终预测。换句话说,我们不仅选择一个区域中最有信心的提议,而是we use the wisdom of the crowd to form our final predictions.

这两个阶段对现有物体检测流程的改变很小。我们只改变了回归头目标为交集,并修改了winner-takes-all的后处理过程,加入了一个分组过程。因此,我们的方法可以直接插入到任何物体检测器中。尽管技术上简单,提出的分解直接提高了检测性能。我们展示了我们重新审视的方法如何提高多个数据集上的典型检测和实例分割方法,特别是在评估时的高重叠阈值

Method

Problem statement:

传统regression存在问题:the proposal boxes P are commonly badly aligned, with only a part of the ground truth G visible in the scope of the proposal. Consequently, the function f is compelled to extend P to regions beyond its initial coverage, essentially requiring it to predict beyond its visible scope. This scenario leads to an ill-posed problem

传统的proposal regression会将proposal拓展,像GT去回归,这本质上要求它预测超出其可见范围的部分。这种情况导致了一个不恰当的问题,因为 f 被迫推断出 P 内部不包含的 G 的部分。

记录Problem statement写作样本:

Problem statement

In traditional object detection, bounding box regression involves learning a mapping function f that transforms a proposal box P=(P_{x1}, P_{y1}, P_{x2}, P_{y2}) to closely approximate a ground truth box G=(G_{x1}, G_{y1}, G_{x2}, G_{y2}), where (x1, y1, x2, y2) refers to the top-left x and y coordinates and bottom-right x and y coordinates respectively. Typically, this is achieved by minimizing the L1 or L2 loss between the predicted box and the ground truth. However, this approach often poses a challenge: the proposal boxes P are commonly badly aligned, with only a part of the ground truth G visible in the scope of the proposal. Consequently, the function f is compelled to extend P to regions beyond its initial coverage, essentially requiring it to predict beyond its visible scope. This scenario leads to an ill-posed problem, as f is forced to infer parts of G not contained within P. Then, the set of all proposals for a ground truth object P={P_1, P_2, ..., P_n}, providing complementary views, are sorted and only one candidate is picked via non-maximum suppression or ranking. This assumes that the intersection-over-union problem is already solved and only serves to exclude duplicate detections in the same region.

To address these issues, first, we redefine the task as an intersection learning problem in Section 3.1. For individual proposal boxes, we only require solving the intersection alignment with ground truth boxes, i.e. we only need to regress to the part of the proposal that is shared with the ground truth. Then, instead of discarding complementary information from proposals, our method strategically learns to leverage these fragments in Section 3.2. Given a collection of proposal boxes and their identified intersection, we can replace the non-maximum suppression with a union operator, where we identify the final object as the union-over-intersection of all the proposals in the same region. Figure 2 shows how these two simpler tasks lead to a final object detection.

问题陈述

在传统的目标检测中,边界框回归涉及学习一个映射函数 f,该函数将一个提议框 P=(P_{x1}, P_{y1}, P_{x2}, P_{y2}) 转换为与真实框 G=(G_{x1}, G_{y1}, G_{x2}, G_{y2}) 非常接近,其中 (x1, y1, x2, y2) 分别指的是左上角的 xy 坐标以及右下角的 xy 坐标。通常,这是通过最小化预测框和真实框之间的 L1L2 损失来实现的。然而,这种方法经常带来挑战:提议框 P 通常对齐得很差,只有部分真实物体 G 在提议的范围内可见。因此,函数 f 被迫将 P 扩展到其最初覆盖范围之外的区域,本质上要求它预测超出其可见范围的部分。这种情况导致了一个不恰当的问题,因为 f 被迫推断出 P 内部不包含的 G 的部分。然后,为一个真实物体 G 的所有提议 P={P_1, P_2, ..., P_n} 提供补充视角,它们被排序,并且通过非最大值抑制或排名只选择一个候选。这假设交并比问题已经解决,只是为了排除同一区域内的重复检测。

为了解决这些问题,首先,我们在第3.1节中将任务重新定义为一个交集学习问题。对于单个提议框,我们只需要解决与真实框的交集对齐问题,即我们只需要回归到proposals与真实物体共享的部分。然后,我们的方法不是丢弃提议中的补充信息,而是在第3.2节中策略性地学习利用这些碎片。鉴于一系列提议框及其识别的交集,我们可以用并集操作符替换非最大值抑制,在这个操作符中,我们将最终物体识别为同一区域内所有提议的交集上的并集。图2展示了这两个更简单的任务是如何导致最终的目标检测的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.1 基于交集的回归

我们将回归任务重新定义为一个交集学习问题。与其回归到整个真实框,每个提议框的任务是仅回归到真实物体可见的部分,即提议框与真实框之间的交集。这使得映射函数 f 更加明确定义,从而更容易学习这样的转换。

I=(I_{x1}, I_{y1}, I_{x2}, I_{y2}) 为提议框 P 与真实框 G 的交集。新的任务是学习一个映射函数 f',使得 f'(P) ≈ I。为了监督目的,交集按以下方式计算:

I_{x1} = max(P_{x1}, G_{x1}), (1)

I_{y1} = max(P_{y1}, G_{y1}), (2)

I_{x2} = min(P_{x2}, G_{x2}), (3)

I_{y2} = min(P_{y2}, G_{y2}). (4)

这个任务的损失函数定义为:

L_t = ∑|f'(P_i) - I_{t_i}|, (5)

其中 t 取值1或2,分别对应于回归训练中应用 L1L2 损失。

我们方法的第二个方面涉及策略性地利用为单一真实物体生成的多个提议框中包含的部分信息。

3.2 基于交集的分组

在传统的目标检测方法中,通常选择一个提议来代表最终检测,而其余的提议则被丢弃。我们的方法不是丢弃这些包含有价值但碎片化信息的提议,而是学会有效地合并这些片段。因此,我们的方法产生了一个更全面准确的真实物体的表征。

公式化

让我们将所有为一个真实物体提出的提议集合表示为 P={P_1, P_2, ..., P_n},与真实物体相交的对应交集表示为 T={I_1, I_2, ..., I_n}。我们的目标是找到这些交集的组合,最好地代表真实物体。我们定义一个组合函数 c : T → R^4,它接受一组交集并输出一个边界框。任务是学习这个函数,以最小化组合框和真实框 G 之间的损失:

L = ∑ |c_i(T) - G_i| . (6)

我们的模型旨在通过交集回归理解提议的部分性质。交集的组合分为两个阶段:分组和回归,如下所述。

分组

为了执行分组,我们引入一个分组函数 g : P → G,将proposals P 映射到一组组 G={g_1, g_2, ..., g_m}。每个组 g_jP 的一个子集,并代表图像中的潜在物体。分组函数旨在将可能属于同一物体的proposals分组在一起。这是通过考虑提议之间的空间重叠和语义相似性来实现的。一旦提议被分组,我们结合每个组的提议对应的交集,得到一组组合框 B={B_1, B_2, ..., B_m}。每个组合框 B_j 是由组 g_j 代表的物体的候选边界框。

精炼

最后,我们执行一个回归步骤来精炼组合框。我们定义一个回归函数 r : B → R,将每个组合框映射到最终的目标框。回归函数学习最小化目标框和真实框之间的损失:

L = ∑ ∑ |r(B_{ji}) - T_{ji}| , (7)

其中 B_{ji} 是组合框 B_j 的第 i 个坐标,T_{ji} 是对应于 B_j 的真实框的第 i 个坐标。这种方法使得可以将多个提议中的有价值信息整合到一个增强的提议中。我们的方法不是选择一个最优候选并丢弃其他所有候选,而是提取并合并每个提议中最相关的方面,从而构建一个更准确代表目标真实物体的优越候选。

将这种分解整合到现有的目标检测器中只需要做少量的改动。对于基于交集的回归,我们只需要改变回归头中的目标坐标,从真实框改为提议和真实物体之间的交集区域。为了通过基于交集的分组获得最终的目标检测输出,我们对提议进行排序和聚类,类似于非最大值抑制。我们不仅保留最上面的框,还取同一簇中回归交集的并集作为输出。尽管这种方法的简单性,我们展示了在目标检测中分解交并比对齐直接影响性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/204703.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring 声明式事务

Spring 声明式事务 1.Spring 事务管理概述1.1 事务管理的重要性1.2 Spring事务管理的两种方式1.2.1 编程式事务管理1.2.2 声明式事务管理 1.3 为什么选择声明式事务管理 2. 声明式事务管理2.1 基本用法2.2 常用属性2.2.1 propagation(传播行为)2.2.2 iso…

什么情况下会产生StackOverflowError(栈溢出)和OutOfMemoryError(堆溢出)怎么排查

目录 一、概念 栈溢出(StackOverflowError) 堆溢出(OutOfMemoryError) 二、排查方法 栈溢出(StackOverflowError) 堆溢出(OutOfMemoryError) 相关的Java代码示例 栈溢出 堆溢…

K8S pod无损上下线

在最近的K8s服务上线过程中,我发现了一些问题,更具体的说,我在使用阿里云k8s的过程中注意到:会出现slb短时RT增加,Pod部署初期就达到了扩容上限,并且开始大量的扩容,这无疑占用了大量的k8s资源。…

接口自动化测试之Yaml数据驱动封装!

一、数据驱动:pytest.mark.parametrize() 首先看个样本: import pytestclass TestData:# parametrize有两个值,一个是args_name:参数名,一个是args_value:参数值,可以有多个,进行数据解包# args_value可以…

【广州华锐互动VRAR】VR戒毒科普宣传系统有效提高戒毒成功率

随着科技的不断发展,虚拟现实(VR)技术已经逐渐渗透到各个领域,为人们的生活带来了前所未有的便利。在教育科普领域,VR技术的应用也日益广泛,本文将详细介绍广州华锐互动开发的VR戒毒科普宣传系统&#xff0…

serialVersionUID确保序列化版本

实现Serializable接口的目的是为类可持久化,比如在网络传输或本地存储,为系统的分布和异构部署提供先决条件。若没有序列化,现在我们所熟悉的远程调用,对象数据库都不可能存在, serialVersionUID适用于java序列化机制。…

万户协同办公平台ezoffice wpsservlet接口任意文件上传漏洞

声明 本文仅用于技术交流,请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 一、漏洞描述 万户ezOFFICE协同管理平台是一个综合信息基础应用平台&am…

生成模型之Flow-Based model

Flow-Based Model 文章目录 Flow-Based Model简介总览数学基础jacobian matrixdeterminant行列式Change of variable theorem 架构常见几种方法coupling layer采用1*1卷积进行channel shuffle 简介 ​ Flow-Based对概率密度函数的直接建模,这使得它们在数据生成和推…

Ubuntu22.04 使用Docker部署Neo4j出错 Exited(70)

项目场景: 最近需要使用Neo4j图数据库,因此打算使用docker部署 环境使用WSL Ubuntu22.04 问题描述 拉下最新Neo4j镜像,执行命令部署 启动容器脚本 docker run -d -p 7474:7474 -p 7687:7687 \ --name neo4j \ --env "NEO4J_AUTHneo…

封装了一个顺滑嵌套滚动的框架

首先查看效果图 就是开始滚动的时候,上面的头部和下面的内容是 一起滚动的,但是当滚动到segment 的时候,segment 是悬停 的,下面的tableView是分区的 架构设计 我们设计一个架构,以下面的tablView为主体&#xff0…

SiC MOSFET体二极管双极性退化及电流密度影响的研究

标题:Investigation of the bipolar degradation of SiC MOSFET body diodes and the influence of current density (IEEE International Reliability Physics Symposium (IRPS)) 摘要 摘要-双极退化在使用双极操作模式的4H-SiC器件中仍然是一个需要考虑的关键问题…

Excel 表列序号

题目链接 Excel 表列序号 题目描述 注意点 columnTitle 仅由大写英文组成1 < columnTitle.length < 7 解答思路 对于"CAB"&#xff0c;计算其序列号的思路&#xff1a;字母B的贡献值为2&#xff0c;字母A的贡献值为1 * 26&#xff0c;字母C的贡献值为3 * …

排查200M宽带下行速度低于100M问题(七十七)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

流量分析1--菜刀666

1&#xff1a;菜刀666&#xff1a; 题目描述 分析流量包&#xff0c;过滤http数据流 追踪TCP数据流 对比第5个流和第7个流发现&#xff0c;同样的目录下 多出了6666.jpg。猜测是由攻击者上传&#xff0c;直接在请求包里搜索FFD8--FFD9 保存为1.jpg 利用foremost工具对1.jpg进…

“无忧文件安全!上海迅软DSE文件加密软件助您轻松管控分公司数据!

许多大型企业集团由于旗下有着分布在不同城市的分支机构&#xff0c;因此在规划数据安全解决方案时&#xff0c;不适合采用市面上常见的集中式部署方式来管控各分部服务器&#xff0c;而迅软DSE文件加密软件支持采用分布式部署的方式来解决这一问题。 企业用户只需在总部内部署…

【移动端vant 地址选择滑动不了】

分析&#xff1a; H5页面直接在浏览器打开是没有任何问题的&#xff0c;但是内嵌到小程序中就会出现&#xff0c;目前已出现在抖音&#xff0c;快手&#xff0c;小程序中&#xff0c;其他的没有试 大致看了一下&#xff0c;滑动不了的原因&#xff0c;可能是页面禁止滑动或滚动…

《使用ThinkPHP6开发项目》 - 设置项目环境变量

《使用ThinkPHP6开发项目》 - 安装ThinkPHP框架-CSDN博客 在上一编我们讲了ThinkPHP6框架的创建&#xff0c;创建完成ThinkPHP6框架后&#xff0c;我们这里就可以开始设置我们的环境变量了。 安装完成ThinkPHP6框架生成的项目文件 修改项目配置我们修改项目config文件夹里的对…

MySQL 数据库如何实现 XA 规范?

本文我们来讨论 MySQL 的 XA 规范有哪些应用相关的内容。 MySQL 为我们提供了分布式事务解决方案&#xff0c;在前面的内容中提到过 binlog 的同步&#xff0c;其实是 MySQL XA 规范的一个应用&#xff0c;那么 XA 规范是如何定义的&#xff0c;具体又是如何应用的呢&#xff…

vscode如何为python设置静态类型检测工具:mypy

设置好之后的效果如下图所示&#xff0c;你可以在下方problems一栏看到工作区所有文件存在的问题 安装mypy就像其他插件一样&#xff0c;在extensions中搜索mypy&#xff0c;再install即可。 但是安装以后&#xff0c;我的vscode弹出了以下通知&#xff1a; The mypy daemon e…

使用DockerUI结合内网穿透工具轻松实现公网访问和管理docker容器

文章目录 前言1. 安装部署DockerUI2. 安装cpolar内网穿透3. 配置DockerUI公网访问地址4. 公网远程访问DockerUI5. 固定DockerUI公网地址 前言 DockerUI是一个docker容器镜像的可视化图形化管理工具。DockerUI可以用来轻松构建、管理和维护docker环境。它是完全开源且免费的。基…