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

hasilfreqcomp.jpg

hasil menggunakan frekuensi 300

hasilfreqcomp300.jpg

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 :

imok.png

Image hasil gray scale

imfftok.png

fft dari Image

gausfiltok.png

gaussian filter dengan standard deviasi 0.6

gausfiltfftok.png

fft dari gaussian filter

newimgausfftok.png

hasil perkalian anatar fft dari gaussian filter dengan fft image

newimgaok.png

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 :

imav2ok.png

Image Gray Scale

imfft2ok.png

fft dari image

avfilt2ok.png

Average filter dengan ukuran [21 21]

avfiltfft2ok.png

fft dari average filter

newimavfft2ok.png

hasil perkalian dari image fft dan average filter fft

newimav2ok.png

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’);

Leave a Reply