deblurring an image with deconvwnr
4 views (last 30 days)
Show older comments
I am trying to deblur a motion-blur with deconvwnr , but the results is very poor
hers is the code :
% %first step: motion blurring
Len = 20; % linear motion of the camera given in pxels
Theta = 135; %angle of the motion given in conter-clockwise direction
h = fspecial('motion',Len,Theta);
f_blurred = imfilter(f,h,'conv','replicate');
% using deconvwnr for deblurring :
NSR = 0; %no noise
deblurred = deconvwnr(f_blurred,h,0);
the below image is the result, as you see it is extremely corrupted, why is that ?

when I changed the noise-parameter slightly it became a bit more visible, but still poor. My image is only blurred, no noise, shouldnt wiener work much better with this simple type of motion blur?
Her is the original image :

Edit: I think I have understood why it look so corrupted. When we set the noiseparameter to zero, the wiener filter is identical to the inverse filter, and since we divide by numbers very close to zero these values blows up and it corrupts the rest of the image.
0 Comments
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!