问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

CVPR 2024最新图像去雨算法NeRD-Rain:原理与实践指南

创作时间:
作者:
@小白创作中心

CVPR 2024最新图像去雨算法NeRD-Rain:原理与实践指南

引用
CSDN
1.
https://blog.csdn.net/wss794/article/details/143110229

在计算机视觉领域,图像去雨是一项重要的图像增强任务。CVPR 2024最新研究成果NeRD-Rain提出了一种基于多尺度Transformer的图像去雨算法,通过引入隐式神经表示(INR)和双向信息传播机制,实现了更高质量的图像恢复效果。本文将详细介绍该算法的核心原理、实验结果,并提供完整的代码实践指南。

NeRD-Rain算法原理

论文信息

摘要

如何有效地探索雨线的多尺度表示对图像去雨具有重要意义。与现有的基于Transformer的方法大多依赖于单一尺度的降雨外观不同,我们开发了一个端到端的多尺度Transformer,利用不同尺度下的潜在有用特征来促进高质量的图像重建。为了更好地从空间变化的雨线中探索常见的退化表示,我们将基于像素坐标的尺度内隐神经表示INR与退化输入结合在一个闭环设计中,使学习到的特征便于去除雨水,并提高模型在复杂场景中的鲁棒性。为了从不同尺度上保证更丰富的协同表示,我们通过执行由粗到细和由细到粗的信息沟通,将简单而有效的尺度间双向反馈操作嵌入到我们的多尺度Transformer中。大量的实验表明,我们的方法,称为NeRD-Rain,在合成和真实世界的基准数据集上的表现都优于最先进的方法。

核心创新点

  1. 多尺度Transformer:与现有方法依赖单一尺度不同,NeRD-Rain采用多尺度Transformer来捕捉不同尺度的特征。

  2. 隐式神经表示(INR):通过将基于像素坐标的尺度内隐神经表示与退化输入结合,形成闭环框架,以更好地探索多尺度信息。

  3. 双向信息传播:通过由粗到细和由细到粗的信息沟通,增强不同尺度特征之间的相互作用。

实验结果

NeRD-Rain在多个基准数据集上取得了显著的性能提升,特别是在真实世界数据集SPA-Data上,比现有最佳方法高出1.04 dB。

结论

NeRD-Rain提出了一种有效的多尺度Transformer网络用于单幅图像去雨。通过融合基于坐标的隐式神经表示,使得学习到的特征能够更好地促进雨去除,并提高模型在复杂场景下的鲁棒性。通过双向反馈传播操作增强了不同尺度特征之间的相互作用。实验结果表明,该方法在合成和真实世界数据集上都优于现有最佳方法。

实践指南

环境配置

# 下载代码
git clone https://github.com/cschenxiang/NeRD-Rain.git
# 或者DownLoad ZIP,下载成功后解压。
cd NeRD-Rain-main
pip install -r requirements.txt

# 安装warmup scheduler
cd pytorch-gradual-warmup-lr; python setup.py install; cd ..

数据集和预训练模型

  • 数据集

  • Rain200L:Baidu Netdisk (s2yx)

  • Rain200H:Baidu Netdisk (z9br)

  • DID-Data:Baidu Netdisk (5luo)

  • DDN-Data:Baidu Netdisk (ldzo)

  • SPA-Data:Baidu Netdisk (yjow)

  • 预训练模型

  • Rain200L:Google Drive / Baidu Netdisk (thga)

  • Rain200H:Google Drive / Baidu Netdisk (twg1)

  • DID-Data:Google Drive / Baidu Netdisk (bljv)

  • DDN-Data:Google Drive / Baidu Netdisk (10ut)

  • SPA-Data:Google Drive / Baidu Netdisk (p7h9)

训练

下载相应的数据集,并将它们放入datasets/文件夹中。按照下面的说明开始训练模型。

bash train.sh

测试

测试模型:

python test.py

结果保存在文件夹results/

常见问题

  1. ModuleNotFoundError: No module named 'natsort'

    pip install natsort -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  2. ModuleNotFoundError: No module named 'einops'

    pip install einops -i https://pypi.tuna.tsinghua.edu.cn/simple
    
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号