Skip to content

Open Source Image and Video Restoration Toolbox for Super-resolution, Denoise, Deblurring, etc. Currently, it includes EDSR, RCAN, SRResNet, SRGAN, ESRGAN, EDVR, BasicVSR, SwinIR, etc. Also support StyleGAN2, DFDNet.

Notifications You must be signed in to change notification settings

hanlinwu/BasicSR

 
 

Repository files navigation

🚀 BasicSR

LICENSE PyPI Language grade: Python python lint Publish-pip gitee mirror

English | 简体中文GitHub | Gitee码云

🚀 We add BasicSR-Examples, which provides guidance and templates of using BasicSR as a python package. 🚀

google colab logo Google Colab: GitHub Link | Google Drive Link
Ⓜ️ Model Zoo: ⏬ Google Drive: Pretrained Models | Reproduced Experiments ⏬ 百度网盘: 预训练模型 | 复现实验
📁 Datasets: ⏬ Google Drive百度网盘 (提取码:basr)
📈 Training curves in wandb
💻 Commands for training and testing
HOWTOs


BasicSR (Basic Super Restoration) is an open-source image and video restoration toolbox based on PyTorch, such as super-resolution, denoise, deblurring, JPEG artifacts removal, etc.

🚩 New Features/Updates

  • ✅ Sep 2, 2021. Add SwinIR training and testing codes: SwinIR by Jingyun Liang👍. More details are in HOWTOs.md
  • ✅ Aug 5, 2021. Add NIQE, which produces the same results as MATLAB (both are 5.7296 for tests/data/baboon.png).
  • ✅ July 31, 2021. Add bi-directional video super-resolution codes: BasicVSR and IconVSR.
  • ✅ July 20, 2021. Add dual-blind face restoration codes: HiFaceGAN codes by Lotayou.
  • ✅ Nov 29, 2020. Add ESRGAN and DFDNet colab demo
  • ✅ Sep 8, 2020. Add blind face restoration inference codes: DFDNet.
  • ✅ Aug 27, 2020. Add StyleGAN2 training and testing codes: StyleGAN2.
More
  • Sep 8, 2020. Add blind face restoration inference codes: DFDNet.
    ECCV20: Blind Face Restoration via Deep Multi-scale Component Dictionaries
    Xiaoming Li, Chaofeng Chen, Shangchen Zhou, Xianhui Lin, Wangmeng Zuo and Lei Zhang
  • Aug 27, 2020. Add StyleGAN2 training and testing codes.
    CVPR20: Analyzing and Improving the Image Quality of StyleGAN
    Tero Karras, Samuli Laine, Miika Aittala, Janne Hellsten, Jaakko Lehtinen and Timo Aila
  • Aug 19, 2020. A brand-new BasicSR v1.0.0 online.

Projects that use BasicSR

  • Real-ESRGAN: A practical algorithm for general image restoration
  • GFPGAN: A practical algorithm for real-world face restoration

If you use BasicSR in your open-source projects, welcome to contact me (by email or opening an issue/pull request). I will add your projects to the above list 😊


If BasicSR helps your research or work, please help to ⭐ this repo or recommend it to your friends. Thanks😊
Other recommended projects:
▶️ Real-ESRGAN: A practical algorithm for general image restoration
▶️ GFPGAN: A practical algorithm for real-world face restoration
▶️ facexlib: A collection that provides useful face-relation functions.
▶️ HandyView: A PyQt5-based image viewer that is handy for view and comparison.
(ESRGAN, EDVR, DNI, SFTGAN) (HandyView, HandyFigure, HandyCrawler, HandyWriting)


⚡ HOWTOs

We provide simple pipelines to train/test/inference models for a quick start. These pipelines/commands cannot cover all the cases and more details are in the following sections.

GAN
StyleGAN2 Train Inference
Face Restoration
DFDNet - Inference
Super Resolution
ESRGAN TODO TODO SRGAN TODO TODO
EDSR TODO TODO SRResNet TODO TODO
RCAN TODO TODO SwinIR Train Inference
EDVR TODO TODO DUF - TODO
BasicVSR TODO TODO TOF - TODO
Deblurring
DeblurGANv2 - TODO
Denoise
RIDNet - TODO CBDNet - TODO

🔧 Dependencies and Installation

For detailed instructions refer to INSTALL.md.

⏳ TODO List

Please see project boards.

🐢 Dataset Preparation

  • Please refer to DatasetPreparation.md for more details.
  • The descriptions of currently supported datasets (torch.utils.data.Dataset classes) are in Datasets.md.

💻 Train and Test

  • Training and testing commands: Please see TrainTest.md for the basic usage.
  • Options/Configs: Please refer to Config.md.
  • Logging: Please refer to Logging.md.

🏰 Model Zoo and Baselines

  • The descriptions of currently supported models are in Models.md.
  • Pre-trained models and log examples are available in ModelZoo.md.
  • We also provide training curves in wandb:

📝 Codebase Designs and Conventions

Please see DesignConvention.md for the designs and conventions of the BasicSR codebase.
The figure below shows the overall framework. More descriptions for each component:
Datasets.md | Models.md | Config.md | Logging.md

overall_structure

📜 License and Acknowledgement

This project is released under the Apache 2.0 license.
More details about license and acknowledgement are in LICENSE.

🌏 Citations

If BasicSR helps your research or work, please consider citing BasicSR.
The following is a BibTeX reference. The BibTeX entry requires the url LaTeX package.

@misc{wang2020basicsr,
  author =       {Xintao Wang and Ke Yu and Kelvin C.K. Chan and
                  Chao Dong and Chen Change Loy},
  title =        {{BasicSR}: Open Source Image and Video Restoration Toolbox},
  howpublished = {\url{https://github.com/xinntao/BasicSR}},
  year =         {2020}
}

Xintao Wang, Ke Yu, Kelvin C.K. Chan, Chao Dong and Chen Change Loy. BasicSR: Open Source Image and Video Restoration Toolbox. https://github.com/xinntao/BasicSR, 2020.

📧 Contact

If you have any questions, please email xintao.wang@outlook.com.

About

Open Source Image and Video Restoration Toolbox for Super-resolution, Denoise, Deblurring, etc. Currently, it includes EDSR, RCAN, SRResNet, SRGAN, ESRGAN, EDVR, BasicVSR, SwinIR, etc. Also support StyleGAN2, DFDNet.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 86.9%
  • Cuda 7.4%
  • C++ 4.9%
  • Other 0.8%