Code and models for "Rethinking Deep Image Prior for Denoising" (ICCV 2021)

Overview

DIP-denosing

This is a code repo for Rethinking Deep Image Prior for Denoising (ICCV 2021).

Addressing the relationship between Deep image prior and effective degrees of freedom, DIP-SURE with STE(stochestic temporal ensemble) shows reasonable result on single image denoising.

If you use any of this code, please cite the following publication:

@article{jo2021dipdenoising,
  author  = {Yeonsik Jo, Se young chun,  and Choi, Jonghyun},
  title     = {Rethinking Deep Image Prior for Denoising},
  booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
  month     = {October},
  year      = {2021},
  pages     = {5087-5096}
}

Working environment

  • TITAN Xp
  • ubuntu 18.04.4
  • pytorch 1.6

Note: Experimental results were not checked in other environments.

Set-up

  • Make your own environment
conda create --name DIP --file requirements.txt
conda avtivate DIP
pip install tqdm

Inference

  • Produce CSet9 result
bash exp_denoising.sh CSet9 <GPU ID>
  • For your own data with sigma=25 setup
mkdir testset/<YOUR_DATASET>
python main.py --dip_type eSURE_new --net_type s2s --exp_tag <EXP_NAME> --optim RAdam --force_steplr --desc sigma25   denoising --sigma 25 --eval_data <YOUR_DATASET>

Browsing experimental result

  • We provide reporting code with invoke.
invoke showtable csv/<exp_type>/<exp_tag> 
  • Example.
invoke showtable csv/poisson/MNIST/
PURE_dc_scale001_new                     optimal stopping : 384.30,     31.97/0.02      | ZCSC : 447.60,         31.26/0.02 | STE 31.99/0.02
PURE_dc_scale01_new                      optimal stopping : 94.70,      24.96/0.12      | ZCSC : 144.60,         24.04/0.14 | STE 24.89/0.12
PURE_dc_scale02_new                      optimal stopping : 70.30,      22.92/0.20      | ZCSC : 110.00,         21.82/0.22 | STE 22.83/0.20
<EXEPRIMENTAL NAME>                      optimal stopping :<STEP>,      <PSNR>/<LPIPS>  | ZCSC : <STEP>,      <PSNR>/<LPIPS>| STE <PSNR>/<LPIPS>

The reported numbers are PSNR/LPIPS.

Results in paper

For the result used on paper, please refer this link.

SSIM score

For SSIM score of color images, I used matlab code same as the author of S2S.
This is the demo code I received from the S2S author.
Thank you Mingqin!

% examples
ref = im2double(imread('gt.png'));
noisy = im2double(imread('noisy.png'));
psnr_result = psnr(ref, noisy);
ssim_result = ssim(ref, noisy);

License

MIT license.

Contacts

For questions, please send an email to [email protected]

Owner
Computer Vision Lab. @ GIST
Some useful codes for computer vision and machine learning.
Computer Vision Lab. @ GIST
Tree Nested PyTorch Tensor Lib

DI-treetensor treetensor is a generalized tree-based tensor structure mainly developed by OpenDILab Contributors. Almost all the operation can be supp

OpenDILab 167 Dec 29, 2022
This toolkit provides codes to download and pre-process the SLUE datasets, train the baseline models, and evaluate SLUE tasks.

slue-toolkit We introduce Spoken Language Understanding Evaluation (SLUE) benchmark. This toolkit provides codes to download and pre-process the SLUE

ASAPP Research 39 Sep 21, 2022
Official Pytorch Implementation of: "Semantic Diversity Learning for Zero-Shot Multi-label Classification"(2021) paper

Semantic Diversity Learning for Zero-Shot Multi-label Classification Paper Official PyTorch Implementation Avi Ben-Cohen, Nadav Zamir, Emanuel Ben Bar

28 Aug 29, 2022
S2s2net - Sentinel-2 Super-Resolution Segmentation Network

S2S2Net Sentinel-2 Super-Resolution Segmentation Network Getting started Install

Wei Ji 10 Nov 10, 2022
Official implementation of the ICCV 2021 paper: "The Power of Points for Modeling Humans in Clothing".

The Power of Points for Modeling Humans in Clothing (ICCV 2021) This repository contains the official PyTorch implementation of the ICCV 2021 paper: T

Qianli Ma 158 Nov 24, 2022
Implementation of Pix2Seq in PyTorch

pix2seq-pytorch Implementation of Pix2Seq paper Different from the paper image input size 1280 bin size 1280 LambdaLR scheduler used instead of Linear

Tony Shin 9 Dec 15, 2022
Camera calibration & 3D pose estimation tools for AcinoSet

AcinoSet: A 3D Pose Estimation Dataset and Baseline Models for Cheetahs in the Wild Daniel Joska, Liam Clark, Naoya Muramatsu, Ricardo Jericevich, Fre

African Robotics Unit 42 Nov 16, 2022
Exadel CompreFace is a free and open-source face recognition GitHub project

Exadel CompreFace is a leading free and open-source face recognition system Exadel CompreFace is a free and open-source face recognition service that

Exadel 2.6k Jan 04, 2023
BMVC 2021: This is the github repository for "Few Shot Temporal Action Localization using Query Adaptive Transformers" accepted in British Machine Vision Conference (BMVC) 2021, Virtual

FS-QAT: Few Shot Temporal Action Localization using Query Adaptive Transformer Accepted as Poster in BMVC 2021 This is an official implementation in P

Sauradip Nag 14 Dec 09, 2022
[NeurIPS 2020] Official Implementation: "SMYRF: Efficient Attention using Asymmetric Clustering".

SMYRF: Efficient attention using asymmetric clustering Get started: Abstract We propose a novel type of balanced clustering algorithm to approximate a

Giannis Daras 46 Dec 22, 2022
Benchmark for Answering Existential First Order Queries with Single Free Variable

EFO-1-QA Benchmark for First Order Query Estimation on Knowledge Graphs This repository contains an entire pipeline for the EFO-1-QA benchmark. EFO-1

HKUST-KnowComp 14 Oct 24, 2022
An implementation of Video Frame Interpolation via Adaptive Separable Convolution using PyTorch

This work has now been superseded by: https://github.com/sniklaus/revisiting-sepconv sepconv-slomo This is a reference implementation of Video Frame I

Simon Niklaus 984 Dec 16, 2022
Unified MultiWOZ evaluation scripts for the context-to-response task.

MultiWOZ Context-to-Response Evaluation Standardized and easy to use Inform, Success, BLEU ~ See the paper ~ Easy-to-use scripts for standardized eval

Tomáš Nekvinda 38 Dec 13, 2022
Official PyTorch Implementation of Unsupervised Learning of Scene Flow Estimation Fusing with Local Rigidity

UnRigidFlow This is the official PyTorch implementation of UnRigidFlow (IJCAI2019). Here are two sample results (~10MB gif for each) of our unsupervis

Liang Liu 28 Nov 16, 2022
ToFFi - Toolbox for Frequency-based Fingerprinting of Brain Signals

ToFFi Toolbox This repository contains "before peer review" version of the software related to the preprint of the publication ToFFi - Toolbox for Fre

4 Aug 31, 2022
This is the pytorch implementation of the paper - Axiomatic Attribution for Deep Networks.

Integrated Gradients This is the pytorch implementation of "Axiomatic Attribution for Deep Networks". The original tensorflow version could be found h

Tianhong Dai 150 Dec 23, 2022
AniGAN: Style-Guided Generative Adversarial Networks for Unsupervised Anime Face Generation

AniGAN: Style-Guided Generative Adversarial Networks for Unsupervised Anime Face Generation AniGAN: Style-Guided Generative Adversarial Networks for U

Bing Li 81 Dec 14, 2022
Deep Learning Emotion decoding using EEG data from Autism individuals

Deep Learning Emotion decoding using EEG data from Autism individuals This repository includes the python and matlab codes using for processing EEG 2D

Juan Manuel Mayor Torres 12 Dec 08, 2022
A Demo server serving Bert through ONNX with GPU written in Rust with <3

Demo BERT ONNX server written in rust This demo showcase the use of onnxruntime-rs on BERT with a GPU on CUDA 11 served by actix-web and tokenized wit

Xavier Tao 28 Jan 01, 2023
PyGRANSO: A PyTorch-enabled port of GRANSO with auto-differentiation

PyGRANSO PyGRANSO: A PyTorch-enabled port of GRANSO with auto-differentiation Please check https://ncvx.org/PyGRANSO for detailed instructions (introd

SUN Group @ UMN 26 Nov 16, 2022