开源项目使用教程:Latent Transformer
1. 项目介绍
Latent Transformer 是一个用于图像和视频中人脸编辑的开源项目。该项目基于论文《A Latent Transformer for Disentangled Face Editing in Images and Videos》的实现,提供了一种新的方法来编辑人脸图片和视频中的属性,如眼镜、表情等,而不会影响其他属性。
2. 项目快速启动
环境准备
- Python 3.6
- PyTorch 1.8
- Opencv
- Tensorboard_logger
使用 conda 创建新的环境:
conda env create -f environment.yml
conda activate lattrans
准备 StyleGAN2 编码器和解码器
- 下载 StyleGAN2 编码器和解码器的官方实现,并将其保存到
pixel2style2pixel/目录。 - 下载预训练模型,并将其保存到
pixel2style2pixel/pretrained_models/目录。
编码器修改
为了保存潜在代码到指定路径,需要修改 pixel2style2pixel/scripts/inference.py 中的 run_on_batch 函数和 run 函数。
# 修改 run_on_batch()
if opts.latent_mask is None:
result_batch = net(inputs, randomize_noise=False, resize=opts.resize_outputs, return_latents=True)
# 修改 run()
tic = time.time()
result_batch, latent_batch = run_on_batch(input_cuda, net, opts)
latent_save_path = os.path.join(test_opts.exp_dir, 'latent_code_%05d.npy'%global_i)
np.save(latent_save_path, latent_batch.cpu().numpy())
toc = time.time()
数据准备
- 下载项目准备的数据集到
data/目录。 - 下载预训练的潜在分类器到
models/目录。
可以使用以下命令下载数据:
sh download.sh
训练
修改 configs/ 目录中的配置文件,然后运行以下命令开始训练:
python train.py --config 001
测试
确保潜在分类器已经下载到 models/ 目录,并且 StyleGAN2 编码器已经按要求准备好。训练完成后,可以使用以下命令测试模型:
python test.py --config 001 --attr Eyeglasses --out_path ./outputs/
3. 应用案例和最佳实践
单属性编辑
在测试目录 data/test/ 中对图像进行单属性编辑,可以改变指定的属性,如眼镜。输出的图像将保存在 outputs/ 目录。
python test.py --config 001 --attr Eyeglasses --out_path ./outputs/
视频编辑
项目提供了用于视频编辑的脚本,可以编辑测试目录 data/video/ 中的视频。确保 StyleGAN2 编码器已经准备好,然后运行以下命令:
sh run_video_manip.sh
4. 典型生态项目
Latent Transformer 可以与其他图像和视频处理开源项目配合使用,例如:
- 使用其他预训练的 StyleGAN2 模型进行更广泛的图像编辑。
- 结合其他机器学习框架和库,如 TensorFlow 或 Keras,进行进一步的开发。
以上就是 Latent Transformer 的使用教程,希望对您有所帮助。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



