# ------------------------------------------------------------------------ # Copyright (c) 2022 megvii-model. All Rights Reserved. # ------------------------------------------------------------------------ # Modified from BasicSR (https://github.com/xinntao/BasicSR) # Copyright 2018-2020 BasicSR Authors # ------------------------------------------------------------------------ # general settings name: NAFNet-REDS-width64 model_type: ImageRestorationModel scale: 1 num_gpu: 8 manual_seed: 10 datasets: train: name: reds-train type: PairedImageDataset dataroot_gt: ./datasets/REDS/train/train_sharp.lmdb dataroot_lq: ./datasets/REDS/train/train_blur_jpeg.lmdb filename_tmpl: '{}' io_backend: type: lmdb gt_size: 256 use_flip: true use_rot: true # data loader use_shuffle: true num_worker_per_gpu: 8 batch_size_per_gpu: 8 dataset_enlarge_ratio: 1 prefetch_mode: ~ val: name: reds-val300-test type: PairedImageDataset dataroot_gt: ./datasets/REDS/val/sharp_300.lmdb dataroot_lq: ./datasets/REDS/val/blur_300.lmdb io_backend: type: lmdb network_g: type: NAFNetLocal width: 64 enc_blk_nums: [1, 1, 1, 28] middle_blk_num: 1 dec_blk_nums: [1, 1, 1, 1] # path path: pretrain_network_g: ~ strict_load_g: true resume_state: ~ # training settings train: optim_g: type: AdamW lr: !!float 1e-3 weight_decay: !!float 1e-3 betas: [0.9, 0.9] scheduler: type: TrueCosineAnnealingLR T_max: 400000 eta_min: !!float 1e-7 total_iter: 400000 warmup_iter: -1 # no warm up # losses pixel_opt: type: PSNRLoss loss_weight: 1 reduction: mean # validation settings val: val_freq: !!float 2e4 save_img: false metrics: psnr: # metric name, can be arbitrary type: calculate_psnr crop_border: 0 test_y_channel: false ssim: type: calculate_ssim crop_border: 0 test_y_channel: false # logging settings logger: print_freq: 200 save_checkpoint_freq: !!float 5e3 use_tb_logger: true wandb: project: ~ resume_id: ~ # dist training settings dist_params: backend: nccl port: 29500