CVPR2020 论文解读:少点目标检测
CVPR2020 论文解读:具有注意RPN和多关系检测器的少点目标检测
Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector
具有注意RPN和多关系检测器的少点目标检测
目标检测的惯用方法需要大量的训练数据,准备这样高质量的训练数据很费精力的。本文中,提出一种新的少点目标检测网络,只用几个带注释的示例的看不见的类来检测目标。集中到新方法的核心是,注意力RPN,多相关检测器,以及对比训练策略,探索少点支持集和查询集之间的相似性,检测新目标同时抑制背景中的错误检测。
训练网络,提供新数据集,它包含1000类不同的目标,附加高质量的注释信息。众所周知,这是为少点目标检测最好的特定数据集之一。当少点网络训练后,不需要进一步训练和优化,就可以检测看不接见的类。这种方法是通用的,具有广泛的应用潜力。提供少点数据集中新的不同数据集上艺术状态性能。
解决什么问题
少量support的情况,检测全部的属于target目标范畴的前景
本文创新点\贡献
1. 没有反复训练和fine-tune的情况检测新物体,探索物体对的联系。可以在线检测,在proposal前面使用attention模块很有用,联系模块能过滤
2. 大量的数据集,1000个类,每个类只有少量样本,实验表明用这个数据集能达到的效果更好
本文IDEA来源
问题在于新的类别不错的框的分数低
方法
方法概述
在RPN前加一个attention,在检测器之前加了3个attention,然后还是用到了负support训练。
问题定义
给定带有target物体特写的support图片,包含support中类别物体的query图片,support中包含K类物体,每类N个样本,所以就是
检测。
Deep Attentioned Few-Shot Detection
权重共享的框架由多个分支组成,分别为support和query服务,support根据输入有多个分支,图片只显示了一个。
query分支是一个FasterRCNN网络,包含RPN和检测器。
利用这个框架来学习support和query之间的匹配关系,更好的学习同类之间的一般知识。
以这个框架为基础,提出了attention RPN,还有多联系检测。
Attention-Based Region Proposal Network
没有support,RPN就没有目标,后面的子分类就搞不清楚这么多的不相关目标。
使用support信息就能过滤掉大部分的背景框,还有那些不是匹配的类别
通过在RPN中用attention机制来引入support信息,来对其他类的proposal进行压制
通过逐深度的方法计算二者特征值的相似性,相似性用来生成proposal
support的特征是
,query的特征是
,相似度定义如下:
其中G是attention特征图,X作为一个卷积核在query的特征图上滑动,以一种逐深度(取平均)的方式。
使用的是RPN的底部特征,ResNet50的res4-6,发现设置S=1表现很好,这说明全局特征能提供一个好的先验
G用3×3的卷积处理,然后接分类和回归层。
Multi-Relation Detector
还是测量相似性的,在query和support的bbox之间,包含三个attention:
global-relation head:学习全局匹配的深度嵌入
local-correlation head:学习support和query的proposal之间的逐像素和逐深度对应
patch-relation head:学习匹配的深度非线性度量
三个head的分析:
第三个patch 并不理想,这个头的模型更复杂,但作者也觉得复杂的联系是难学习的
但是三个一起用效果最好,说明之间还是能相互补充的
Two-way Contrastive Training Strategy
不仅匹配而且区分
训练组
,其中
,是跟query不同的类,训练的时候只有c被标记为前景
背景的proposal很多,所以平衡在query和support中三个不同匹配的比例,保持
前景proposal 和 负[ 图中(2) ]:
背景proposal 和 正
[ 图中(1) ]:
proposal(前或后) 和 负
= 1:2:1
根据匹配的分数选全部的
,选前
,前
根据第一队确定总个数,后面按分数来,什么样的分数?
错误的根据最不匹配分数?
为什么没有proposal(前或后)和positive support pairs
的?
因为这里是算不同吗?
对于每个采样的proposa计算推荐:
和Faster RCNN一样,
用的二值化交叉熵
选择训练策略
RPN的选择
和0.5IoU的取前100的RPN对比。表里也显示RPN attention确实有效
CVPR2020 论文解读:少点目标检测的更多相关文章
- CVPR2020论文解读:3D Object Detection三维目标检测
CVPR2020论文解读:3D Object Detection三维目标检测 PV-RCNN:Point-Voxel Feature Se tAbstraction for 3D Object Det ...
- CVPR2020论文解读:CNN合成的图片鉴别
CVPR2020论文解读:CNN合成的图片鉴别 <CNN-generated images are surprisingly easy to spot... for now> 论文链接:h ...
- CVPR2020论文解读:三维语义分割3D Semantic Segmentation
CVPR2020论文解读:三维语义分割3D Semantic Segmentation xMUDA: Cross-Modal Unsupervised Domain Adaptation for 3 ...
- 图像分类:CVPR2020论文解读
图像分类:CVPR2020论文解读 Towards Robust Image Classification Using Sequential Attention Models 论文链接:https:// ...
- CVPR2020论文解读:OCR场景文本识别
CVPR2020论文解读:OCR场景文本识别 ABCNet: Real-time Scene Text Spotting with Adaptive Bezier-Curve Network∗ 论文 ...
- CVPR2020论文解读:手绘草图卷积网络语义分割
CVPR2020论文解读:手绘草图卷积网络语义分割 Sketch GCN: Semantic Sketch Segmentation with Graph Convolutional Networks ...
- 【论文解读】[目标检测]retinanet
作为单阶段网络,retinanet兼具速度和精度(精度是没问题,速度我持疑问),是非常耐用的一个检测器,现在很多单阶段检测器也是以retinanet为baseline,进行各种改进,足见retinan ...
- 【论文解读】行人检测:What Can Help Pedestrian Detection?(CVPR'17)
前言 本篇文章出自CVPR2017,四名作者为Tsinghua University,Peking University, 外加两名来自Megvii(旷视科技)的大佬. 文章中对能够帮助行人检测的ex ...
- CVPR2020行人重识别算法论文解读
CVPR2020行人重识别算法论文解读 Cross-modalityPersonre-identificationwithShared-SpecificFeatureTransfer 具有特定共享特征变换 ...
随机推荐
- hdu1261 JAVA
题意: 一个A和两个B一共可以组成三种字符串:"ABB","BAB","BBA".给定若干字母和它们相应的个数,计算一共可以组成多少个不同的 ...
- 编译android4.4刷到nexus 5
操作系统:ubuntu14.4tls android源码版本:4.4 手机:nexus5 1 获得手机的驱动程序(跟硬件平台有关):Binaries for Nexus Device 查到nexus ...
- node-mongo封装
node 里面调用mongo封装了下. mongo.js文件 const { MongoClient, ObjectId } = require('mongodb'); const mongourl ...
- 一起来看看java并发中volatile关键字的神奇之处
并发编程中的三个概念: 1.原子性 在Java中,对基本数据类型的变量的读取和赋值操作是原子性操作,即这些操作是不可被中断的,要么执行,要么不执行. 2.可见性 对于可见性,Java提供了volati ...
- PHP + JQuery 实现多图上传并预览
简述 PHP + JQuery实现 前台:将图片进行base64编码,使用ajax实现上传 后台:将base64进行解码,存储至文件夹,将文件名称入库 效果图 功能实现 html <!DOCTY ...
- 分布式ID
需求 全局唯一 高性能 高可用 简单易用 UUID 优点: 唯一 不依赖于任何第三方服务 缺点: 是字符串类型而非数字,不满足数字ID的需求 字符串太长了,DB查询效率受影响 数据库自增ID 如果使用 ...
- MFC的六大机制
MFC的六大机制 程序的初始化过程 运行时类型识别 动态创建 永久保存 消息映射 命令传递 运行时类型识别 MFC的运行时类型识别就是在程序运行过程中判断某个对象是否属于某个类,MFC通过为需要进行运 ...
- 【敏杰开发】Beta阶段事后分析
[敏杰开发]Beta阶段事后分析 设想和目标 Q 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付 ...
- 克鲁斯卡尔(Kruskal)算法(代码)
算法代码 C#代码 using System; using System.Linq; namespace Kruskal { class Program { static void Main(stri ...
- Cookie&Session-授课
1 会话技术 1.1 会话管理概述 1.1.1 什么是会话 会话:浏览器和服务器之间的多次请求和响应 为了实现一些功能,浏览器和服务器之间可能会产生多次的请求和响应,从浏览器访问服务器开始,到访问服务 ...