如何训练一个目标检测器,对遮挡和形变鲁棒,目前的主要方法是增加不同情况的图像数据,但这些数据有时又特别少。作者提出使用对抗生成有遮挡或形变的样本,这些样本对检测器来说比较困难,使用这些困难的正样本训练可以增加检测器的鲁棒性。与Fast-RCNN比较,在VOC2007上,mAP增加了2.3%,VOC2012上增加了2.6%。

不同遮挡或形变的物体如下图所示:

Fast-RCNN检测器损失函数有两项,softmax对类别的损失和回归对bbox的损失。对抗网络主要学习导致检测器检测失败的特征,损失函数为:
LA=−Lsoftmax(Fc(A(X)),C)L_A=-L_{softmax}(F_c(A(X)),C)
若对抗网络生成的特征对检测器来说易识别,则对抗网络的损失比较大,反之较低。

对抗网络设计
使用对抗网络生成有遮挡和有形变的两种特征,两种网络为ASDN和ASTN。

ASDN
FAST-RCNN中RoI-池化层之后的每个目标proposal卷积特征作为对抗网络的输入,给定一个目标的特征,ASDN尝试生成特征某些部分被dropout的掩码,导致检测器无法识别该物体。

ASDN网络初始化
给定尺寸大小为d×dd\times d的特征图X,使用d3×d3\frac {d}{3} \times \frac {d}{3}的滑动窗,并将滑动窗位置映射到原图,将原图对应位置清零,生成新的特征向量,传入到分类层计算损失,选择具有最大损失的滑动窗,用这个窗口生成二值掩码M(滑动窗位置为1,其余位置为0),用n个目标proposal生成n对对抗网络的训练样本(x1,M1),...,(xn,Mn){(x^1,M^1),...,(x^n,M^n)} ,使用二值交叉熵损失训练ASDN:

经过学习,网络可以学习到特征的哪些部分对分类来说比较重要,如下图所示:

联合训练
在前向传播过程中,首先使用ASDN在RoI-池化层之后生成特征掩码,然后使用重要性采样法生成二值掩码,使用该掩码将特征对应部位值清零,修改后的特征继续前向传播计算损失。这个过程生成了困难的特征,用于训练检测器。训练过程流程图如下所示:

ASTN

1.STN回顾
STN网络包含三部分:定位网络,网格生成器,采样器。定位网络估计出形变的参数(旋转角度、平移距离和缩放因子)。这三个参数作为后两部分的输入,输出是形变后的特征图。论文主要学习定位网络的三个参数。

2.ASTN
主要关注特征旋转,定位网络包含三层全连接层,前两层是ImageNet预训练的fc6和fc7,训练过程与ASDN类似,ASTN对特征进行形变,是的ASTN将正样本识别成负样本。将特征图划分为4个block,每个block估计四个方向的旋转,增加了任务的复杂度。

两种对抗网络可以相结合,使得检测器更鲁棒,RoI-池化层提取的特征首先传入ASDN丢弃一些激活,之后使用ASTN对特征进行形变,如下图所示:

实验结果

使用了对抗网络,每一类检测和分类的影响:

目标检测“A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection”相关推荐

  1. 对抗学习用于目标检测--A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

    A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection CVPR 2017 Caffe code : http ...

  2. 论文翻译与理解:Hard Positive Generation via Adversary for Object Detection

    Hard Positive Generation via Adversary for Object Detection 最近做项目,在看一些数据增强的论文,欢迎感兴趣的同学多多留言交流. 摘要 我们如 ...

  3. A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

    这篇论文作者在Fast RCNN的基础上,运用对抗生成网络GAN的思想,加入了两个对抗网络来加强Fast RCNN算法的鲁棒性,下面的内容是这篇文章的翻译,我已经修改过大部分的内容使得读起来比较通顺, ...

  4. [深度学习论文笔记][CVPR 17 oral]A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

    [CVPR 17 oral]A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection Xiaolong Wang ...

  5. CVPR17论文有感:A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

    A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection 还是那个老故事,即如何解决Deep检测跟踪器训练时正样 ...

  6. A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection 笔记

    这篇paper主要是针对训练数据时,遮蔽和形变物体的数据集不一定很全面提出的,于是,想到可以用生成网络生成这种数据来进行训练.但是这种数据生成又是很困难的,作者就想到跳过生成数据,直接在Feature ...

  7. A-Fast-RCNN:Hard Positive Generation via Adversary for Object Detection

    一 摘要 这些近年来的建立在从ImageNet分类的任务中成功学到的强大的深层特征,因此,物体检测领域取得了显著地进步.最近的研究集中在物体检测系统主要有三个方向. 第一个方向依赖于改变这些网络的基础 ...

  8. 详解两阶段3D目标检测网络 Voxel R-CNN:Towards High Performance Voxel-based 3D Object Detection

    本文介绍一篇两阶段的3D目标检测网络:Voxel R-CNN,论文已收录于AAAI 2021. 这里重点是理解本文提出的 Voxel RoI pooling. 论文链接为:https://arxiv. ...

  9. [论文笔记]A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

    paper 一.论文思想 训练一个目标检测器,对遮挡和形变鲁棒,目前的主要方法是增加不同场景下的图像数据,但这些数据有时又特别少.作者提出使用对抗生成有遮挡或形变的样本,这些样本对检测器来说识别比较困 ...

最新文章

  1. Emm,qW3xT.2(矿机进程)
  2. c语言静态存储和动态存储,C语言中的静态内存与动态内存
  3. wxWidgets:wxChildFocusEvent类用法
  4. idea解决maven全局配置
  5. 《搜索算法——DFS、BFS、回溯》
  6. 【转】刨根究底字符编码之一——关键术语解释(上)
  7. Python--进程、线程、协程对比
  8. node.js——麻将算法(三)胡牌相关明牌
  9. Sublime Text3插件管理
  10. 解决nacos不停刷日志 ClientWorker get changedGroupKeys:[] 问题
  11. python 学生成绩统计
  12. 周爱民:详解架构的核心原则
  13. 微信公众号12大互动技巧
  14. 计算机信息技术基础 第2版,计算机与信息技术基础(第2版)
  15. java:定义USB接口
  16. 使用React Hooks 时要避免的5个错误!
  17. 你会让你的孩子学“人工智能未来世界”的什么专业?
  18. linux平台Android studio安装步骤
  19. 鸿蒙之始写完了吗,【精选】重阳节作文合集六篇
  20. yaf mysql_yaf集成medoo数据库操作

热门文章

  1. 四大系统-OA,PM,KM,ERP
  2. 音视频转码技术指南:国内主流云转码服务提供商对比测评
  3. ROS激光雷达信息、点云信息和PCL信息之间的转换
  4. 多重比较multcompare
  5. 为什么要和聪明人一起工作
  6. matplotlib数据可视化 — 初级图形绘制
  7. IaaS、PaaS和SaaS通俗易懂版
  8. 分割速度最快的视频分割器
  9. 我为什么选择了成为测试工程师
  10. C#控制打印机(直接发送打印机命令到打印机)