博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【论文笔记】:DuBox: No-Prior Box Objection Detection via Residual Dual Scale Detectors
阅读量:3904 次
发布时间:2019-05-23

本文共 2049 字,大约阅读时间需要 6 分钟。

&Title:

  • Github addr None

&Summary

介绍了一种新的一阶段检测方法Dubox,它可以在没有先验框的情况下检测物体。设计的双尺度残差单元具有多尺度特性,使双尺度检测器不再独立运行。高层检测器学习低层检测器的残差。

Dubox增强了启发式引导的能力,进一步使第一尺度探测器能够最大限度地检测小目标,第二尺度探测器能够检测第一尺度探测器无法识别的目标。此外,对于每一个比例探测器,采用新的classification-regression progressive strap loss(CRPS),使检测过程不基于先验框。结合这些策略,检测算法在速度和精度方面取得了优异的性能。

&Research Objective

anchor-free + 双尺度预测

&Problem Statement

传统的神经目标检测方法使用多尺度特征,让多个检测器独立并行地在多个分支执行检测任务。同时,加入 先验框(prior box)提高了算法处理尺度不变性的能力 。然而,过多的先验框和多个检测器会增加检测算法的计算冗余度

  • 过多先验框
  • 多个检测器

problem:增加检测算法的计算冗余度

&Method(s)

anchor-free + 双尺度预测的方法解决上诉的两个问题,同时在gt的设置时,中心点正样本范围扩大。

双尺度

与使用FPN主干网络的anchor-free方法相比,没有为所有level层建立后续预测分支,而是将下采样到64倍和32倍的分支进行结合,再将16和8倍的分支结合,形成两个融合的尺度预测分支,进行后续的refine。整个算法的框架图如下图所示(这有点像是二阶段的啊???):

在这里插入图片描述
Refine Module:
在这里插入图片描述
Bbox Bridge Module:
Bbox(边界框)桥模块将低级检测器和高级检测器的回归连接起来,从而使高级别回归基于低级残差。
在这里插入图片描述
残差双尺度检测器使检测器2基于检测器1的预测结果,执行残差学习。 这种方法使我们的设计中的多检测器不是独立的

双尺度的冗余策略:

  • Differentiate positive range:设计检测器1中的p为10,检测器2中的p为9。 同时,向检测器1的正范围添加一个约束 => r = arg min (r, 3)。该方法确保了大目标正样本挂钩的数量受到限制,并且提高了低级别检测小目标的性能。
  • Differentiate scale weight:物体的目标边界框在原始图像中占据的区域大于0.3,则我们的 检测器 1 的回归将忽略该目标对象。(让大目标给检测器2来检测,检测器1只负责检测小目标)

中心点正样本范围扩大

如下图所示是正样本和负样本GT设置,DuBox使用固定钩(i,j)将bbox的预测和分类结合起来。蓝色的点是positive 的钩,其他的是 negative。

在这里插入图片描述
不再像那样直接在中心点画圆框了,而是根据以下公式进行正样本的定义
在这里插入图片描述
在这里插入图片描述
P是用于调整范围的预定义值。

理解 “ 中心点正样本范围扩大 ” ????

与、等方法相比,DuBox没有对中心点、左上角或者右下角点进行高斯分布进而对正负样本比例加以抑制,而是扩大正样本中心点可取真值的范围,从另一种角度保证正负样本的均衡。最后,对处理后物体的中心点范围进行回归和分类。

如果看过、等算法的人应该知道,它们的gt正样本设置也是相对于上面所提到的算法的正样本范围扩大了不少,这里可以理解为它们都是基于密集点的目标检测算法。而像、等方法则都是基于关键点的目标检测算法。

关于基于密集点的目标检测和基于关键点的目标检测算法,博主这里整理总结了这些算法的异同点,有兴趣的可以前往阅读:

  • 【论文总结】:基于关键点检测的anchor-free算法总结(待完成)

关于正负样本的其他处理:ignore操作

在、、等算法中,一般都在正负样本范围之间还隔离了一小段区域,克服正负样本波动性,从而防止梯度的波动。
Dubox没有使用固定的ignore范围,而是在loss设计时候是有 iou gate unit自动的学习ignore范围 :只有回归框和真值框达到0.5的重合时分类才在该点产生loss,从而达到自动学习ignore范围的作用。
在这里插入图片描述

&Evaluation

  • 论文各个部件的消融实验:
    在这里插入图片描述
  • 在voc上的速度和性能,达到了82.89的map, 其320x320版本达到了79.31map和高达50fps的速度。在这里插入图片描述
  • 在coco上的性能:
    在这里插入图片描述

&Conclusion

基于锚的方法不是对象检测的唯一选择。 Dubox作为一种非先验盒(anchor-free)方法,也可以使用适当的回归损失(CRPS)和网络体系结构有效地工作。 同时,Dubox进一步考虑了多尺度检测的问题,以增强启发式引导特征选择的能力。 提出的双尺度残差单元使多尺度检测器 不会独立运行,而是从低端进行高级学习。 这些策略可提高检测性能,同时显着减少各种规模检测器的冗余。

&Notes

参考

推荐

转载地址:http://rbxen.baihongyu.com/

你可能感兴趣的文章
openresty lua zlib整合安装 让lua支持解压服务端压缩过的数据
查看>>
Nginx与Gzip请求
查看>>
最佳日志实践(v2.0)
查看>>
logstash日志分析的配置和使用
查看>>
Nginx问题定位之监控进程异常退出
查看>>
https://imququ.com/post/content-encoding-header-in-http.html
查看>>
如何监控 Nginx?
查看>>
字符编码的前世今生
查看>>
视频笔记:Go 抓包、分析、注入 - John Leon
查看>>
matplotlib 画图
查看>>
linux下模拟丢包,延时命令总结
查看>>
java的字符流简单介绍
查看>>
初识java的xml
查看>>
通过DOM方式对xml文件进行解析
查看>>
利用DOM方式生成XML文件
查看>>
java中使用SAX生成XML文件
查看>>
利用java获取网页内容
查看>>
Matlab中画图的说明
查看>>
python之对list进行切片学习
查看>>
在屏幕上打印杨辉三角
查看>>