GithubHelp home page GithubHelp logo

pg_dip's Introduction

Progressively Grown Deep Image Prior (PG-DIP)

This repository contains the code used for the experiments in my master's thesis. This implementation is based on the original deep-image-prior implementation, using concept from Progressive Growing of GANs and some custom PyTorch layers from pggan-pytorch.

This code has been tested with PyTorch 0.4 and a GTX 1080 Ti.

Abstract

Focusing on the task of color image denoising, this work improves Deep Image Prior (DIP) in terms of denoising performance, speed, and scalability. DIP is an image-restoration method based on Convolutional Neural Networks with the particularity that it does not use training data. First, we analyze the limitations of DIP in the denoising task and we improve its denoising ability by developing a task-specific regularization method, substantially improving on the baseline and reducing the gap towards benchmarks. Then, we propose an adaptation of the Progressively Grown Generative Adversarial Networks to DIP, yielding a 1.6x speed-up over the original implementation and im- proving denoising performance as well. Last, we propose a tiling method so that the algorithm can be scaled to arbitrarily large images.

Notes

The file denoise_pgdip.py runs PG-DIP, optionally with Static or Adaptive Method Noise Stopping, on the color denoising test set.

denoise_mns.py runs the original DIP implementation augmented with Static or Adaptive Method Noise Stopping.

In the folder baseline, is given an executable script denoise_baseline.py to compute baseline Deep Image Prior results, along with a copy of the Deep Image Prior repository with the following modifications:

  • Add eps=1e-06 to the BatchNorm layer, so that PyTorch avoid using CuDNN for BN as it seems to be a source of numerical instability with some GPUs.
  • Add align_corners=True to the Upsample layer so that it behaves as it used to behave in PyTorch 0.2.

pg_dip's People

Contributors

ssidorenko avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

pg_dip's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.