Anda di halaman 1dari 8

MODUL III

TRANSFORMASI CITRA

3.1 TUJUAN PRAKTIKUM


1. Peserta mengerti cara mengimplementasi algoritma dalam pengolahan citra untuk
mentransformasi citra 2 Dimensi ke ruang frekuensi, ruang skala dan waktu dengan
menggunakan bahasa pemrograman Matlab.
2. Peserta dapat menganalisa perubahan citra 2 Dimensi ke ruang frekuensi dengan
menggunakan DFT (Discrete Fourier Transform), DCT (Discrete Cosine Transform) dan
(FFT) Fast Fourier Transfrom serta perubahan citra 2 Dimensi ke ruang skala dan waktu
menggunakan Transformasi Wavelet

3.2 DASAR TEORI


Ada banyak metode yang digunakan untuk melakukan tranformasi image. Dua diantaranya
adalah Transformasi Fourier dan Transformasi Wavelet.

3.2.1. Transformasi Fourier


Bagaimana transformasi Fourier bekerja? Transformasi Fourier mendekomposisi sinyal ke
bentuk fungsi eksponensial dari frekuensi yang berbeda-beda. Caranya adalah dengan
didefinisikan ke dalam dua persamaan berikut:

Dalam persamaan tersebut, t adalah waktu dan f adalah frekuensi. x merupakan notasi
sinyal dalam ruang waktu dan X adalah notasi untuk sinyal dalam domain frekuensi. Persamaan
(1) disebut Transformasi Fourier dari x(t) sedangkan persamaan (2) disebut Invers Transformasi
Fourier dari X(f), yakni x(t). Persamaan (1) dapat juga ditulis sebagai :
Cos(2_ft)+jSin(2_ft).........................................(3)
Transformasi Fourier dapat menangkap informasi apakah suatu sinyal memiliki frekuensi
tertentu ataukah tidak, tapi tidak dapat menangkap dimana frekuensi itu terjadi.
Gambar 1. Noise yang muncul pada spektrum Fourier
Misalnya kita punya dua sinyal yang berbeda. Misalkan pula keduanya mempunyai
komponen spektral yang sama. Katakan sinyal pertama mempunyai 4 frekuensi muncul
bersamaan, dan yang satu lagi mempunyai 4 frekuensi muncul bergantian. Transformasi Fourier
keduanya sama sebagaimana ditunjukkan pada gambar 1 dan gambar 2. Contoh: 4 frekuensi pada
sinyal muncul Transformasi Fouriernya bersamaan.
3.2.1.1. DFT (Discrete Fourier Transform)
Transformasi Fourier merupakan representasi dari sebuah citra sebagai penjumlahan
eksponensial kompleks dari beragam magnitude, frekuensi dan fasa. Contoh perintah untuk
melakukan transformasi Fourier pada suatu citra:

f=checkerboard(8,8);
f(5:24,13:17)=1;
imshow(f,'notruesize')
f=fft2(f);
f2=log(abs(f));
figure,imshow(f2,[-1,5],'notruesize');
colormap(jet);
colorbar

Output program diberikan sebagai berikut:

Gambar 3. Sebelum dikenai FFT Gambar 4. Setelah dikenai FFT

3.2.1.2. DCT (Discrete Cosine Transform)


Discrete Cosine Transform merepresentasikan sebuah citra dari penjumlahan sinusoida dari
magnitude dan frekuensi yang berubah-ubah. Sifat dari DCT adalah mengubah informasi citra yang
signifkan dikonsentrasikan hanya pada beberapa koefisien DCT. Oleh karena itu DCT sering
digunakan untuk kompresi citra seperti pada JPEG.

Contoh perintah untuk melakukan DCT pada suatu citra:

i=checkerboard(8,8);
j=dct2(i);
imshow(i);
figure,imshow(log(abs(j)),[]),colormap(jet(64)),
colorbar j(abs(j)<10)=0;
k=idct2(j)/255;
figure,imshow(k);

Output program diatas adalah sebagai berikut:


3.2.1.3. Fast Fourier Transform (FFT)
Merupakan algoritma penghitungan yang mengurangi kompleksitas FT biasa dari N2 menjadi
N log2N saja. Pada implementasinya, FFT merupakan cara yang umum digunakan untuk menghitung
FT diskret. InversFT juga dapat dihitung dengan kompleksitas N log2N (IFFT). Di Matlab : fft(x)
atau fft2(X) untuk FT dan ifft(x) atau ifft2(X) untuk invers FT

3.2.2. Transformasi Wavelet


Wavelet merupakan klas dari suatu fungsi yang digunakan untuk melokalisasi suatu fungsi
dalam ruang dan skala. Wavelet dapat dibentuk dari satu fungsi Ψ(x) , dikenal sebagai “mother
wavelet” dalam suatu interval berhingga. “Daughter wavelet” Ψa,b (x) dibentuk oleh translasi (b) dan
kontraksi (a).
Wavelet sangat berguna untuk kompresi data image, karena transformasi wavelet mempunyai
property yang ada dalam beberapa cara terhadap transformasi Fourier konvensional. Wavelet tunggal
dapat didefinisikan dengan:

Selanjutnya

dan formula Calderon memberikan :

Wavelet yang sering digunakan didefinisikan dengan fungsi Haar sebagai berikut :

dan

dengan j integer dan nonnegative, 0≤k≤2j-1

Discrete Wavelet Transform (DWT) adalah salah satu transformasi wavelet yang
merepresentasikan sinyal dalam domain waktu dan frekuensi. DWT memiliki keunggulan di
antaranya mudah diimplementasikan dan efisien dalam hal waktu komputasi. Analisis sinyal
dengan DWT dilakukan pada frekuensi yang berbeda dengan resolusi yang berbeda pula dengan
mendekomposisi sinyal menjadi komponen detail dan komponen aproksimasi. Pada transformasi
ini terjadi filterisasi dan down sampling, yaitu pengurangan koefesien pada fungsi genap
(Gambar 7).

(a) (b)
Gambar 7 (a) Komponen aproksimasi (Skala tinggi, komponen sinyal ber-frekuensi
rendah (LPF)), komponen Detail (Skala rendah, frekuensi tinggi (HPF). (b) Proses
filterisasi dan down sampling.

Prinsip dasar dari DWT adalah bagaimana cara mendapatkan representasi waktu dan
skala dari sebuah sinyal menggunakan tekhnik pemfilteran digital dan operasi sub-sampling
(Reza, 2013). DWT biasanya digunakan untuk menghitung koefisien wavelet di segala skala
yang memungkinkan. DWT ini juga menghasilkan jumlah data yang sangat besar. Untuk
menaksirkan sinyal hasil transformasi ini dibentuk filter Low Pass dan High Pass. Keluaran dari
High-pass dan Low-pass ini bisa dilihat pada bentuk persamaan di bawah ini:

Prosesnya adalah sebagai berikut: Pada tahap pertama, sinyal (S) dilewatkan pada
rangkaian high pass filter dan low pass filter, kemudian setengah dari masing-masing keluaran
diambil sebagai sampel melalui operasi sub-sampling. Proses ini disebut sebagai proses
dekomposisi satu tingkat. Keluaran dari low pass filter digunakan sebagai masukan diproses
dekomposisi tingkat berikutnya. Proses ini diulang sampai tingkat proses dekomposisi yang
diinginkan. Gabungan dari keluaran-keluaran high pass filter dan low pass yang terakhir, disebut
sebagai koefisien wavelet, yang berisi informasi sinyal hasil transformasi yang telah terkompresi
(Gambar 8).
Gambar 8. Proses Multi-level decomposition
Pada transformasi DWT terdapat proses pengembalian kembali komponen-komponen
yang telah kita gunakan. Invers Discrete Wavelet Transform (IDWT) merupakan kebalikan dari
transformasi wavelet diskrit (DWT). Pada transformasi ini dilakukan proses rekonstruksi sinyal,
yaitu mengembalikan komponen frekuensi menjadi komponen sinyal semula. Transformasi
dilakukan dengan proses up sampling dan pemfilteran dengan koefisien filter invers. Sehingga
dalam satu sistem transformasi wavelet menggunakan empat macam filter, yaitu low pass filter
dan high pass filter dekomposisi, dan low pass filter dan high pass filter rekonstruksi.

Gambar 9. Proses rekonstruksi pada transformasi DWT (IDWT: Invers Discrete Wavelet
Transform)
Gambar 10. (a) proses DWT dan (b) proses invers dari DWT menggunakan data
wavelet db2.
Berikut ini adalah contoh Wavelet 1D dan 2D:

Gambar 11. Wavelet 1D


Gambar 12. Wavelet 2D

PERCOBAAN PRAKTIKUM
Gunakan Bahasa Pemrograman Matlab!
1. Buatlah sebuah form yang terdiri dari 3 picture box dimana picturebox 1 digunakan untuk
menampilkan image asli, picturebox 2 untuk menampilkan hasil transformasi dan picturebox3
untuk menampilkan image invers dari proses transformasi. Tombol yang ada adalah Open,
DFT, DCT, FFT, Wavelet, inversDFT, InversDCT, InversFFT dan InversWavelet, serta
tombol exit.
2. Lakukan proses transformasi Fourier dengan menggunakan Discrete Fourier Transform, Discrete
Fourier Transform dan Fast Fourier Transform yang masing-masing ditampilkan pada picturebox 2.
3. Lakukan proses invers dari transformasi Fourier tersebut yang ditampilkan pada picturebox3.
4. Lakukan proses transformasi Wavelet yang hasilnya ditampilkan pada picturebox 2.
5. Lakukan proses invers dari transformasi wavelet tersebut yang ditampilkan pada picturebox3.
6. Buatlah pengujian untuk langkah 2, 3, 4,dan 5 dengan input citra dengan ukuran yang berbeda
sebanyak 3, kemudian citra yang diberikan noise sebanyak 3.
7. Buatlah analisa dari pengujian tersebut.

Anda mungkin juga menyukai