SkillAgentSearch skills...

SRResCycGAN

Code repo for "Deep Cyclic Generative Adversarial Residual Convolutional Networks for Real Image Super-Resolution" (ECCVW AIM2020).

Install / Use

/learn @RaoUmer/SRResCycGAN

README

Deep Cyclic Generative Adversarial Residual Convolutional Networks for Real Image Super-Resolution (SRResCycGAN)

An official PyTorch implementation of the SRResCycGAN network as described in the paper Deep Cyclic Generative Adversarial Residual Convolutional Networks for Real Image Super-Resolution. This work is participated in the AIM 2020 Real-Image Super-resolution challenge track-3 at the high x4 upscaling factor.

Abstract

Recent deep learning based single image super-resolution (SISR) methods mostly train their models in a clean data domain where the low-resolution (LR) and the high-resolution (HR) images come from noise-free settings (same domain) due to the bicubic down-sampling assumption. However, such degradation process is not available in real-world settings. We consider a deep cyclic network structure to maintain the domain consistency between the LR and HR data distributions, which is inspired by the recent success of CycleGAN in the image-to-image translation applications. We propose the Super-Resolution Residual Cyclic Generative Adversarial Network (SRResCycGAN) by training with a generative adversarial network (GAN) framework for the LR to HR domain translation in an end-to-end manner. We demonstrate our proposed approach in the quantitative and qualitative experiments that generalize well to the real image super-resolution and it is easy to deploy for the mobile/embedded devices. In addition, our SR results on the AIM 2020 Real Image SR Challenge datasets demonstrate that the proposed SR approach achieves comparable results as the other state-of-art methods.

Spotlight Video

Video

Pre-trained Models

| Datasets|SRResCycGAN| |---|:---:| |NTIRE2020 RWSR|Sensor noise (σ = 8)| |NTIRE2020 RWSR|JPEG compression (quality=30)| |NTIRE2020 RWSR|Unknown corruptions| |AIM2020 RISR|Real image corruptions|

BibTeX

@InProceedings{Umer_2020_ECCVW,
               author = {Muhammad Umer, Rao and Micheloni, Christian},
               title = {Deep Cyclic Generative Adversarial Residual Convolutional Networks for Real Image Super-Resolution},
               booktitle = {Proceedings of the European Conference on Computer Vision (ECCV) Workshops},
               month = {August},
               year = {2020}
              }

Quick Test

This model can be run on arbitrary images with a Docker image hosted on Replicate: https://beta.replicate.ai/RaoUmer/SRResCycGAN. Below are instructions for how to run the model without Docker:

Dependencies

  • Python 3.7 (version >= 3.0)
  • PyTorch >= 1.0 (CUDA version >= 8.0 if installing with CUDA.)
  • Python packages: pip install numpy opencv-python

Train models

  • The SR training code is based on the SRResCGAN.

Test models

  1. Clone this github repository as the following commands:
git clone https://github.com/RaoUmer/SRResCycGAN
cd SRResCycGAN
cd srrescycgan_code_demo
  1. Place your own low-resolution images in the ./srrescycgan_code_demo/LR folder. (There are two sample images i.e. LR_006 and LR_014).
  2. Download the pretrained models from Pre-trained Models section. Place the models in ./srrescycgan_code_demo/trained_nets_x4.
  3. Run the test. You can config in the test_srrescycgan.py.
python test_srrescgan.py
  1. The results are in the ./srrescycgan_code_demo/sr_results_x4 folder.

SRResCycGAN Architecture

Overall Representative diagram

<p align="center"> <img height="200" src="figs/srrescycgan.png"> </p>

Quantitative Results

The x4 SR quantitative results comparison of our method with others over the DIV2K validation-set (100 images). The best performance is shown in red and the second best performance is shown in blue.

<p align="center"> <img height="250" src="figs/res_quant_comparison.png"> </p>

The AIM2020 Real Image SR Challenge Results (x4)

| <sub>Team</sub> | <sub>PSNR↑</sub> | <sub>SSIM↑</sub> | <sub>Weighed_score↑</sub> | |:---:|:---:|:---:|:---:| | <sub>Baidu</sub>| <sub>31.3960 </sub> |<sub>0.8751 </sub>|<sub>0.7099 (1)</sub>| | <sub>ALONG</sub>| <sub>31.2369 </sub> |<sub>0.8742 </sub>|<sub>0.7076 (2)</sub>| | <sub>CETC-CSKT</sub>| <sub>31.1226 </sub> |<sub>0.8744 </sub>|<sub>0.7066 (3)</sub>| | <sub>SR-IM</sub>| <sub>31.2369 </sub> |<sub>0.8728 </sub>|<sub>0.7057 </sub>| | <sub>DeepBlueAI</sub>| <sub>30.9638 </sub> |<sub>0.8737 </sub>|<sub>0.7044 </sub>| | <sub>JNSR</sub>| <sub>30.9988 </sub> |<sub>0.8722 </sub>|<sub>0.7035</sub>| | <sub>OPPO_CAMERA</sub>| <sub>30.8603 </sub> |<sub>0.8736 </sub>|<sub>0.7033</sub>| | <sub>Kailos</sub>| <sub>30.8659 </sub> |<sub>0.8734 </sub>|<sub>0.7031</sub>| | <sub>SR_DL</sub>| <sub>30.6045 </sub> |<sub>0.8660 </sub>|<sub>0.6944</sub>| | <sub>Noah_TerminalVision</sub>| <sub>30.5870 </sub> |<sub>0.8662 </sub>|<sub>0.6944</sub>| | <sub>Webbzhou</sub>| <sub>30.4174 </sub> |<sub>0.8673 </sub>|<sub>0.6936</sub>| | <sub>TeamInception</sub>| <sub>30.3465 </sub> |<sub>0.8681 </sub>|<sub>0.6935</sub>| | <sub>IyI</sub>| <sub>30.3191 </sub> |<sub>0.8655 </sub>|<sub>0.6911</sub>| | <sub>MCML-Yonsei</sub>| <sub>30.4201 </sub> |<sub>0.8637 </sub>|<sub>0.6906</sub>| | <sub>MoonCloud</sub>| <sub>30.2827 </sub> |<sub>0.8644 </sub>|<sub>0.6898</sub>| | <sub>qwq</sub>| <sub>29.5878 </sub> |<sub>0.8547 </sub>|<sub>0.6748</sub>| | <sub>SrDance </sub>| <sub>29.5952 </sub> |<sub>0.8523 </sub>|<sub>0.6729</sub>| | <sub>MLP_SR (ours)</sub>| <sub>28.6185 </sub> |<sub>0.8314 </sub>|<sub>0.6457</sub>| | <sub>EDSR</sub>| <sub>28.2120 </sub> |<sub>0.8240 </sub>|<sub>0.6356</sub>| | <sub>RRDN_IITKGP</sub>| <sub>27.9708 </sub> |<sub>0.8085 </sub>|<sub>0.6201</sub>| | <sub>congxiaofeng</sub>| <sub>26.3915 </sub> |<sub>0.8258 </sub>|<sub>0.6187</sub>|

Visual Results

DIV2K Validation-set (100 images)

Here are the SR resutls comparison of our method on the DIV2K validation-set images.

<p align="center"> <img height="300" src="figs/div2k_res_val.png"> </p>

Real-Image SR Challenge dataset images (Track-3)

Validation-set

You can download all the SR resutls of our method on the AIM 2020 Real-Image SR validation-set from the Google Drive: SRResCycGAN.

<p align="center"> <img height="300" src="figs/res_rwsr_val1.png"> </p> <p align="center"> <img height="300" src="figs/res_rwsr_val2.png"> </p>

Test-set

You can download all the SR resutls of our method on the AIM 2020 Real-Image SR test-set from the Google Drive: SRResCycGAN.

<p align="center"> <img height="300" src="figs/res_rwsr_test1.png"> </p> <p align="center"> <img height="300" src="figs/res_rwsr_test2.png"> </p>
View on GitHub
GitHub Stars47
CategoryDevelopment
Updated2y ago
Forks10

Languages

Python

Security Score

80/100

Audited on Jan 4, 2024

No findings