Lucy-Richardson algorithm

12 visualizaciones (últimos 30 días)
Rajbir Singh
Rajbir Singh el 15 de Jun. de 2018
Editada: Rajbir Singh el 15 de Jun. de 2018
I am trying to develop an algorithm for Lucy-Richardson deconvolution, but i am facing a problem in making algorithm. The equation which i am using has been attached with this question.
close all;
clear all;
%image preprocessing
y = rgb2gray((imread('football.jpg')));
y = im2double(y);
%take disk psf
PSF = fspecial('disk', 8);
%convolve image with psf
%or use imfilter w/ 'conv'
yblur = imfilter(y,PSF);
%plot original image
figure();
subplot(2,1,1); imshow(y); title('actual image');
%plot unnoisy blurred image
subplot(2,1,2); imshow(yblur); title('blurred image');
%zero pad the psf to match the size of the blurred image
%noisy images are all the same size, thus do not require unique PSF's
newh = zeros(size(yblur));
psfsize = size(PSF);
newh(1: psfsize(1),1:psfsize(2))= PSF;
H = newh;
%Lucy-Richardson Deconvolution
I=zeros(size(y));
J=zeros(size(y));
for x=0:5
J{x}=((yblur)./(imfilter(I{x},H)));
I{x+1}=(imfilter(J{x},-H).*I{x});
end
figure
imshow(I)

Respuestas (0)

Categorías

Más información sobre Image Processing Toolbox en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by