弱监督目标检测算法论文阅读(三)Improving Object Detection with Inverted Attention

个人对文章阅读的一些理解,有不同理解的小伙伴可以在下方评论交流。


这是一篇WACV2020的一篇文章,是西安交通大学柯炜老师的一篇文章。文章主要提出了一种以Grad-CAM为基础,通过抑制感兴趣区域的权重,让网络学习到更多的目标区域,来达到目标检测的目的。


在这里插入图片描述

Abstract

改进目标检测器的抗遮挡,模糊和噪声能力是在实际应用中使用检测器的关键步骤。由于不可能通过数据收集来消除所有图像缺陷,因此许多研究人员寻求在训练中生成硬样本。生成的硬样本可以是图像,也可以是特征图,但是其一些特征模块(patchs)会被丢弃。在训练额外的硬样本或使用额外的网络分支估计丢失补丁(patchs)时,需要大量的开销。在本文中,我们使用称为反转注意力 (Inverted Attention IA)的高效细粒度机制(这里细粒度机制我理解为逐像素级别的)改进了对象检测器。与最初只关注对象主要部分的检测器网络不同,带有IA的检测器网络迭代地将注意力转移到特征图上,并将更多的注意力放在互补的对象部分、特征通道、甚至上下文上。我们的方法(1)沿特征图的空间和通道维度进行操作; (2)不需要对硬样本进行额外的培训,不需要用于注意力估计的额外网络参数,也不需要测试开销。实验表明,我们的方法在基准数据库上提升了 two-stage和one-stage检测器性能。

Introduction

改善对象检测器的图像缺陷(例如遮挡,模糊和噪声)是在实际应用中部署检测器的关键步骤。 计算机视觉领域最近的努力已经收集了关于不同场景,物体类别,形状和外观的大量训练数据。 但是,尚不可能消除在照相机抖动,灰尘,褪色的光线和恶劣的天气条件下捕获的所有图像缺陷。 此外,深度学习方法受数据分布的影响很大,而很难通过对象特征和缺陷的统一组合来收集数据。

处理收集更多的图像和注释外,另一种是提升检测器的训练方法。通过难实例挖掘来选择训练样本的子集。 这种方法不能很好地推广到看不见的图像缺陷。(2)通过感知遮挡损失对遮挡的边界框进行惩罚。 这些方法不能很好地推广到看不见的遮挡。(3)通过硬实例生成来合成图像缺陷。 这些方法通常会丢失空间维度上的大patch,并且要训练的新样本会成倍增加。(4)通过注意力评估,突出显示所需的细粒度特征。评估注意掩码通常需要额外的网络,因此会增加训练开销。

本文所提到的方法IA,在每次训练迭代中,IA使用对象分类得分,计算在特征提取网络(也称为主干网络)上生成的特征图的梯度,并迭代地反转网络的注意力。 与仅关注对象的一小部分的原始检测器网络不同,带有IA的神经网络将更多注意力放在原始网络的互补空间部分,特征通道,甚至上下文上。 IA模块仅在训练中更改网络权重,而在测试中不更改任何权重

在这里插入图片描述图1:在VGG16 Fast-RCNN的ROI特征图([7×7×512])上可视化的注意力热图。 每个[7×7]注意热点图被线性插值并叠加在[224×224]对象ROI图像块上。 前4列分别是受IA影响的前4个通道的注意热点图。 最后一栏“Overall”表示所有512个通道的总热力图。 (此图最好用彩色查看)

图1(上排)显示了标准Fast-RCNN检测器中的注意力。注意力通过叠加在对象上的热力图可视化。热力图的红色像素表示关注度较高,而蓝色像素表示关注度较低。在我们的IA训练过程中,原始注意力热图如图1所示(中间排),然后进行下一个迭代。 IA培训结束后,网络将产生新的关注热点图,请参见图1(下排)。可以观察到,经过IA训练的检测器网络专注于对象的更全面特征,从而使其对于单个像素的潜在缺陷更加鲁棒。图2显示了没有IA培训(上排)和IA培训(下排)产生的整体注意力的更多示例。与现有方法相比,我们的方法(1)沿特征图的空间和通道维度操作; (2)不需要对难样本进行额外的培训,不需要用于注意力估计的额外网络参数,也不需要测试开销。我们在基准数据库的tow-stage和one-stage检测器上对IA进行了评估,并取得了显着的改进。

在这里插入图片描述

Related Work

Occlusion-Aware Loss(遮挡惩罚损失)

[21]提出了基于R-CNN的人员检测器的聚集损失。 这种损失迫使同一对象的proposal被关闭。 作者没有为一个人使用单个RoI pooling,而是为每个人使用了一个由五部分组成的单元来处理遮挡。 [17]提出了一种新的边界框回归损失,称为排斥损失。 这种损失会鼓励被目标吸引,并被周围的其他物体排斥。 排斥项会阻止proposal转移到周围的物体,从而导致人群拥挤的定位。 [25]提出了两个回归分支来提高行人检测性能。 第一个分支用于使全身区域退化。 第二个分支用于回归可见的身体区域。

Hard Sample Generation(难例生成)

基于图像的生成:[23]在训练过程中随机遮挡了几个矩形图像块。 [7]遮盖了由行人重新识别任务损失指导的矩形patches。 [13]通过随机遮挡训练图像中的patches来改善弱监督对象的定位。 [16]学习了一个对抗网络,该网络生成具有遮挡和变形的实例。 对抗的目标是生成难以被目标检测器分类的实例。
基于特征的生成:[5]选择加权的通道进行dropout,以对CNN进行正则化。 [16]使用预测的遮挡空间掩码,来dropout生成的难例正样本。 [22]根据三种通道注意机制对特征图进行加权。 [14]在视频跟踪中使用随机生成的掩码自适应地删除输入特征,以获得各种外观变化。 我们的IA方法在特征上同时进行通道方向和空间方向的dropout。

Attention Estimation

最近的方法结合了注意力机制来改善CNN的性能。 [3,6,18]将通道方式或空间方式的注意力网络分支集成到前馈卷积神经网络。 对于各种CNN任务,评估的注意力图将与原始特征图相乘。 所有这些方法都引入了额外的网络分支来估计注意力图。 [19]通过转移功能强大的教师网络的注意力图来提高学生CNN网络的性能。 Deconvnet [20]和引导式反向传播[15]使用不同的反向传播策略可改善基于梯度的注意力。 CAM [24]将线性分类层转换为卷积层,以产生每个类别的注意力图。 Grad-CAM [11]改进了CAM,适用于多种CNN模型。

Inverted Attention for Object Detection

在这里插入图片描述
在这里插入图片描述我们采用基于R-CNN [4]的框架来说明我们的反向注意网络(IAN)(图3)。 反向注意力生成模块(图4)已添加到R-CNN检测网络,并在ROI功能图上运行。 请注意,此模块仅包含一些简单的操作,例如合并,阈值和逐元素乘积。 无需额外的参数。 在其余的在本文中,我们展示了这种简单的更改如何有效地改善原始网络以克服图像缺陷。

Inverted Attention Generation Module

注意机制识别对象的最具代表性的区域。 关注热点图具有识别性的区域,会鼓励区分对象类别,同时会减少同一类别内要素的多样性。 但是,特征的多样性是将对象检测器扩大到看不见的对象实例和图像缺陷的关键。 拟议的反向注意力训练方法旨在减轻冲突并找到识别性区域与多样性之间的最佳权衡。

如图4所示,反向注意力生成模块包括两个简单的操作:(1)梯度引导注意力生成:通过仅向后推算地面真实类别的分类分数来计算特征图上的梯度(2 )注意反转:反转注意张量的元素值以生成IA热力图

梯度引导的注意力产生: 在卷积神经网络的训练阶段,反向传播操作中的特征图梯度会输出权重,预测相对于特征图相同位置处的变化的敏感程度。 如果特征图在元素上的细微变化,对网络输出有很大影响,则网络更加关注该元素。 根据这一原理,我们在我们的方法中使用了梯度来生成注意力图(图4)。(就是网络反向传播产生的梯度越大,就说明网络越注意与此对应的特征图)

将梯度张量表示为G,将特征张量表示为F。它们的大小均为H×W×C,其中H,W,C分别为 G 和 F 的高度,宽度和通道数。 对梯度张量应用全局池化以生成大小为 C×1 的权重向量 W 。我们根据计算梯度引导的注意力图,
在这里插入图片描述其中wi是W的第i个元素,F(i)是F的第i个通道图。如图4所示,梯度中的高值对应于汽车样本中的行李箱。 而较小的值对应于汽车门和背景。

注意反转:在标准训练过程中,梯度下降算法会强制注意力图收敛到对象的几个最敏感部分,而忽略对象的其他较不敏感部分。 IA训练将原始注意力张量进行迭代反转,即反转注意力张量,从而迫使网络根据对象的敏感度较低的部分来检测对象。 具体来说,我们生成一个空间方向的反向注意图和一个通道方向的反向注意图,然后将它们组合以生成最终的注意图

空间方向反转注意力图:As = { ai } 定义为:
在这里插入图片描述其中,asi 和 mi 分别是第 i 个像素的 As 和 M 的元素。 Ts是空间注意图的阈值。 从等式 如图2所示,在空间上倒置的注意力图对具有较小梯度值的样本区域更加关注。(对于特征图M,根据阈值Ts,把M中的像素进行反转。

权重向量W用作特征图通道的灵敏度度量。 阈值Tc用于计算通道方向的反向注意力向量Ac = { acj },(通道方向也进行反转
在这里插入图片描述最终的反向注意力图A = {ai,j}计算为:
在这里插入图片描述图5)说明了在IA训练期间网络注意力在不同时期如何演变。 IA训练迭代地指导神经网络提取整个对象样本上的特征。
在这里插入图片描述

Inverted Attention Network

如图3所示,反向注意力网络(IAN)基本上是通过将反向注意力生成模块(图4)添加到基于R-CNN的检测网络中来构建的,并在ROI特征图上进行操作。

给定输入图像后,R-CNN框架的主干即VGG或ResNet将整个图像作为输入并生成特征图。 region proposal是通过region proposal network(RPN)或预先计算的region proposal候选者,从这些特征图生成的。 然后,RoI-pooling为每个对象proposal生成固定大小的特征图。 RoI池化后,这些特征图随后经过完全连接的层以进行对象分类和边界框回归。
通过优化以下两个损失函数,可以端到端地训练R-CNN:
在这里插入图片描述其中 Lcross entropy和 Lrpn reg 是RPN网络的交叉熵损失和L1损失。 Lcross entropy和Lrpn reg是R-CNN网络的softmax损失和L1损失。 Lrpn + Lrcnn在Faster-RCNN框架中进行了联合优化,而Lrcnn在Fast-RCNN框架中进行了优化。

在反向传播阶段,通过仅在ground-truth类别上反向传播分类损失来计算梯度,该梯度用于反向注意生成模块。 借助生成的反向注意力图,将特征图和IA热图之间的逐元素乘积层用于特征细化,如下所示:
在这里插入图片描述其中∗表示逐元素乘法。 细化是在元素级别进行的,即沿着特征图的空间和通道维度进行。
完成这些操作后,将更新的特征图进行前向传播以计算检测损失,然后反向传播损耗以更新原始网络参数。 算法1总结了IAN的训练过程。
在这里插入图片描述

Experiments

反向注意力网络(IAN)在三个广泛使用的基准上进行了评估:PASCAL VOC2007,PASCAL VOC2012 [2]和MS-COCO [8]数据集。 在以下部分中,我们首先介绍实验设置,然后分析“反向注意力”模块的效果。 最后,我们报告了IAN的性能,并将其与最新方法进行比较。

我们使用Faster-RCNN,Fast-RCNN和SSD对象检测器作为基准。 通过将IA模块添加到每个基准网络,即可轻松构造我们的IAN。 VGG16和ResNet-101用作主干特征提取器。 默认情况下,带有VGG16的Fast R-CNN用于消融研究。 标准的平均精度(mAP)[1]被用作评估指标。 对于PASCAL VOC,我们使用0.5的IoU阈值报告mAP分数。 对于COCO数据库,我们使用标准的COCO AP指标。

Experimental Settings

PASCAL VOC2007: 所有模型都在VOC2007训练集和VOC2012训练集上进行了训练,并在VOC2007测试集上进行了测试。 对于Fast-RCNN,我们遵循[16]中的训练策略:对于前6个epochs,将学习率设置为2e-3,对于另外2个epochs,将其学习率降低为2e-4。 我们在训练中使用了batch size为2,并将VGG16用作骨干网络,用于PASCAL VOC数据集上的所有消融研究实验。 对于Faste-RCNN,我们遵循[10]中的训练策略:对于前6个epochs,将学习率设置为2e-3,对于另外2个epochs,将其学习率降低为2e-4。 我们在训练中使用了batch size大小为2。 我们还报告了在模型ResNet101的结果。 对于SSD,我们遵循了[9]中的训练策略:对于前6个epochs,将学习率设置为1e 3,对于另外2个时间段和1个epochs,将学习率衰减为1e-4和1e-5。 我们在训练中使用默认的batch size大小32。

PASCAL VOC2012:所有模型都在VOC2007训练集,VOC2012训练集和VOC2007测试集上进行了训练,然后在VOC2012测试集上进行了测试。 对于Faster-RCNN和SSD实验,我们遵循与上述VOC2007训练完全相同的训练策略。

COCO:按照标准COCO协议,分别对trainval集中的120k图像和test-dev集中的20k图像进行训练和评估。 对于Faster-RCNN,我们将前4个epochs的学习率设置为1e-2,对于另外4个epochs将学习率降低为1e-3,对于后2个epochs将学习率降低为1e-4。 我们在训练中使用的批次batch size为16,并使用ResNet101作为骨干网络。 对于SSD,我们将前6个epochs的学习率设置为1e-3,然后将另外2个和1个epochs的学习率衰减为1e-4和1e-5。 我们在训练中使用默认的batch size大小32。

Implement Details

在two-stage检测框架中,给定ROI-pooling层之后的特征图,我们在反向注意力的指导下对特征图进行加权。 对于在空间上反转的注意力图H×W,我们删除了具有最高值的顶部33%像素。 对于逐通道反转的注意力图,我们丢弃了具有最高值的顶部80%像素。 在one-stage检测框架中,给定多个具有不同大小的特征图,我们在上述two-stage框架中采用相同的策略来对特征图进行加权。 为了防止netwrok对重新加权的特征图过度拟合,我们仅对20%的特征图进行加权,而其余80%的特征图则保持不变。

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: Triangulation Learning Network (TLN) 是一个用于从单目图像到立体图像的维物体检测的算法,其存在一些主要问题,包括: 1. 训练数据缺乏:TLN 算法需要大量的训练数据才能准确地预测维物体的位置和姿态。但是,由于维物体检测数据集的获取成本很高,因此当前可用的数据集相对较少,这可能会影响算法的性能。 2. 姿态估计不准确:TLN 算法依赖于对相机姿态的准确估计,但是在实际应用中,姿态估计可能会出现误差。这些误差可能会导致算法无法准确地确定物体的维位置和姿态。 3. 光照和背景干扰:TLN 算法对光照和背景的变化敏感,这可能会对其检测性能产生负面影响。在不同光照条件和背景下进行测试时,算法可能会出现误报或漏报。 4. 计算复杂度高:TLN 算法需要进行复杂的角测量和卷积计算,因此需要较高的计算资源。这可能会限制算法在实时应用中的使用。 总之,尽管TLN 算法维物体检测方面取得了一些进展,但是它仍然面临着一些挑战和限制,需要进一步研究和改进。 ### 回答2: Triangulation Learning Network (TLN) is a type of deep learning model used for monocular to stereo 3D object detection. However, there are several main problems that currently exist with this approach. 首先,monocular-based 3D object detection methods, including TLN, heavily rely on depth estimation from a single image. This poses a challenge because estimating accurate depth information from a monocular image is inherently difficult. Monocular depth estimation is an ill-posed problem, as there are multiple possible depth solutions for a single input image. Therefore, the quality of depth estimation directly affects the accuracy of 3D object detection, and the current performance of monocular-based methods is still limited due to inaccurate depth estimation. 其次,TLN relies on stereo vision to improve the accuracy of 3D object detection. However, stereo vision has its limitations as well. It requires the presence of two or more cameras with known spatial calibration, which can be expensive and cumbersome to implement in real-world scenarios. Moreover, in challenging environments with poor lighting conditions or occlusions, the accuracy of stereo vision-based methods can be significantly affected. 此外,TLN suffers from the problem of ambiguous depth inference. Even with accurate depth estimation, it is still challenging to determine the exact 3D position of an object. This is because an object can have multiple possible 3D positions that are consistent with the observed 2D image. It becomes even more complex when multiple objects overlap or occlude each other, leading to further ambiguities in 3D object detection results. 最后,TLN requires a large amount of training data to achieve satisfactory performance. Collecting and annotating such data, especially for stereo 3D object detection, can be time-consuming, costly, and error-prone. This limits the scalability and practicality of TLN, as acquiring a diverse and representative dataset for training can be challenging. In summary, the main problems currently existing with Triangulation Learning Network (TLN) for monocular to stereo 3D object detection are inaccurate depth estimation, limitations of stereo vision, ambiguous depth inference, and the requirement for a large amount of training data. Addressing these challenges is essential for improving the accuracy, robustness, and practicality of TLN-based 3D object detection methods. ### 回答3: 目前Triangulation Learning Network: from Monocular to Stereo 3D Object Detection存在以下主要问题: 1. 数据需求高:从单目到立体的3D物体检测需要更多的数据支持。单目图像中的物体深度信息是模糊的,缺乏对立体视觉中物体准确深度的直接观测。因此,为了训练Triangulation Learning Network,需要大量的立体图像数据集,这样的数据集很难获得且成本较高。 2. 精度限制:尽管Triangulation Learning Network提供了改善单目到立体3D物体检测的方法,但其精度仍然受到一些限制。由于立体视觉中的散射和遮挡问题,物体表面的纹理信息可能会受到影响并导致深度估计的误差。此外,图像中物体的姿态和形状也会对准确的深度估计产生影响。 3. 依赖立体匹配:Triangulation Learning Network的核心思想是通过使用立体图像中的匹配点将单目图像的深度信息转换为立体深度。然而,立体匹配本身是一个复杂和计算密集的任务,尤其在具有高度纹理变化或遮挡的场景中,可能存在匹配错误的情况。 4. 硬件要求高:Triangulation Learning Network需要用于获取立体图像的专门的硬件设备,如立体相机或深度相机。这些硬件设备的成本较高,因此部署这种方法可能会面临一定的技术和经济挑战。 综上所述,尽管Triangulation Learning Network提供了一种从单目到立体的3D物体检测方法,但仍然存在着数据需求高、精度限制、依赖立体匹配和硬件要求高等问题。随着技术的进步,相信这些问题将逐渐得到解决,从而更好地推动Triangulation Learning Network的发展和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值