复现Deep Image Prior时图像加噪逻辑及代码运行疑问
输出图像仍带噪的核心原因
你注释的closure函数中的加噪代码,只是迭代过程中给网络输入添加的额外正则抖动噪声,不是噪声的唯一来源,输出仍带噪有三个核心原因:
- 基础输入本身为随机噪声张量
DIP的核心设计就是以随机初始化的张量作为网络的固定输入基底,代码中的net_input_saved本身就是符合正态分布的随机噪声。你注释的只是每次迭代额外叠加的抖动噪声,只是用于抑制过拟合的正则手段,整个训练过程的网络输入基底依然是随机噪声。 - 去掉正则噪声后反而更容易过拟合高频噪声
你注释的输入抖动噪声本质是正则项,作用是通过给输入加随机扰动,减缓网络对高频噪声的拟合速度,让网络优先学习图像的低频结构。去掉该正则项后,本身过参数化的DIP网络会更快拟合高频信息,包括目标图像自带的噪声、优化过程产生的高频伪影,反而会让输出的噪声更明显。 - 目标图像本身带噪声
你运行的是图像恢复脚本,若你做的是去噪、超分等任务,训练阶段的拟合目标本身就是带噪的退化图像,网络拟合的学习目标本身包含噪声,最终输出自然会保留噪声特征。
内容的提问来源于stack exchange,提问作者user309678
相关产品推荐
相关产品推荐

