域自适应——Bidirectional Learning for Domain Adaptation of Semantic Segmentation

news2024/12/22 19:58:06

论文题目:Bidirectional Learning for Domain Adaptation of Semantic Segmentation

本文的域位移是针对虚拟数据和真实数据之间的。

本文的贡献是:

  • 提出了一种语义分割的双向学习系统 ,其是一个学习分割适应模型和图像翻译模型的闭环学习系统。

  • 对于语义分割,提出了一种基于图像的翻译结果的自监督学习算法。该算法在特征层次上逐步调整目标域和源域

  • 图像到图像的翻译过程中,引入了感知损失,通过更新分割自适应模型来监督图像的翻译过程

方法

在这里插入图片描述

模型

双向学习

我们学习过程如图b: F F F是在没有成对例子的情况下。学习将图像从 S S S域转换到 T T T域。 T T T是在 F ( s ) F(s) F(s)上训练的分割网络,
S S S有标签。 T T T没有标签》
前向过程是用 F F F翻译结果图像分 F ( s ) F(s) F(s)和T来训练M。
F ( s ) F(s) F(s)的标签还是 S S S的标签,M的Losss的函数为:
在这里插入图片描述
一项是对抗损失,后一项是分割损失
后面的过程是本文新添加的,为了提高翻译结果的质量,在图像翻译网咯中使用了一种感知损失,它测量从一个预先实现好的目标网络中获得特征距离,这里。我们用M来计算特征来获得感知损失,通过加入另外两个损失,**GAN的损失和图形重建损失。**定义学习F的损失函数为:
在这里插入图片描述
在这里插入图片描述

提高M的自监督学习(SSL)

我们可以预测T的虚假标签,一旦获得了,M的损失函数1变为:
在这里插入图片描述
Tssl是 T T T的子集,一开始可以是空的。当一个更好的分割适应模型M被实现时,我们可以使用M来预测更多的T的高置信度标签,导致Tssl的大小增长。最近的工作[39]也使用SSL来适应分段。相比之下,我们工作中使用的SSL与对抗性学习相结合,对抗性学习可以更好地适应分段自适应模型

在这里插入图片描述
自监督的SSL的过程。第一次分割域适应。TssL先是空集。先训练F,在训练M得到Tss的伪标签。选择T中与S对齐良好的点构成TSSL。
在第二步中。我们可以很容易的将TSSL转换为S。并通过伪标签提供分割的损失来保持它们的对齐。这个过程如图2的中间所示。
因此,需要与S对齐的T中的数据量减少了。我们能继续剩余的数据转移到步骤一中。SSL比LADV更容易关注T与S的不对齐的每一步。

网络与损失函数

前两个损失函数

在这里插入图片描述
感知损失连接了图像翻译模型和语义分割自适应模型

在这里插入图片描述
上述描述了整体网路结构和损失函数:双向感知损失变为:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
分割损失使用交叉熵损失,源头域图像ls的分割损失为:
在这里插入图片描述
对于没有标签的目标域来说,我们使用最大可能性阈值(MPT),
选取预测值中的最大置信度。称为伪标签。分割损失函数定义为:
在这里插入图片描述
我们在算法1中给出了训练处理,训练过程由两个循环组成。外环主要是通过前向和后向学习翻译模型和分割适应模型。内部循环主要用于实现SSL流程

具体算法和参数选择

论文使用GTAS作为训练数据集****,Cityscapes作为目标数据集,翻译模型为**:CycleGAN.分短适应模型**为:DeepLab V2,主干为ResNet101。

  • 伪标签的阈值为:0.9
  • SSL迭代次数为2.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/46663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何安装使用Jupyter Notebook?

大家好鸭!我是小熊猫~ 今天来给大家介绍一下关于Jupyter Notebook的用法 关于它的组成部分就先不在这里详细解说啦~ 毕竟我可太懂你们啦~ 文章太长就会吃灰的~ 源码、资料电子书免费获取可点击这里 一、什么是Jupyter Notebook? 1. 简介 Jupyter Not…

vue3 弹窗开发之三,完善版

首先我们看一看整体的效果 点击图一的缩略图,查看大图(如图二)。同时弹窗内容底下有当前所有图片的缩略图展示,同时通过一个橙色的边框定位当前缩略图的位置。切换左右箭头滚动下一站或者上一张,同时底下缩略图同步有个…

mybatis的xml中<trim>标签的用法

文章目录1. 前言2. 先说结论3. 验证1. 情况一2. 情况二3. 情况三4. 情况四5. 验证prefixOverrides去掉的是trim内原sql内容1. 前言 在工作中离不开跟数据库打交道,目前流行的固然是mybatis,在xml中写sql的时候,可能会出现下面情况&#xff1a…

线性表的顺序实现【C语言版的真代码】

顺序表线性表顺序表顺序表的概念及其结构顺序表基本操作顺序表的初始化顺序表的插入顺序表的删除顺序表的查找线性表 线性表:一个线性表是含n个数据元素的有限序列。 它的逻辑结构要求是线性的,但其存储结构并没有做要求,即逻辑结构类似于如…

非DBA人员从零到一,MySQL InnoDB数据库调优之路(四)-数据备份与迁移

上一篇【非DBA人员从零到一,MySQL InnoDB数据库调优之路(三)-分区表与分库分表】 我认为分表在数据库的调优中是一种加法,通过拆分单表数据到多个表中,减少单表的压力,从而达到调优的效果,那么这一篇博文会通过对数据…

Spring Security权限管理原理

1.简介 授权是更具系统提前设置好的规则,给用户分配可以访问某一资源的权限,用户根据自己所具有的权限,去执行相应的操作,spring security提供的权限管理功能主要有两种: 基于过滤器的权限管理功能(Filte…

Syntax Error: Error: Missing binary. See message above.

安装完nvm,选择后node版本,在idea中引入vue项目,npm install后,运行npm run serve后 控制台出现下面错误: Try running this to fix the issue: D:\Program Files\nodejs\node.exe E:\vue-project\node_modules\fibe…

篮球竞赛预约平台设计与实现的源码+文档

摘 要 随着信息化时代的到来,管理系统都趋向于智能化、系统化,篮球竞赛预约平台也不例外,但目前国内仍都使用人工管理,市场规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化&#x…

platform总线

1、什么是platform总线? platform是Linux内核抽象出来的软件代码,用于设备与驱动的连接,设备与驱动通过总线进行匹配;匹配成功后会执行驱动中的probe函数,在probe函数中可以获取到设备的信息; 设备与驱动…

gitlab的使用方法,详解gitlab操作

1.导读 本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作。 - GitLab简介 - GitLab环境搭建 - GitLab基本使用(组、权限、用户、项目) 2.GitLab简介 Gi…

debug - JLX12864C(ST7920-12864)液晶屏不能使用串行通讯的原因

文章目录debug - JLX12864C(ST7920-12864)液晶屏不能使用串行通讯的原因概述调试备注ENDdebug - JLX12864C(ST7920-12864)液晶屏不能使用串行通讯的原因 概述 正在给板子写出厂测试程序, 买的12864型号是JLX12864C. STC官方给的例程是并行通讯, 好使. 但是想在测试程序中改为…

Linux线程基础

目录 一,线程函数 1、创建一个线程 2、获取自身线程ID 3、线程终止 4、取消正在执行线程 5、线程等待 6、线程分离 二,线程的使用 1,线程等待和线程分离 (1)、线程等待 (2)、线程分离 (3)、线程等待线程分离同时进行 三&#xff…

中英翻译《森林火灾的预防措施》

The Preventive Measures for Forest Fire 森林火灾的预防措施 The preventive measures for forest fires include some preemptive methods that can help reduce the risks of fires and contril their severity and spread, and thus, maintain ecological balance …

vue与es6的知识点

var let const let const 不能重复声明,局部作用域, 案例 let name "未来"; let str 我是${name}; console.log(str); 箭头函数 let add (x)>{ return x; } console.log(add(9)) v-bind 绑定标签的属性 src class a titie等等…

Qt for Android实现开机自启动

前言 最近项目需要,在Android上编写的程序,需要实现开机自启动。笔者查询了下资料,基本原理如下: 当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为 an…

详解时间复杂度计算公式(附例题细致讲解过程)

这几天开始刷力扣上面的算法题,有些题目上面限制时间复杂度和空间复杂度,题目虽然写出来了,但是很没底。印象里数据结构老师讲过一点,沉睡的记忆苏醒了。只记得一个时间复杂度是O(n),空间复杂度是S(n)。for循环常常是O…

中学语文教学参考杂志社中学语文教学参考编辑部2022年第27期目录

理论学术_课题荟萃《中学语文教学参考》投稿:cn7kantougao163.com 统编教材鲁迅作品的民俗文化分析及教学应用 张家波;张晓静; 3-5 高中语文线上学习的实践与反思 张灵贵; 6-797 不同课型导学案设计建议 张桂霞; 8-997 现代化进程中的阵痛:《哦,香雪…

遇到Bug漏测,不能总想着甩锅吧

背景 漏测Bug是指产品逻辑缺陷在测试过程中没有被发现(尤其是测试环境可以重现的缺陷),上线版本发布后或者在用户使用体验后发现并反馈回来的缺陷。 漏测Bug可能造成线上故障或者资损,在对产品测试过程中,自己也难免…

Pandas常见筛选数据的五种方法其一逻辑筛选。看见必懂,懂者必会,会者必加分

前言:Pandas的数据操作中,最基本的就是操作的筛选了,但是对新学员来说的这又是一个难点,因为方法比较多,不容易记。在此总结一下pandas中的一些常用的数据筛选操作。 逻辑筛选数据:切片([ ]&am…

ubuntu 安装、配置FTP

ubuntu 安装、配置FTP 提示:ubuntu 16.0.4,不同版本操作可能稍有不同 前言 本文主要对服务器安装及配置FTP做一个记录,涉及安装、配置、创建FTP账号、以及第一次连接异常等。 提示:以下是本篇文章正文内容,下面案例可…