【Mamba网络前沿】混合Transformer-Mamba网络用于单图像去雨

科技   2024-11-08 10:05   中国香港  

点击下方深度学习爱好者”,选择加p"星标"或“置顶

论文信息

题目:A Hybrid Transformer-Mamba Network for Single Image Deraining

混合Transformer-Mamba网络用于单图像去雨

作者:Shangquan Sun, Wenqi Ren, Juxiang Zhou, Jianhou Gan, Rui Wang, Xiaochun Cao, Senior

源码:https://github.com/sunshangquan/TransMamba

摘要

现有的去雨Transformer采用自注意力机制,其范围固定或仅沿通道维度,限制了对非局部感受野的利用。为了解决这一问题,作者提出了一种新颖的双分支混合Transformer-Mamba网络(TransMamba),旨在有效捕获与雨相关的长距离依赖关系。基于雨退化和背景在频域特征的不同光谱域先验,我们设计了频带Transformer块在第一个分支上。自注意力在频域通道维度的组合中执行,提高了建模长距离依赖的能力。为了增强频率特定信息,我们提出了一个频谱增强前馈模块,该模块在频域中聚合特征。在第二个分支中,Mamba层配备了级联的双向状态空间模型模块,以额外捕获局部和全局信息的建模。在编码器和解码器的每个阶段,我们通过通道维的拼接实现双分支特征的融合,并通过通道缩减实现特征融合,从而更有效地整合来自Transformer和Mamba分支的多尺度信息。为了更好地重建干净图像内固有的信号级关系,我们还开发了一个频谱一致性损失。广泛的实验在不同的数据集和现实世界图像上证明了我们方法与最先进的方法相比的优越性。我们已经在Github上发布了代码和预训练模型。

关键词

  • 单图像去雨

  • 雨痕移除

  • 图像恢复

  • 频域

  • Transformer

  • 状态空间模型

  • 混合模型

方法

A. 总体网络架构

我们提出的TransMamba的一般网络架构如图3所示,遵循对称的多级双分支编解码器结构。将输入视为一个雨图像,表示为,其中分别代表图像的高度和宽度。我们使用一个3×3卷积来生成图像块的重叠嵌入。在第一分支的编码器-解码器中的块内,我们结合了多个SDTB来捕获复杂特征并辨别动态分布的雨相关因素。对于第二分支,我们利用多个CBSM来补充第一分支Transformer块缺失的信息。两个分支的输出特征通过在每个级别上进行拼接和逐点卷积来合并。在同一个级别上,编码器和解码器通过跳跃连接相互连接,这与先前的研究[3]、[4]、[87]一致,以增强训练过程的稳定性。在每个级别之间,我们采用像素-重组和像素-洗牌操作,分别用于特征下采样和上采样的目的。

B. 频域Transformer块

在我们的TransMamba中,每个级别上都串联了多个SDTB,SDTB的流程可以通过以下方程表示:
其中LayerNorm表示层归一化,代表第n级别的特征。它包括两个子模块,即SBSA用于在频域和空间域中捕获长距离和局部依赖关系,以及SEFF用于增强雨痕的频率特定信息。这些子模块的细节在后续部分详细说明。
  1. 频谱带自注意力模块:为了更好地捕获动态分布的雨引起的退化,我们引入了一个频谱带自注意力(SBSA)模块。该模块包括一系列操作,包括一组可分离的卷积(由逐点卷积和深度卷积组成)、2D FFT操作和频谱带注意力机制。可分离的卷积用于提取查询、键和值的雨相关退化特征。这种提取允许后续的注意力机制有效地加权特征令牌的值。FFT操作将空间域特征转换到频域,其中每个像素嵌入了原始空间特征的特定频率的正弦波分量。由于分解属性,修改频域中的单个令牌会在原始图像的全局信号中产生变化。因此,我们认为每个频域令牌编码了全局知识的局部依赖关系,令牌的提取使作者能够捕获长距离信息。通过采用上述特征提取过程,我们的SBSA实现了全局和局部动态特征聚合的结合。该过程如下所述:
其中Convd_{3 \times 3}是3×3深度卷积,Conv1×1表示逐点卷积,表示2D FFT操作,表示通过PyTorch中的view_as_real实现的复数到实数的操作,是频域中的查询、键和值特征。现有的视觉Transformer[3]–[5]、[87]、[88]通常依赖于固定范围的注意力或仅沿通道维度的注意力,由于计算和内存效率的妥协。然而,这种固定设置限制了自注意力自适应地跨越长距离以关联所需特征。相比之下,我们观察到雨引起的退化导致在频域的低频范围内编码的重复纹理,并且不同频率的像素更好地被分配不同程度的注意力。因此,我们提出了频谱带重组(SBR),以将频域元素分类为不同频率的带,并在它们之间分配不同的注意力。我们首先根据将频谱特征从高到低频率排序的网格索引收集令牌。然后,重新排序的频谱域特征被分类为具有相同长度的带序列,并跨带连接。为了平行计算的目的,我们限制每个带在实现过程中包含相同数量的像素。SBR的过程如下表示:
其中Reorganize表示将特征从重新组织到的操作,gather(·; M)是按照特定形状的网格索引M进行的收集操作,索引M是预先计算的,其形式为网格网格,使得其中心项具有较小的索引,表示更高频率,而外部索引表示较低频率,最后排序。为了提取长距离和局部信息,我们混合了包含丰富局部表示信息的通道维度和编码动态范围依赖关系的带维度。然后,重新组织的特征被输入到自注意力机制中,该过程可以如下表述:
其中是头的数量。在获得频域注意力特征后,我们通过以下方式输出空间特征:
其中是2D逆FFT过程,表示通过PyTorch中的view_as_complex实现的实数到复数的操作,Scatter表示基于索引M的令牌检索步骤,R是维度重塑操作。
  1. 频谱增强前馈模块:先前的研究[3]–[5]、[87]通常依赖于单一范围或单一尺度的卷积来增强前馈网络中的局部上下文。然而,这些方法经常忽视了不同范围和尺度上动态分布的雨引起的退化之间的相关性。在实践中,可以通过扩大核大小或利用扩张机制[89]–[91]来提取多尺度信息。因此,我们在前馈模块中集成了两个不同的多范围深度卷积路径。我们还利用了频域中卷积等同于空间域中逐元素乘法的属性,从而构思出了频谱增强前馈(SEFF)模块。在SEFF中,一对权重和偏置被调整大小并广播,以在频域特征上充当有偏滤波器。这使得每个代表频率分量的令牌能够被自适应地增强或过滤,以便更好地分离与雨相关的和背景令牌。给定一个输入张量,我们首先使用逐点卷积操作来扩大通道维度r倍。然后,将展开的张量引导到两个并行分支中。在特征转换过程中,使用3×3和扩张的3×3深度卷积来增强多范围信息的提取。两个分支上的特征然后被转换到频域,并通过一对可学习的权重和偏置变量进行增强,以便增强频域信息。权重有一个预定义的大小,但可以插值到适合输入特征的形状,并像自适应频率传递滤波器一样起作用,保留背景令牌并过滤掉与雨相关的退化。根据门控机制[92],一个分支的激活输出,其接收场范围更长,作为另一个分支的门控单元。因此,SEFF模块内完整的特征融合过程如下所示:
其中是3×3扩张深度卷积,表示频域权重的特征图插值,是偏置特征图,SiLU是SiLU激活[93]。

C. 级联双向状态空间模型模块

受[79]的启发,我们提出利用级联双向状态空间模型(SSM)模块来进一步增强序列一致性。前向方向的表达式可以如下公式化:
其中SA和CA分别表示空间注意力和通道注意力[94]。反向的表达式可以如下公式化:
其中Flip是沿通道维度的翻转操作。通过通道翻转操作,卷积和SSM过程从正向方向反转到反向。将前向和反向的CBSM级联形成双向SSM模块。双向策略可以缓解SSM模块对长距离特征的遗忘,更好地增强长距离信息提取。

D. 重建损失和一致性损失

为了监督我们的TransMamba的训练,我们采用去雨图像和干净背景之间的L1范数作为重建损失,表达式如下:
此外,我们注意到只调节去雨图像和真值之间的像素级相似性,而忽视了从信号的角度出发的全局一致性。图像频域内的信号分量之间的固有关系被雨的模式破坏了。通过模仿真值内的原始信号关系,我们迫使退化图像的信号表示恢复到干净背景的原始正弦信号。因此,我们引入了图像频谱之间的一致性[95]作为调节综合线性关系的手段,表达式如下:
其中表示信号的共轭分量,是信号的频谱密度,分子代表去雨和干净图像信号之间的平方交叉谱密度。方程7的值在[0, 1]范围内。当两个图像信号表现出无关的一致性时,方程7达到0的值,而在完全线性一致性的情况下,它获得1的值。因此,我们将频谱一致性损失公式化为:
最终的损失函数表达为:
其中是频谱一致性损失的权重。

实验

声明

本文内容为论文学习收获分享,受限于知识能力,本文对原文的理解可能存在偏差,最终内容以原论文为准。本文信息旨在传播和学术交流,其内容由作者负责,不代表本号观点。文中作品文字、图片等如涉及内容、版权和其他问题,请及时与我们联系,我们将在第一时间回复并处理。
下载1:Pytoch常用函数手册
在「深度学习爱好者」公众号后台回复:Pytorch常用函数手册,即可下载全网第一份Pytorch常用函数手册,涵盖Tensors介绍、基础函数介绍、数据处理函数、优化函数、CUDA编程、多线程处理等十四章章内容。
下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

深度学习爱好者
分享机器学习、深度学习和Python等知识与原理,每天分享深度学习与计算机视觉领域的经典和最新的论文总结,带读者一起跟踪前言科技!
 最新文章