← all repositories
TencentARC/GFPGAN

Fixing blurry faces by borrowing StyleGAN's memory

A Tencent research project that restores degraded faces by tapping into the rich priors locked inside a pretrained StyleGAN2 model.

GFPGAN
Velocity · 7d
+18
★ / day
Trend
accelerating
star history

What it does GFPGAN takes low-quality, damaged, or compressed face images and reconstructs realistic facial details. It handles the “blind” restoration problem — meaning it works without knowing exactly how the image was degraded — by using a pretrained face GAN as a structural guide.

The interesting bit Instead of learning to generate faces from scratch, the model hijacks the diverse facial priors already compressed inside StyleGAN2. It essentially asks: “What plausible face could have degraded into this mess?” The current “clean” version drops the original CUDA extensions, so it runs on CPU and Windows without compiling custom kernels.

Key highlights

  • Multiple model versions (V1 through V1.4) with different trade-offs: V1.3 aims for naturalness, V1.2 skews sharper with “beauty makeup” effects
  • Optional background upsampling via Real-ESRGAN integration
  • Training code included, with a simplified config that skips face-component landmarks
  • Distributed training support via PyTorch launch
  • Apache 2.0 license

Caveats

  • V1.3 can subtly shift identity; V1.2 can look unnatural — the README explicitly warns you need to pick based on your input
  • The original paper model requires separate installation via PaperModel.md
  • Training demands the FFHQ dataset and several auxiliary pretrained models (StyleGAN2, ArcFace, landmark data)

Verdict Worth a look if you’re building photo enhancement tools, video cleanup pipelines, or researching face super-resolution. Skip if you need guaranteed identity preservation or already get acceptable results from simpler interpolation-based upscalers.

Frequently asked

What is TencentARC/GFPGAN?
A Tencent research project that restores degraded faces by tapping into the rich priors locked inside a pretrained StyleGAN2 model.
Is GFPGAN open source?
Yes — TencentARC/GFPGAN is an open-source project tracked on heatdrop.
What language is GFPGAN written in?
TencentARC/GFPGAN is primarily written in Python.
How popular is GFPGAN?
TencentARC/GFPGAN has 37.6k stars on GitHub and is currently accelerating.
Where can I find GFPGAN?
TencentARC/GFPGAN is on GitHub at https://github.com/TencentARC/GFPGAN.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.