CodeFormer 是 NeurIPS 2022 论文《Towards Robust Blind Face Restoration with Codebook Lookup Transformer》的官方实现,由南洋理工大学 S-Lab 团队开发。该项目面向盲人脸复原(blind face restoration)任务,能够对低质量、退化或模糊的人脸图像进行复原和增强。
【主要能力】
- 人脸复原:针对裁切并对齐的人脸图像进行质量恢复。
- 整图增强:对包含人脸的完整图像进行增强,过程中会涉及人脸与背景的融合处理。
- 视频增强:支持视频输入(通过 --input_path [YOUR_VIDEO.mp4]),可对视频中的人脸进行增强。
- 人脸上色:针对裁切并对齐的人脸提供上色功能。
- 人脸修复(inpainting):针对裁切并对齐的人脸提供修复功能。
- 背景图像增强:采用 Real-ESRGAN 支持背景增强。
【使用方式】
- 环境依赖:PyTorch >= 1.7.1,其余所需包见 requirements.txt。
- 需要从 Releases、Google Drive 或 OneDrive 下载 facelib 与 dlib 预训练模型,放入 weights/facelib 文件夹;同时下载 CodeFormer 预训练模型放入 weights/CodeFormer 文件夹。也可通过命令行下载。
- 将测试图像放入 inputs/TestWhole 文件夹进行整图测试;若测试裁切对齐人脸,可放入 inputs/cropped_faces 文件夹。
- 可通过命令生成裁切并对齐的人脸。
- 保真度权重 w 取值范围为 [0, 1]:较小的 w 通常产生更高质量的结果,较大的 w 则保真度更高。
- 结果保存在 results 文件夹中。
- 若论文中需要与 CodeFormer 对比,建议使用 --has_aligned 参数处理裁切对齐人脸,因为整图命令会涉及人脸-背景融合,可能损伤边界处的头发纹理,导致不公平对比。
【版本更新要点】
- 2023.07.20:集成至 OpenXLab,可在线体验。
- 2023.04.19:公开训练代码与配置文件。
- 2023.04.09:新增针对裁切对齐人脸的修复与上色功能。
- 2023.02.10:新增 dlib 作为人脸检测器选项,可产生更准确的人脸身份。
- 2022.10.05:支持视频输入。
- 2022.09.14:集成至 Hugging Face。
- 2022.09.09:集成至 Replicate。
【适用场景】 适用于人脸图像复原、老照片修复、视频人脸增强、人脸上色与修复等图像/视频处理场景,也可用于相关学术研究的对比实验。
【限制与注意事项】
- 项目采用 NTU S-Lab License 1.0 许可,分发和使用需遵循该许可。
- 官方仅维护 Hugging Face Space、Replicate 与 OpenXLab 上的演示;其他演示、API、应用、网站和集成均为第三方,与作者无关。
- 官方声明部分网站未经授权使用其模型,提醒用户核实合法性,避免潜在经济损失。
- 整图处理时的人脸-背景融合可能损伤边界头发纹理,论文对比建议使用裁切对齐人脸模式。
- 训练命令详见英文或简体中文文档。
【致谢与引用】 项目基于 BasicSR,部分代码来自 Unleashing Transformers、YOLOv5-face 和 FaceXLib,并采用 Real-ESRGAN 支持背景增强。如有问题可联系 shangchenzhou@gmail.com。