forked from ecker/DL-Art-School
This is a simpler resnet-based generator which performs mutations
on an input interspersed with interpolate-upsampling. It is a two
part generator:
1) A component that "fixes" LQ images with a long string of resnet
blocks. This component is intended to remove compression artifacts
and other noise from a LQ image.
2) A component that can double the image size. The idea is that this
component be trained so that it can work at most reasonable
resolutions, such that it can be repeatedly applied to itself to
perform multiple upsamples.
The motivation here is to simplify what is being done inside of RRDB.
I don't believe the complexity inside of that network is justified.
83 lines
1.6 KiB
YAML
83 lines
1.6 KiB
YAML
#### general settings
|
|
name: 003_RRDB_ESRGANx4_DIV2K
|
|
use_tb_logger: true
|
|
model: srgan
|
|
distortion: sr
|
|
scale: 4
|
|
gpu_ids: [0]
|
|
amp_opt_level: O1
|
|
|
|
#### datasets
|
|
datasets:
|
|
train:
|
|
name: DIV2K
|
|
mode: LQGT
|
|
dataroot_GT: E:/4k6k/datasets/div2k/DIV2K800_sub
|
|
dataroot_LQ: E:/4k6k/datasets/div2k/DIV2K800_sub_bicLRx4
|
|
|
|
use_shuffle: true
|
|
n_workers: 16 # per GPU
|
|
batch_size: 16
|
|
target_size: 128
|
|
use_flip: true
|
|
use_rot: true
|
|
color: RGB
|
|
val:
|
|
name: div2kval
|
|
mode: LQGT
|
|
dataroot_GT: E:/4k6k/datasets/div2k/div2k_valid_hr
|
|
dataroot_LQ: E:/4k6k/datasets/div2k/div2k_valid_lr_bicubic
|
|
|
|
#### network structures
|
|
network_G:
|
|
which_model_G: ResGen
|
|
nf: 256
|
|
network_D:
|
|
which_model_D: discriminator_resnet_passthrough
|
|
nf: 42
|
|
|
|
#### path
|
|
path:
|
|
pretrain_model_G: ~
|
|
strict_load: true
|
|
resume_state: ~
|
|
|
|
#### training settings: learning rate scheme, loss
|
|
train:
|
|
lr_G: !!float 1e-4
|
|
weight_decay_G: 0
|
|
beta1_G: 0.9
|
|
beta2_G: 0.99
|
|
lr_D: !!float 1e-4
|
|
weight_decay_D: 0
|
|
beta1_D: 0.9
|
|
beta2_D: 0.99
|
|
lr_scheme: MultiStepLR
|
|
|
|
niter: 400000
|
|
warmup_iter: -1 # no warm up
|
|
lr_steps: [50000, 100000, 200000, 300000]
|
|
lr_gamma: 0.5
|
|
mega_batch_factor: 1
|
|
|
|
pixel_criterion: l1
|
|
pixel_weight: !!float 1e-2
|
|
feature_criterion: l1
|
|
feature_weight: 1
|
|
feature_weight_decay: .98
|
|
feature_weight_decay_steps: 500
|
|
feature_weight_minimum: .1
|
|
gan_type: gan # gan | ragan
|
|
gan_weight: !!float 5e-3
|
|
|
|
D_update_ratio: 2
|
|
D_init_iters: 0
|
|
|
|
manual_seed: 10
|
|
val_freq: !!float 5e2
|
|
|
|
#### logger
|
|
logger:
|
|
print_freq: 50
|
|
save_checkpoint_freq: !!float 5e2
|