Deep Learning: Noise Removal and Colorizing !

Deep Learning: Noise Removal and Colorizing !

First, Noise Removal (Cleaning)

Let's put a convolutional neural network to work on cleaning images by removing noise. This can be done through training the autoencoder to map noisy images to the corresponding clean images. More about autoencoders is here

Here I used the CIFAR-10 dataset that consists of 60000 32x32 color images.

Generating noisy images

Apply a Gaussian noise matrix and clip the images values between 0 and 1 will generate synthetic noisy images. 

Training

Then rain the network as usual where the input is the noisy image and the target output is the clean images.

Testing

Can the trained autoencoder learn to recover the original digits from the noisy one?

Testing of the network will be on images that the network has never seen before, the test set.

Results

It seems to work very well! Generally speaking, using larger convolutional neural networks can remove noise from audio

Second, Decolorizing and Colorizing

What about color removal?

Here we will train our network to remove colors from images, in other words to convert color images to gray scale images. As usual we will train the neural network (autoencoder) by providing colored images as input and the corresponding gray level images.

Then we will test the network by asking it to convert to gray scale some colored images that was not seen before during training.

Actually, this task is easy and no learning is needed! it is very simple to convert a colored image (RBG) to gray, just using this simple formula:

gray = 0.30 * r + 0.58 * g + 0.12 * b

The question is, can our network find out this formula just by training, and then generalize over new images?

The answer is yes! See how the generated gray images from input colored images, are almost identical to original gray ones.

Can we train the network to colorize gray images?

In other words, convert gray images to colored one? This is a much harder task. removing color is relatively easy, Given the RGB three components we can git a single corresponding gray level using the formula above. On the other hand, given a single gray level, how would we know the corresponding three RGB components. There are many possibilities that may give the same gray level.

Here is a very nice paper that attacks the problem of hallucinating a plausible color version of the gray scale image.

Regards,



Anshu Sharma

Product, Innovation & Strategy | STEM MBA Candidate at John Hopkins University | Dean's Scholar | Ex- Frost & Sullivan | Ex- Renault Nissan Tech

6 年

Sir do u know any good book or site or course related to learn deep learning from scratch?

Anshu Sharma

Product, Innovation & Strategy | STEM MBA Candidate at John Hopkins University | Dean's Scholar | Ex- Frost & Sullivan | Ex- Renault Nissan Tech

6 年

How autoencoders are removing noise from the image?

回复

要查看或添加评论,请登录

Ibrahim Sobh - PhD的更多文章

社区洞察