FDA: 用于语义分割的傅里叶域自适应

论文链接:https://arxiv.org/abs/2004.05498

代码链接:GitHub - YanchaoYang/FDA: Fourier Domain Adaptation for Semantic Segmentation

机构:UCLA

发表于2020CVPR

这篇文章别的地方略读了,主要看看方法,感兴趣自己去翻原文233333

摘要

我们描述了一种简单的无监督域自适应方法,即通过交换源和目标分布的低频频谱来减小源和目标分布之间的差异。我们在语义分割中说明了该方法,其中密集注释的图像在一个领域(例如,合成数据)中很丰富,但在另一个领域(例如,真实图像)中很难获得。目前最先进的方法是复杂的,一些需要对抗性优化,以使神经网络的主干对离散域选择变量保持不变。我们的方法不需要任何训练来执行域对齐,只需要一个简单的傅里叶变换及其逆变换。尽管它很简单,但当集成到相对标准的语义分割模型中时,它在当前基准测试中实现了最先进的性能。我们的结果表明,即使是简单的程序也可以忽略数据中令人讨厌的可变性,而更复杂的方法很难从中学习

背景

我们的方法如图1所示:只需计算每个输入图像的(快速)傅里叶变换(FFT),并在使用源域中的原始注释通过逆FFT (iFFT)重建用于训练的图像之前,将目标图像的低水平频率替换为源图像。

傅里叶域自适应需要选择一个自由参数,即要交换的光谱邻域的大小(图1中的绿色正方形)。我们测试了各种尺寸,以及一种简单的多尺度方法,该方法由不同域尺寸产生的结果平均组成。

我们的方法的动机源于观察到低水平频谱(振幅)可以在不影响高水平语义感知的情况下显著变化。某物是车辆还是人,不应取决于传感器的特性、光源或其他低水平的可变性源。然而,这种可变性对频谱有重大影响,迫使基于学习的模型与其他讨厌的可变性一起“学习它”。如果这种可变性没有在训练集中表现出来,模型就不能泛化。这一点尤其重要,因为网络似乎不能很好地在不同的低级统计数据之间传递[1]。

相关工作

Semantic Segmentation

Domain Adaptation

旨在减少两个分布之间的差距

一种常见的差异度量是MMD(最大平均差异)及其核变体[15,27],由CMD(中心矩差异)扩展[52]到高阶统计量[3,30]。

Adversarial Learning

使用经过训练的鉴别器来最大限度地消除源表示和目标表示之间的混淆,从而减少域差异。‘

这个就是那个用于医学分割的实时Test-time adaption_test time adaptation 去噪-CSDN博客

中的方法了!

方法

2.1. Fourier Domain Adaptation (FDA)

在无监督域自适应(UDA)中,我们得到一个源数据集 ,其中xs ∈ R H X W X3 是个有颜色的图像,而ys ∈ R H X W 是xs的语义图

是目标域数据集

在这里,我们提出傅里叶域自适应(FDA)来减少两个数据集之间的域差距。

让FA,FP:R H X W X3→R H X W X3是对于一个RGB图的傅里叶变换F 的振幅amplitude和相位phase分量

e.g 对于一个单通道图片x我们有↓,这可以使用FFT算法在[13]中有效地实现。相应地,F^-1是将频谱信号(相位和振幅)映射回图像空间的傅里叶反变换。

更多的,我们表示Mβ是一个mask,它的值都是零除了 β∈ (0,1)中心区域↓,其中这里我们假设图像的中心是(0,0)。注意β并没有被以像素衡量,因此 β的选择并没有依赖图片的大小或者分辨率。

给定两个随机采样的图像xs ~Ds; xt ~ Dt,傅里叶域适应可以公式化为↓

其中源图像FA(xs)的振幅低频部分被目标图像xt的振幅低频部分所取代。然后,在相位分量不变的情况下,将修改后的xs的光谱表示映射回图像xs!t,其内容与xs相同,但会类似于Dt样本的外观。这个过程在Fig1中解释,其中Mβ表现为绿色

β的选择

当β = 0的时候 xs→t和xs是一样的,β = 1 的时候  xs→t 和xt是一样的

图2解释了这样的一个过程,但也有可见的伪影(artifacts),从图2的放大区域可以看到。

然而,在table1中我们展示了β 多种选择得到效果以及结果模型的平均值,类似于简单的多尺度池化方法

2.2. FDA for Semantic Segmentation

给一个已经适应过的原数据集Ds→t,我们可以训练一个语义分割网络Øw,与参数w,通过减少下面的交叉熵损失

由于FDA将这两个领域结合在一起,因此UDA成为一个半监督学习(SSL)问题。SSL的关键是正则化模型。我们使用决策边界的惩罚作为标准来跨越未标记空间中的聚类。

假设类分离,这可以通过惩罚决策边界遍历由数据点密集填充的区域来实现,这可以通过最小化目标图像上的预测熵来实现。然而,如[45]所述,这在低熵区域是无效的。我们没有在像素上设置任意阈值来施加惩罚,而是使用鲁棒加权函数来实现熵最小化,即↓,

 其中是沙博尼耶罚函数(Charbonnier penalty function)。 它对高熵预测 > 0.5的惩罚大于对低熵预测的惩罚,如图所示

将其与自适应源图像上的分割损失相结合,我们可以使用以下总体损失来训练语义分割网络Øw

Self-Supervised training

是通过使用高度自信的伪标签来提高SSL性能的一种常见方法。在没有正则化的情况下,这个实践是自我引用的,所以我们关注正则化。

如文献[42]所述,均值教师mean teacher通过平均模型权重来提高半监督学习绩效,这在学习过程中提供了正则化。在这里,我们提出使用多个模型预测的平均值来正则化自学习。

然而,与一次使用相同的损失训练多个模型不同,有一个明确的散度项,我们直接训练多个Øwβ 在 FDA过程中,不需要显式强制模型发散。我们实例化M=3分割网络

它们都是使用(6)从头开始训练的,对于某一目标图像xti的均值预测可以通过:

注意,网络的输出是softmax激活,因此平均值仍然是K个类别的概率分布。使用M模型生成的伪标签,我们可以训练Øwβ利用下面的自监督训练损失得到进一步的改进↓,其中 D^t是Dt用伪标签y^ti 扩充了

因为我们的训练细节与β的在FDA操作中不同,我们把利用不同分割网络的均值预测的自监督训练称为Multi-band Transfer(MBT)。我们的FDA语义分割网络的完整训练过程包括使用Eq.(6)从头开始对M个模型进行一轮初始训练,以及使用Eq.(8)进行另外两轮自监督训练,我们将在下一节中详细介绍。

实验

数据集

GTA5

SYNTHIA

CityScapes

Segmentation Network

实验结果

 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

淘宝商品详情API接口采集商品上货

使用淘宝商品详情API接口采集商品信息以进行上货是一个常见的需求,但需要注意的是,淘宝的API接口使用受到严格的限制和规定,需要遵循淘宝的开放平台政策。以下是一般性的步骤和建议,但请确保在实际操作中遵循淘宝的官方文档和规定…

极智芯 | 解读移动端芯片荟萃篇 主流移动芯片性能对比

欢迎关注我的公众号「极智视界」,获取我的更多技术分享 大家好,我是极智视界,本文分享一下 解读移动端芯片荟萃篇 主流移动芯片性能对比。 要说芯片的应用场景一般都会说云边端、云边端的,这里的移动端芯片当然是会属于云边端中的端场景了,主要是面向手机、平板等应用。下…

springboot实战笔记

用户模块开发 用户登录接口实现 根据token获取用户信息 检查账号是否可用 用户注册接口实现

【每日算法】理论:常见AIGC模型; 刷题:力扣单调栈

上期文章 【每日算法】理论:生成模型基础; 刷题:力扣单调栈 文章目录 上期文章一、上期问题二、理论问题1、stable diffusion模型的网络架构2、T5的网络架构(Text-To-Text Transfer Transformer模型)3、SDXL模型4、DA…

【网络安全】 MSF生成木马教程

本文章仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若读者因此作出任何危害网络安全的行为,后果自负,与作者无关。 环境准备: 名称系统位数IP攻击机Kali Linux6410.3.0.231客户端Windows 76410.3.0.234…

二叉搜索树、B-树、B+树

二叉搜索树 二叉查找树,也称为二叉搜索树、有序二叉树或排序二叉树,是指一棵空树或者具有下列性质的二叉树: 若任意节点的左子树不空,则左子树上所有节点的值均小于它的根节点的值;若任意节点的右子树不空&#xff0…

java入门-基本数据类型

今天开始开贴关注初学java的同学,写些基础内容,希望对大家有所帮助。如果对大家有帮助会一直写下去。 java基本语法-基本数据类型 概述 基本数据类型在程序运行中,需要内存空间来存储数据。数据存储的大小有不同,申请合理的内存空…

POJO简介

文章目录 简介POJO与ELB的区别POJO真正的意思 常见的POJO类DTODAOPOVOEntity 简介 什么是POJO?POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB(EJB是Enterprise Java Beans技…

Docker【docker使用】

文章目录 前言一、概念二、常用方法1.镜像2.容器 三、镜像构建贺管理 前言 上一篇文章讲了docker的安装,本片文章我们来聊聊docker的一些常用操作。以及镜像、容器之间的关系 一、概念 docker三大核心概念:镜像 Image、容器 Container、仓库 Reposito…

Opencv4+稀疏光流算法详解+实现

0. 写在前面 项目需要用到光流法找到图像中的点运动方向,想到光流法刚好适用。原理部分参考: 图像处理算法--光流法-原理-CSDN博客 1. Opencv4.5.4稀疏光流函数说明 1.1 稀疏光流API介绍 prevImg:视频前一帧图像/金字塔,单通道CV_…

获取远程管理软件保存的凭据

点击星标,即时接收最新推文 本文选自《内网安全攻防:红队之路》 扫描二维码五折购书 内网敏感数据的发现 内网的核心敏感数据,不仅包括数据库、电子邮件,还包括个人数据及组织的业务数据、技术数据等。可以说,价值较高…

(零)OpenOFDM接收端整体思路

一旦捕获射频信号并将其下变频至基带,解码管道就会启动,包括: OFDM,多载波调制的一种。通过频分复用实现高速串行数据的并行传输, 它具有较好的抗多径衰落的能力,能够支持多用户接入。 OFDM主要思想是:将信…

(1)fopen,fseek,fread,ftell,rewind作用和使用方法,大端小端

文章目录 1.fopen,fseek,fread,ftell,rewind作用和使用方法2.bin文件里从0x0000到0x0x0007是00 00 DF 00 00 01 00 00,但是用fread读出来前四个字节是DF0000,然后是0x1000,这是为什么&#xff1…

2024蓝桥杯每日一题(回溯)

备战2024年蓝桥杯 -- 每日一题 Python大学A组 试题一:木棒 试题二:n皇后问题 试题三:糖果 试题四:飞机降落 试题五:生日蛋糕 试题一:木棒 【问题描述】 乔治拿来一组等长…

steam_api.dll“是什么?打开游戏出现找不到steam_api.dll无法继续执行代码如何解决

"steam_api.dll"是什么?,steam_api.dll它是由windows系统Visual C Redistributable for Visual Studio提供的。当这个文件损坏或丢失时,会导致一些应用程序无法运行,显示找不到"steam_api.dll"缺失错误。本文…

马斯克开源的grok AI大模型

马斯克践行诺言,坚持开源原则,选择开源自家的 AI 大模型——Grok-1 下载链接如下: https://github.com/xai-org/grok-1 Grok-1 开源仅过去了 10 个小时,该项目便获得了 超过16k 的 Star,成为众人关注的焦点所在。 后续继续更新…

Python二级备考(1)考纲+基础操作

考试大纲如下: 基本要求 考试内容 考试方式 比较希望能直接刷题,因为不懂的比较多可能会看视频。 基础操作刷题: 知乎大头计算机1-13题 import jieba txtinput() lsjieba.lcut(txt) print("{:.1f}".format(len(txt)/len(ls)…

springcloud:4.2 GateWay结合JWT实现网关鉴权

概述 概述 简介 JWT是一种用于双方之间传递安全信息的简洁的、URL安全的声明规范。 定义了一种简洁的,自包含的方法用于通信双方之间以Json对象的形式安全的传递信息。 特别适用于分布式站点的单点登录(SSO)场景 传统的session认证的缺点 安全性:CSRF攻击因为基于cookie来…

掌握AI写作工具:引领内容创作潮流

随着技术发展,AI技术正日益渗透到各行各业,并对内容创作领域产生了深远影响。随着AI写作工具的不断发展和普及,内容创作者们正逐渐看到了AI在提高效率、创造力和质量方面的巨大潜力。本文将探讨AI写作工具如何引领内容创作潮流,以…

vue antd table嵌套表格 左侧展开图标动态控制显示隐藏

antd a-table想要实现如以下效果&#xff0c;有子级就显示展开图标&#xff0c;没有就不显示图标&#xff1a; 话不多说&#xff0c;直接上代码&#xff1a; <template><a-table :columns"columns" :data-source"dataSource"><template #b…