srrescgan

Code repo for "Deep Generative Adversarial Residual Convolutional Networks for Real-World Super-Resolution" (CVPRW NTIRE2020).

https://github.com/raoumer/srrescgan

Science Score: 41.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.5%) to scientific vocabulary

Keywords

convex-optimization cvpr2020 deep-neural-networks discriminative-learning ntire2020 real-world residual-learning sisr super-resolution
Last synced: 4 months ago · JSON representation ·

Repository

Code repo for "Deep Generative Adversarial Residual Convolutional Networks for Real-World Super-Resolution" (CVPRW NTIRE2020).

Basic Info
Statistics
  • Stars: 98
  • Watchers: 7
  • Forks: 17
  • Open Issues: 2
  • Releases: 0
Topics
convex-optimization cvpr2020 deep-neural-networks discriminative-learning ntire2020 real-world residual-learning sisr super-resolution
Created almost 6 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

README.md

waving

Super-Resolution Residual Convolutional Generative Adversarial Network

Update: Our improved Real-Image SR method titled "Deep Cyclic Generative Adversarial Residual Convolutional Networks for Real Image Super-Resolution (SRResCycGAN)" is appeared in the AIM-2020 ECCV workshop. [Project Website]

An official PyTorch implementation of the SRResCGAN model as described in the paper Deep Generative Adversarial Residual Convolutional Networks for Real-World Super-Resolution. This work is participated in the CVPRW NTIRE 2020 RWSR challenges on the Real-World Super-Resolution.

Visual examples:


Abstract

Most current deep learning based single image super-resolution (SISR) methods focus on designing deeper / wider models to learn the non-linear mapping between low-resolution (LR) inputs and the high-resolution (HR) outputs from a large number of paired (LR/HR) training data. They usually take as assumption that the LR image is a bicubic down-sampled version of the HR image. However, such degradation process is not available in real-world settings i.e. inherent sensor noise, stochastic noise, compression artifacts, possible mismatch between image degradation process and camera device. It reduces significantly the performance of current SISR methods due to real-world image corruptions. To address these problems, we propose a deep Super-Resolution Residual Convolutional Generative Adversarial Network (SRResCGAN) to follow the real-world degradation settings by adversarial training the model with pixel-wise supervision in the HR domain from its generated LR counterpart. The proposed network exploits the residual learning by minimizing the energy-based objective function with powerful image regularization and convex optimization techniques. We demonstrate our proposed approach in quantitative and qualitative experiments that generalize robustly to real input and it is easy to deploy for other down-scaling operators and mobile/embedded devices.

Spotlight Video

Video

Paper

Paper

Pre-trained Models

| |DSGAN|SRResCGAN| |---|:---:|:---:| |NTIRE2020 RWSR|Source-Domain-Learning|SR-learning|

BibTeX

@InProceedings{Umer_2020_CVPR_Workshops,
    author = {Muhammad Umer, Rao and Luca Foresti, Gian and Micheloni, Christian},
    title = {Deep Generative Adversarial Residual Convolutional Networks for Real-World Super-Resolution},
    booktitle = {The IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) Workshops},
    month = {June},
    year = {2020}
    }

Cite the code repos

Use the following CITATION.cff file to cite the SRResCGAN code repository.

Quick Test

This model can be run on arbitrary images with a Docker image hosted on Replicate: https://beta.replicate.ai/RaoUmer/SRResCGAN. 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

Test models

  1. Clone this github repository. git clone https://github.com/RaoUmer/SRResCGAN cd SRResCGAN cd srrescgan_code_demo
  2. Place your own low-resolution images in ./srrescgan_code_demo/LR folder. (There are two sample images i.e. 0815 and 0829).
  3. Download pretrained models from Google Drive. Place the models in ./srrescgan_code_demo/trained_nets_x4. We provide two models with source domain learning and SR learning.
  4. Run test. We provide SRResCGAN/SRResCGAN+ and you can config in the test_srrescgan.py (without self-ensemble strategy) / test_srrescgan_plus.py (with self-ensemble strategy). python test_srrescgan.py python test_srrescgan_plus.py
  5. The results are in ./srrescgan_code_demo/sr_results_x4 folder.

Train models

  • The SR training code is available in the training_codes directory.

SRResCGAN Architecture

Overall Representative diagram

SR Generator Network

Quantitative Results

| Dataset (HR/LR pairs) | SR methods | #Params | PSNR↑ | SSIM↑ | LPIPS↓ | Artifacts | |:---:|:---:|:---:|:---:|:---:|:---:|:---:| | Bicubic| EDSR| 43M |24.48|0.53|0.6800|Sensor noise (σ = 8)| | Bicubic| EDSR| 43M |23.75|0.62|0.5400|JPEG compression (quality=30)| | Bicubic| ESRGAN| 16.7M |17.39|0.19|0.9400|Sensor noise (σ = 8)| | Bicubic| ESRGAN| 16.7M |22.43|0.58|0.5300|JPEG compression (quality=30)| | CycleGAN| ESRGAN-FT| 16.7M |22.42|0.55|0.3645|Sensor noise (σ = 8)| | CycleGAN| ESRGAN-FT| 16.7M |22.80|0.57|0.3729|JPEG compression (quality=30)| | DSGAN| ESRGAN-FS| 16.7M |22.52|0.52|0.3300|Sensor noise (σ = 8)| | DSGAN| ESRGAN-FS| 16.7M |20.39|0.50|0.4200|JPEG compression (quality=30)| | DSGAN| SRResCGAN (ours)| 380K |25.46|0.67|0.3604|Sensor noise (σ = 8)| | DSGAN| SRResCGAN (ours)| 380K |23.34|0.59|0.4431|JPEG compression (quality=30)| | DSGAN| SRResCGAN+ (ours)| 380K |26.01|0.71|0.3871|Sensor noise (σ = 8)| | DSGAN| SRResCGAN+ (ours)| 380K |23.69|0.62|0.4663|JPEG compression (quality=30)| | DSGAN| SRResCGAN (ours)| 380K |25.05|0.67|0.3357|unknown (validset)| | DSGAN| SRResCGAN+ (ours)| 380K |25.96|0.71|0.3401|unknown (validset)| | DSGAN| ESRGAN-FS| 16.7M |20.72|0.52|0.4000|unknown (testset)| | DSGAN| SRResCGAN (ours)| 380K |24.87|0.68|0.3250|unknown (testset)|

The NTIRE2020 RWSR Challenge Results (Track-1)

| Team | PSNR↑ | SSIM↑ | LPIPS↓ | MOS↓ | |:---:|:---:|:---:|:---:|:---:| | Impressionism| 24.67 (16) |0.683 (13)|0.232 (1)|2.195| | Samsung-SLSI-MSL| 25.59 (12) |0.727 (9) |0.252 (2)|2.425| | BOE-IOT-AIBD| 26.71 (4) |0.761 (4)|0.280 (4)|2.495| | MSMers| 23.20 (18) |0.651 (17)|0.272 (3)|2.530| | KU-ISPL| 26.23 (6) |0.747 (7)|0.327 (8)|2.695| | InnoPeak-SR| 26.54 (5) |0.746 (8)|0.302 (5)|2.740| | ITS425| 27.08 (2) |0.779 (1)|0.325 (6)|2.770| | MLP-SR (ours)| 24.87 (15) |0.681 (14)|0.325 (7)|2.905| | Webbzhou| 26.10 (9) |0.764 (3)|0.341 (9)|-| | SR-DL| 25.67 (11) |0.718 (10)|0.364 (10)|-| | TeamAY| 27.09 (1) |0.773 (2)|0.369 (11)|-| | BIGFEATURE-CAMERA| 26.18 (7) |0.750 (6)|0.372 (12)|-| | BMIPL-UNIST-YH-1| 26.73 (3) |0.752 (5)|0.379 (13)|-| | SVNIT1-A| 21.22 (19) |0.576 (19)|0.397 (14)|-| | KU-ISPL2| 25.27 (14) |0.680 (15)|0.460 (15)|-| | SuperT| 25.79 (10) |0.699 (12)|0.469 (16)|-| | GDUT-wp| 26.11 (8) |0.706 (11)|0.496 (17)|-| | SVNIT1-B| 24.21 (17) |0.617 (18)|0.562 (18) |-| | SVNIT2| 25.39 (13) |0.674 (16)|0.615 (19)|-| | AITA-Noah-A| 24.65 (-) |0.699 (-)|0.222 (-)|2.245| | AITA-Noah-B| 25.72 (-) |0.737 (-)|0.223 (-)|2.285| | Bicubic| 25.48 (-) |0.680 (-)|0.612 (-)|3.050| | ESRGAN Supervised| 24.74 (-) |0.695 (-)|0.207 (-)|2.300|

Visual Results

Validation-set (Track-1)

You can download all the SR resutls of our method on the validation-set from Google Drive: SRResCGAN, SRResCGAN+.

Test-set (Track-1)

You can download all the SR resutls of our method on the test-set from Google Drive: SRResCGAN, SRResCGAN+.

Real-World Smartphone images (Track-2)

You can download all the SR resutls of our method on the smartphone images from Google Drive: SRResCGAN, SRResCGAN+.

Code Acknowledgement

The training and testing codes are somewhat based on ESRGAN, DSGAN, and deep_demosaick.


statistics ![visitors](https://visitor-badge.glitch.me/badge?page_id=RaoUmer/SRResCGAN)

Owner

  • Name: Rao Muhammad Umer
  • Login: RaoUmer
  • Kind: user
  • Location: Lahore

Computer Vision & Machine Learning Practitioner

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: SRResCGAN
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Umer
    family-names: Rao Muhammad
    email: engr.raoumer943@gmail.com
    affiliation: 'University of Udine, Italy.'
identifiers:
  - type: url
    value: 'https://arxiv.org/pdf/2005.00953.pdf'
repository-code: 'https://github.com/RaoUmer/SRResCGAN'
url: 'https://replicate.com/raoumer/srrescgan'
abstract: Intelligent image scaling to 4x resolution
keywords:
  - 'Super-resolution, deep-cnn, real-world-sr'
license: MIT
version: v1.0

GitHub Events

Total
  • Watch event: 2
Last Year
  • Watch event: 2

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 96
  • Total Committers: 2
  • Avg Commits per committer: 48.0
  • Development Distribution Score (DDS): 0.01
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Rao Muhammad Umer e****3@g****m 95
Andreas Jansson a****n@g****m 1

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 4
  • Total pull requests: 1
  • Average time to close issues: about 5 hours
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 4
  • Total pull request authors: 1
  • Average comments per issue: 2.25
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • Moaazallaham (1)
  • RJJxp (1)
  • aalala (1)
  • Darrenxc (1)
Pull Request Authors
  • andreasjansson (1)
Top Labels
Issue Labels
Pull Request Labels