dynamic proposa

news/2024/11/8 16:33:03/

又一个自称厉害的哦~~ 大伙去试试把

论文地址:https://arxiv.org/pdf/2207.05252.pdf

动态候选较大程度提升检测精度的高效目标检测

目标检测是一项基本的计算机视觉任务,用于对给定图像中的目标进行定位和分类。

大多数最先进的检测方法利用固定数量的提议作为候选对象的中间表示,这在推理过程中无法适应不同的计算约束。

研究者提出了一种简单而有效的方法,该方法通过生成用于目标检测的动态提议来适应不同的计算资源。首先设计一个模块来制作一个基于查询的模型,以便能够用不同数量的提议进行推理。此外,研究者将其扩展到动态模型以根据输入图像选择候选的数量,大大降低了计算成本。新提出的方法在包括两阶段和基于查询的模型在内的各种检测模型中实现了显着的加速,同时获得了相似甚至更好的准确度。

目标检测是一项基本但具有挑战性的计算机视觉任务。给定输入图像,算法旨在同时对图像中的目标进行定位和分类。为了实现良好的目标检测性能,两阶段方法首先生成固定数量的粗略提议,然后对其进行细化以输出细粒度预测。作为成功的双阶段方法之一,R-CNN系列利用区域候选网络(RPN)粗略定位目标,然后提取感兴趣区域特征以输出精细预测。为了简化目标检测的过程,提出了基于查询的方法来移除手动设计的Anchor框。

其中,DETR是一项开创性的工作,将目标检测视为具有多阶段变换器和学习对象查询的直接集合预测问题。Sparse R-CNN设计了一个基于R-CNN检测器的基于查询的集合预测框架。通过用固定数量的可学习候选替换手工制作的候选,Sparse R-CNN有效地减少了候选的数量并避免了多对一的标签分配。

研究者制定了一种训练策略,以促进单个模型根据硬件约束自适应地切换候选的数量。实证研究表明,新提出的模型在相同数量的候选下实现了与单独训练的模型相似的性能。此外,研究者还设计了一个网络模块,根据输入图像的复杂度动态选择proposals的数量,有效降低了计算成本。
如上图,与提出的动态候选相结合,四种所示检测方法的推理速度大幅提高,同时保持了竞争性能。 推理速度是使用单个TITAN RTX GPU测量的。

然而新框架又蛋生了.... 蛋...

研究者提出的方法的关键思想是用当前目标检测方法中的动态大小替换固定数量的候选。新提出的模型不是使用固定候选,而是根据输入图像的内容或当前的计算资源选择不同数量的候选,如下图所示。

 Dynamic Proposa

可切换候选有助于在不同数量的候选下执行两阶段或基于查询的检测模型。在这种情况下,建议的数量是根据外部资源而不是图像的内容来选择的。为了将proposal的数量和计算成本与图像的内容联系起来,研究者使用图像中的物体数量作为指导来生成proposa的动态数量。   whaosoft aiot http://143ai.com

在训练过程中,估计图像中的物体数量,记为n~。然后用定义的确定性函数 δ(~n) 替换原始变量δ:

 实验

在MS COCO验证集上单独使用多种配置训练的原始方法与使用可切换候选联合训练的原始方法之间的比较。

 

Cityscapes val上目标检测和实例分割的基线模型进行比较。“DP”表示结合动态候选的模型。如下表:

具有动态候选的目标检测及其相应的估计目标数量和候选数量。第一列显示来自MS-COCO的图像,第二列显示来自Cityscapes的图像。 

 

 


http://www.ppmy.cn/news/428026.html

相关文章

dto do po vo 区分

1、实体 实体与我们都数据库表是一一对应的,实体中的每个字段与表中的字段也是一一对应的。 2、do 接收应用层传给domain层的参数(也可以用实体接收)。 domain层接收的参数必须是在domain层存在的对象 3、po domain层返回应用层结果,使用po(也可以用…

VO、DTO、DO、PO的区别和用处

VO、DTO、DO、PO的区别和用处 一、VO、DTO、DO、PO概念二、VO与DTO的区别和应用三、DTO与DO的区别和应用四、DO与PO的区别和应用五、更细分还有BO、AO、POJO、DAO 一、VO、DTO、DO、PO概念 VO(View Object):视图对象,用于展示层&…

odoo 关于many2many 和one2many

many2many (0,0,{values}) 根据values里面的信息新建一个记录。 (1,ID,{values})更新idID的记录(写入values里面的数据) (2,ID) 删除idID的数据(调用unlink方法,删除数据以及整个主从数据链接关系) (3,ID) 切断主从…

VO、DTO、DO、PO的概念、区别和用处

一、概念 VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 DTO(Data Transfer Object):数据传输对象&#xff…

PO,BO,VO,DTO,DO的区别

1、PO PO:Persistan Object(持久对象)业务:po对象的属性字段与数据库表结构字段一 一对应举例: 个⼈信息表中分别有:id,name,age,sex,birthday PO对象中的属性…

odoo 对 many2many one2many的操作

many2many (0,0,{values}) 根据values里面的信息新建一个记录。 (1,ID,{values})更新idID的记录(写入values里面的数据) (2,ID) 删除idID的数据(调用unlink方法,删除数据以及整个主从数据链接关系) (3,ID) 切断主从…

DTO-VO-DO-Query理解

POJO/PO/DO/Entity/DTO/VO/Query个人理解 POJO:Plain Ordinary Java Object,普通java对象。PO:Persistent Object,持久化对象。DO:Data Object,数据对象。Entity:实体对象。DTO:Dat…

浅析VO、DTO、DO、BO的概念、区别和用处

一、概念 VO (View Object),用于表示一个与前端进行交互的视图对象,它的作用是把某个指定页面(或组件)的所有数据封装起来。实际上,这里的 VO 只包含前端需要展示的数据,对于前端不需要的数据,比如数据创建和修改的时间…