论文阅读:Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector

  • (1)Author
  • (2)Abstract
  • (3)Conclusion
  • (4)Introduction
  • (5)FSOD:A Highly-Diverse Few-Shot Object Detection Dataset
  • (6)Our Methodology
    • (6.1)Problem Definition
    • (6.2)Deep Attentioned FewShot Detection
      • (6.2.1)Attention-Based Region Proposal Network
      • (6.2.2)Multi-Relation Detector
    • (6.3)Two-way Contrastive Training Strategy
  • (7)Experiments
  • (8)个人总结

(1)Author

  • 作 者
    Qi Fan,Wei Zhuo,Chi-Keung Tang,Yu-Wing Tai
  • 机 构
    HKUST
    Tencent
  • 时 间
    2020年

(2)Abstract

  • 传统的目标检测算法需要大量高质量的标注数据来训练模型,而数据标注非常耗费人力物力,因此本文中提出了一种“小样本”的目标检测网络,旨在通过少量的标记数据就能让模型有效检测那些从未见过的目标;
  • 该算法的核心有三点:Attention-RPN, Multi-Relation Detector, Contrastive, Training strategy,能够利用小样本的support set和query set的相似性来检测新的目标同时抑制background中的错误检测;
  • 这个团队还自己建立了一个包含1000种目标的数据集,这是第一个专为“小样本”目标检测设计的数据集,数据集地址(https://github.com/fanq15/Few-Shot-Object-Detection-Dataset);

(3)Conclusion

  • 提出了一个“few-shot”的目标检测框架,该算法的核心有三点:Attention-RPN, Multi-Relation Detector, Contrastive, Training strategy;
  • 建立了一个专为“few-shot”目标检测而生的数据集。

(4)Introduction

  • 现存的目标检测算法依赖大量的数据进行训练,这促使学界转向小样本学习的研究,但大多数研究集中在图像分类上,对于小样本目标检测问题的研究还是颇少;
  • “小样本”检测算法要让模型检测到那些在训练中并未见过的目标(以下简称unseen object),而bounding box很容易错过那些unseen object,或者在背景区域产生大量错误的检测,作者认为这是由于RPN网络没有给这些好的bounding box一个应得的score,最终导致新的目标很难被检测到;
  • 本文主要有两个贡献,一是提出了一个通用的小样本目标检测模型,不需要重新训练或者fine-tuning就能识别新种类的目标,二是建立了一个新的数据集;

(5)FSOD:A Highly-Diverse Few-Shot Object Detection Dataset

  • 数据集的种类分布

(6)Our Methodology

(6.1)Problem Definition

  • 作者首先对本文的任务做出了定义,提到两个概念——support image和query image,support image包含了对需要检测的目标的特写(见下图的左右上角,分别是对头盔和自行车的特写),而query image是我们要检测的目标,它可能包含了support image当中的目标,而我们的任务就是要在query image中把这些目标都找出来。如果support set包含了K个种类和N个对应的目标实例,这个问题被称为K-way N-shot detection

(6.2)Deep Attentioned FewShot Detection

  • 下图是本文算法的框架:
  • 文中算法建立了一个新奇的注意力网络,能在RPN模块和Detector上学习support set和query set之间的联系;
  • 图中的weight shared network有多个分支,可以分为两类,一类用于query set,另一类用于support set(support set的分支可以有多个,用来输入不同的support图像,图中只画了一个),query set的分支就是一个Faster RCNN的结构;

(6.2.1)Attention-Based Region Proposal Network

  • 作者认为RPN不仅应该区分objects和non-objects,而且还应该过滤掉不属于support set的目标,但在没有support image的信息支持下,RPN会给出很多得分很高但并不属于support set的proposal,这给后续的detector带来了很大负担,因此,作者提出了Attention RPN来解决这个问题;
  • 将通过weight shared network提取的support image和query image的feature按照下式定义的similarity进行计算得到最终的Attention feature map

(6.2.2)Multi-Relation Detector

  • 为了使detector更好地分辨不同的种类,作者提出了下图所示的muti-relation detector:
  • 分别可以从全局、局部、patch三个角度来进行support image和query image间的匹配(说到底这一部分还是用来测量相似性的),作者也指出这三种模块可以互相结合以获得更好的性能,实验对比见下表:

(6.3)Two-way Contrastive Training Strategy

  • 一种简单的训练策略是通过构造一个训练对(qc,sc)来匹配相同的类别对象,其中查询图像qc和支持图像sc都在同一个c-th类别对象中。作者认为一个好的模型不仅要匹配相同的类别对象,还要区分不同的类别,因此提出了一种新颖的双向对比训练策略。
  • 具体做法是:随机地选择一张query image——qc,一张support image——sc,它两对应第c类目标,再选择一张包含第n类(n≠c)的support image来组成一个三元训练组,其中只有第c类的目标被标记为前景区域,其他的都被当做背景区域;
  • 训练中会产生大量的背景proposal,特别是在negative support的图片上,因此作者为三种匹配对设定了一个比率,即:
    ratio as 1:2:1 for the
    foreground proposal and positive support pairs (pf ; sp),
    background proposal and positive support pairs (pb; sp), and
    proposal (foreground or background) and negative support pairs (p; sn)
  • 在训练时,使用multi-task的loss function:
  • 作者还对比了各种训练策略的效果:

    这的几way等于你选取几个negative support category + 1,几shot就是同一种类有几个模板;

(7)Experiments

  • 效果还是很不错的:

(8)个人总结

  • 无论是目标检测还是当今CV领域的其他任务,当前的算法总是要依赖large-scale的数据集,因此不管算法多花哨,模型都是totally data-based的,小样本的模型是以后的发展方向;
  • 文中的团队特意为本次的研究建立了一个数据集,相信这花费了大量的人力物力,为后续的研究提供了方便,这必须要点一个大大的赞;
  • 文中的算法,更像是一个匹配算法,这让我想起了传统图像处理的模板匹配算法,support set是模板,而我们要从query image中找出符合模板的目标,所以这里就有一个问题,那就是template的选取是否合理,这极大地关系到匹配的performance,文中并未对此作出对应的解释;
  • 文中的算法的核心,我认为是“similarity”,无论是Attention RPN还是Muti-Relation Detector都是为了更好地去判断query image和support image的匹配度,但个人认为这里的Attention RPN的Attention主要还是集中在RPN网络的输入上,通过一个Attention的feature map来得到一个Attention的结果,我一开始读的时候以为是从channel的角度来实现attention,所以还是有点失望的 (仅对于我)
  • Muti-Relation detector最终match的指标是二元交叉熵,bounding box的loss参考了Fast RCNN;
  • 每一个support branch都有一个自己的attention RPN,算法结构比较复杂;
  • Muti-Relation detector在进行匹配的时候计算量很大,文中也没有出现具体的单步推理时间;
  • 训练起来也比较麻烦,一是选定一个sc后其他的negative support怎么选取,二是怎么去遍历这些种类才算合理,这都是很值得讨论的问题。

论文阅读:Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector相关推荐

  1. 论文阅读:Salient Object Detection: A Benchmark

    论文阅读:Salient Object Detection: A Benchmark 南开大学的显著性检测benchmark 链接:http://mmcheng.net/zh/salobjbenchm ...

  2. [论文阅读] Boosting Salient Object Detection with Transformer-based Asymmetric Bilateral U-Net

    论文地址:https://arxiv.org/abs/2108.07851 发表于:Arxiv 2021.08 Abstract 现有的显著目标检测(SOD)方法主要依靠基于CNN的U型结构,通过跨层 ...

  3. 【论文阅读】Moving Object Detection: Review of Recent Research Trends

    Moving Object Detection 已提出的方法 Background Subtraction Frame differencing Temporal Differencing Optic ...

  4. 论文阅读笔记——DLT-Net: Joint Detection of Drivable Areas, Lane Lines, and Traffic Objects)

    论文阅读笔记--DLT-Net: Joint Detection of Drivable Areas, Lane Lines, and Traffic Objects 论文简介 1 引言 2 DLT- ...

  5. CVPR2020论文解读:3D Object Detection三维目标检测

    CVPR2020论文解读:3D Object Detection三维目标检测 PV-RCNN:Point-Voxel Feature Se tAbstraction for 3D Object Det ...

  6. Single shot object detection SSD using MobileNet and OpenCV

    微信公众号:小白图像与视觉 关于技术.关注yysilence00.有问题或建议,请公众号留言. 主题:Single shot object detection SSD using MobileNet ...

  7. 论文阅读笔记:MGAT: Multi-view Graph Attention Networks

    论文阅读笔记:MGAT: Multi-view Graph Attention Networks 文章目录 论文阅读笔记:MGAT: Multi-view Graph Attention Networ ...

  8. 【论文总结】Few-shot Object Detection via Feature Reweighting(附翻译)

    Few-shot Object Detection via Feature Reweighting基于特征重加权的小样本目标检测 论文地址:https://arxiv.org/abs/1812.018 ...

  9. 【弱监督显著目标检测论文】Weakly-Supervised Salient Object Detection via Scribble Annotations

    2020年发表在CVPR上的一篇使用涂鸦注释的弱监督显著目标检测论文 论文原文 代码地址 文章目录 摘要 一.创新点 二.Related Work 1.Learning Saliency from W ...

  10. 论文翻译《Salient object detection: A survey》

    传统的方法: 可大致分为三类:基于block和intrinsic cues的模型.基于region和intrinsic cues的模型.基于extrinsic cues的模型(包括block和regi ...

最新文章

  1. 利用BeanUtils在对象间复制属性
  2. 鹅厂分享:AB实验只是开始?如何归因和解读才是王道!
  3. python课件_如何20小时搞定Python量化期权实战?
  4. mikrotikROS系统的几种安装方法
  5. 跨业自学党的第一次面试
  6. POJ 1655:Balancing Act
  7. 朋友圈点赞点用例的设计点
  8. scratch 大家来找茬
  9. 2019觉得工作很难找?来成都网优谷学点技术吧,小老弟!
  10. 【多传感器融合定位】【学习汇总】
  11. java火星坐标转百度坐标_各种地理坐标系的转换,火星坐标,百度坐标,wsg84等...
  12. TortoiseSVN右键没有菜单
  13. photoshop 抠图
  14. python中并集符号_python中列表之间求差集、交集、并集
  15. 歌礼与先声签订利托那韦片供应协议;索迪斯华东物流新仓于上海松江区开业 | 美通企业日报...
  16. C++PrimerPlus 学习笔记 | 第八章 函数探幽 | 2.引用参数
  17. 世界各国国旗及国家名称
  18. Unity Dotween常用方法详解
  19. 第23节 软件构件技术和软件体系结构
  20. android MVC,MVP,MVVM

热门文章

  1. 推荐一款java微信答题小程序源码知识竞赛问答pk头脑答题游戏
  2. 地理坐标(经纬度坐标)和屏幕坐标(xy坐标)间的转换
  3. IDEA配置JDK版本
  4. 【多传感器融合理论】01自动驾驶中常用传感器硬件介绍
  5. 【前端】日期正则表达式(转发)
  6. win10sas安装教程_Android Studio详细安装教程
  7. cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library
  8. 内存颗粒与内存体质的关系
  9. DCDC BUCK芯片外围电路器件计算-包括Cin、Cout、L、f、cFF、等输出电容、电感计算、补偿电路计算
  10. c语言银行卡六位密码编译,6位随机密码生成器