One PyTorch repo collecting a decade of image restoration papers
It bundles training and testing code for a sprawling family of image restoration models—super-resolution, denoising, deblurring, and face enhancement—under one PyTorch roof.

What it does KAIR is a PyTorch toolbox that bundles implementations and training scripts for a wide range of image restoration architectures. It covers single-image super-resolution (SRMD, ESRGAN, BSRGAN, SwinIR), blind denoising (DnCNN, FFDNet, SCUNet), video restoration (VRT, RVRT), and even face enhancement (GPEN). Instead of scattered one-off repos, you get JSON-configured training loops, model summary utilities, and support for both single and multi-GPU setups in one place.
The interesting bit The repo acts less like a novel framework and more like a curated garage for the ETH Zurich lab’s own published work and related contemporaries. The unusual value is the sheer scope: classical CNNs, GAN-based perceptual methods, Swin Transformers, and video transformers all share a common training backbone. That makes it a practical archaeological layer cake of how image restoration research evolved from 2017 to 2023.
Key highlights
- Bundles code for DnCNN, FFDNet, ESRGAN, BSRGAN, SwinIR, USRNet, VRT, RVRT, and others
- Supports both PSNR-oriented and adversarial (GAN) training with DataParallel or DistributedDataParallel
- Includes utility scripts for FLOPs, parameter counts, receptive field calculation, and pretrained model downloads
- Covers tasks beyond single-image: video super-resolution/deblurring/denoising and face image enhancement
- JSON-based configuration files control dataset paths, GPU selection, and training modes
Caveats
- The README reads like a lab blogroll—useful for tracking updates, but architectural details are often deferred to separate paper repos
- Some newer methods (e.g., DiffPIR) are only linked externally and not actually integrated into the toolbox
- A 2020 correction note still warns that multi-GPU GAN training requires manually editing
model_gan.pyto comment out a line
Verdict Researchers actively reproducing or extending papers from this group will find it indispensable. Casual users looking for a simple pip-installable CLI should look elsewhere—this is a research workspace, not a polished end-user tool.
Frequently asked
- What is cszn/KAIR?
- It bundles training and testing code for a sprawling family of image restoration models—super-resolution, denoising, deblurring, and face enhancement—under one PyTorch roof.
- Is KAIR open source?
- Yes — cszn/KAIR is open source, released under the MIT license.
- What language is KAIR written in?
- cszn/KAIR is primarily written in Python.
- How popular is KAIR?
- cszn/KAIR has 3.5k stars on GitHub.
- Where can I find KAIR?
- cszn/KAIR is on GitHub at https://github.com/cszn/KAIR.