11、Restoring Vision in Adverse Weather Conditions with Patch-Based Denoising Diffusion Models
在图像恢复中使用它们的一个主要障碍是它们的架构约束,禁止尺寸无关的图像恢复,而图像恢复基准和现实世界的问题由不同尺寸的图像组成基于去噪扩散概率模型的基于补丁的图像恢复算法。基于补丁的扩散建模方法通过在推理过程中使用平滑的重叠补丁噪声估计的引导去噪过程来实现大小不可知的图像恢复。
简介
官网: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:T∣x0)的情况下,学习一个条件反向过程 p θ ( x 0 : T ∣ x 0 ) p_θ(x_{0:T} | x_0) pθ(x0:T∣x0),使得采样的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值越低,图像质量会略微提高,但推理时间也会增加)和实现效率
另一个自然限制是它固有的有限能力,只能推广到训练时观察到的恢复任务。虽然在训练时通过使用来自多个损坏的图像对轻松地实现多天气恢复,但这仍然不能使生成模型有条件地推广到看不见的损坏(例如,恶劣的照明条件)。然而,这种自然限制也存在于最近所有旨在解决多天气图像恢复问题的研究中
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)