ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

BorderDet|提取Bounding Box边界特征进一步优化检测结果

2021-05-20 22:01:29  阅读:250  来源: 互联网

标签:Box 检测器 BorderDet 所示 Coarse Bounding mathcal BAM


跟大家分享ECCV2020中的一篇文章《BorderDet: Border Feature for Dense Object Detection》。

论文下载地址:https://arxiv.org/abs/2007.11056

源码地址:https://github.com/Megvii-BaseDetection/BorderDet


在这篇文章中,作者提出了BAM(Border Alignment Module),将其融入到FCOS检测器中,构造出名为BorderDet的检测器。通过实验表明,增加BAM能提高检测性能。

总体结构

BAM能够高效地提取目标边界的特征(border feature),BAM在一阶段检测器的位置如下图所示:


如上图所示,在网络detection head的分类分支和回归分支中分别加入BAM单元,在每个分支中,BAM都以baseline中原回归分支的结果和分支的中间feature map作为输入,BAM的输出与原分支的输出融合,得到最终结果。

BAM单元

BAM的结构如下图所示:


在BAM中,首先使用了一个带有instance normalization的1x1卷积,然后进行Border Align操作,后面再接1个1x1卷积。
Border Align的操作原理如下图所示:


BorderAlign在操作过程中,若在 ( i , j ) (i, j) (i,j)处检测到Coarse Box,则进行如下操作得到BorderAlign的输出feature map:


上式中 ( x 0 , y 0 , x 1 , y 1 ) \left(x_{0}, y_{0}, x_{1}, y_{1}\right) (x0​,y0​,x1​,y1​)是Coarse Box的坐标, w w w和 h h h是Coarse Box的宽和高,在论文中 N N N取10。为了避免量化误差,使用$I_{c}
$时进行了双线性插值操作。

将BAM应用于二阶段检测器中

此外,作者也尝试将BAM单元用于二阶段检测器的detection head中,构造了BorderRPN,如下图所示:

损失函数

在训练时,若ground truth ( x 0 t , y 0 t , x 1 t , y 1 t ) \left(x_{0}^{t}, y_{0}^{t}, x_{1}^{t}, y_{1}^{t}\right) (x0t​,y0t​,x1t​,y1t​)与Coarse Box ( x 0 , y 0 , x 1 , y 1 ) \left(x_{0}, y_{0}, x_{1}, y_{1}\right) (x0​,y0​,x1​,y1​)的IoU大于0.6,则认为2者匹配,使用如下公式计算ground truth和Coarse Box的偏差:

δ x 0 = x 0 t − x 0 w ∗ σ δ y 0 = y 0 t − y 0 h ∗ σ δ x 1 = x 1 t − x 1 w ∗ σ δ y 1 = y 1 t − y 1 h ∗ σ  ,  \delta x_{0}=\frac{x_{0}^{t}-x_{0}}{w * \sigma} \quad \delta y_{0}=\frac{y_{0}^{t}-y_{0}}{h * \sigma} \quad \delta x_{1}=\frac{x_{1}^{t}-x_{1}}{w * \sigma} \quad \delta y_{1}=\frac{y_{1}^{t}-y_{1}}{h * \sigma} \text { , } δx0​=w∗σx0t​−x0​​δy0​=h∗σy0t​−y0​​δx1​=w∗σx1t​−x1​​δy1​=h∗σy1t​−y1​​ , 


上式中 σ \sigma σ取0.5。上式定义的偏差作为网络的回归目标之一,目的是使得最终的bounding box比Coarse Box更接近ground truth。


网络整体的损失函数如下:

L = L c l s C + L r e g C + 1 N p o s ∑ x , y L c l s B ( P B , C ∗ ) + L r e g B { C ∗ > 0 } ( Δ , Δ ∗ ) \mathcal{L}=\mathcal{L}_{cls}^{C}+\mathcal{L}_{reg}^{C}+\frac{1}{\mathcal{N}_{pos}} \sum_{x, y} \mathcal{L}_{cls}^{B}\left(\mathcal{P}^{B}, \mathcal{C}^{*}\right)+\mathcal{L}_{reg}^{B}\{\mathcal{C}^{*}>0\}(\Delta, \Delta^{*}) L=LclsC​+LregC​+Npos​1​∑x,y​LclsB​(PB,C∗)+LregB​{C∗>0}(Δ,Δ∗)


在损失函数中,前2部分是FCOS的损失函数,后2部分是本文新增的,用于在Coarse结果的基础上,利用border feature进一步提升网络性能。

实验结果

使用FCOS做为baseline的BorderDet性能如下表所示:


此外,这篇论文提出的方法可以很容易集成到现有的一阶段和二阶段目标检测器中,如下表所示

如果你对计算机视觉中的目标检测、分割、跟踪、轻量化网络感兴趣,欢迎关注公众号一起交流~
在这里插入图片描述

标签:Box,检测器,BorderDet,所示,Coarse,Bounding,mathcal,BAM
来源: https://blog.csdn.net/zhangkai950121/article/details/117092445

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有