11、Restoring Vision in Adverse Weather Conditions with Patch-Based Denoising Diffusion Models

2023-10-31

简介

官网:https://github.com/IGITUGraz/WeatherDiffusion
在图像恢复中使用它们的一个主要障碍是它们的架构约束,禁止尺寸无关的图像恢复,而图像恢复基准和现实世界的问题由不同尺寸的图像组成

基于去噪扩散概率模型的基于补丁的图像恢复算法。基于补丁的扩散建模方法通过在推理过程中使用平滑的重叠补丁噪声估计的引导去噪过程来实现大小不可知的图像恢复

贡献点:

  • 提出了一种新的基于补丁的扩散图像恢复算法,用于任意尺寸的图像处理。
  • 方法可以在特定天气和多天气恢复任务中实现最先进的性能。
  • 通过实验展示了从合成到真实世界多天气恢复的强大泛化。

实现过程

DDPM

前向过程
在这里插入图片描述
反向过程
在这里插入图片描述
损失目标函数
在这里插入图片描述
基于马尔科夫链、贝叶斯公式中间过程
前向过程中
在这里插入图片描述
在这里插入图片描述
反向过程中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最终损失函数
在这里插入图片描述
反向传播过程
在这里插入图片描述

DDIM

去噪扩散隐式模型为预训练扩散模型提供了一种加速的确定性采样方法,该方法被证明可以产生一致且质量更好的图像样本。隐式抽样利用了一种广义的非马尔可夫正演过程公式
在这里插入图片描述
把(8)中的分布改写成它的标准差 λ t λ_t λt 的特定选择
在这里插入图片描述
均值用方差表示为
在这里插入图片描述
通过设置 λ t 2 = β ~ t λ_t^2 = \tilde{β}_t λt2=β~t,正向过程变为马尔可夫过程,并且恢复了先前描述的原始扩散模型公式。训练目标(11)保持不变,但只有嵌入式非马尔可夫前向过程被用于推理

设置 λ t 2 = 0 \lambda_t^2=0 λt2=0,从边际噪声分布生成初始 x T x_T xT 后,采样成为确定性的。使用噪声估计器网络的隐式采样可以通过以下方式进行
在这里插入图片描述
在加速采样过程中,只需要完整的 {1,…, T} 时间步长的索引的一个子序列 τ 1 , τ 2 , … , τ S τ_1, τ_2,…,τ_S τ1τ2τS 。这有助于将采样时间步长减少到两个数量级
在这里插入图片描述
在反向抽样的最后一步,使 τ 1 τ_1 τ1 = 1

条件扩散模型

在不修改 x 的扩散过程 q ( x 1 : T ∣ x 0 ) q(x_{1:T} | x_0) q(x1:Tx0)的情况下,学习一个条件反向过程 p θ ( x 0 : T ∣ x 0 ) p_θ(x_{0:T} | x_0) pθ(x0:Tx0),使得采样的x对条件为 x ~ \tilde{x} x~ 的数据分布具有高保真度

其中清晰的图像为 x 0 x_0 x0,环境噪声的图像为 x ~ \tilde{x} x~,将 x ~ \tilde{x} x~作为反向过程的条件输入
在这里插入图片描述
x x x x ~ \tilde{x} x~按通道连接产生六维输入图像通道

反向传播的采样过程表示为
在这里插入图片描述

Patch-based Diffusive Image Restoration

在这里插入图片描述
图像恢复基准以及真实世界的图像都由不同大小的图像组成。相反,现有的生成架构大多是为固定尺寸的图像处理量身定制的。最近有一项扩散建模工作研究了与尺寸无关的模糊图像恢复。他们的模型使用固定大小的补丁进行优化,然后通过简单地向模型提供任意大小的输入来消除模糊,因此严格依赖于改进的全卷积网络架构。这也导致高测试时间的计算需求,以便整个图像可以在内存中处理。不同的是,在测试时将图像分解成重叠的固定大小的小块,并在采样时进行混合

基于补丁恢复的总体思路是对从图像中提取的补丁进行局部操作,并对结果进行最佳合并。迄今为止,这种方法的一个重要缺点是所得到的图像可能包含独立恢复中间结果的合并伪影

通过引导反向采样过程实现相邻补丁的平滑来解决这个问题,而不会出现边缘伪影

这里假设清晰的图像为 x 0 x_0 x0,环境噪声的图像为 x ~ \tilde{x} x~,采样掩膜为 P i P_i Pi
在这里插入图片描述
x 0 ( i ) = C r o p ( P i o X 0 ) x^{(i)}_0=Crop(P_i o X_0) x0(i)=Crop(PioX0) x ~ 0 ( i ) = C r o p ( P i o X 0 ) \tilde{x}^{(i)}_0=Crop(P_i o X_0) x~0(i)=Crop(PioX0)表示训练集图像对 ( X 0 , X ~ ) (X_0, \tilde{X}) (X0,X~)中的p × p个patch。Crop(.)操作从 P i P_i Pi指示的位置提取patch
在这里插入图片描述
(a)算法2中基于patch的扩散图像恢复流水线示意图。
(b)说明平均估计噪声引导采样更新的重叠像素在补丁。演示了一个简化的例子,其中r = p/2,并且只有四个重叠的补丁共享用白色边框和光栅标记的网格单元。在这种情况下,将在每个去噪时间步t上,基于四个重叠补丁上的平均估计噪声对该区域的像素进行采样更新。

首先,采用网格式排列解析方案提取所有重叠的p × p块,对任意大小的图像进行分解。考虑在完整图像上的网格状排列,其中每个网格单元包含r × r像素(r < p),并通过在水平和垂直维度上以r步长移动该网格来提取所有p × p块

前向过程伪代码
在这里插入图片描述
反向过程伪代码
在这里插入图片描述

  • 使用 ϵ θ ( x t ( d ) , x ~ ( d ) , t ) \epsilon_\theta(x^{(d)}_t, \tilde{x}^{(d)}, t) ϵθ(xt(d),x~(d)t)估计所有重叠斑块位置 d ∈ { 1 , ⋯   , D } d\in\{1,\cdots,D\} d{1,,D} 的噪声
  • 将这些重叠噪声估计值在各自的patch位置累加到与整个图像大小相同的矩阵( Ω ^ t \hat{Ω}_t Ω^t)中(Alg. 2中的第8行)
  • 根据每个像素的接收估计值归一化(Alg. 2中的第11行),
  • 使用平滑的整个图像噪声估计值( Ω ^ t \hat{Ω}_t Ω^t)执行隐式采样更新(Alg. 2中的第12行)

如果应用后采样,这种方法会破坏局部斑块分布对学习后验的保真度

较小的r会增加补丁之间的重叠,从而增加平滑度,但也会增加计算负担

论文中使用 p=64 或者128,r=16,在处理之前,将整个图像尺寸调整为16的倍数

实验

论文分别建立了去雪模型 S n o w D i f f p SnowDiff_p SnowDiffp 去雾模型 R a i n H a z e D i f f p RainHazeDiff_p RainHazeDiffp 去雨模型 $RainDropDiff_p $ 模型训练了2,000,000步,混合去噪模型 W e a t h e r D i f f p WeatherDiff_p WeatherDiffp训练了2,500,000步,使用学习率为0.00002且没有权重衰减的adam优化器,在参数更新过程中使用了一个权重为0.999的指数移动平均,因为它被证明可以促进更稳定的学习

使用基于WideResNet的U-Net网络架构,在16x16的特征图分辨率使用了使用组归一化和自关注块,通过正弦位置编码对t进行输入时间步嵌入,并将这些嵌入作为每个残差块的输入,使模型能够跨时间共享参数

在这里插入图片描述
在这里插入图片描述

limitations

主要限制是其相对较长的推理持续时间,相对于端到端图像恢复网络,只需要一个单一的前向传递处理。为了说明一个经验示例,WeatherDiff64模型需要20.52秒(挂钟时间)在单个NVIDIA A40 GPU上恢复大小为640 × 432、S = 10的图像,而TransWeather只需要0.88秒。这种时序规范也直接依赖于算法超参数的选择(例如,r值越低,图像质量会略微提高,但推理时间也会增加)和实现效率

另一个自然限制是它固有的有限能力,只能推广到训练时观察到的恢复任务。虽然在训练时通过使用来自多个损坏的图像对轻松地实现多天气恢复,但这仍然不能使生成模型有条件地推广到看不见的损坏(例如,恶劣的照明条件)。然而,这种自然限制也存在于最近所有旨在解决多天气图像恢复问题的研究中

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

11、Restoring Vision in Adverse Weather Conditions with Patch-Based Denoising Diffusion Models 的相关文章

随机推荐

  • RS485在切换收发状态的时候收到0x00

    介绍一下测试背景 我使用单片机的TTL232 通过MAX485芯片转成RS485协议 但是遇到一个问题 MAX485芯片在从发送状态切换到接收状态的时候会收到一个0x00 很显然这是一个 假 数据 并不是真实接收到的数据 这个0x00着实有
  • C++中namespace detail或namespace internal的使用

    在很多开源代码中偶尔会使用名字为 detail 或 internal 的命名空间 如OpenCV的modules目录中 有些文件中使用了namespace detail 有些文件中使用了namespace internal 名为detail
  • Ceph 存储池命令 以及 数据压缩

    文章目录 一 存储池操作 1 1 常用命令 1 2 删除存储池 1 3 存储池配额 1 4 存储池可用参数 二 存储池快照 2 1 创建快照 2 2 验证快照 2 3 回滚快照 2 4 删除快照 三 数据压缩 3 1 启用压缩并指定压缩算法
  • Oracle ——删除表中重复记录

    为了方便 假设表名为Tbl 表中有三列col1 col2 col3 其中col1 col2是主键 并且 col1 col2上加了索引重复数据删除 1 通过创建临时表 把数据先导入到一个临时表中 然后删除原表的数据 再把数据导回原表 SQL语
  • 【PBR系列三】BRDF方程及渲染方程

    本文核心知识主要参照 现代计算机图形学入门 闫令琪课程课件PPT 后续光线追踪系列知识也源于此处 一 BRDF方程 通过上一部分所有辐射度量学各种概念的定义之后 我们可以从这样一个角度理解光线的反射 如下图所示 一个点 微分面积元 在接受到
  • 怎样安装NPM离线包

    因为一些 你懂的 原因 工作环境无法直接使用npm install联网安装npm包 稍微花了点时间研究了一下 Mark下来 有机会看源码再补充 最佳方案 别浪费时间了 最好还是在网络环境下把所需的包全部安装好 再想办法搬回来 尽管可以一个一
  • VMware Workstation 在此主机上不支持嵌套虚拟化。报错一秒解决

    VMware Workstation 在此主机上不支持嵌套虚拟化 这是由于VMware与Windows11自带的Hyper V冲突所导致的 简单的解决方法是 将虚拟机设置中的CPU虚拟化取消勾选 如图所示
  • Ubuntu 安装Google浏览器

    Ubuntu自带的浏览器是火狐浏览器 使用的时候多多少少有些不方便 这里安装Googel浏览器 下载 可以到 Ubuntu chrome去下载安装包 安装 首先到下载的根目录 cd Downloads sudo dpkg i google
  • Mybatis1.2 查询所有数据

    1 2 查询所有数据 1 2 1 编写接口方法 1 2 2 编写SQL语句 1 2 3 编写测试方法 1 2 4 起别名解决上述问题 1 2 5 使用resultMap解决上述问题 1 2 6 小结 如上图所示就页面上展示的数据 而这些数据
  • http 请求头大小写的问题

    如果是默认消息头名称 消息头格式已经固定 即便输入的大小写有误 也会给你翻译成默认的写法 如果自己定义的 会自动给你翻译成小写 所以传参数的名称都用小写字母即可 否则可能取不到值 比如encryptedString会取不到值 使用encry
  • 【华为OD机试真题】最短木板长度(python)100%通过率 超详细代码注释 代码解读

    华为OD机试真题 2022 2023 真题目录 点这里 华为OD机试真题 信号发射和接收 试读 点这里 华为OD机试真题 租车骑绿道 试读 点这里 最短木板长度 时间限制 1s空间限制 256MB限定语言 不限 题目描述 小明有 n 块木板
  • 在windows下C++使用Native wifi API获取SSID和连接信息

    在linux下获取当前连接的信息很是轻松的 但是在windows下相对比较复杂 虽然可以考虑使用cmd命令获取网卡的信息并分析出当前连接的SSID 但是对于网络环境比较复杂的情况下其实我们同样可以使用Native wifi API获取目前的
  • linphone-android for mac编译过程记录

    本文记录linphone andoroid在mac上的编译过程 在这里做下记录 希望对大家有所帮助 如有疑问发评论即可 环境搭建 代码下载 git clone git git linphone org linphone android gi
  • 阿里云学生服务器配置及免费学生机领取攻略

    阿里云学生服务器优惠活动从云翼计划升级为开发者成长计划 现在学生服务器活动为高校学生在家实践计划 学生用户群可以免费领取阿里云学生服务器 如果购买特价服务器只需要新用户即可 不需要学生认证即可享受优惠价 阿里云百科来详细说下阿里云学生服务器
  • 二、从C到C++(二) 引用、引用常见用途、指针和引用区别、const引用

    一 引用类型 引用 像一个自动能被编译器逆向引用的常量型指针 它通常用于函数的参数表中和函数的返回值 但也可以独立使用 比如 int x int r x 使用引用的一些规则 当引用被创建时 它必须被初始化 指针则可以在任何时候被初始化 一旦
  • 对主流编程语言的认识

    主流编程语言的认识 语言 用途 C 操作系统 嵌入式开发 C 游戏 图形图像 桌面软件 服务器 C 桌面软件 服务器 JAVA JAVA SE 桌面软件 Android JAVA EE 企业级应用 web开发 服务器 JAVA ME 手机应
  • el-upload上传视频获取视频宽高、时长信息(多文件、单文件)

  • frp安装

    安装包下载 Releases fatedier frp github com 一 服务端配置 上传安装包至可连外网服务器解压 tar xzfv frp 0 48 0 linux amd64 tar gz 进入解压文件夹修改frps ini文
  • Ajax是什么以及Ajax交互原理(详,图文并茂,原理篇)

    一 Ajax技术与原理 1 1 Ajax简介 Ajax Asynchronous JavaScript and XML 翻译成人话就是 异步的 javascript 和 XML 相结合的一种技术 需要澄清的是 Ajax不是新的编程语言 而是
  • 11、Restoring Vision in Adverse Weather Conditions with Patch-Based Denoising Diffusion Models

    简介 官网 https github com IGITUGraz WeatherDiffusion 在图像恢复中使用它们的一个主要障碍是它们的架构约束 禁止尺寸无关的图像恢复 而图像恢复基准和现实世界的问题由不同尺寸的图像组成 基于去噪扩散