A-Fast-RCNN 论文笔记

论文地址:A-Fast-RCNN
Caffe代码:adversarial-frcnn

前言

近期为了学术汇报,阅读了这篇CVPR 2017论文,该论文将对抗学习的思路应用在目标检测中,通过对抗网络生成遮挡和变形图片样本来训练检测网络,取得了一定的效果。现将论文大意做了翻译和理解,不一定完全对。

摘要

如何使得物体检测器能够应对被遮挡或者变形的图像?我们目前的解决方法是使用数据驱动的策略——收集一个足够大的数据集,能覆盖不同的情况,并希望通过训练能够让分类器学会把它们识别为同一个物体。但是数据集真的能够覆盖所有的情况吗?我们认为像分类、遮挡与变形这样的特性也符合长尾理论。一些遮挡与变形非常罕见,几乎永远不会发生,但我们希望训练出的模型是能够应付所有情况的。本文中,我们提出了一种新的解决方案。使用一种对抗网络来自动生成遮挡和变形的样本。对抗学习的目标是生成检测器难以识别的样本。在我们的框架中,原始检测器与它的对手共同进行学习。实验表明,我们的方法与 Fast-RCNN 相比,在 VOC07 上mAP 提升了 2.3%,在 VOC2012 上 mAP 提升了 2.6%。

介绍

在目标检测任务中,我们常常要求模型能够适应不同的光照条件、遮挡、形变等。标准的做法是使用一个包含各种不同情况的大规模数据集,例如COCO数据集就有10000多个不同遮挡形变情形的汽车样本。我们希望通过足够多的不同场景样本,检测器能学到更好的鲁棒不变性,这也是卷积神经网络能成功用于目标检测任务的重要原因。

然而并没有这么简单,作者认为遮挡和形变的情况也遵循长尾理论,就是说一些遮挡和形变的情况很罕见,几乎不会出现在大规模数据集中,例如图1的一些情况。那么如何学习这些罕见的遮挡和形变呢?使用更大的数据集是一个办法,但是也很难突破长尾理论的限制。

这里写图片描述

通过对抗学习来生成这种困难正样本在理论上是可行的,但具体方案还要分析。比如方案一:直接学习这些罕见的遮挡形变样本,通过尾部分布生成以假乱真的样本图片,结论是不可行,太过复杂,效果还难说。方案二:生成各种可能的遮挡和形变样本,结论是情况太多,根本不可能完备。作者提出的方案是,不直接生成新的图片,二是在原有图片上“人为”添加遮挡和形变,也算是生成了困难的正样本,让检测器难以进行分类判断。

也就是训练一个生成网络:它在卷积特征图空间上进行操作,通过遮罩特征图的一部分实现空间遮挡,通过操控特征响应来实现空间变形,以这种方式生成困难正样本。Fast R-CNN作为判别网络,是很难对这些样本作出判断的,当然生成网络想要骗过判别网络也很困难。二者在学习中共同提升,最终就提升了检测器的性能。关键问题就是如何在卷积特征空间中创建对抗样本。

相关工作

作者在文中总结,针对目标检测问题,目前学术界主要从三个思路进行探索:

一是设计更好的网络架构来提升性能,主要是使用更深的网络结构,例如 ResNet,Inception-ResNet ,ResNetXt ;

二是结合上下文推理,充分利用各个卷积层的特征;

三是充分利用训练数据来提升性能,例如hard example mining。

本文的工作就属于第三条思路,充分利用现有数据,作者强调工作重点是以更好的方式利用数据,而不是试图筛选数据来寻找困难样本,当然,核心是利用对抗学习生成很难的样本,拿给Fast R-CNN检测,以提升其检测鲁棒性。

用于目标检测的对抗学习

作者的对抗网络是在空间上受到限制:只管遮挡和形变。在数学上,检测器(Fast R-CNN)的损失函数可以如下表示,它是softmax loss和bbox loss的求和。

这里写图片描述

其中, X 是候选目标, F 是检测器,检测结果分为两个部分, F

### 回答1: Mask R-CNN、Fast R-CNN和 R-CNN 是计算机视觉领域中的目标检测算法。 首先,R-CNN代表Region-based Convolutional Neural Network,是目标检测领域的里程碑之一。R-CNN的基本思想是将图片分割为许多候选区域,然后对每个区域进行卷积操作,并在每个区域上运行一个支持向量机(SVM)来判断是否包含目标物体。虽然R-CNN在准确性上表现良好,但是其训练和推理速度很慢。 为了克服R-CNN的缺点,Fast R-CNN被提出。Fast R-CNN将整个图像输入到卷积神经网络中,并提取出共享特征图。然后,对于每个候选框,Fast R-CNN通过RoI池化层将候选框映射到特征图上,并利用这些特征进行目标分类和边界框回归。相比R-CNN,Fast R-CNN的训练和推理速度有了大幅提升。 在Fast R-CNN的基础上,Mask R-CNN进一步引入了目标实例的分割。Mask R-CNN通过在每个候选框上添加一个额外的分割头部来实现实例分割。该分割头部是一个全卷积网络,用于为每个像素点预测其属于目标物体的概率,从而生成目标的精确掩码。Mask R-CNN在目标检测和实例分割任务中表现出色,成为当前最先进的模型之一。 综上所述,Mask R-CNN、Fast R-CNN和 R-CNN都是计算机视觉领域中常用的目标检测算法。R-CNN是第一个将深度学习应用于目标检测的算法,Fast R-CNN在其基础上加入了RoI池化层,提升了检测速度,而Mask R-CNN则在Fast R-CNN的基础上进一步引入了目标实例的分割能力,获得了更精确的分割结果。 ### 回答2: mask rcnnfast rcnnrcnn都是计算机视觉领域中常用的目标检测算法。下面我分别介绍一下它们的特点和原理。 首先是rcnn(Region-based Convolutional Neural Networks)。rcnn目标检测领域的一个重要里程碑,它通过将图像划分为一系列区域(region proposal),然后对每个区域进行单独的卷积神经网络(CNN)特征提取和分类,从而实现目标检测rcnn的主要特点是每个区域独立处理,计算量较大,但检测精度较高。 接下来是fast rcnnFaster Region-based Convolutional Neural Networks)。fast rcnnrcnn进行了改进,主要改进了两个地方:一是将整个图像作为输入,而不是将图像中的每个区域分别作为输入;二是引入了ROI pooling层,将区域映射为固定大小的特征图,从而减少了计算量。fast rcnn的主要优点是在保持高检测精度的同时,大大提高了检测速度。 最后是mask rcnn,它是在fast rcnn的基础上进一步发展而来。mask rcnn目标检测的基础上增加了对目标实例分割的支持。具体来说,mask rcnnfast rcnn的基础上引入了一个额外的分支网络,用于生成目标实例的精确分割掩码。mask rcnn的主要优点是在准确检测目标的同时,可以得到每个目标实例的精确分割结果。 综上所述,mask rcnnfast rcnnrcnn都是目标检测算法,它们在计算量和检测精度之间做了不同的权衡和改进,从rcnnfast rcnn再到mask rcnn,不仅提高了检测速度,还增加了目标实例分割的能力。这些算法的不断发展推动了计算机视觉领域的进步。 ### 回答3: Mask R-CNN是一种高级的目标检测算法,它是在Faster R-CNN基础上进行改进的。它不仅可以检测出图像中的目标,还可以为每个目标生成一个精确的遮罩(mask)来表示目标的轮廓和形状。 与Faster R-CNN相比,Mask R-CNN引入了一个额外的分支网络,称为全卷积网络(FCN),用于生成目标的遮罩。在提取出候选区域的基础上,Mask R-CNN通过ROI Align对每个候选区域进行精确的特征对齐,并将这些特征送入FCN网络进行遮罩生成。这样一来,Mask R-CNN不仅可以准确地定位目标,还能够提供更精确的目标遮罩。 Fast R-CNN是另一种目标检测算法,它是R-CNN的改进版本。Fast R-CNN通过引入RoI池化层,可以对整个图像进行一次前向传播,而不是像R-CNN那样对每个候选框都进行前向传播。这样可以大大提高模型的计算效率。 R-CNN是目标检测算法的开山之作,它将目标检测任务转化为一系列的二分类问题。首先,R-CNN通过选择性搜索(selective search)等方法从图像中提取候选区域。然后,每个候选区域被调整为固定大小,并送入预训练的卷积神经网络(CNN)中抽取特征。最后,这些特征被输入到线性SVM分类器中进行目标分类,并使用边界框回归来得到精确的目标边界框。 总结来说,R-CNN、Fast R-CNN和Mask R-CNN都是目标检测算法,它们通过引入不同的改进来提高检测的准确性和效率。R-CNN是最早的版本,Fast R-CNN在其基础上减少了计算量,而Mask R-CNN则进一步加入了遮罩生成,提供了更精确的目标检测和分割结果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值