Few-shot Object Detection via Feature Reweighting (2019 ICCV)

这篇论文算是小样本目标检测的开篇之作之一了,我在阅读最新论文的时候,发现他们也总会引用这篇文章,所以做小样本目标检测或者语义分割的同学,可以阅读一下这篇论文。

1. 论文出处

2019 ICCV
代码:https://github.com/bingykang/Fewshot_Detection

2. 问题

传统的基于CNN的目标检测方法需要大量的bbox标注,这些方法对于一些少的类别是不可用的。

3. 解决方法

设计了小样本目标检测器。能够从少量有标注的样本中检测出新类。模型通过元特征学习器和一个调整权重的模块,利用全部标注的基础类别,快速适应新类。

使用有大量数据的base classes作为训练数据,特征提取器学习到的元特征能够泛化,检测新类别。

权重调整模型能够把少量来自novel classes的support examples转换成向量,表明元特征对于检测相应目标的重要性和相关性。

4. 模型

4.1 基础网络结构

YOLO v2

4.2 组成部分

  1. 元特征学习器
  2. 特征权重调整模块

4.3 基本流程

模型首先从base classes中学习能够泛化到不同目标类别检测的元特征上,然后它有效地利用少量的support examples识别对于检测新类别重要且具有判别性的元特征,从base classes中迁移检测知识到novel classes。
采用两阶段学习方式,首先从base classes中学习元特征和好的权重调整模型,然后微调检测模型以使用novel classes.

4.4 具体操作

给定一个query image和一些support images用于novel classes,特征学习器从query image中提取元特征,权重调整模块学习捕获support images的全局特征,并嵌入权重调整系数,来调节query image的元特征。

query元特征接收到support信息,adapted元特征被喂入检测预测模型来预测query中novel classes的类别和bbox。

如果有N个novel classes,权重调整模型会把N个类别的support样本作为输入,然后转换成N个权重调整向量,分别用于检测对应类别的物体,一些对于novel class重要的且具有对比性的元特征会对最终检测贡献更大。
Few-shot Object Detection via Feature Reweighting (2019 ICCV)_第1张图片

4.5 权重调整模型

权重调整模型的输入是object of interest,但一张图片中可能包含多个不同类别的物体,为了让权重调整模型知道target class是啥。除了RGB三通道外,额外引入了新的"mask"通道,如果在object of interest的bbox内,值设为1,否则为0.

权重调整模型是增加mask作为一个新的channel,是个二进制层,包含目标区域的位置值为1,目标区域外的位置值为0。mask层为权重调整模型提供了哪部分图像信息会被使用到,哪部分被看作背景,结合mask和图像作为输入不仅提供了object of interest的类别信息,还提供了位置信息。

你可能感兴趣的:(小样本学习,目标检测,论文阅读,深度学习,pytorch,小样本检测)