(三十四)论文阅读 | 目标检测之DDBNet

2024-01-05 18:18

本文主要是介绍(三十四)论文阅读 | 目标检测之DDBNet,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


简介

在这里插入图片描述

图1:论文原文

本文是发表在 E C C V 2020 {\rm ECCV\ 2020} ECCV 2020上的一篇关于目标检测论文,论文的关注点是 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法中的边界框回归过程。由于在 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法中摒弃了锚框的设定,因此如何设置有效的边界框回归目标以及方式格外重要。论文提出的 D D B N e t {\rm DDBNet} DDBNet不断精细化 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法中的边界框回归过程,主要是针对基于中心关键点的 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法的改进。实验结果为 C O C O {\rm COCO} COCO数据集上达到了 S O T A {\rm SOTA} SOTA。论文原文


0. Abstract

近年, A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法引起了目标检测的一大研究浪潮,其中边界框回归是这类方法的一大关键。然而,即便是具有很高置信度的边界框仍可能具有很差的定位效果。基于此,论文提出 D D B N e t {\rm DDBNet} DDBNet用于实现更加精确的定位。首先过滤漂移框,因为这类框与真实框具有较大的语义差异性。然后为选定的框划定边界,以此来搜索对齐的边界继而将它们分组成一系列优化后的框,从而能够首先更加精确的定位。

论文贡献:(一)论文提出一种针对 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free的边界框回归方法;(二)语义一致性模块可能有效地过滤掉噪声点,帮助网络更精确地回归;(三) D D B N e t {\rm DDBNet} DDBNet A P {\rm AP} AP达到了 45.5 % {\rm 45.5\%} 45.5%


1. Introduction

目标检测是计算机视觉中的一项重要任务,它的目标是在给定图像中找出所有感兴趣目标,并用矩形框标出其位置和具体类别。当前目标检测算法可划分为 A n c h o r {\rm Anchor} Anchor- B a s e d {\rm Based} Based A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free两种,而近年来后者的热度正逐渐超越前者。然而,尽管 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法取得了实质性的进展,其准确性仍受限于许多因素。至此,论文介绍了两个造成 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法准确性较低的原因:

首先,中心关键点的定义与目标语义信息不合。基于中心关键点是 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free中的一种重要方法,其常用策略是将中心关键点映射到真实框内,如 F C O S {\rm FCOS} FCOS C o r n e r N e t {\rm CornerNet} CornerNet等。但是,在此过程中会不可避免地将噪声点当作训练正样本,这就会造成语义间的不一致,从而降低了检测器的精度。如下图,在基于中心关键点的这类方法中会将图中红色区域的所有点当作正样本处理。但是显然,该红色区域内包含许多背景信息,即大量关键点并不包含前景信息。
在这里插入图片描述

图2:基于中心关键点的不一致性

其次,基于局部区域回归的方式不能很好地获取图像的全局信息。具体地,在基于中心关键点的算法中以基于局部区域的方式回归,这种方法受限于感受野的大小。如下图,中心点以及对应的虚线边界框用相同的颜色标出。尽管每一个边界框都能将目标包括在内,但每个框都没有很好地拟合目标。这是因为,如果该点没有包含图像中的目标关键部分的感受野,则无法精确地识别出目标整体。
在这里插入图片描述

图3:基于中心关键点的方法受限于感受野大小

基于以上两点,论文提出了一种新的边界框回归方法, D D B N e t {\rm DDBNet} DDBNet。该方法包含两大部分:边界框的分解重组语义一致性模块。具体地,首先基于中心关键点形成一系列对于边界框的粗分布预测,这些预测可能并不能很好地拟合目标。然后基于边界框的置信度使用边界框的分解、重组模块将这些预测边界框的边界划分成四个集合,接着使用排序、重组的方法产生更加精确的定位预测。同时,语义一致性模块用于剔除噪声等干扰数据,使模型仅关注有用的关键点。语义一致性模块是一种自适应的方法,且不带有额外的超参数。


2. Related Work

Anchor Based Object Detectors A n c h o r {\rm Anchor} Anchor- B a s e d {\rm Based} Based的方法中, A n c h o r {\rm Anchor} Anchor可被看作是预定义大小和宽高比例的滑动窗口或先验框。在训练过程中 A n c h o r {\rm Anchor} Anchor被划分成正样本和负样本,然后使用偏移量来精细化边界框预测。 A n c h o r {\rm Anchor} Anchor最早出现于两阶段目标检测方法 F a s t e r {\rm Faster} Faster- R C N N {\rm RCNN} RCNN中的 R P N {\rm RPN} RPN。随后,一阶段检测器如 S S D {\rm SSD} SSD R e t i n a N e t {\rm RetinaNet} RetinaNet Y O L O 9000 {\rm YOLO9000} YOLO9000等都引入 A n c h o r {\rm Anchor} Anchor的概念。引入 A n c h o r {\rm Anchor} Anchor的主要目的是帮助网络更好地进行精细化的回归,同时也可以避免大量冗余的计算(主要是相比于滑动窗口而言)。但是 A n c h o r {\rm Anchor} Anchor的一大缺点是需要人为设置大量的超参数,如每个 A n c h o r {\rm Anchor} Anchor的大小以及宽高比例、正负样本采样的阈值等。

Anchor Free Object Detectors A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free检测器直接预测含目标的概率以及边界框的位置信息, D e n s e B o x {\rm DenseBox} DenseBox A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法的先驱,但是其存在无法很好地处理重叠目标的情况而没有被广泛使用。在 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法中,有一类借助 F P N {\rm FPN} FPN实现,如经典的 R e t i n a N e t {\rm RetinaNet} RetinaNet F S A F {\rm FSAF} FSAF等;另一类是基于关键点的方法,如 C o r n e r N e t {\rm CornerNet} CornerNet C e n t e r N e t {\rm CenterNet} CenterNet等。

与上面提出的基于关键点的 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法不同,论文的创新点在于:论文方法侧重在中层语义上表征目标,旨在在精确度和特征建模间达到平衡;该方法不需要引入嵌入向量。此外,显然 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free方法会引入大量低质量的预测框。为了抑制低质量的边界框, F C O S {\rm FCOS} FCOS提出 c e n t e r n e s s {\rm centerness} centerness模块; F o v e a B o x {\rm FoveaBox} FoveaBox基于人眼原理滤除掉靠近边界的像素。论文基于 F C O S {\rm FCOS} FCOS的思想提出了语义一致性模型用于滤除低质量的边界框。


3. Our Approach

D D B N e t {\rm DDBNet} DDBNet基于 F C O S {\rm FCOS} FCOS实现,如下图,其由边界框分解、组合语义一致性模块组成。
在这里插入图片描述

图4:DDBNet

首先, D & R {\rm D\&R} D&R模块在回归分支前重组预测边界框并将它们划为边界用以训练。在训练阶段,一旦在每个像素位置产生了预测边界框, D & R {\rm D\&R} D&R模块将预测的边界框划分成四个方向的边界。然后,在同一方向内的边界框基于相对于真实框的偏移排序。因此,通过重组排序后的预测框,模型能够产生更加精确的预测结果。

其次,通过添加新的语义分支来替换 F C O S {\rm FCOS} FCOS中的 c e n t e r n e s s {\rm centerness} centerness分支引入语义一致性模块,并通过分类分支和回归分支的输出来优化该模块。

3.1 Box Decomposition and Recombination

对于实例 I I I,实例上的每个像素点 i i i对应回归一个边界框 p i = { l i , t i , r i , b i } p_i=\{l_i,t_i,r_i,b_i\} pi={li,ti,ri,bi}。将这一系列的边界框表示为 B I = { p 0 , p 1 , . . . , p n } B_I=\{p_0,p_1,...,p_n\} BI={p0,p1,...,pn},其中 l , t , r , b l,t,r,b l,t,r,b分别表示边界框的左、上、右、下边界。通常,基于 I o U IoU IoU损失的回归表示如下:
L I o U = − 1 N p o s ∑ I ∑ i n log ⁡ ( I o U ( p i , p I ∗ ) ) (1) L_{IoU}=-\frac{1}{N_{pos}}\sum_I\sum_i^n\log(IoU(p_i,p_I^*))\tag{1} LIoU=Npos1Iinlog(IoU(pi,pI))(1)

其中, N p o s N_{pos} Npos表示实例中的正样本像素数、 p I ∗ p_I^* pI表示回归目标。简要地说, D & R {\rm D\&R} D&R模块基于 I o U IoU IoU损失再产生更加精确的预测 p i p_i pi。如下图, D & R {\rm D\&R} D&R模块由四个部分组成:
在这里插入图片描述

图5:D&R

Decomposition 将预测的边界框 p i p_i pi划分成四个边界 l i l_i li t i t_i ti r i r_i ri b i b_i bi p i p_i pi p I ∗ p_I^* pI之间的交并比 s i s_i si作为边界的置信度。如上图 ( a ) {\rm (a)} (a),黑色为真实框,其余三种颜色的框为预测框。 S ∗ S_* S分别表示对应边界框与真实框的交并比,也即表示该边界框的置信度。对于实例 I I I,得到一个表示边界置信度的大小为 N × 4 N×4 N×4的矩阵 S I S_I SI。然后,基于方向将所有边界划分成四个集合: l e f t I = { l 0 , l 1 , . . . , l n } left_I=\{l_0,l_1,...,l_n\} leftI={l0,l1,...,ln} r i g h t I = { r 0 , r 1 , . . . , r n } right_I=\{r_0,r_1,...,r_n\} rightI={r0,r1,...,rn} b o t t o m I = { b 0 , b 1 , . . . , b n } bottom_I=\{b_0,b_1,...,b_n\} bottomI={b0,b1,...,bn} t o p I = { t 0 , t 1 , . . . , t n } top_I=\{t_0,t_1,...,t_n\} topI={t0,t1,...,tn}

Ranking I o U IoU IoU损失的目标是找到与真实框具有最大交并比的边界框。因此,可能考虑的最佳方案是拟合出目标的每一条最佳边界。但是,如果直接将所有的边界进行组合,这时的时间复杂度是 O ( n 4 ) O(n^4) O(n4)。为了避免如此高的时间复杂度,论文采取一种简单有效的排序策略。对于实例 I I I,首先计算与真实边界 p I ∗ = { l I , r I , b I , t I } p_I^*=\{l_I,r_I,b_I,t_I\} pI={lI,rI,bI,tI}的偏移 δ I l , δ I r , δ I b , δ I t \delta_I^l,\delta_I^r,\delta_I^b,\delta_I^t δIl,δIr,δIb,δIt。然后,基于偏移对每个边界集合进行排序,如上图 ( b ) {\rm (b)} (b)。与真实边界更近的预测边界的排序分数更高,实验结果证明该排序策略效果很好且不会影响网络的训练。

Recombination 如上图 ( c ) {\rm (c)} (c),在上一步四个集合中具有相同排序位的边界组合成边界框 B I ′ = { p 0 ′ , p 1 ′ , . . . , p n ′ } B_I^{'}=\{p_0^{'},p_1^{'},...,p_n^{'}\} BI={p0,p1,...,pn}。然后 p i ′ p^{'}_i pi p i ∗ p^{*}_i pi间的交并比 s i ′ s_i^{'} si作为重组后对应边界的置信度。置信度用 N × 4 N×4 N×4的矩阵 S I ′ S_I^{'} SI表示。简单来说,即首先将边界框拆分成四条边界,然后根据边界与真实边界的交并比挑选出四个最佳的边界,继而将这四个边界组成边界框。

Assignment 现在,我们得到了两组关于边界的得分 S I S_I SI S I ′ S_I^{'} SI,最后将二者较高的值作为边界最终的置信度。该分配策略主要基于如下准则:低排序位框的边界离真实框边界较远,而重组后的置信度 s i ′ s_i^{'} si低于原置信度 s i s_i si。置信度的变化较大造成了训练过程的不稳定。因此,为了稳定训练过程,每个边界都基于 I o U {\rm IoU} IoU损失优化。特别地,最后的回归损失由两部分组成: L I o U D & R = 1 N ∑ I ( 1 S I ′ > S I L I o U ( B I ′ , T I ) + 1 S I ≥ S I ′ L I o U ( B I , T I ) ) (2) L_{IoU}^{D\&R}=\frac{1}{N}\sum_I({\bold 1}_{S_I^{'}>S_I}L_{IoU}(B_I^{'},T_I)+{\bold 1}_{S_I≥S_I^{'}}L_{IoU}(B_I,T_I))\tag{2} LIoUD&R=N1I(1SI>SILIoU(BI,TI)+1SISILIoU(BI,TI))(2)

损失函数中引入指示函数,使得在训练模型的过程中选择与真实框具有更高交并比的边框。这里,由于最终边框的边界可能来自不同边界框,所以这种方式实际上是一种实例级的操作。并且,在此过程中不会引入额外参数,而仅仅是改变了梯度更新的方式。

3.2 Semantic Consistency Module

由于 D & R {\rm D\&R} D&R模块的性能在一定意义上依赖于预测的边界框,所以急需一种高效的使网络集中于正样本而过滤掉负样本和噪声的方法。在以前的方法中,将实例边界框中心部分的样本定位为正样本,如图 ( 2 ) (2) (2)中的红色区域。而论文采取的是另一种不需要额外计算量的方法,在一定程序上加速了模型的运行。语义一致性模块的思想如下:
{ C I ↓ ‾ ∩ R I ↓ ‾ ← n e g a t i v e C I ↑ ‾ ∪ R I ↑ ‾ ← p o s i t i v e , c i = max ⁡ j = 0 g ( c j ) ∈ C I (3) \left\{ \begin{aligned} \overline{C_{I\downarrow}}\cap \overline{R_{I\downarrow}}& \leftarrow\ {\rm negative}\\ \overline{C_{I\uparrow}}\cup \overline{R_{I\uparrow}}& \leftarrow\ {\rm positive} \end{aligned} \right. ,\ c_i=\max^{g}_{j=0}(c_j)\in C_I\tag{3} {CIRICIRI negative positive, ci=j=0maxg(cj)CI(3)

其中, R I R_I RI表示在实例 I I I内的预测框与真实框的交并比集合, R I ‾ \overline{R_I} RI是得分的平均值, R I ↓ ‾ \overline{R_{I\downarrow}} RI表示低于平均值的部分、 R I ↑ ‾ \overline{R_{I\uparrow}} RI表示高于平均值的部分。 c i ∈ C I c_i\in C_I ciCI表示第 i i i个像素的所有类别中的最大得分。类似地, C I ↓ ‾ \overline{C_{I\downarrow}} CI表示低于平均值的部分、 C I ↑ ‾ \overline{C_{I\uparrow}} CI表示高于平均值的部分。值得注意的是,在这种方法中为了防止在训练过程中过滤掉不正确的类别,采用的是类别不可知的方法。如下图:
在这里插入图片描述

图6:语义一致性模块

如上图, R I ↓ ‾ \overline{R_{I\downarrow}} RI C I ↓ ‾ \overline{C_{I\downarrow}} CI交集部分的像素定义为负样本, R I ↑ ‾ \overline{R_{I\uparrow}} RI C I ↑ ‾ \overline{C_{I\uparrow}} CI交集部分的像素定义为正样本。同时,如果像素同时覆盖了多个目标,则该像素表示较大的那个目标。

此外,式 ( 3 ) (3) (3)能够自适应控制正负样本的比例,并通过实验证明该方法比手动控制正负样本比例的方式更佳。然后,像 F C O S {\rm FCOS} FCOS一样,使用所有的正样本像素点训练模型。区域一致性模块通过在原始网络中添加分支实现,其通过以下损失函数优化: L c o n = 1 N p o s ∑ I ∑ i ∈ C I ↑ ‾ ∪ R I ↑ ‾ C E ( r i , I o U ( p i , p I ∗ ) ) (4) L_{con}=\frac{1}{N_{pos}}\sum_{I}\sum_{i\in \overline{C_{I\uparrow}}\cup \overline{R_{I\uparrow}}}CE(r_i,IoU(p_i,p_{I}^*))\tag{4} Lcon=Npos1IiCIRICE(ri,IoU(pi,pI))(4)

最后, D D B N e t {\rm DDBNet} DDBNet的总的损失函数如下:
L = L c l s + L r e g D & R + L c o n (5) L=L_{cls}+L_{reg}^{D\&R}+L_{con}\tag{5} L=Lcls+LregD&R+Lcon(5)


4. Experiments

在这里插入图片描述

图7:目标检测实验结果对比

在这里插入图片描述

图8:各创新点的实验结果对比


5. Conclusion

论文提出一种 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free检测器 D D B N e t {\rm DDBNet} DDBNet,首次提出边界框的分解与重组的概念。边界框的分解和重组过程优化了边界框的生成,同时提出语义一致性模块来提取高质量的训练样本。总之,论文中提出的边界框的分解与重组概念还是比较新颖的,提出了一种全新的生成边界框的方法。


参考

  1. Chen R, Liu Y, Zhang M, et al. Dive Deeper Into Box for Object Detection[J]. arXiv preprint arXiv:2007.14350, 2020.


这篇关于(三十四)论文阅读 | 目标检测之DDBNet的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/573727

相关文章

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

JavaFX应用更新检测功能(在线自动更新方案)

JavaFX开发的桌面应用属于C端,一般来说需要版本检测和自动更新功能,这里记录一下一种版本检测和自动更新的方法。 1. 整体方案 JavaFX.应用版本检测、自动更新主要涉及一下步骤: 读取本地应用版本拉取远程版本并比较两个版本如果需要升级,那么拉取更新历史弹出升级控制窗口用户选择升级时,拉取升级包解压,重启应用用户选择忽略时,本地版本标志为忽略版本用户选择取消时,隐藏升级控制窗口 2.

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super