Skip to content

Latest commit

 

History

History
89 lines (68 loc) · 2.96 KB

README.md

File metadata and controls

89 lines (68 loc) · 2.96 KB

BLIND USRNET

A project in Statistical Image Processing. Extension of Deep unfolding network for image super-resolution for Blind Super Resolution via Kernel Estimation

This code borrows heavily from [1] & [2], see the papers and code in the Acknowledgment section.

Getting Started

Clone the Repo:

git clone https://github.com/geopi1/Improved_USRNet.git

Datasets

Download the Datasets (a bicubically downscaled version of DIV2K):

Download DIV2K
This link will download 2 folders:

  • DIV2K_LR - the low resolution input
  • DIV2K_HR_ds2 - Ground truth high resolution images

Prerequisites

Tested and run on:

  • UBUNTU 18.04
  • RTX 2080
  • Nvidia driver 440.95.10
  • cuda 10.1.243
  • cudnn 7.6.5
  • pytorch 1.5
  • TF 1.14
  1. Setup conda
    conda env create -f env.yml
    This will create a working environment named Blind_USRNet
  2. Setup can also be performed with pip (virtual env) via the requirements.txt file
    python -m venv Blind_USRNet
    pip install -r requirements.txt
  3. put images in right place

Testing

Code

python main.py 

This will output 4 types of images to ./results:

  • Default USRNet settings
  • Default USRNet settings + Noise STD estimation
  • Kernel estimated USRNet
  • Kernel estimated USRNet + Noise STD estimation

Additionally, for each estimated image a side-by-side image with the LR version is saved with the degredation kernel (default or estimated)

Numerical Evaluation

To calculate the numeric results on the whole dataset run:

python utils/get_results.py

This will calculate the mean PSNR and SSIM on the SR<->HR on all the results

Numerical Results

Metric Default Default + Noise Est. Kernel Est. Kernel Est. + Noise Est.
PSNR $1600
SSIM $12

Visual Results

Default

Ours

Default

Ours

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

[1] Zhang, Kai, Luc Van Gool, and Radu Timofte. "Deep unfolding network for image super-resolution." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020.

[2] Bell-Kligler, Sefi, Assaf Shocher, and Michal Irani. "Blind super-resolution kernel estimation using an internal-gan." Advances in Neural Information Processing Systems. 2019.