  Image restoration has been an extensively researched topic in numerous
fields. With the advent of deep learning, a lot of the current algorithms were
replaced by algorithms that are more flexible and robust. Deep networks have
demonstrated impressive performance in a variety of tasks like blind denoising,
image enhancement, deblurring, super-resolution, inpainting, among others. Most
of these learning-based algorithms use a large amount of clean data during the
training process. However, in certain applications in medical image processing,
one may not have access to a large amount of clean data. In this paper, we
propose a method for denoising that attempts to learn the denoising process by
pushing the noisy data close to the clean data manifold, using only noisy
images during training. Furthermore, we use perceptual loss terms and an
iterative refinement step to further refine the clean images without losing
important features.
