PORTOFOLIO 3
Pada portofolio ini akan dipelajari tentang pengolahan citra menggunakan domain frekuensi. Hal ini dapat dilakukan dengan menggunaka transformasi fourier.
Pada portofolio ini ada beberapa tugas
Tugas 1 :
Membangun citra melalui komponen fouriernya
Dalam tugas ini membutuhkan listing program freqcomp.m
cara penggunannya sebagai berikut :
imfreq = imread(’zacky.jpg’)
imfreqgray = rgb2gray(imfreq)
imfreqgray = imresize(im,0.25)
recon = freqcomp(im, frek, 1) % ganti frek dengan nilai frekuensi yang diinginkan, dalam tugas ini digunakan nilai frekuensi: 100, 200
hasil menggunakan frekuensi 200
hasil menggunakan frekuensi 300
Gaussian Filter
untuk langkah-langkah berikut ini diperlukan listing program imwritesc.m
>> im = imread(’zacky.jpg’);
>> im=rgb2gray(im);
>> gausfilt = fspecial(’gaussian’, size(im), 6);
>> imfft = fft2(im);
>> gausfiltfft = fft2(gausfilt);
>> newimgausfft = gausfiltfft.*imfft;
>> imwritesc(im, ‘im.png’);
>> imwritesc(im, ‘im.png’);
>> imwritesc(gausfilt, ‘gausfilt.png’);
>> imwritesc(fftshift(log(abs(imfft)+eps)), ‘imfft.png’);
>> imwritesc(fftshift(log(abs(gausfiltfft)+eps)), ‘gausfiltfft.png’);
>> imwritesc(fftshift(log(abs(newimgausfft)+eps)), ‘newimgausfft.png’);
>> imwritesc(fftshift(real(ifft2(newimgausfft))), ‘newimga.png’);
hasil :
Image hasil gray scale
fft dari Image
gaussian filter dengan standard deviasi 0.6
fft dari gaussian filter
hasil perkalian anatar fft dari gaussian filter dengan fft image
hasil smoothing image dengan gaussian filter
Average Filter
Untuk menjalankan average filter diperlukan avefilter.m selain imwritesc.m.
berikut listing yang harus dijalankan :
>> im = imread(’zacky.jpg’);
>> im = rgb2gray(im);
>> avfilt = avefilter(im ,[21 21]);
>> imfft = fft2(im);
>> avfiltfft = fft2(avfilt);
>> newimavfft = avfiltfft.*imfft;
>> imwritesc(im, ‘imav2.png’);
>> imwritesc(avfilt, ‘avfilt2.png’);
>> imwritesc(fftshift(log(abs(imfft)+eps)), ‘imfft2.png’);
hasil dari average filter :
Image Gray Scale
fft dari image
Average filter dengan ukuran [21 21]
fft dari average filter
hasil perkalian dari image fft dan average filter fft
hasil dari average filtering
Fase dan Amplitudo dari sebuah Image
Dalam pengolahan citra kali ini hanya dibutuhkan imwritesc.m
berikut listing perintah matlabnya :
newimfft1 = im1mag.*(cos(im2phase) + i*sin(im2phase));
newimfft2 = im2mag.*(cos(im1phase) + i*sin(im1phase));
imwritesc(real(ifft2(newimfft1)), ‘im1mag_im2phase.png’);
imwritesc(real(ifft2(newimfft2)), ‘im1phase_im2mag.png’);
untuk menampilkan citra/image dengan fasenya saja:
im1phaseonly = im1fft./im1mag;
im2phaseonly = im2fft./im2mag;
imwritesc(real(ifft2(im1phaseonly)), ‘im1phaseonly.png’);
imwritesc(real(ifft2(im2phaseonly)), ‘im2phaseonly.png’);
imwritesc(im1, ‘im1.png’);
imwritesc(im2, ‘im2.png’);