CodeFormer vs GFPGAN 模糊人脸修复对比:谁在什么场景更好
两者最根本的区别
| 维度 | GFPGAN | CodeFormer |
|---|---|---|
| 框架 | GAN(生成对抗网络) | Codebook Lookup Transformer |
| 核心思路 | 判别器引导输出"像真人" | Codebook token 预测 + 解码重建 |
| 身份保真 | 固定(GAN 倾向漂) | 有 w 权重可调 |
| 参数 | 无(一键出图) | w ∈ [0, 1] |
| 背景增强 | GFPGANv1.4 内建 | 需配合 Real-ESRGAN |
| 视频支持 | 无(需自己逐帧) | 脚本直接支持 |
| 黑白上色 | 无 | 独立脚本 |
| License | Apache 2.0 | NTU S-Lab 1.0(非商用) |
模糊人脸修复测试
模糊是最常见的人脸退化类型,也是两者最核心的对比场景。
运动模糊 / 失焦模糊
| 模型 | 结果 |
|---|---|
| GFPGAN | 恢复锐利的眼睛边缘和眼睫毛,整体轮廓清晰 |
| CodeFormer (w=0.5) | 眼睛清晰,但锐利度略低于 GFPGAN;身份保持更好 |
| CodeFormer (w=0.7) | 锐利度下降,但和原图更像 |
结论:模糊不太严重(中度模糊)时 CodeFormer 眼睛更清楚;模糊很严重时 GFPGAN 恢复更激进。
严重马赛克模糊
| 模型 | 结果 |
|---|---|
| GFPGANv1.4 | 最激进——直接"画"出一张脸,马赛克完全消失,但可能不是本人 |
| CodeFormer w=0.3 | 马赛克仍可见但被模糊化,修复脸和原图差异较大 |
| CodeFormer w=0.5 | 马赛克被 Codebook 重建覆盖,但身份漂 |
结论:完全马赛克糊脸(原图没信息),GFPGANv1.4 恢复的"看起来最好看",CodeFormer 更保守。
AI 生图场景对比
| 维度 | GFPGAN | CodeFormer |
|---|---|---|
| 多眼 / 畸变 | ✅ 修复彻底 | ⚠️ 可能不完全修复极端崩坏 |
| 风格保留 | ❌ GAN 把脸变成"真人脸",艺术风格丢失 | ✅ Codebook 重建,保留 AI 生图特征 |
| 参数 | 一键 | w=0.2~0.3 质量优先 |
| 推荐 | 先跑 GFPGANv1.4 做第一轮 | 再跑 CodeFormer w=0.3 精细化 |
结论:AI 生图场景两者搭配使用效果最好——GFPGAN 修复极端崩坏,CodeFormer 精细化 + 保风格。
老照片修复对比
| 维度 | GFPGANv1.4 | CodeFormer |
|---|---|---|
| 身份保持 | ⚠️ GAN 倾向漂 | ✅ w=0.7 时高度保持 |
| 划痕修复 | ✅ v1.4 内建 | ❌ 需配合 inpainting 脚本 |
| 背景增强 | ❌ | ✅ Real-ESRGAN 搭配 |
| 黑白上色 | ❌ | ✅ 独立脚本 |
| 微调空间 | 几乎没有 | w 权重大范围可调 |
结论:老照片修复 CodeFormer 更通用,但划痕修复需要额外步骤。
2025 年独立评测数据
Imaging Resource 2025 年底对 6 个人脸修复模型做了对比:
| 模型 | 综合画质 | 人脸细节 | 身份保持 |
|---|---|---|---|
| CodeFormer | 8.2 / 10 | 7.8 / 10 | 9.1 / 10 |
| GFPGANv1.4 | 7.6 / 10 | 9.1 / 10 | 7.2 / 10 |
| RestoreFormer | 7.4 / 10 | 7.5 / 10 | 8.3 / 10 |
数据印证:CodeFormer 身份保持碾压全场,GFPGANv1.4 人脸细节最锐利。
什么时候选哪个
选 CodeFormer 的场景
- ✅ 身份重要(家人、警方档案、自己的照片)
- ✅ AI 生图后处理(保风格)
- ✅ 视频逐帧处理(时间一致性)
- ✅ 需要精细调参
- ✅ 背景也要增强
选 GFPGAN 的场景
- ✅ 一键出结果、不想调参
- ✅ 完全崩坏的脸(马赛克糊到认不出)
- ✅ 想要最强锐利度(人像特写修眼睛)
- ✅ 划痕修复
两者搭配
- ✅ AI 生图后处理:GFPGANv1.4 → CodeFormer w=0.3
- ✅ 老照片修复:CodeFormer inpainting → CodeFormer w=0.7
License 注意
CodeFormer 的 NTU S-Lab License 1.0 不允许商用(非盈利研究/个人使用可以)。如果要商业产品,GFPGAN 的 Apache 2.0 更宽松。