图像复原:当深度学习的“慧眼”遇上模糊世界
图像复原的核心任务,是通过退化过程的先验知识构建数学模型,求解逆问题,从而将受损图像“抢救”回原始状态。然而,退化过程中的噪声与干扰无处不在,给复原工作带来诸多挑战。随着深度学习浪潮兴起,图像复原迅速成为计算机视觉的热门方向——图像去雨、去雾、去模糊等任务,往往是高层视觉任务的关键前置步骤。雨水作为最常见的动态恶劣天气,本文重点探讨图像去雨,尤其是单图像去雨技术。
单图像去雨可细分为静态单图去雨与动态视频去雨。相较于视频去雨,单图去雨缺乏时域信息,难度显著提升。从图1可以清晰看出,真实雨图中的雨纹远比合成雨图更为复杂——更具个性化、更多样化、方向也更随机。因此,真正还原真实雨图,才是该领域的核心难题。

图1 合成雨图像和真实雨图像的比较
1 单图像去雨简介
先简要概述数学模型。图像去雨可视为将雨图 I 分解为雨纹 R 和干净背景 B,即 I = R + B,然后恢复出 B。然而 R 与 B 均为未知,这是一个典型的病态问题。单图像去雨方法大致分为两类:传统方法(基于模型与优化)和深度学习方法(基于数据与训练)。传统方法主要聚焦雨纹的光学特性,利用稀疏编码、高斯混合模型等先验进行建模,再通过优化求解。
近年来,传统方法基本被深度学习方法所取代。原因显而易见:深度神经网络(DNN)具备强大的特征学习与图像映射能力,加之海量训练数据的支撑,效果更为出色。深度学习去雨方法采用各类DNN(如CNN、RNN、GAN等)从雨图中提取层级特征,直接学习从雨图到干净图像的端到端映射。为训练更优模型,还会引入雨纹掩模(Mask)、雨纹密度等先验信息,或设计专用模块(如Residual Dense Block、Contextualized Dilated Block、Spatial Attentive Module)。在网络结构上,循环架构与递归架构也较为常见。
根据配对数据的数量与训练方式,当前单图像深度学习去雨方法可分为三类:全监督、无监督与半监督。图2展示了配对图像与不成对图像的区别。全监督方法均使用成对数据,但真实场景中采集到的数据大多缺乏标签(即没有真值图像)。因此,仅使用部分甚至零配对数据的无监督与半监督方法反而更具优势——能有效缓解配对数据不足的难题。三种训练方式的框架见图3。

图2 配对图像和不成像图像的对比

图3 全监督/无监督/半监督训练方式的示意图
不过,目前大多数深度学习去雨方法仍采用全监督模式。问题在于现实世界中难以获取成对的真实雨图,因此研究界普遍通过人工添加雨纹来生成配对数据。但人工雨纹与真实雨纹差异显著,导致训练出的模型在真实去雨任务中表现欠佳——泛化能力差是主要瓶颈。因此,本文重点围绕无监督与半监督单图像深度学习去雨的最新进展展开讨论。
2 无监督单图像深度学习去雨
缺乏配对数据使得无监督去雨研究难度更大,此类方法目前仍较为稀少。代表性工作包括RR-GAN、UD-GAN和DerainCycleGAN。这些基于GAN的方法无需成对训练数据,而是通过深度网络结合特定的物理模型或先验知识来提取雨纹,进而输出无雨图像。下面逐一介绍。
RR-GAN
RR-GAN的网络架构包含一个多尺度注意力记忆生成器(MAMG)和一个多尺度深度监督鉴别器(MDSD)。MAMG循环递归地利用带注意力机制的记忆模块,不断获取更精确的雨纹信息,然后将原始雨图与雨纹图一同输入U-Net,输出复原图像。MDSD则负责判别复原图像的真伪,使其尽可能接近无雨图像。除了GAN的传统损失函数,RR-GAN还引入了一个重构损失,用于衡量提取的雨纹加上去雨后得到的图像与原始雨图的欧氏距离。有趣的是,作者在成对数据与不成对数据两种场景下均进行了测试,结果监督模式的效果并未明显优于无监督模式。作者本人也未给出确切解释——可能因为MDSD仅判断图像是否有雨,而不判断图像是否相似。
UD-GAN
UD-GAN提出了一种无监督生成对抗网络,通过引入自监督约束来解决无配对数据的问题。自监督学习近期备受关注,Yann LeCun在AAAI 2020的论文中特别强调了其重要性。具体而言,UD-GAN设计了两个协同优化模块:雨纹引导模块(RGM)和背景引导模块(BGM),以充分学习雨图特征。RGM负责区分真实雨图与BGM生成器输出的假雨图,这与RR-GAN的重构损失类似。BGM则利用高斯模糊处理原始雨图与输出的无雨图像,通过计算不同程度模糊后的梯度误差来确保内容一致性——其效果类似于使用vgg16或vgg19提取特征后的感知损失。此外,由于去雨图像与原图亮度可能存在差异,他们还引入了亮度增强的干净图片作为负样本,并将亮度对抗损失集成到鉴别器中。相比RR-GAN的单个生成器与判别器,UD-GAN采用了CycleGAN的循环一致性结构,包含两个生成器和两个判别器,使图像能在有雨域与无雨域之间来回转换。在合成数据与真实数据上,UD-GAN均取得了不错的结果。甚至当同时使用合成数据与真实数据时,去雨效果可超过部分全监督方法。
DerainCycleGAN
DerainCycleGAN构建了一个双支路网络用于无监督去雨,分别处理有雨图片域与无雨图片域的信息。他们提出了一种无监督注意力引导的雨纹信息提取器(U-ARSE),同时对有雨域与无雨域进行雨纹识别与提取(从有雨图中提取雨纹掩模,从无雨图中提取空白信息)。提取出的雨纹信息与原始图片一同输入对应的生成器,分别生成去雨后图像与加雨图像,再重构原始图像。为优化U-ARSE,他们设计了一个物理先验来约束雨纹,并采用了较为全面的损失函数。与RR-GAN和UD-GAN相比,DerainCycleGAN同样使用两个生成器和两个判别器,但前两者为单路结构,DerainCycleGAN为双路结构。由于利用了干净图片域的信息,去雨效果进一步提升。此外,第二条支路还能自动生成带雨图片——新生成的雨纹方向和形状更多样,更接近真实雨纹。作者通过对比实验证实,在新数据集上训练的模型在真实去雨任务中效果更优。
3 半监督单图像深度学习去雨
半监督去雨方法除了使用合成数据,还加入真实数据进行联合训练。但合成数据与真实数据差异显著,如何有效约束、如何建立两个域之间的联系,是一个巨大挑战。因此,半监督去雨方法同样稀少,代表性工作有SIRR和Semi-DerainGAN。
SIRR
SIRR使用CNN同时处理合成数据与真实数据。对于合成数据,直接采用传统网络输出图像,与干净图像计算MSE损失。对于真实数据,则通过在真实图片残差(真实雨图减去真实输出图像)上设计一个参数化分布的似然项来约束去雨效果。最后,利用合成图片残差与真实图片残差之间的KL散度来约束两个域的去雨效果。SIRR的思路是通过监督模式下的合成雨纹学习,来指导无监督模式下的真实雨纹学习,从而缓解合成数据不足与样本偏差问题。他们还采用了高斯混合模型(GMM)来模拟真实雨纹,并用EM算法求解,具有一定指导意义。但问题在于,合成图像与真实图像中的雨纹差异通常很大,强制减少两个残差之间的KL距离来训练共享网络可能并不合适——这会导致对合成数据中雨纹信息的“蒸馏”,降低监督网络精度,使得SIRR在处理大雨图像时留下较多雨纹。
Semi-DerainGAN
为解决SIRR的不足,Semi-DerainGAN提出了一种新的半监督深度网络。他们设计了一个共享参数的半监督雨纹信息学习器(SSRML),能够同时训练合成数据与真实数据,让真实图像提供更多雨纹信息。具体做法是:使用两个独立的深度网络生成器分别处理合成数据与真实数据,避免在一个网络中处理所有任务导致知识冲突与学习能力下降;同时引入第三个生成器,对真实数据的去雨结果进行重构,加强有雨域与无雨域之间的转化。全监督子网络采用了对抗损失、结构相似性损失与感知损失;无监督子网络则采用了对抗损失、TV正则化、感知损失与循环一致性损失。为获得更好的去雨效果,他们还专门设计了一个成对图片鉴别器,用于区分合成数据中的真假图片对。实验表明,Semi-DerainGAN在合成数据集与真实数据集上均优于SIRR。不过,由于合成数据与真实数据的雨纹差异较大,加之全监督与半监督训练中约束条件不平衡,使用两条对称支路训练可能导致收敛较慢。
4 结束语
总体而言,当前单图像深度学习去雨的研究主要集中全监督模式——利用深度神经网络结合人工先验,拟合合成数据中雨纹的分布,训练端到端的去雨网络。但这些方法既无法利用真实图像数据训练,也难以泛化到真实去雨任务。无监督与半监督方法恰好能弥补这一短板。然而,由于可用的先验信息有限,研究难度更大,目前这类工作仍处于起步阶段,方法不多,未来发展空间广阔。此外,单图像雨域与非雨域之间的迁移学习,以及图像去雨与视频去雨之间的迁移学习,均是值得关注的方向。
