Upload
nuzul-romadona-soedjito
View
9
Download
1
Embed Size (px)
DESCRIPTION
laporan kuliah pml
Citation preview
LAPORAN PENGOLAHAN MULTIMEDIAMembandingkan Pemfilteran pada Domain Spasial,
Frekuensi dan Wavelet
Rengga Pladitama
2209100151
Pemfilteran Domain Spasial
Pemfilteran domain spasial merupakan operasi non linier yang digunakan untuk
pemrosesan citra. Pada pemfilteran ini menggunakan metode median filter dengan
matrik 3x3 untuk menghilangkan noise.
Script:
Output:
Citra asli
Citra bernoise
%load imageA = imread('moon.tif');A=im2double(A);A=A(1:250,1:250);figure, imshow(A);figure, imhist(A); %add noiseB=imnoise(A,'salt & pepper',0.01); % Noisy image cutfigure, imshow(B);figure, imhist(B); %hasil rekonstruksiR=medfilt2(B,[3 3]);figure, imshow(R);figure, imhist(R); %hasil pemfilteranout = B-R;figure, imshow(out);figure, imhist(out); %noise citranoise = B-A;figure, imshow(noise);figure, imhist(noise); %noise sisa dari pemfilteransisa = noise-out;figure, imshow(sisa);figure, imhist(sisa);
Citra hasil rekonstruksi
Noise noise sisa penfilteran
Citra hasil pemfilteran
Pemfilteran Domain Frekuensi
Pemfilteran pada domain frekuensi dengan menggunakan Low Pass Filter (LPF) yaitu
dengan meloloskan frekuensi rendah dan menahan frekuensi tinggi. Frekuensi tinggi
pada citra digambar dengan perubah intensitas antar piksel yang tinggi. Sedangkan
frekuensi rendah digambarkan dengan perubahan intensitas antar piksel yang rendah.
Script:
%load imagei = imread('moon.tif');i = im2double(i);i = i(1:300,1:300);figure, imshow(i); %add noiseB = imnoise(i,'salt & pepper',0.01); figure, imshow(B);figure, imhist(B); % Filter LPFP =300; L = 300;u0 = 80 ; u = 0:(P-1);v = 0:(L-1);idx = find (u > P/2) ;u(idx ) = u(idx)-L;idy = find(v > L/2) ;v(idy) = v(idy)-L;[V,U] = meshgrid(v, u);D = sqrt(U.^2 + V.^2);H = double(D <= u0); % konvolusi filter dan citraF = fft2 (double(B)) ;G = H.*F ;
%rubah ke domain spasialR = real (ifft2(double(G))) ; %hasil rekonstruksifigure, imshow(R);figure, imhist(R);
Output:
Citra asli
Citra bernoise
Citra hasil rekonstruksi
%hasil pemfilteran citraout = B - R;noise = B - i;figure, imshow(noise);figure, imhist(noise);
%noise sisasisa = noise - out;figure, imshow(sisa);figure, imhist(sisa);
Noise noise sisa dari pemfilteran
Citra hasil pemfilteran
Pemfilteran Metode Wavelet
Pemfilteran menggunakan metode wavelet yaitu memecah citra menjadi sebuah blok
yang berfrekuensi rendah dan blok yang berfrekuensi tinggi. Untuk menghilangkan noise
pada citra, blok yang berisi frekuensi tinggi akan difilter menggunakan soft thresholding
yang akan memotong bagian yang berfrekuensi tinggi ini sesuai dengan threshold yang
yang dihitung menggunakan persamaan dari vavelet.
Script:
% Load gambarA = imread('moon.tif');A=im2double(A);A=A(1:250,1:250);figure, imshow(A);figure, imhist(A); % Add noiseB=imnoise(A,'salt & pepper',0.01); % Noisy image cutfigure, imshow(B);figure, imhist(B); % Dekomposisi citra 2 level dengan db4level=2;[c,s]=wavedec2(An,level,'db4'); s2=s(2:level+1,1)'; s2=[s2; s2; s2]; s2=[s(1);s2(:)]; ss=s2.^2;
% Menghitung thresholdTHR = ddencmp('den','wv',An); % Soft thresholding dengan exclude aproksimasi dari proses thresholdingfor i=1:7, if i==1 thr(i)=0; else thr(i)=THR; end, endind(1)=0; for i=1:7, ind(i+1)=sum(ss(1:i)); end
Output:
Citra asli
Citra bernoise
for i=1:7 k=find(abs(c(ind(i)+1:ind(i+1)))<=thr(i)); k=k+ind(i); cd(k)=0; k=find(abs(c(ind(i)+1:ind(i+1)))>thr(i)); k=k+ind(i); cd(k)=sign(c(k)).*(abs(c(k))-thr(i));end; % Rekonstruksi gambarR=waverec2(cd,s,'db4');figure, imshow(R);figure, imhist(R); %Tampilkan hasilout = B-R;figure, imshow(out);figure, imhist(out); %noisenoise=B-A;figure, imshow(noise);figure, imhist(sisa); %sisa noise pada citrasisa=noise-out;figure, imshow(sisa);figure, imhist(sisa);
Citra hasil rekonstruksi
Noise Noise sisa
Citra hasil filtering
Kesimpulan
Jika dibandingkan hasil pemfilteran pada domain spasial, frekuensi dan waveletn maka
penfilteran pada domain spasial.
Hasil pemfilteran:
Domain spasial noise sisa
Domain frekuensi noise sisa
Wavelet noise sisa