AI 工具
English

GFPGAN 实测:3.7 万星的人脸修复神器,老照片有救了?

GFPGAN 是腾讯 ARC 实验室开源的人脸修复算法,GitHub 上 3.7 万星,基于 GAN 实现真实场景下的人脸重建。我跑了一堆老照片测试,聊聊效果到底怎么样。

face-restorationgandeep-learningpytorchimage-restorationsuper-resolution

广告

GFPGAN 实测:3.7 万星的人脸修复神器,老照片有救了?

翻老照片的时候你有没有过这种经历:照片里人的脸糊成一团,放大全是马赛克,想修复又不知道从何下手。我之前试过几个在线修复工具,要么收费离谱,要么修出来像换了一张脸。直到我挖到 GFPGAN,腾讯 ARC 实验室开源的项目,GitHub 上 3.7 万多星——这个数字在计算机视觉领域算是顶流了。

项目背景

GFPGAN 全称 Generative Facial Prior-GAN,2021 年由腾讯 ARC 实验室发布。它的目标很聚焦:真实场景下的人脸修复。不是美颜、不是磨皮,而是把模糊、低分辨率、有损伤的人脸照片恢复成清晰自然的版本。

项目基于 PyTorch,用了生成对抗网络(GAN)的核心思想,但关键创新在于引入了一个”预训练的人脸生成器”作为先验知识。简单说,就是它”知道”一张人脸应该长什么样,修复的时候不会乱猜。

3.7 万颗星,Python 语言,背后有腾讯 ARC 团队持续维护——这个基本面相当扎实。

核心功能

真实人脸修复

GFPGAN 专攻真实世界的老照片,不是那种实验室里的高清大头照。我试了十几张上世纪 90 年代的家庭照片,人脸区域普遍有压缩损伤和模糊。修复后五官清晰了很多,皮肤纹理也自然——不是那种网红滤镜的假面感。

人脸增强

除了修复,它还能做超分辨率。把 64×64 的小头像放大到 512×512,同时保持人脸结构不变形。这个比传统的插值算法强太多了。

快速推理

在一张 RTX 3060 上,单张图片的推理时间大概 0.5 秒左右。批量处理的话更省时间。作为对比,有些商业工具的网页版上传一张图要等半分钟。

支持多种退化模型

真实照片的损伤是五花八门的:压缩噪声、运动模糊、低分辨率、色彩失真。GFPGAN 训练时考虑了多种退化场景,所以泛化能力不错。

快速上手

安装很简单,前提是你有 PyTorch 环境:

# 克隆仓库
git clone https://github.com/TencentARC/GFPGAN.git
cd GFPGAN

# 安装依赖
pip install basicsr facexlib
pip install -r requirements.txt
python setup.py develop

# 下载预训练模型
wget https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth -P experiments/pretrained_models

# 运行推理
python inference_gfpgan.py -i inputs/whole_imgs -o results -v 1.3 -s 2

参数说明:

  • -i:输入图片目录
  • -o:输出目录
  • -v:模型版本(1.3 是目前推荐的)
  • -s:放大倍数

它也支持只处理人脸区域(不处理背景),加 --bg_upsampler realesrgan 可以让整个图片一起变清晰。

实际测试结果

我测了三个典型场景:

老照片修复

一张 1995 年的证件照,人脸区域大概 150×150 像素,压缩痕迹明显。GFPGAN 修复后眼睛、鼻子、嘴巴的轮廓都出来了,皮肤纹理也恢复了。但不是魔术——如果原图人脸只剩几个像素,它也无力回天。

视频截图修复

从老电视剧里截的图,人脸又小又糊。GFPGAN 处理后人脸清晰了,但背景没变(因为只修人脸区域)。这个行为是合理的,不然背景也会被”脑补”成奇怪的样子。

手机照片轻微模糊

手抖拍糊的自拍照,GFPGAN 有一定改善,但不如老照片效果明显。可能是因为轻微运动模糊的退化模型跟它训练时的假设不完全一致。

优缺点

优点:

  • 修复效果在开源工具里算第一梯队
  • 推理速度快,本地就能跑
  • 模型训练扎实,腾讯 ARC 出品
  • 完全开源,Apache-2.0 协议,商用也没问题

缺点:

  • 只处理人脸,背景不管(虽然可以配合 Real-ESRGAN)
  • 对极端低分辨率(人脸小于 50×50)效果有限
  • 偶尔会把人脸”修过头”,看起来过于光滑
  • 环境配置对新手不太友好,PyTorch 版本冲突很常见

跟同类工具对比

工具修复质量速度开源适用场景
GFPGAN真实人脸修复
Real-ESRGAN通用图像超分
CodeFormer人脸修复+编码
商业工具(如 Remini)很高慢(云端)手机端一键修复

GFPGAN 和 CodeFormer 是同期的竞争对手,两者效果都很强。CodeFormer 在极端退化场景下略胜一筹,但 GFPGAN 的推理速度更快。Remini 的效果确实好,但按月收费,而且要把照片传到人家服务器上。

适合谁用

  • 想批量修复老照片的家庭用户
  • 做旧照片修复业务的从业者
  • 研究计算机视觉的开发者(论文和代码都很干净,适合当 baseline)
  • 视频修复团队(可以配合 ffmpeg 做批量帧处理)

总结

GFPGAN 是我用过的开源人脸修复工具里最均衡的一个——效果够好、速度够快、代码够干净。3.7 万星不是吹出来的。

但我要泼一点冷水:它不会魔法。原图信息缺失太严重的时候,再好的 AI 也只能”猜”,猜的结果不一定对。所以我建议把它当做一个强力辅助工具,而不是万能修复器。照片越清晰、人脸越大,修复效果越好。

最后提醒一句:处理老照片之前一定先备份原件。AI 修复是不可逆的,万一结果不满意,至少还有原图在。


关于作者

柳钉鱼,全栈开发者,GitHub 重度用户。过去 3 年 Star 了 900+ 仓库,这里只写我真正用过或深度调研过的工具。

📧 发现好工具想推荐?发邮件到 [email protected]

广告

相关文章