A-Fast-RCNN算法详解(基于变形/遮挡场景)
算法背景
论文全称:A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection
论文链接:https://arxiv.org/pdf/1704.03414
论文日期:2017.8.11
期刊:CVPR
算法提出的场景:
- 遮挡
- 变形
目前常用的方法:
data driven,基于大量数据驱动的算法。
存在的问题:
数据集无法涵盖所有的变形与遮挡情况。因为数据集里面这些情况发生的概率太低了,这些类别、遮挡与变形服从长尾分布,算法需要对这些情况学习不变性模型。
算法中心思想:
算法添加了一个对抗性网络,对抗性网络与原始网络联合训练,对抗网络生成原始检测器难以检测的遮挡与变形样本,然后原始网络利用样本进行训练,从而提高检测准确率。
算法介绍
解决问题:
目标检测的目标就是学习一个针对对象视觉模型,然后在图片中将对象定位出来。这就要求模型对于照明、遮挡、变形等情况具有鲁棒性。 目前的大多数算法都是通过增加数据集来提高准确率,COCO数据集就有超过10K个不同场景的汽车样本。
目前算法的局限:
但是这些遮挡与变形的样本数量太少了,难以通过增加数据集包含到所有可能的遮挡与变形情况。通过数据集可知,一些场景下发生遮挡的可能性要更大,例如停车场里面的汽车。一些场景下发生变形的可能性更大,例如动物。但是其他场景下发生遮挡与变形的情况会很少。
目前常用算法:
- 通过从长尾分布采样来生成逼真图片,但是不够灵活;
- 生成所有可能的遮挡与变形,并且利用这些样本训练检测器,但是由于变形与遮挡的空间很大,这不是一个可拓展的方法。
算法创新:
不使用所有的样本,只选取一些hard example,训练得到的检测准确率会更好。
基于这一结论,本文提出了一个对抗网络,通过在空间上阻止某些特征映射,或者通过操纵特征响应来创建空间变形。对抗网络的主要思想就是生成难以检测的对抗样本。将样本输入到原始网络中进行训练。
算法对比
- Fast RCNN通过共享不同候选区域的卷积来提速;
- Faster-RCNN 与 R-FCN集成了RPN,从而实现完全地端到端;
- 基于滑窗方法的算法也被提出了,例