《SCDA:Adapting Object Detectors via Selective Cross-Domain Alignment》论文笔记

参考代码:SCDA

1. 概述

导读:在之前的Domain Adaption文章中主要是针对分类/分割场景任务,对于检测场景下的挖掘不够,这是由于分类/分割场景关注的是整个特征图范围上的表现,而检测却是具有局部性的,因而直接将分类/分割的域迁移方法引入是不合时宜的。对此文章按照监测网络的特性设计了一个检测网络下的domain adaption方案。首先寻找到特定的区域(也就是文中“where to look”,region mining的过程),得到这些区域之后便是对这些区域使用region align的方法进行特征对齐,所采用的方法也是基于GAN的(也就是文中的“how to align”,这部分与分割/分类中用的方法类似)。除此之外文章还设计了一个自适应的加权因子(通过weighting estimator实现),从而可以去调配region上的align,文章指出这样可以使得最后的结果更加鲁棒。文章的方法在normal-to-foggy(Cityscapes to Cityscapes-foggy)/synthetic-to-real(Sim10k to Cityscapes)/cross-camera (Kitti to Cityscapes)表现出了较好性能在mAp上提升了4%~6%。

由于现有的深度网络都是在已知的数据上学习,学习完成之后参数便固化,后期也没有自学习的pipe,因而对于在训练集中未统计到的数据本身鲁棒性不强,这就导致性能下降,如下图所示:
在这里插入图片描述
同样是街道场景,只是不同的天气情况就使得网络最后的结果差异较大。

2. 方法设计

2.1 整体pipline

文章的整体pipeline见下图所示:
在这里插入图片描述
pipeline的左端是Faster RCNN的结构,中间和右边部分就是这篇文章的核心了,主要包含了两个部分:

  • 1)where to look(region mining):这部分解决的是对于区域的选取与归一化,文中将RPN的结果进行 K K K(聚类中心的数目)聚类,从而得到每个聚类上的特征表达 Θ \Theta Θ
  • 2)how to align(region align):这部分解决的是region的对齐过程,对于source和target的部分分别有一对生成器和判别器用于拉近两个域的分布。此外还通过weighting estimator去调配region上的align过程,使得结果更加鲁棒;

2.2 Region Mining

这篇文章使用的base model是Faster RCNN,其region产生的来源为RPN网络部分,但是RPN网络由于其运行原理,其产生的结果具有如下的问题:

  • 1)由于有anchor的存在会生成不同大小的proposal,对于这个可以采集RoI Pooling之后的结果进行规避;
  • 2)RPN的结果并不是最后的输出,其内部proposal的分布自然充满了噪声,对此可以采用聚类的方式排除一些无关的影响,但是却多引入了一些需要搜索的超参数;

对于target域中RPN结果的处理见下图的a/b图所示:
在这里插入图片描述
在上图中将RPN的结果进行了 K = 4 K=4 K=4的聚类。在得到聚类结果之后就需要将对应区域的特征进行对齐(文中为featrue reassignment),得到整个的特征为 Θ \Theta Θ,则其中一个聚类中心的特征为 Θ k ∈ R m k ∗ d \Theta_k\in R^{m_k*d} ΘkRmkd,其中 m k m_k mk是聚类中proposal的数量(为一个超参数),是在聚类的结果中选择对应数量的proposal(排序之后的top-k),若是数量不满足通过copy的方式解决数量不足的问题。其中 d d d是RoI Pooling之后得到的特征维度(进行展开),可以对应参考图2的中间部分。

下表展示了文章中group时使用到的一些参数设置:
在这里插入图片描述

2.3 Region Alignment

region-level adversarial alignment:
source和target域中经过feature reassignment之后得到特征为 Θ ^ s , Θ ^ t \hat{\Theta}_s,\hat{\Theta}_t Θ^s,Θ^t,首先在每个域中都有生成器和判别器组成的对抗网络,其损失的形式描述为:
L a d v ( Θ ^ , P ; G , D ) = E [ l o g D ( P ) ] + E [ l o g ( 1 − D ( G ( Θ ) ) ) ] L_{adv}(\hat{\Theta},P;G,D)=E[logD(P)]+E[log(1-D(G(\Theta)))] Ladv(Θ^,P;G,D)=E[logD(P)]+E[log(1D(G(Θ)))]
其中, P P P是对应聚类中心上真实图片区域。在source和target域中使用 D s , S t D_s,S_t Ds,St L a d v , D s , L a d v , D t L_{adv,D_s},L_{adv,D_t} Ladv,Ds,L

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值