1 / 17

Matlab

Matlab. Esercitazione 3 – Filtri inversi e deconvoluzione. Esercizio 1. dimensione, livello di grigio medio. istogramma, immagini con le tre componenti principali. calcolare il numero di pixel bianchi e neri all’interno dell’ultima immagine. Esercizio 2.

ganesa
Download Presentation

Matlab

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Matlab Esercitazione 3 – Filtri inversi e deconvoluzione

  2. Esercizio 1 dimensione, livello di grigio medio istogramma, immagini con le tre componenti principali calcolare il numero di pixel bianchi e neri all’interno dell’ultima immagine

  3. Esercizio 2 Applicare all’immagine i vari metodi di aumento del contrasto basati su elaborazione dell’istogramma. Visualizzarne gli istogrammi. • Suddividere l’immagine in 4 quadranti. • Applicare le varie tecniche di aumento del contrasto alle 4 porzioni separatamente. • Ricostruire l’immagine. • Cosa accade nelle varie tecniche?

  4. Soluzione esercizio 2 originale imadjust histeq adapthisteq

  5. Soluzione esercizio 2 a=imread('cameraman.tif'); a=im2double(a); a1=a(1:size(a)/2,1:size(a)/2); q1=imadjust(a1); w1=histeq(a1); e1=adapthisteq(a1); a2=a(1:size(a)/2,size(a)/2+1:size(a)); q2=imadjust(a2); w2=histeq(a2); e2=adapthisteq(a2); a3=a(size(a)/2+1:size(a),1:size(a)/2); q3=imadjust(a3); w3=histeq(a3); e3=adapthisteq(a3); a4=a(size(a)/2+1:size(a),size(a)/2+1:size(a)); q4=imadjust(a4); w4=histeq(a4); e4=adapthisteq(a4); aq=[q1 q2;q3 q4]; aw=[w1 w2;w3 w4]; ae=[e1 e2;e3 e4]; figure(); subplot(2,2,1);imshow(a);title('originale'); subplot(2,2,2); imshow(aq);title('imadjust'); subplot(2,2,3); imshow(aw);title('histeq'); subplot(2,2,4); imshow(ae);title('adapthisteq');

  6. Deblurring LENGTH=31; THETA=11; H1=fspecial('motion', LENGTH, THETA); Bcir=imfilter(I,H1,'circular');

  7. Deblurring DWB=deconvwnr(Bcir,H1);

  8. Deblurring E=edgetaper(a,fspecial(‘gaussian’,40,10)) Brep=imfilter(I,H1,'replicate'); DWBrep=deconvwnr(Brep,H1); Bedge=edgetaper(Brep,fspecial('gaussian',60,10)); DWBedge=deconvwnr(Bedge,H1);

  9. Deblurring h=fspecial('motion',LENGTH+5,THETA); DWB2=deconvwnr(Bcir,h); DWB3=deconvwnr(Bedge,h);

  10. Deblurring in presenza di rumore noisestd=0.08; noise = noisestd*randn(size(I)); blurredNoisy = Bcir+noise;

  11. Deblurring in presenza di rumore DWBN = deconvwnr(blurredNoisy, H1); NSR = sum(noise(:).^2)/sum(I(:).^2); DWBN2 = deconvwnr(blurredNoisy, H1, NSR);

  12. Deblurring in presenza di rumore NP = abs(fftn(noise)).^2; NPOW = sum(NP(:))/prod(size(noise)); % noise power NCORR = fftshift(real(ifftn(NP))); % noise ACF, centered IP = abs(fftn(im2double(I))).^2; IPOW = sum(IP(:))/prod(size(I)); % original image power ICORR = fftshift(real(ifftn(IP))); % image ACF, centered wnr7 = deconvwnr(blurredNoisy, H1, NCORR, ICORR);

  13. Deblurring in presenza di rumore reg=deconvreg(blurredNoisy,H1); NPOWER = noisestd^2.*prod(size(I)); reg2=deconvreg(blurredNoisy,H1,NPOWER);

  14. Funzioni MATLAB viste oggi deconvwnr edgetaper fftn, fftshift, ifftn deconvreg

  15. Esercizio per esame – prima parte • Elaborare la propria immagine con i 4 metodi di aumento del contrasto: imadjust, histeq, adapthisteq e unsharpmasking. Per l’unsharpmasking provare l’effetto della modifica del parametro alpha [0.1 0.5 0.9]. Nell’applicazione del filtro utilizzare le 4 tecniche di convoluzione (circular, replicate, ecc…) e scegliere quella che meglio si adatta alla propria immagine (verrà poi utilizzato nell’applicazione dei filtri nei prossimi esercizi)

  16. Esercizio per esame – prima parte • Aggiungere all’immagine originale rumore sale e pepe con d=[0.01,0.03,… 0.09] e rimuoverlo con filtri di media e mediano modificandone opportunamente i parametri • Aggiungere all’immagine originale rumore gaussiano a media nulla con varianze [0.01 0.02 0.03 0.04] e rimuoverlo con filtri gaussiano, media e mediano settando i parametri opportunamente.

  17. Esercizio per esame – prima parte • Applicare all’immagine originale un filtro di motion con LENGTH=15 e THETA=5. Ridurre il blur con la deconvoluzione di Wiener. • Applicare all’immagine originale un filtro gaussiano di dimensione 7x7 e sigma=10. Ridurre il blur con la deconvoluzione di Wiener. • Aggiungere all’immagine con motion rumore gaussiano con deviazione standard 0.05 e rimuovere blur e rumore con metodo di Wiener e metodo “regularized”.

More Related