PaddleGAN
PaddleGAN copied to clipboard
运行pixel2pixel报错:KeyError: "No object named 'FID' found in 'METRIC' registry!"
python -u tools/main.py --config-file configs/pix2pix_YNBY.yaml
[09/09 06:48:44] ppgan INFO: Configs: {'epochs': 200, 'output_dir': 'output_dir_pix2pix/pix2pix_YNBY-2021-09-09-06-48', 'enable_visualdl': True, 'model': {'name': 'Pix2PixModel', 'generator': {'name': 'UnetGenerator', 'norm_type': 'batch', 'input_nc': 3, 'output_nc': 3, 'num_downs': 8, 'ngf': 64, 'use_dropout': False}, 'discriminator': {'name': 'NLayerDiscriminator', 'ndf': 64, 'n_layers': 3, 'input_nc': 6, 'norm_type': 'batch'}, 'direction': 'b2a', 'pixel_criterion': {'name': 'L1Loss', 'loss_weight': 100}, 'gan_criterion': {'name': 'GANLoss', 'gan_mode': 'vanilla'}}, 'export_model': [{'name': 'netG', 'inputs_num': 1}], 'dataset': {'train': {'name': 'PairedDataset', 'dataroot': '/data/YNBY/zhixing/PaddleGAN/data/ffhq_pixel2pixel/train', 'num_workers': 4, 'batch_size': 1, 'preprocess': [{'name': 'LoadImageFromFile', 'key': 'pair'}, {'name': 'SplitPairedImage', 'key': 'pair', 'paired_keys': ['A', 'B']}, {'name': 'Transforms', 'input_keys': ['A', 'B'], 'pipeline': [{'name': 'Resize', 'size': [286, 286], 'interpolation': 'bicubic', 'keys': ['image', 'image']}, {'name': 'PairedRandomCrop', 'size': [256, 256], 'keys': ['image', 'image']}, {'name': 'PairedRandomHorizontalFlip', 'prob': 0.5, 'keys': ['image', 'image']}, {'name': 'Transpose', 'keys': ['image', 'image']}, {'name': 'Normalize', 'mean': [127.5, 127.5, 127.5], 'std': [127.5, 127.5, 127.5], 'keys': ['image', 'image']}]}]}, 'test': {'name': 'PairedDataset', 'dataroot': '/data/YNBY/zhixing/PaddleGAN/data/ffhq_pixel2pixel/test', 'num_workers': 4, 'batch_size': 1, 'preprocess': [{'name': 'LoadImageFromFile', 'key': 'pair'}, {'name': 'SplitPairedImage', 'key': 'pair', 'paired_keys': ['A', 'B']}, {'name': 'Transforms', 'input_keys': ['A', 'B'], 'pipeline': [{'name': 'Resize', 'size': [256, 256], 'interpolation': 'bicubic', 'keys': ['image', 'image']}, {'name': 'Transpose', 'keys': ['image', 'image']}, {'name': 'Normalize', 'mean': [127.5, 127.5, 127.5], 'std': [127.5, 127.5, 127.5], 'keys': ['image', 'image']}]}]}}, 'lr_scheduler': {'name': 'LinearDecay', 'learning_rate': 0.0002, 'start_epoch': 100, 'decay_epochs': 100, 'iters_per_epoch': 1}, 'optimizer': {'optimG': {'name': 'Adam', 'net_names': ['netG'], 'beta1': 0.5}, 'optimD': {'name': 'Adam', 'net_names': ['netD'], 'beta1': 0.5}}, 'log_config': {'interval': 100, 'visiual_interval': 500}, 'snapshot_config': {'interval': 5}, 'validate': {'interval': 29750, 'save_img': False, 'metrics': {'fid': {'name': 'FID', 'batch_size': 8}}}, 'is_train': True, 'timestamp': '-2021-09-09-06-48'}
W0909 06:48:44.865597 42337 device_context.cc:404] Please NOTE: device: 0, GPU Compute Capability: 7.0, Driver API Version: 10.2, Runtime API Version: 10.1
W0909 06:48:44.869621 42337 device_context.cc:422] device: 0, cuDNN Version: 7.6.
Traceback (most recent call last):
File "tools/main.py", line 56, in <module>
main(args, cfg)
File "tools/main.py", line 32, in main
trainer = Trainer(cfg)
File "/opt/packages/automation/miniconda3/envs/paddlepaddle/lib/python3.6/site-packages/ppgan/engine/trainer.py", line 103, in __init__
self.metrics = self.model.setup_metrics(validate_cfg['metrics'])
File "/opt/packages/automation/miniconda3/envs/paddlepaddle/lib/python3.6/site-packages/ppgan/models/base_model.py", line 138, in setup_metrics
self.metrics[metric_name] = build_metric(cfg_)
File "/opt/packages/automation/miniconda3/envs/paddlepaddle/lib/python3.6/site-packages/ppgan/metrics/builder.py", line 26, in build_metric
metric = METRICS.get(name)(**cfg_)
File "/opt/packages/automation/miniconda3/envs/paddlepaddle/lib/python3.6/site-packages/ppgan/utils/registry.py", line 75, in get
name, self._name))
KeyError: "No object named 'FID' found in 'METRIC' registry!"
把pixel2pixel.yaml文件中
validate:
interval: 4000
save_img: false
metrics:
fid: # metric name, can be arbitrary
name: FID
batch_size: 8
```注释完就可以运行。
重新安装下ppgan,pip uninstall ppgan, cd PaddleGAN,python setup.py develop。这样安装应该就行了
上述是安装问题,已经解决,如果有图像和视频生成的需求,可以使用新的跨模态工具: https://github.com/PaddlePaddle/PaddleMIX/tree/develop