← all repositories
HasnainRaz/Fast-SRGAN

SR-GAN on a diet: 720p at 30fps from a MacBook GPU

A stripped-down super-resolution network that trades some fidelity for the ability to actually run in real time on consumer hardware.

Fast-SRGAN
Velocity · 7d
+0.3
★ / day
Trend
steady
star history

What it does Fast-SRGAN upscales low-resolution video frames by 4× using a lightweight generative adversarial network. It ships with a pretrained generator (8 residual blocks, 64 filters) trained on DIV2K, plus training code if you want to roll your own.

The interesting bit The speed comes from pixel shuffle upsampling instead of heavier alternatives, and the whole thing is wired together with Hydra — so you can override any config parameter from the command line without touching YAML files. The benchmark numbers come from an M1 Pro GPU, not some datacenter card you’ll never afford.

Key highlights

  • 4× upscaling to 720p at ~30fps, 360p at 82fps (M1 Pro, averaged over 800 frames)
  • Pretrained model included; training setup uses TensorBoard logging
  • Hydra config system means python train.py generator.n_layers=12 just works
  • Python 3.10, TensorFlow 2/Keras under the hood

Caveats

  • Benchmarks are on Apple Silicon (MPS backend); CUDA performance is unclear from the README
  • Sample images show the model can produce visible artifacts compared to ground truth — the speed/fidelity tradeoff is real
  • Only one pretrained model provided; no stated support for arbitrary scale factors beyond 4×

Verdict Worth a look if you need real-time super-resolution on modest hardware and can tolerate some quality loss. If you’re chasing PSNR records or need flexible scaling, stick to heavier frameworks.

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