164 lines
3.5 KiB
YAML
164 lines
3.5 KiB
YAML
name: huawei-cycylegan-7
|
|
engine: CycleGAN
|
|
result_dir: ./result
|
|
max_pairs: 1000000
|
|
|
|
misc:
|
|
random_seed: 324
|
|
|
|
handler:
|
|
clear_cuda_cache: True
|
|
set_epoch_for_dist_sampler: True
|
|
checkpoint:
|
|
epoch_interval: 1 # checkpoint once per `epoch_interval` epoch
|
|
n_saved: 2
|
|
tensorboard:
|
|
scalar: 100 # log scalar `scalar` times per epoch
|
|
image: 4 # log image `image` times per epoch
|
|
test:
|
|
random: True
|
|
images: 10
|
|
|
|
model:
|
|
generator:
|
|
_type: CycleGAN-Generator
|
|
_add_spectral_norm: True
|
|
in_channels: 3
|
|
out_channels: 3
|
|
base_channels: 64
|
|
num_blocks: 9
|
|
use_transpose_conv: False
|
|
pre_activation: True
|
|
# discriminator:
|
|
# _type: MultiScaleDiscriminator
|
|
# _add_spectral_norm: True
|
|
# num_scale: 2
|
|
# down_sample_method: "bilinear"
|
|
# discriminator_cfg:
|
|
# _type: PatchDiscriminator
|
|
# in_channels: 3
|
|
# base_channels: 64
|
|
# num_conv: 4
|
|
# need_intermediate_feature: True
|
|
discriminator:
|
|
_type: PatchDiscriminator
|
|
_add_spectral_norm: True
|
|
in_channels: 3
|
|
base_channels: 64
|
|
num_conv: 4
|
|
need_intermediate_feature: False
|
|
|
|
|
|
loss:
|
|
gan:
|
|
loss_type: hinge
|
|
weight: 1.0
|
|
real_label_val: 1
|
|
fake_label_val: 0.0
|
|
cycle:
|
|
level: 1
|
|
weight: 10.0
|
|
id:
|
|
level: 1
|
|
weight: 10.0
|
|
mgc:
|
|
weight: 1
|
|
fm:
|
|
weight: 0
|
|
edge:
|
|
weight: 0
|
|
hed_pretrained_model_path: ./network-bsds500.pytorch
|
|
|
|
optimizers:
|
|
generator:
|
|
_type: Adam
|
|
lr: 1e-4
|
|
betas: [ 0.5, 0.999 ]
|
|
weight_decay: 0.0001
|
|
discriminator:
|
|
_type: Adam
|
|
lr: 4e-4
|
|
betas: [ 0.5, 0.999 ]
|
|
weight_decay: 0.0001
|
|
|
|
data:
|
|
train:
|
|
scheduler:
|
|
start_proportion: 0.5
|
|
target_lr: 0
|
|
buffer_size: 50
|
|
dataloader:
|
|
batch_size: 1
|
|
shuffle: True
|
|
num_workers: 2
|
|
pin_memory: True
|
|
drop_last: True
|
|
dataset:
|
|
_type: GenerationUnpairedDataset
|
|
root_a: "/data/face2cartoon/all_face"
|
|
root_b: "/data/selfie2anime/trainB/"
|
|
random_pair: True
|
|
pipeline_a:
|
|
- Load
|
|
- RandomCrop:
|
|
size: [ 178, 178 ]
|
|
- Resize:
|
|
size: [ 256, 256 ]
|
|
- RandomHorizontalFlip
|
|
- ToTensor
|
|
- Normalize:
|
|
mean: [ 0.5, 0.5, 0.5 ]
|
|
std: [ 0.5, 0.5, 0.5 ]
|
|
pipeline_b:
|
|
- Load
|
|
- Resize:
|
|
size: [ 286, 286 ]
|
|
- RandomCrop:
|
|
size: [ 256, 256 ]
|
|
- RandomHorizontalFlip
|
|
- ToTensor
|
|
- Normalize:
|
|
mean: [ 0.5, 0.5, 0.5 ]
|
|
std: [ 0.5, 0.5, 0.5 ]
|
|
test:
|
|
which: video_dataset
|
|
dataloader:
|
|
batch_size: 1
|
|
shuffle: False
|
|
num_workers: 1
|
|
pin_memory: False
|
|
drop_last: False
|
|
dataset:
|
|
_type: GenerationUnpairedDataset
|
|
root_a: "/data/face2cartoon/test/human"
|
|
root_b: "/data/face2cartoon/test/anime"
|
|
random_pair: True
|
|
pipeline_a:
|
|
- Load
|
|
- Resize:
|
|
size: [ 256, 256 ]
|
|
- ToTensor
|
|
- Normalize:
|
|
mean: [ 0.5, 0.5, 0.5 ]
|
|
std: [ 0.5, 0.5, 0.5 ]
|
|
pipeline_b:
|
|
- Load
|
|
- Resize:
|
|
size: [ 256, 256 ]
|
|
- ToTensor
|
|
- Normalize:
|
|
mean: [ 0.5, 0.5, 0.5 ]
|
|
std: [ 0.5, 0.5, 0.5 ]
|
|
video_dataset:
|
|
_type: SingleFolderDataset
|
|
root: "/data/i2i/VoxCeleb2Anime/test_video_frames/"
|
|
with_path: True
|
|
pipeline:
|
|
- Load
|
|
- Resize:
|
|
size: [ 256, 256 ]
|
|
- ToTensor
|
|
- Normalize:
|
|
mean: [ 0.5, 0.5, 0.5 ]
|
|
std: [ 0.5, 0.5, 0.5 ]
|