Restoring an Image Taken through a Window Covered with Dirt or Rain
read more
Citations
Fully convolutional networks for semantic segmentation
Fully Convolutional Networks for Semantic Segmentation
Image Super-Resolution Using Deep Convolutional Networks
Fully Convolutional Networks for Semantic Segmentation
Learning a Deep Convolutional Network for Image Super-Resolution
References
Gradient-based learning applied to document recognition
Bilateral filtering for gray and color images
Sparse Coding with an Overcomplete Basis Set: A Strategy Employed by V1 ?
Image denoising using scale mixtures of Gaussians in the wavelet domain
From learning models of natural image patches to whole image restoration
Related Papers (5)
Frequently Asked Questions (14)
Q2. How do the authors predict a clean image from a corrupt input?
To restore an image from a corrupt input, the authors predict a clean output using a specialized form of convolutional neural network [12].
Q3. What is the effect of the non-convolutional network?
The non-convolutional network leaves behind additional droplets, e.g. by the subject’s face in the top image; it performs somewhat better in the bottom image, but blurs the subject’s hand.
Q4. How many patch pairs did the network need to gather?
Training the models requires a large set of patch pairs to adequately cover the space inputs and corruption, the gathering of which was non-trivial and required the development of new techniques.
Q5. What are the common situations where cameras are mounted outside?
Beyond consumer photography, many cameras are mounted outside, e.g. on buildings for surveillance or on vehicles to prevent collisions.
Q6. How does the neural network detect and in-paint the corrupt image?
although training is somewhat complex, test-time operation is simple: a new image is presented to the neural network and it directly outputs a restored image.
Q7. What is the purpose of the algorithm?
Their algorithm provides the underlying technology for a number of potential applications such as a digital car windshield to aid driving in adverse weather conditions, or enhancement of footage from security or automotive cameras in exposed locations.
Q8. What is the effect of the network on the image?
Despite the fact that their network was trained on static scenes to limit object motion between clean/noisy pairs, it still preserves animate parts of the images well:
Q9. What is the common failure of the network?
The largest failures appear towards the end of the sequence, when the rain on the glass is very heavy and starts to agglomerate, forming droplets larger than their network can handle.
Q10. What is the closest work to Burger et al.?
the closest work to ours is that of Burger et al. [2], which applies a large neural network to a range of non-AWGN denoising tasks, such as salt-and-pepper noise and JPEG quantization artifacts.
Q11. What is the method to remove dirt?
Their method is able to remove most of the corruption while retaining details in the image, particularly around the branches and shutters.
Q12. How did the authors simulate the effect of rain on a window?
For corrupt images, the authors simulated the effect of rain on a window by spraying water on a pane of anti-reflective MgF2-coated glass, taking care to produce drops that closely resemble real rain.
Q13. How can the authors restore a 3888 2592 color image in 60s?
Their Matlab GPU implementation is able to restore a 3888 × 2592 color image in 60s using a nVidia GTX 580, and a 1280× 720 color image in 7s.
Q14. Why is the network unable to recognize dirt?
The latter is caused by a lack of generalization: although the authors trained the network to be robust to shape and color by supplying it a range of variations, it will not recognize cases too far from those seen in training.