Domain Adaptive Faster R-CNN for Object Detection in the Wild域自适应在目标检测中的应用

Abstract

  • 本文的目的:提高目标检测网络跨域的鲁棒性
  • 通过两方面解决domain shift的问题:
    (1)图像level的shift,例如图像的风格,关照强度等
    (2)实例level的shift,例如目标的外观,大小等
  • 解决方法:
    (1)在Faster-RCNN中添加了2个DA组件,这2个组件都是基于H-divergence理论的,组件的实现方法是通过对抗学习的方式训练domain分类器。
    (2)通过一致性正则化(cosistency regularization)去训练Faster-RCNN中的RPN网络,在增强不同级别(level)的分类器。

1.Introduction

实际应用中的目标检测,使用情况下的数据,无论是在拍摄角度,目标的外观,背景,光照强图还是图像质量都和训练时使用的数据有很大的偏差

文中解决cross-domain的方法采用非监督的方式:在源域进行监督训练,在目标目标进行无监督训练(不需要打标签)

分别对image-level和instance-level做了2个组件(domain shift component),每个组件都是一个domain分类器,并应用对抗学习的方式来学习不根据域发生变化的(domain-invariant)的特征图

本文的贡献如下:

  • 从概率的角度提供了了cross-domain目标检测中的domain-shift的理论分析
  • 分别在image和instance层次提出了一个DA组件,来缓解两个domain之间的差异性
  • 进一步提出了一致性正则化(cosistency resularization),使RPN网络不受domain变化影响(domain-invariant)
  • 将提出的组件合并到了Faster-RCNN中,并实端到端的训练

3.Preliminaries

3.1Faster-RCNN

网络包含3个重要的组件:底层共享的卷积层(shared bottom convolutional layers)、RPN以及ROI

步骤:
(1)首先通过共享卷积层得到一个feature map
(2)RPN通过feature map产生候选框
(3)之后通过ROI pooling得到的特征向量经过ROI分类器得到类别标签
训练损失包含RPN的损失和ROI分类器的损失:
L d e t = L r p n + L r o i L_{det}=L_{rpn}+L_{roi} Ldet=Lrpn+Lroi

不管是RPN损失还是ROI损失都包含两个部分:一部分是分类器的分类准确度,另一部分是狂的回归损失

3.2 Distribution Alignment with H-divergence

H散度(H-divergence)用来测量两组分布不同的样本之间的距离

如果用 x x x表示一个特征向量,则原域用 x s x_s xs表示,目标域用 x t x_t xt表示,定义一个domain分类器,使得 x s x_s xs样本输出的结果为0, x t x_t xt的样本输出的结果为1,H-divergence定义如下:
在这里插入图片描述

如果训练出来的domain classifler,error越高说明两domain越难分辨,因此可以判断两个domain就非常接近。在深度神经网络中,经过一些层之后,特征向量x就包含一些激活信息。定义网络结构为 f f f,为了使两个domain接近,需要加强网络结构的输出(也就是x),使使出能够最小化domain之间的距离。
在这里插入图片描述
可以通过对抗学习的方式训练

有人设计出梯度反转层(Gradient Reverse Layer)GRL,并且融合到CNN用来做DA的无监督图像分类

4.Domain Adaption for Object Detection

在目标域使用监督学习(样本有标签),在目标域使用无监督学习

4.1 A Probabilistic Perspective

Image_Level Adaption:

P T ( C , B , I ) P_T(C, B, I) PT(C,B,I)表示目标domain联合概率,用 P S ( C , B , I ) P_S(C, B, I) PS(C,B,I)表示源域的联合概率,联合概率可以作如下分解:
在这里插入图片描述

两个domain的条件概率是一样的,导致联合概率不一样是因为 P S ( I ) P_S(I) PS(I) P T ( I ) P_T(I) PT(I)不等。也就是说两个domain的detector是一致的,给一个图片,输出结果应该是相同的,不管是哪个domain。I代表经过通过卷积层输出的feature map,为了解决domain shift的问题,应该使两个domain的feature map相同,即 P S ( I ) = P T ( I ) P_S(I)=P_T(I) PS(I)=PT(I)

Instance-Level Adaption

联合概率也可以被分解为如下:
在这里插入图片描述

同理使 P S ( B , I ) = P T ( B , I ) P_S(B, I)=P_T(B, I) PS(B,I)=PT(B,I)其中(B, I)表示ground truth中的bounding box中抽取出来的features。虽然在目标域中没有ground truth,但是 P ( B , I ) = P ( B ∣ I ) P ( I ) P(B, I) = P(B|I)P(I) P(B,I)=P(BI)P(I),其中 P ( B , I ) P(B, I) P(B,I)为边界框的预测器,也就是Faster-RCNN中的RPN,只有当 P ( B , I ) P(B, I) P(B,I)使domain-invariant的时候,上述观点才成立。

Joint Adaption

以上可知 P ( B , I ) = P ( B ∣ I ) P ( I ) P(B, I) = P(B|I)P(I) P(B,I)=P(BI)P(I),如果 P ( B ∣ I ) P(B|I) P(BI)在两个domain是相同的,因此以下式子成立
在这里插入图片描述

但是实际预测 P ( B ∣ I ) P(B|I) P(BI)是很难的,因为:
(1)很难完全对其边缘分布 P ( I ) P(I) P(I)(即 P T ( I ) P_T(I) PT(I)不等于 P S ( I ) P_S(I) PS(I)),因此通过 P ( I ) P(I) P(I)估计出来的 P ( B ∣ I ) 是 有 偏 差 的 P(B|I)是有偏差的 P(BI)
(2)只有source domain有标注信息,在训练的过程中只是用source domain的数据,会使得这个偏差更加偏向于source domain
3.2部分提出的domain分类器h(x),其中x可以是image-level的 I I I也可以是instance-level的 ( B ∣ I ) (B|I) (BI)

将domain的标签标示为D,image-level的domain分类器可以看作是估计 P ( D ∣ I ) P(D|I) P(DI)的过程,instance-level的分类器可以看作是估计 P ( D ∣ B , I ) P(D|B, I) P(DB,I),通过贝叶斯可以得到:
在这里插入图片描述

P ( B ∣ I ) P(B|I) P(BI)是一个domain-invariant(不受domain影响)的bbox预测器, P ( B ∣ D , I ) P(B|D, I) P(BD,I)是一个domain-dependent的bbox预测器。在实际情况下,我们只能得到 P ( B ∣ D , I ) P(B|D, I) P(BD,I),因为目标domain没有标注信息。 因此可以通过增强两个domain分类器之间的一致性即, P ( D ∣ B , I ) = P ( D ∣ I ) P(D|B, I) = P(D|I) P(DB,I)=P(DI), 我们就可以学习到 P ( B ∣ D , I ) P(B|D, I) P(BD,I) t去逼近 P ( B ∣ I ) P(B|I) P(BI).

4.2 Domain Adaption Components

Image-level Adaption

在FAster-RCNN中,image-level代表经过底层卷积之后得到的特征图,为了消除image-level的分布不一致,作者采用的做法是一个patch-based的domain分类器,好处是:
(1)缩小image-level的表示之间的discrepancy可以减少由于全局图像不同造成的shifit(例如图像风格,图像尺寸,光照等)一个patch-based的loss对于style transfer很有效。
(2)由于高分辨率的输入,目标检测网络使用的batchsize都非常小;patch-based可以帮助增加样本量

在这里插入图片描述

其中 p ( u , v ) p^{(u, v)} p(u,v)表示经过base-convlution-layers输出的特征图, D i D_i Di表示domain的标签,类似于生成对抗网络,要实现两个过程,一个是训练domain分类器来最小化分类的损失,一个是训练base-network来最大化分类损失。采用gradient reverse layer(GRL)来实现上述功能。当通过GRL来优化base-network的参数时,就需要转话题度

Instance-lavel Adaption

instance-level的表示之输入到最后分类网络之前的基于ROI的特征向量,与image-level的原理相似:
在这里插入图片描述

Consistency Resularization

目的是训练RPN中的cross-domian的鲁棒性,由于图像级域分类器为Image-level表示i的每次激活生成一个输出,因此我们将图像中所有激活的平均值作为其图像级概率。一致性调整器可以写为:
在这里插入图片描述

在这里插入图片描述

总的损失函数为:
在这里插入图片描述
第一次写文章,有错误还请大家多多指正。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值