CodeFormer 综合介绍
CodeFormer 是一个面向鲁棒盲脸修复的代码库,由南洋理工大学 S-Lab 的研究团队开发,并在 NeurIPS 2022 上发表。该项目利用代码本查找变换器(Codebook Lookup Transformer)技术,旨在提升图像中人脸的修复效果,特别是在处理低质量或损坏的图像时表现出色。CodeFormer 提供了多种功能,包括人脸修复、上色和修补等,适用于各种图像处理需求。此外,项目支持视频输入,并提供易于使用的在线演示、预训练模型和详细的使用说明。
必须严格阅读使用说明,否则无法正常运行。正式作为老照片修复商用售卖时,需要简单PS基础,否则达不到网上同等效果。
CodeFormer 功能列表
- 人脸修复:通过代码本查找变换器技术,提升低质量或损坏人脸图像的清晰度和细节。
- 图像上色:为黑白或褪色的图像添加自然的颜色。
- 图像修补:修复图像中的缺失部分,使其恢复完整。
- 视频处理:支持对视频中的人脸进行修复和增强。
- 在线演示:提供在线演示功能,用户可以直接在浏览器中体验修复效果。
CodeFormer 使用帮助
安装流程
- 克隆代码库:
git clone https://github.com/sczhou/CodeFormer cd CodeFormer
- 创建并激活虚拟环境:
conda create -n codeformer python=3.8 -y conda activate codeformer
- 安装依赖:
pip install -r requirements.txt python basicsr/setup.py develop conda install -c conda-forge dlib
- 下载预训练模型:
python scripts/download_pretrained_models.py facelib python scripts/download_pretrained_models.py dlib python scripts/download_pretrained_models.py CodeFormer
使用流程
- 准备测试数据: 将测试图像放入
inputs/TestWhole
文件夹中。如果需要测试裁剪和对齐的人脸图像,可以将它们放入inputs/cropped_faces
文件夹中。 - 运行推理代码:
python inference_codeformer.py --input_path inputs/TestWhole --output_path results
该命令将处理
inputs/TestWhole
文件夹中的所有图像,并将结果保存在results
文件夹中。
功能操作流程
- 人脸修复:
- 将待修复的图像放入
inputs/TestWhole
文件夹。 - 运行推理代码,生成修复后的图像。
- 将待修复的图像放入
- 图像上色:
- 将黑白图像放入
inputs/TestWhole
文件夹。 - 使用
inference_colorization.py
脚本进行上色处理。
- 将黑白图像放入
- 图像修补:
- 将需要修补的图像放入
inputs/TestWhole
文件夹。 - 使用
inference_inpainting.py
脚本进行修补处理。
- 将需要修补的图像放入
- 视频处理:
- 将视频文件放入指定文件夹。
- 运行推理代码,处理视频中的人脸。
面部修复(裁剪和对齐的面部)
# For cropped and aligned faces
python inference_codeformer.py -w 0.5 --has_aligned --input_path [input folder]
整体图像增强
# For whole image
# Add '--bg_upsampler realesrgan' to enhance the background regions with Real-ESRGAN
# Add '--face_upsample' to further upsample restorated face with Real-ESRGAN
python inference_codeformer.py -w 0.7 --input_path [image folder/image path]
视频增强
# For video clips
python inference_codeformer.py --bg_upsampler realesrgan --face_upsample -w 1.0 --input_path
保真度权重w位于 [0, 1] 中。通常,较小的w往往会产生较高质量的结果,而较大的w会产生较高保真度的结果。
结果将保存在results文件夹中。