Fast-AgingGAN
这个仓库包含了一个面部老化深度学习模型的代码。它基于CycleGAN,我们可以将年轻面孔转换为老年面孔,反之亦然。
样本
顶行是输入图像,底行是GAN生成的老化输出。
性能
在GTX1080上,模型处理512x512大小的图像时可达到66fps的速度。由于其训练方式,不需要面部检测流程。只要512x512空间维度的图像中包含256x256大小的面部,就能正常工作。
演示
要在您的图像上尝试预训练模型,请使用以下命令:
python infer.py --image_dir '您的图像目录路径'
训练
要在CACD或UTK人脸数据集上训练您自己的模型,您可以使用预处理目录中提供的预处理脚本来准备数据集。 如果您要使用CACD,请使用以下命令:
python preprocessing/preprocess_cacd.py --image_dir '/CACD图像路径' --metadata '/CACD元数据文件路径' --output_dir '保存处理后数据的路径'
如果使用UTK人脸数据集,请使用以下命令:
python preprocessing/preprocess_utk.py --data_dir '/CACD图像路径' --output_dir '保存处理后数据的路径'
数据集处理完成后,您应该进入configs/aging_gan.yaml
,修改路径以指向您刚刚创建的处理后的数据集。如果需要,可以更改其他超参数,然后使用以下命令开始训练:
python main.py
Tensorboard
在训练过程中,您可以在Tensorboard中观察损失和GAN生成的图像,只需将其指向'lightning_logs'目录,如下所示:
tensorboard --logdir=lightning_logs --bind_all