刚出来的小目标检测论文
论文地址:https://arxiv.org/pdf/2004.12432.pdf

Abstract:

目标检测器通常会根据尺寸不同具有不同性能表现,其中小物体的性能最不令人满意。在本文中,我们研究了这种现象,并发现:在大多数训练迭代中,小目标的损失对总损失几乎没有贡献,导致优化不平衡导致性能下降。受此启发,我们提出Stitcher,它是一种反馈驱动的数据提供者,旨在以平衡的方式训练目标检测器。在Stitcher中,将图像调整为较小的分量,然后将其拼接为与常规图像相同的尺寸。拼接图像不可避免的包含较小目标,这对于我们的核心思想将是有益的,以利用损失统计信息作为反馈来指导下一次迭代更新。已经对各种检测器,主干网络,训练周期,数据集甚至实例分割进行了实验。在所有设置中,尤其是对于小型目标,Stitcher稳定地大幅提高了性能,而在训练和测试阶段几乎没有引入任何额外的计算。

Introduction:

小目标检测一直是个难题,论文对问题的原因进行了分析:

1.Image level Analysis

目标检测COCO数据集中,小目标占据了41.4%的比例,远多于中大型目标,这个应该是有利于小目标检测的。然而,数据集中只有52.3%的图片包含小目标。意味着接近一半的图像是不包含小目标的。这种严重的失衡阻碍了模型的训练过程。


如果将常规图像调整为较小的尺寸,则内部的中型或大型目标也将变为较小的目标,但是其轮廓或细节仍然比原始的小型目标更清晰。从图4中可以看出,原图中的小目标和经过resize后的目标尺寸分别为29 x 31和30 x 30,大小基本一致,但是后者图像更清晰。

2.Training Level Analysis

小物体在图像上的分布不均匀,因此使训练遭受进一步的失衡问题。 即使某些图像中包含小物体,它们仍然有机会在训练过程中被忽略。 图1说明,在超过50%的迭代中,小目标损失占总数的不到10%。 训练损失主要是大中型物体。 因此,用于小物体的监督信号不足,严重损害了小物体的准确性甚至整体性能。

因此,本文提出了一种Stitcher,一种反馈驱动的数据提供者,它通过以反馈的方式利用训练损失来增强对象检测的性能。在Stitcher中,我们引入的拼接图像大小与常规图像相同。 核心思想是利用当前迭代中的损耗统计信息作为反馈,以自适应地确定下一次的输入选择。

具体如下图所示,如果在当前迭代t中小对象rts的损失比可忽略不计,则迭代t +1的输入是拼接图像,其中拼接图像中较小的对象不可避免地会更加丰富。 否则,输入将在默认设置下保留常规图像。

Stitcher:

主要包含Image Level Operations与Training Level Module两个阶段:

1.Image Level Operations - Component Stitching


为了解决数据集中小物体监督信号不足的问题,使用Stitching动态地生成拼接图像或常规图像来丰富小目标。具体操作为,给定输入图像resize到统一的尺寸,然后利用参数k个图像进行拼接,并保留了原有图像的宽高比。保持宽高比的原因是可以保留原始对象的属性。 当将k设为1时,将自然图像引入到拼接图像中。将k的缝合顺序指定为4,我们可以看到图5(b)中的示例。 在图像拼接的帮助下,通过制造更多的小物体,图像批处理(充当最小训练实体)的比例失衡得到缓解。 由于拼接图像的大小与常规图像相同,因此不会在网络传播中引入其他计算。

2.Training Level Module - Selection Paradigm

图1中已经分析出在网络的训练过程中,超过50%的迭代小目标损失占比低于0.1。为了避免这种不希望的趋势,论文提出了一种正确的范例,根据当前遍历的反馈确定下一次迭代的输入。 如果小目标象的损失在迭代t中可以忽略不计(低于阈值y),则我们认为关于小对象的知识还远远不够。 为了弥补信息的不足,我们采用拼接图像作为迭代t + 1的输入。否则,将选择常规图像。

如何计算小目标损失占比呢?论文采用以下公式:

即box的面积定义为h x w,当面积 < 1024时(32 x 32),则该Box的回归损失定义小目标损失(后续的消融实验分析了损失部分的选取),就可算出其比例。


论文将图6中的损失分布比较和图7中的性能差异可视化。每10k次迭代测量一次统计数据,并平滑地进行说明。 它表明,使用Stitcher,各种规模的损失分布更加平衡,从而提高了精度。

Time Complexity分析:

上图可以看出,总训练时间而言,用ResNet-50-FPN主干训练基线,更快的RCNN大约需要8.7个小时。 如果在相同的GPU上计时,则Stitcher的时间会延长约一刻钟。 当应用较大的主干网络时,此间隙会缩小。

In Context of Literature:

1.Multi-scale Image Pyramid:类似于多尺度训练,Stitcher还被设计为针对尺度变化更强大地渲染特征。 但是,有两个本质区别:
(1)STITCHER既不需要图像金字塔结构,也不需要调整输入大小。 拼接图像仍具有与常规图像相同的大小,从而极大地减轻了图像金字塔中不可避免的计算负担。
(2)STITCHER中的目标尺寸由训练迭代中的损失分布自适应确定。 相反,在图像金字塔中,在每次迭代中随机选择不同大小的图像。 与多尺度训练相比,这将显着提高性能。

2.SNIP and SNIPER:Stitcher的操作与SNIPER的操作本质上不同。 SNIPER中的截取操作要复杂得多,这就需要计算gt box与crops之间的重叠量(IoU),以便进行标签分配。 但是,Stitcher中的操作仅涉及插值和拼接。 此外,由于SNIP和SNIPER依赖于多尺度测试。

3.Mixup and Auto Augmentation:Stitcher效果更优

Experiments:

1.Faster-RCNN与RetinaNet比较:

2.vs multi-scale training:

3.vs SNIP and SNIPER:

4.Ablation study:

Stitcher-小目标检测算法 | Stitcher: Feedback-driven Data Provider for Object Detection相关推荐

  1. 小目标检测算法 Stitcher 来龙去脉、方法与分析

    昨天向大家推荐了小目标检测的福音:Stitcher,简单又有效,引起了不少朋友的兴趣.这篇文章为 Stitcher 原作者所写,介绍了Stitcher的来龙去脉.方法和分析,欢迎参考. https:/ ...

  2. 基于GAN的小目标检测算法总结(1)——Perpetual GAN

    基于GAN的小目标检测算法总结(1)--Perpetual GAN 1.前言  这是一个系列文章,对基于GAN的小目标检测算法进行总结.目前基于GAN的小目标检测算法不多,比较有名的有3篇(好总结嘛) ...

  3. 目标检测YOLO实战应用案例100讲-基于卷积神经网络的小目标检测算法研究

    目录 基于卷积神经网络的小目标检测算法研究 基于卷积神经网络的小目标检测相关理论 2.1 引言

  4. 目标检测论文解读复现之十六:基于改进YOLOv5的小目标检测算法

    前言 此前出了目标改进算法专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读最新目标检测算法论文,帮 ...

  5. 分析显著性目标检测--Global Context-Aware Progressive Aggregation Network for Salient Object Detection

    分析显著性目标检测--Global Context-Aware Progressive Aggregation Network for Salient Object Detection 引入 方法 网 ...

  6. 基于dota的目标检测(旋转框)论文阅读Oriented Object Detection in Aerial Images with Box Boundary-Aware Vectors

    基于dota的目标检测(旋转框)|论文阅读Oriented Object Detection in Aerial Images with Box Boundary-Aware Vectors 文章目录 ...

  7. 小目标检测算法SNIPER—— SNIP的实战版本 (目标检测)(two-stage)(深度学习)(Arvix 2018)

    论文名称:< SNIPER: Efficient Multi-Scale Training > 论文下载:https://arxiv.org/abs/1805.09300 论文代码:htt ...

  8. stitcher:Feedback-driven Data Provider for Object Detection论文翻译

    作者知乎说明 原文链接:https://pan.baidu.com/s/14Cx0U8aW32t4ir8ZFtbGHw 密码:969g 原文链接 参考:我爱计算机视觉公众号 摘要: 对象检测器通常根据 ...

  9. 论文笔记——Stitcher:Feedback-driven Data Provider for Object Detection

    论文下载: https://arxiv.org/pdf/2004.12432.pdf 论文摘要: 代码暂未开源 该论文摘要概括:目标检测器的效果是根据物体尺度的不同而不同,在小对象性能上是最不令人满意 ...

最新文章

  1. 3.QML布局和输入元素
  2. Hashtable多线程遍历问题
  3. 成为更优秀的程序员:退后一步看问题
  4. redis源码剖析(十四)—— dump.rdb文件分析工具
  5. 揪出占用磁盘空间的罪魁祸首-企业生产实战
  6. 小米手机不能发短信的一种解决方法--重新设置短信中心号码
  7. 接了个私单,结果对方有部分尾款迟迟不付,还好有留了个后门
  8. 今日分享——《青春》(李大钊)
  9. Android华为平行视界/小米横屏模式适配(左右分屏)
  10. python计算时间间隔_python计算时间差
  11. G++’s Family
  12. 遇到“服务器内部错误http500怎么办?
  13. 三光(可见光、红外光、激光)云台产品调研
  14. 微信小程序与微信登陆的交互、微信登录、获取微信信息
  15. 二手书交易系统用例图
  16. c9计算机专业考研哪个容易,二本考研考C9是什么难度?有可能吗?
  17. 船东提单和货代提单差距这么大?
  18. python中定义元组的符号_python 3 基础之元组tuple,详解
  19. 支付宝员工因绩效3.25B被辞退,员工告上法院,结果来了
  20. websocket实现消息实时更新(亲测,2021/11/9)

热门文章

  1. Amazon Kindle 3 键盘快捷键第一版
  2. 地级市地方一般公共预算收支状况指标
  3. Midas—预应力混凝土连续梁桥自动设计程序
  4. Porting:linux内核的模块化、根文件系统的制作和自动挂载
  5. 闪亮玻璃图标悬浮效果
  6. python决策树剪枝_决策树剪枝的方法与必要性
  7. 佳明手表表盘开发_无敌教学贴!关于Garmin腕表基本操作 看这一篇就够了
  8. 无聊乱做的一个线连线的功能()蓝图的(_杰森大师)
  9. [嵌入式开发模块]通用接收状态机模块
  10. 单片机的四种烧写方式