摘要:图像去雾是低层次视觉中的一个活跃话题,随着深度学习的快速发展,许多图像去雾网络被提出。尽管这些网络的管道运行良好,但改善图像去雾性能的关键机制仍不清楚。因此,我们不打算提出具有花哨模块的除雾网络;相反,我们对流行的U-Net进行最小的修改,以获得紧凑的除雾网络。
具体来说,我们使用门控机制将U-Net中的卷积块交换为残差块,使用选择性核融合主要路径的特征映射并跳过连接,并将得到的U-Net变体称为gUNet。
因此,在显著降低开销的情况下,gUNet在多个图像去雾数据集上优于最先进的方法。最后,我们通过广泛的消融研究验证了这些关键设计对图像去雾网络性能增益的影响。我们在https://github.com/IDKiro/gUNet上共享我们所有的代码和数据。
我们尝试创建一个最小的实现,它结合了基于上述观察的这些关键设计。具体来说,我们首先使用经典的U-Net[32]和局部残差[17]和全局残差[59]作为提取多尺度信息的基础架构。然后,我们使用深度可分离卷积层[21,45]来有效地聚合空间信息和转换特征。此外,我们将全局信息的提取分配给基于SK模块的模块[26],SK模块动态地融合来自不同路径的特征映射。
最后,我们在卷积块中引入门控单元,这些门控单元作为像素关注模块和非线性激活函数。因此,提出了两个关键模块,即具有门控机制的残差块(gConv块)和具有信道关注机制的融合模块(SK融合层)。这里我们将模型命名为gUNet,因为它是带门控的简单U-Net变体。
我们在四个图像去雾数据集上评估了gUNet的性能,并且对于每个数据集,我们训练了四个不同深度的变体。实验结果表明,gUNet在显著降低开销的情况下大大优于同期方法。图1显示了在最常用的SOTS室内集上,gUNet与其他图像去雾方法的对比。可以看出,gUNet的四种变体位于图表的左上角,这意味着它们比所有计算成本更低的图像去雾方法都要好。具体来说,微型模型gUNet-T依靠10%的计算成本和32%的参数优于DehazeFormerB,而小型模型gUNet-S仅依靠5.6%的计算成本和7.4%的参数优于PMNet。更重要的是,我们对所有四个数据集进行了广泛的消融研究,以验证这些关键设计。实验结果表明,该模块在图像去雾效果上取得了一致的性能提升。
图2显示了gUNet的整体架构。
我们的模型,gUNet,可以看作是一个7阶段的U-Net变体,其每个阶段由一堆提议的gConv块组成。此外,gUNet没有采用U-Net采用的在卷积层之后使用串联的策略来融合跳过连接和主路径。相反,我们建议使用SK融合模块来动态融合来自不同路径的特征映射。给定图像对fI(x);J(x)g,我们让gUNet预测全局残差[5,42,59],即R(x) = J^(x) - I(x),然后计算L1损失来训练我们的模型。
我们首先描述了gUNet的动机,这是基于以往作品的关键设计。首先是多尺度信息的提取,我们使用经典的U-Net[32]作为基础架构,生成不同大小的特征图,从而提取多尺度特征。然后,我们在卷积块中加入局部残差[17],在网络中加入全局残差[59]。为了在不显著增加参数数量和计算成本的情况下使网络更深,我们使用深度可分离卷积[21,45]来有效地聚合信息和变换特征。如何利用注意机制来提高网络的表达能力是当前网络设计的关键。我们回顾Eq.(1),发现大气光A是一个共享的全局变量,而t(x)是一个位置相关的局部变量。在FFA-Net中,通道注意模块是唯一能够有效提取全局信息的模块。我们认为,通道注意机制有效地提取了编码A所需的信息,这是FFA-Net有效的原因之一。然而,尽管通道注意模块的计算成本很小,但它引入的参数数量和延迟却是不可忽略的。我们认为估计A应该是一个简单的任务,因为有许多方法[4,16,43,58]将大部分计算资源分配给估计t(x),而使用轻量级模块来估计A。因此我们只将该任务分配给基于SK模块[26]的融合模块,该模块动态融合来自不同路径的特征映射。相应的,像素关注模块旨在使网络更加关注信息特征。我们发现GLU中的gate机制[7,46]起着类似的作用。
为此,我们在卷积块中引入门控机制,使其作为像素关注模块和非线性激活函数。
gConv Block
我们的 gConv 主要基于 gMLP [27] 和 GLU [7, 46]。假设 x 为特征图,我们首先通过 BatchNorm [23] 进行归一化处理,得到 x^ = BatchNorm(x)。在推断过程中,BatchNorm 使用在训练集上跟踪的统计指数移动平均值。它可以与相邻的线性层合并,更符合轻量级网络的要求。此外,BatchNorm 不像 LayerNorm [2] 那样具有破坏 DehazeFormer [47] 中提到的空间相关性的缺点。
这里,PWConv 表示逐点卷积层(Point-wise Convolutional Layer),DWConv 表示深度可分离卷积层(Depth-wise Convolutional Layer)。然后,我们使用 x1 作为 x2 的门控信号,随后对 x2 进行投影处理,使用另一个 PWConv,然后将输出与恒等快捷路径 x 相加,可以表示为:
使用门控机制来提高网络的表达能力在其他图像恢复任务中并不是一个新的想法 [6, 48, 56]。与我们的工作最相似的是 NAFNet [6],因为我们两者都不使用传统的非线性激活函数,如 ReLU 和 GELU,而仅仅依赖门控机制来实现非线性。相比之下,NAFNet使用GLU的双线性变种(即,没有任何非线性激活函数),而我们使用GLU的原始版本(即,使用Sigmoid作为门控函数)。
SK Fusion
"SK Fusion" 的中文翻译可以是 "SK融合" 或者 "SK合并",具体取决于上下文和使用场景。如果有特定的上下文或领域,可能还会有其他更合适的翻译。请提供更多上下文以获取更准确的翻译。
最后,我们通过 y = a1x^1 + a2x2 对 x^1 和 x2 进行融合。为了减少参数数量,MLP 中的两个 PWConv 层分别用作降维和增维层,这与传统的通道注意机制 [22] 一致。
结论:本文探讨了图像去雾网络实现性能提升的关键设计。除了常用的多尺度结构和残差学习外,有效利用注意机制是提高学习成绩的关键。具体而言,本文提出了gUNet,利用特征融合模块中的通道注意机制提取全局信息,利用门机制代替像素注意和非线性激活函数对空间变化的传输图进行建模。我们在四个图像去雾数据集上评估了gUNet的性能,结果表明gUNet与最先进的方法相当甚至更好,开销小得多。更重要的是,我们进行了大规模的消融研究,表明图像去雾网络的性能提升主要来自于注意机制、非线性激活函数、全局信息提取、归一化层和训练次数。