[迁移学习]UniDAformer域自适应全景分割网络

原文的标题为:UniDAformer: Unified Domain Adaptive Panoptic Segmentation Transformer
via Hierarchical Mask Calibration,发表于CVPR2023。

一、概述

        域自适应全景分割是指利用一个或多个相关域中的现成标注数据来缓解语义分割数据标注复杂的问题。本文提出了一种UniDAformer域自适应全景分割网络,其基于Transformer,可以用一个统一的架构同时实现域自适应实例分割语义分割

        通过引入分层掩膜校准(HMC),UniDAformer可以实现在线自我训练。本网络具有以下几个特点:

                ①使用一个统一架构实现域自适应全景分割

                ②减少了错误预测

                ③可以实现端到端的训练和推理

        相较于传统的域自适应网络(二分支,下图(a)),UniDAformer(单一分支,下图(b))仅需要一个单一网络即可实现域自适应分割的任务,极大的减少了训练和推理的难度(减少了一个分支的参数量)。

[迁移学习]UniDAformer域自适应全景分割网络_第1张图片

        本文涉及到三个领域:

                ①Panoptic Segmentation(全景分割):为每一个像素分配语义类别和唯一标识。

                ②Unsupervised Domain Adaptation(无监督域自适应,UDA):利用已标记的源于数据来学习未标记的目标域数据。

                ③Self-training(自训练):一种主流的无监督域自适应技术,具体做法是利用伪标签重新训练网络。

二、模型&方法

        1.损失函数

        源域记作:D_s=\{(x_s^i,y_s^i)\};目标域记作D_t=\{x_t^i\}交叉熵损失函数可以定义为:L_{sup}=l(G(x_s),y_s)(仅使用源域进行训练)

        2.无监督训练

[迁移学习]UniDAformer域自适应全景分割网络_第2张图片

        整个无监督训练分为两个数据流:使用动量模型G^m校准伪模板;使用校准后的模型G进行无监督训练(使用自训练损失函数l_{self})。

        具体做法为:

                ①将未标记的图片x_t输入动量模型G^m中,生成一组伪掩码\hat{y}_{t}

                ②将伪掩码\hat{y}_t发送到HMC模块(分层掩码校准模块,Hierarchical Mask Calibration)中,生成校准后的伪掩码\hat{y}_{​{t}'},HMC模块会由粗到精校准伪掩码;

                ③将图像x_t校准后的伪掩码\hat{y}_{​{t}'}进行扩充(变形、裁切、缩放等),得到x_{aug}\hat{y}_{​{aug}'}

                ④使用自训练损失函数L_{self}来训练模型G

        其中动量模型G^m\theta G^m \leftarrow \gamma \theta G^m + (1-\gamma)\theta G\gamma为动量系数。

        3.分层掩码校准(HMC)

        HMC将物体和其预测(things and stuff predictions)统一视为掩码,并由粗到细对每层的掩码进行校正。校准分为三个阶段:区域超像素像素

                ①区域校准(Region-wise Calibration)

                通过重新加权类别概率来调整掩码类别;其使用的公式为:

                        \hat{c}_t ^k = \underset{c}{argmax} (w^{(c,k)}\bigotimes p^c);其中p^c为类别概率,\bigotimes为逐元素乘,w^{(c,k)}表示每个伪掩膜的概率的校准权重(对应第c类),权重w的计算公式为:

                        w^{(c,k)}=Softmax(-||v^k_r-\delta^c ||_1);其中,v_r^k区域特征向量\delta^c为特征向量第c质心\delta ^c距离||\; ||_1为L1距离。

                        其中区域特征向量v_r^k使用全局平均池化GAP,将特征掩码\hat{M}内的特征汇聚成区域向量v_r^k,公式如下:

                        v_r^k = GAP(\hat{M} \bigotimes f_t^k),其中f_t^k\in R^{E\times H \times W}

                        其中质心\delta^c的计算公式为:

                        \delta^c=\frac{\sum_{x_t \in D_t}\sum_{k \in K}v_m^r\cdot \mathbb{I}(\hat{c}=c)}{\sum_{x_t \in D_t}\sum_{k \in K}\mathbb{I}(\hat{c}^k=c)};其中\mathbb{I}指示函数,当向量v_m^k属于c类时返回1,不属于时返回0;

                        可以使用动量模型更新质心:

                        \delta^c \leftarrow {\gamma}' \delta^c + (1-{\gamma}')\delta_*^c;其中{\gamma}'为更新系数。

                ②超像素校准(Superpixel-wise Calibration)

                利用超像素黏附周围物体的边界特征来调整掩码性状;首先计算图片x_t超像素图M^I(其中包含I个超像素M^i),然后选择原始掩码\hat{M}_t^k中的超像素来生成修正后的掩码M_{sp}^k,可以表述为公式:

                M_{sp}^k=\bigcup_{i\in I}^{}M^{(i)} \cdot \mathbb{I}(A^{(i)}>0);该公式会选出与掩码模型重叠的超像素,工作模式如下图的(b)、(c)所示:

[迁移学习]UniDAformer域自适应全景分割网络_第3张图片

                ③像素校准(Pixel-wise Calibration)

                引入像素级分类信息,使用像素级投票机制调整掩膜边界;如上图中的(d)所示,当超像素M_{sp}^k中多数像素的特征向量与伪掩码总体类别不一致时,抛弃该超像素。可以表述为公式:

                \underset{c}{arg}min(||v_p^{(k,j)}||-\delta^c)=c_t^{​{k}'}

三、网络优化

        自训练损失函数L_{self}可以表示为:L_{self}=l(G(x_{aug}),\hat{y}' _{aug});其中l为匈牙利损失函数。

        总体损失函数由最小化监督损失函数L_{sup}非监督损失函数L_{self}共同决定。可以表述为:

                \underset{a}{arg}minL_{sup}+L_{self}

你可能感兴趣的:(神经网络,学习笔记,网络)