手把手带你在云服务器复现Restormer

相信大家都可以在git上下载上Restormer的源码,那么我们就可以下一步啦

step1环境配置

安装他的环境

官方教程如下

但是其实我在4090上跑,他会出现一个问题,4090不支持他下载的版本,经过我的尝试后我发现,其实不要一模一样的版本,我的版本是11.3的cuda然后主要是要安装basic框架,也就是第四步

step2修改配置文件

那么我们环境配置完了后打开对应位置的任务,比如说我这里是动态模糊这个任务,所以我们要修改一下配置文件,主要是数据集位置,我把我的任务给出来

# general settings
name: Restormer-cartesian-5x
model_type: ImageCleanModel
scale: 1
num_gpu: 1  # set num_gpu: 0 for cpu mode
manual_seed: 10

# dataset and data loader settings
datasets:
  train:
    name: Train_cartesian_5x
    type: Dataset_PairedImage
    dataroot_gt: /root/autodl-tmp/dataset/train-lq
    dataroot_lq: /root/autodl-tmp/dataset/train-lq
    geometric_augs: true

    filename_tmpl: '{}'
    io_backend:
      type: disk

    # data loader
    use_shuffle: true
    num_worker_per_gpu: 1
    batch_size_per_gpu: 1

    ### -------------Progressive training--------------------------
    mini_batch_sizes: [8,5,4,2,1,1]             # Batch size per gpu   
    iters: [92000,64000,48000,36000,36000,24000]
    gt_size: 384   # Max patch size for progressive training
    gt_sizes: [128,160,192,256,320,384]  # Patch sizes for progressive training.
    ### ------------------------------------------------------------

    ### ------- Training on single fixed-patch size 128x128---------
    # mini_batch_
### 关于 Restormer 的代码实现与教程 Restormer 是一种高效的 Transformer 架构,专门用于高分辨率图像恢复任务。其核心组件包括多头转置注意力机制(MDTA, Multi-Dconv Head Transposed Attention)以及门控反卷积前馈网络(GDFN, Gated-Dconv Feed-Forward Network)。这些设计使得 Restormer 能够高效聚合局部和非局部像素交互,并通过控制特征转换来提升模型性能。 以下是关于 Restormer 代码实现的相关资源: #### 官方源码 官方提供了完整的 PyTorch 实现版本,可以直接从以下链接获取: ```plaintext https://github.com/swz30/Restormer [^2] ``` 该仓库包含了预训练权重、数据集准备脚本以及详细的运行说明文档。用户可以通过阅读 `README.md` 文件了解如何安装依赖项并启动实验环境。 #### 自定义训练与测试代码 除了官方提供的基础功能外,还有开发者分享了有详尽注释的自定义训练及测试代码包,可供进一步学习研究之用: ```plaintext https://download.csdn.net/download/Wenyuanbo/83592489 [^3] ``` 此资料不仅涵盖了原版架构解析还增加了额外的功能扩展模块便于二次开发人员快速上手实践操作流程。 #### 使用指南示例 下面给出一段基于上述开源项目的简单调用实例展示如何加载模型并对单张图片执行去噪处理过程: ```python import torch from restorer import Restormer # 导入restormer类来自相应文件夹路径下的py档名(restorer.py) input_image = 'path_to_your_input_image.png' checkpoint_path = './pretrained_models/image_denoising.pth' device = torch.device('cuda') if torch.cuda.is_available() else torch.device('cpu') model = Restormer().to(device) checkpoint = torch.load(checkpoint_path,map_location=device) model.load_state_dict(checkpoint['params']) model.eval() with torch.no_grad(): restored_img_tensor=model(input_tensor.to(device)) # 将tensor保存为图片... ``` 以上片段仅为示意用途,在实际部署过程中可能还需要调整参数配置或者优化内存管理策略等方面的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值