-
Notifications
You must be signed in to change notification settings - Fork 1
/
option_mfqev2_2G.yml
100 lines (78 loc) · 2.24 KB
/
option_mfqev2_2G.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
dataset:
train: # LMDB
type: MFQEv2Dataset
# for lmdb
root: /home/luodengyan/mfqe_datasets/YUV
gt_folder: train_raw_yuv/ # train_108/raw/
lq_folder: train_qp_yuv/QP37/ # train_108/HM16.5_LDP/QP37/
# for dataset
gt_path: mfqev2_train_qp37_gt.lmdb
lq_path: mfqev2_train_qp37_lq.lmdb
meta_info_fp: meta_info.txt
gt_size: 128 # ground truth patch size: gt_size * gt_size
use_flip: True
use_rot: True # rotation per 90 degrees
random_reverse: False
# for datasampler
enlarge_ratio: 300 # enlarge dataset by randomly cropping.
# for dataloader
num_worker_per_gpu: 16 # 32 in total. mainly affect IO speed
batch_size_per_gpu: 16 # bs=32, divided by 4 GPUs
val: # Disk IO
type: VideoTestMFQEv2Dataset
gt_path: test_raw_yuv/
lq_path: test_qp_yuv/QP37/
test:
type: VideoTestMFQEv2Dataset
gt_path: test_raw_yuv/
lq_path: test_qp_yuv/QP37/
network:
radius: 3 # total num of input frame = 2 * radius + 1
mlrd:
in_nc: 1 # 1 for Y
m_nc: 64 # num of feature maps
out_nc: 64
bks: 3
dks: 3 # size of the deformable kernel
qe:
in_nc: 64
m_nc: 64
out_nc: 1
bks: 3
train:
exp_name: MFQEv2_R3_enlarge300x # default: timestr. None: ~
random_seed: 7
pre-val: False # evaluate criterion before training, e.g., ori PSNR
num_iter: !!float 3e+5 # QP37
interval_print: !!float 100
interval_val: !!float 5e+3 # also save model
pbar_len: 100
# num_iter: !!float 1e+5 # for QP22, QP27, QP32 and QP42
# interval_print: !!float 100
# interval_val: !!float 2e+3
# pbar_len: 100
# fine_tune: True
# fine_tune_path: '.pt'
optim:
type: Adam
lr: !!float 1e-4 # init lr of scheduler
betas: [0.9, 0.999]
eps: !!float 1e-08
scheduler:
is_on: False
type: CosineAnnealingRestartLR
periods: [!!float 5e+4, !!float 5e+4, !!float 5e+4, !!float 5e+4, !!float 5e+4, !!float 5e+4] # epoch interval
restart_weights: [1, 0.5, 0.5, 0.5, 0.5, 0.5]
eta_min: !!float 1e-7
loss:
type: CharbonnierLoss
eps: !!float 1e-6
criterion:
type: PSNR
unit: dB
test:
restore_iter: !!float 200000
pbar_len: 100
criterion:
type: PSNR
unit: dB