cszn / DnCNN

Beyond a Gaussian Denoiser: Residual Learning of Deep CNN for Image Denoising (TIP, 2017)
https://cszn.github.io/
1.47k stars 539 forks source link

Are you going to port it to python? #3

Closed MariasStory closed 7 years ago

cszn commented 7 years ago

Sorry, I am not familar with python. It is quite simple and convenient to use MatConvNet to deal with some low level problems, such as super-resolution and denoising.

winnechan commented 7 years ago

@cszn @MariasStory still a buggy program, already delete the respo, after I perfectly reproduce the result, the code and model will be available~

MariasStory commented 7 years ago

Hi @cszn, am I right that your solution gives the best denoising results? If it is so, it would be nice to get it in a usable form. One solution would be to make a GIMP plugin, do you thing it is possible?

Hi @chenjw87 can you write in Keras? My point is that I would like to have this solution is some easily implementable form. If there is a Keras model, it can be used in browser with Keras.js, like: https://transcranial.github.io/keras-js/#/resnet50 In browser solution could be used to improve images from webcam.

@cszn can you please help @chenjw87 with training to reproduce your results?

cszn commented 7 years ago

This is a simple method for Gaussian denoising. If you want to get it in a usable form, what I can guarantee is there is no much difference in making a GIMP plugin between waifu2x and this method.

MariasStory commented 7 years ago

Now, I am really confused. Did you say that your method is just a Gaussian denoising?

cszn commented 7 years ago
Batch normalization and residual learning are particularly beneficial to Gaussian denoising. 
For only super-resolution, there is no need to add batch normalization. This is because the 
distributions of the residuals in Gaussian denoising and super-resolution are essentially 
different. 

In my opinion, if the residual image has a rather simple distribution, then predicting the 
residual can ease the training. Furthermore, if the residuals of different images show a 
same distribution (e.g., Gaussian denoising, however, super-resolution does not have 
this property), then batch normalization can be further used to accelerate the training 
and improve the performance. 

The DnCNN3 model is used to show that CNN has powerful capacity and its parameters 
mainly model the prior. 
Strace0301 commented 7 years ago

I‘m sorry to ask if you could give the code of contrast experiment,such as BM3D,WNNM? Thank you very much.

cszn commented 7 years ago

@Strace0301 https://github.com/flyywh/Image-Denoising-State-of-the-art

Strace0301 commented 7 years ago

Thanks!!!