BAB 2 LANDASAN TEORI
Pada bab ini dijelaskan landasan teori dari transformasi wavelet khususnya Daubechies yang akan dipergunakan dalam pembuatan aplikasi untuk peramalan curah hujan. Untuk membantu dalam merancang user interface dan arus kontrol dari aplikasi yang akan dihasilkan, maka terlebih dahulu dijelaskan landasaran teori perancangan State Transition Diagram .
2.1.
Sinyal
2.1.1. Pengertian Frekuensi Kebanyakan dari sinyal dalam prakteknya, adalah sinyal domain-waktu dalam format mentahnya. Berarti, apapun sinyal yang diukur adalah fungsi waktu, dimana ketika kita memplot salah satu sumbu dengan variabel waktu (variabel independen) maka variabel lainnya (variabel dependen) biasanya adalah amplitudo. Ketika kita memplot sinyal domain-waktu, kita mendapatkan representasi waktu-amplitudo dari sinyal. Seringkali informasi yang penting tersembunyi di dalam frekuensi sinyal. Spektrum frekuensi sinyal pada dasarnya adalah komponen frekuensi (spektral frekuensi) sinyal yang menunjukkan frekuensi apa yang muncul. Frekuensi menunjukkan tingkat perubahan. Jika suatu variabel sering berubah, maka disebut berfrekuensi tinggi. Namun jika tidak sering berubah, maka disebut
7 berfrekuensi rendah. Jika variabel tersebut tidak berubah sama sekali, maka disebut tidak mempunyai frekuensi (nol frekuensi). Frekuensi diukur dalam satuan cycle/detik atau Hertz (Hz). Gambar berikut menunjukkan contoh gelombang sinus berfrekuensi 3 Hz, 10 Hz dan 50 Hz.
Gambar 2.1 Sinyal gelombang sinus frekuensi 3 Hz
Gambar 2.2 Sinyal gelombang sinus frekuensi 10 Hz
Gambar 2.3 Sinyal gelombang sinus frekuensi 50 Hz
8 2.1.2. Transformasi Fourier Untuk mengukur frekuensi ataupun mendapatkan isi frekuensi sinyal, digunakan transformasi Fourier. Ketika transformasi Fourier sebuah sinyal domain-waktu diambil, maka didapat representasi frekuensi-amplitudo sinyal berupa plot frekuensi di salah satu sumbu dan amplitudo di sumbu yang lain. Sumbu frekuensi bermula dari nilai nol naik hingga tak hingga. Untuk setiap frekuensi, kita punya nilai amplitudo. Contoh transformasi Fourier dari sinyal frekuensi 50 Hz ditunjukkan oleh gambar berikut.
Gambar 2.4 Transformasi Fourier dari sinyal frekuensi 50Hz
Transformasi Fourier adalah transformasi yang reversible, dimana dari sinyal asal dapat dibentuk sinyal hasil transformasinya dan sebaliknya, dari sinyal hasil transformasi dapat dibentuk sinyal asalnya. Akan tetapi, tidak ada informasi frekuensi yang tersedia dalam sinyal domain-waktu dan tidak ada informasi waktu yang tersedia dalam sinyal Transformasi Fourier. Dari sinyal transformasi Fourier tersebut, didapatkan informasi frekuensi dari sinyal, yang menginformasikan berapa banyak tiap-tiap frekuensi yang muncul dalam sinyal, tapi tidak menginformasikan waktu kemunculan komponen frekuensi tersebut. Akan tetapi informasi ini tidak diperlukan jika sinyal tersebut stationer.
9 2.1.3. Sinyal Stationer Sinyal stationer adalah sinyal yang isi frekuensinya tidak berubah dari waktu ke waktu. Dengan demikian, informasi mengenai waktu kemunculan komponen frekuensi tidak diperlukan, karena semua komponen frekuensi muncul di setiap waktu. Contoh : sinyal x(t) = cos(2*∏*10*t) + cos(2*∏*25*t) + cos(2*∏*50*t) + cos(2*∏*100*t) adalah sinyal stationer karena memiliki frekuensi 10, 25, 50 dan 100 Hz di setiap waktu.
Gambar 2.5 Sinyal x(t) = cos(2*∏*10*t) + cos(2*∏*25*t) + cos(2*∏*50*t) + cos(2*∏*100*t)
Transformasi Fourier dari sinyal tersebut adalah sebagai berikut.
Gambar 2.6 Transformasi Fourier sinyal x(t) = cos(2*∏*10*t) + cos(2*∏*25*t) + cos(2*∏*50*t) + cos(2*∏*100*t)
10 Pada Gambar 2.6 terdapat 4 buah komponen spektrum yang sesuai dengan frekuensi 10, 25, 50 dan 100 Hz.
2.1.4. Sinyal Non-Stationer Bertolak belakang dengan sinyal pada Gambar 2.5, gambar berikut adalah contoh sinyal non-stationer, dimana frekuensinya berubah-ubah secara konstan dalam waktu. Sinyal ini dikenal dengan nama sinyal chirp.
Gambar 2.7 Sinyal non-stationer
Berikut adalah contoh sebuah sinyal non-stationer dengan 4 komponen frekuensi yang berbeda pada 4 interval waktu yang berbeda pula. Interval 0 – 300 ms memiliki sinusoid 100 Hz, interval 300 – 600 ms memiliki sinusoid 50 Hz, interval 600 – 800 ms memiliki sinusoid 25 Hz dan interval 800 – 1000 ms memiliki sinusoid 10 Hz.
11
Gambar 2.8 Sinyal non-stationer dengan 4 komponen frekuensi
Transformasi Fourier dari sinyal tersebut ditampilkan dalam gambar berikut.
Gambar 2.9 Transformasi Fourier sinyal non-stationer
12
Amplitudo dari komponen frekuensi yang lebih tinggi punya nilai yang lebih besar daripada komponen frekuensi rendah, karena frekuensi tinggi berlangsung lebih lama ( dalam waktu 300 ms) daripada frekuensi rendah ( dalam waktu 200 ms ). Jika kita perhatikan Gambar 2.5, maka semua komponen frekuensi ( frekuensi 10 Hz, 25 Hz, 50 Hz dan 100 Hz ) muncul pada semua periode sinyal. Namun jika perhatikan Gambar 2.8, komponen frekuensi tinggi muncul pada interval pertama dan komponen frekuensi rendah muncul pada interval terakhir. Pada Gambar 2.7, komponen frekuensi juga berubah dari frekuensi rendah ke frekuensi tinggi. Pada sinyal non-stationer, komponen-komponen frekuensi tidak muncul di semua periode sinyal. Gambar 2.6 dan Gambar 2.9 adalah hasil transformasi Fourier dari Gambar 2.5 dan Gambar 2.8. Kedua gambar tersebut menunjukkan kemiripan dalam 4 komponen spektrum tepat pada frekuensi yang sama, yaitu 10 Hz, 25 Hz, 50 Hz dan 100 Hz meskipun kedua sinyal asal tidaklah sama . Hal ini menunjukkan kelemahan dari transformasi Fourier yang tidak bisa memberikan informasi mengenai waktu kemunculan komponen frekuensi (komponen spektrum), hanya memberikan informasi mengenai nilai komponen spektrum yang muncul. Ketika lokalisasi waktu diperlukan, maka harus digunakan transformasi yang menghasilkan representasi waktu-frekuensi. Transformasi Wavelet adalah salah satu transformasi yang dapat menyediakan informasi waktu dan frekuensi secara bersamaan dan juga memberikan representasi waktu-frekuensi dari sinyal.
13 2.2. Wavelet Wave didefinisikan sebagai sebuah fungsi waktu yang bergerak (oscillating), seperti kurva sinus. Wave mengembangkan sinyal ataupun fungsi dalam bentuk kurva sinus yang telah terbukti sangat berguna untuk dalam matematika, ilmu pengetahuan, tehnik mesin terutama untuk fenomena periodik atau stationer. Wavelet adalah sebuah wave kecil, yang dimana energinya terkonsentrasi dalam waktu untuk menyediakan alat bantu analisis fenomena kesementaraan, non-stationer atau perubahan waktu. Karakteristik wave bergerak masih tetap dimiliki, namun juga dapat mensimulasikan analisis waktu-frekuensi dengan dasar matematika yang fleksibel. Hal ini diilustrasikan dalam Gambar 2.10 dimana wave (kurva sinus) bergerak dengan amplitudo sama pada -∞ ≤ t ≤ ∞ dan maka dari itu memiliki energi yang tak berhingga, dengan wavelet yang memiliki energi berhingga terkonsentrasi pada suatu titik.
Gambar 2.10 Sebuah wave dan wavelet Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p1)
Sebuah sinyal atau fungsi f(t) dapat dianalisa, dijelaskan atau diproses jika dinyatakan dalam dekomposisi linier dengan f (t ) = ∑ al ψ l (t ) l
14 dimana l adalah index bilangan untuk penjumlahan finite (berhingga) atau infinite (tak berhingga, al adalah expansion coefficient dan ψ l (t ) adalah fungsi himpunan dari t yang dinamakan expansion set. Jika expansion set tersebut unik, maka set tersebut dinamakan basis. Jika basis tersebut orthogonal, dimana :
ψ k (t ),ψ l (t ) = ∫ψ k (t )ψ l (t ) dt = 0
k ≠ l,
maka koefisien-koefisien tersebut dapat dihitung dengan inner product a k = f (t ),ψ k (t ) = ∫ f (t )ψ k (t ) dt. Untuk ekspansi wavelet, sistem dengan dua parameter dikembangkan sehingga menjadi f (t ) = ∑∑ a j ,k ψ j ,k (t ) k
(2.1)
j
dimana j maupun k adalah index bilangan dan ψ j ,k (t ) adalah wavelet expansion function
yang biasanya membentuk basis orthogonal. Expansion coefficients aj,k dinamakan transformasi wavelet diskrit/discrete wavelet transform (DWT) dari f(t) dan f(t) pada persamaan (2.1) adalah invers transform.
2.2.1. Sistem Wavelet
Terdapat beberapa sistem wavelet yang dapat dipergunakan, namun semuanya memiliki tiga karakteristik umum sebagai berikut : a. Sistem wavelet adalah himpunan dari building blocks untuk membangun atau merepresentasikan sinyal atau fungsi.
15 b. Transformasi wavelet melokalisasi waktu-frekuensi dari sinyal. Ini berarti kebanyakan energi sinyal direpresentasikan dengan baik oleh beberapa expansion coefficients, aj,k. c. Perhitungan koefisien dari sinyal dapat dilakukan secara efisien. Kebanyakan transformasi wavelet (himpunan dari expansion coefficients) memiliki kompleksitas operasional O(N), dimana banyak perkalian bilangan desimal dan penjumlahan bertambah secara linier seiring pertambahan panjang sinyal. Namun, transformasi wavelet lainnya memiliki kompleksitas O(N log (N)). Terdapat tiga karakteristik tambahan (Sweldens, 1996; Daubechies, 1992) transformasi wavelet yang lebih spesifik : a. Sistem wavelet didapatkan dari sebuah scaling function atau wavelet function dengan scaling dan translasi sederhana. Parameterisasi dua dimensi didapatkan dari sebuah fungsi (sering dinamakan generating wavelet atau mother wavelet) ψ(t) :
ψ j ,k (t ) = 2 j / 2ψ (2 j t − k )
j, k ∈ Z
(2.2)
Dimana Z adalah himpunan semua bilangan bulat dan faktor 2 j / 2 menjaga konstanta normal independen dari skala j. b. Hampir semua sistem wavelet memenuhi kondisi multiresolusi. Ini berarti bahwa jika himpunan sinyal dapat direpresentasikan dengan penjumlahan bobot dari φ(t-k) maka himpunan sinyal yang lebih luas dapat direpresentasikan dengan penjumlahan bobot dari φ(2t-k). Atau, jika transformasi sinyal dasar dan transalasi dilakukan setengah kali lebarnya,
16 maka hasilnya akan tepat merepresentasikan kelas sinyal yang lebih besar atau bahkan memberikan perkiraan yang lebih baik dari sinyal apapun. c. Koefisien resolusi bawah dapat dikalkulasikan dari koefisien resolusi atas dengan algoritma menyerupai struktur pohon yang dinamakan filter bank. Hal ini memungkinkan kalkulasi yang sangat efisien dari expansion coefficients (yang juga dikenal dengan transformasi wavelet diskrit) dan menghubungkan transformasi wavelet dengan pemrosesan sinyal. Operasi translasi dan scaling adalah dasar untuk banyak proses pembangkitan sinyal dan praktik sinyal, dan penggunaannya adalah salah satu alasan mengapa wavelet merupakan fungsi transformasi yang efisien. Gambar 2.11 memperlihatkan representasi grafis translasi dan scaling sebuah mother wavelet dengan persamaan (2.2).
Gambar 2.11 Translasi dan scaling wavelet ψD4 Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p4)
17 Seiring perubahan nilai k, lokasi wavelet bergerak sepanjang sumbu horizontal, sehingga memungkinkan transformasi tersebut secara eksplisit merepresentasikan lokasi suatu kejadian dalam waktu atau ruang. Seiring perubahan nilai j, bentuk wavelet berubah dalam skala, sehingga memungkinkan representasi dari detil atau resolusi. Selain mother wavelet, fungsi basis lainnya yang diperlukan dalam membentuk sistem wavelet adalah scaling function ϕ (t ) . Dengan mengkombinasikan scaling
function dan wavelet function, maka sinyal yang lebih besar dapat direpresentasikan dengan : f (t ) =
∞
∑
k = −∞
c k ϕ (t − k ) +
∞
∞
∑ ∑d
k = −∞ j = 0
ψ (2 j t − k ).
j ,k
(2.3)
Transformasi wavelet terbukti efisien dan efektif dalam menganalisa banyak sinyal, dikarenakan : a. Ukuran dari expansion coefficients wavelet aj,k pada persamaan (2.1) atau dj,k pada persamaan (2.3) turun secara drastis untuk nilai j dan k pada sinyalsinyal luas. Karakteristik ini dinamakan unconditional basis sehingga wavelet sangat efektif untuk kompresi sinyal dan gambar, denoising dan deteksi. b. Ekspansi wavelet memungkinkan deskripsi lokal yang lebih akurat, mudah diintepretasikan dan pemisahan karakteristik komponen sinyal. c. Wavelet dapat disesuaikan dan beradaptasi. Kita dapat memilih jenis wavelet yang sesuai tergantung sinyal dan aplikasi yang dikembangkan. d. Wavelet yang dihasilkan dan perhitungan dari transformasi wavelet diskrit dapat dioperasikan dengan komputer digital, tanpa operasi turunan ataupun integral namun hanya melibatkan operasi perkalian dan pertambahan.
18 2.2.2. Scaling Function
Permasalahan utama dari sistem wavelet adalah merancang fungsi-fungsi dasar untuk sistem wavelet. Perancangan fungsi dasar ini didasarkan pada konsep multiresolution. Konsep resolusi awalnya dirancang untuk merepresentasikan sinyal dimana sebuah event pada sinyal dipecah kedalam bentuk detil-detil yang lebih rinci, namun berkembang sehingga dapat merepresentasikan sinyal dimana dibutuhkan deskripsi waktu-frekuensi atau waktu-skala bahkan ketika konsep resolusi tidak diperlukan. Didefinisikan himpunan scaling function dari translasi scaling function dasar
ϕ k (t ) = ϕ (t − k )
ϕ ∈ L2 .
k ∈Z
Subhimpunan dari L2(R) hasil perentangan fungsi tersebut didefinisikan sebagai v0 = Span{ϕ k (t )} k
untuk semua bilangan k mulai dari -∞ sampai dengan +∞. Ini berarti f (t ) = ∑ a k ϕ k (t )
untuk tiap f (t )∈v0
k
Ukuran dari subhimpunan dapat diperluas dengan mengubah skala waktu dari scaling function. Kelompok fungsi 2 dimensi dihasilkan dari scaling function dasar melalui scaling dan transalasi
ϕ j ,k (t ) = 2 j / 2 ϕ (2 j t − k ) dimana perentangan (span over) k adalah v j = Span {ϕ k (2 j t )} = Span {ϕ j ,k (t )} k
k
untuk semua bilangan k ∈ Z .Ini berarti jika f (t )∈v j , maka dapat dinyatakan dalam
19 f (t ) = ∑ a k ϕ (2 j t + k ). k
Untuk j > 0, perentangan tersebut dapat menjadi lebih lebar karena
ϕ j ,k (t ) menjadi lebih sempit dan ditranslasikan dalam langkah-langkah yang lebih kecil. Untuk j < 0, ϕ j ,k (t ) menjadi lebih lebar dan ditranslasikan dalam langkah-langkah yang lebih besar. Maka, scaling function yang diperlebar ini dapat merepresentasikan hanya informasi bentuk kasar dan ruang yang diperluas menjadi lebih kecil. Untuk lebih menjelaskan konsep skala dan resolusi, dirumuskan persyaratan dasar dari multiresolution analysis (Mallat, 1989) yaitu a nesting of the spanned spaces sebagai ... ⊂ v − 2 ⊂ v −1 ⊂ v0 ⊂ v1 ⊂ v 2 ⊂ ... ⊂ L2
atau v j ⊂ v j +1 untuk semua j ∈ Z dimana v −∞ = {0},
v∞ = L2 .
Ruang yang mengandung resolusi sinyal tinggi juga akan mengandung resolusi rendah. Karena definisi dari vj, ruang-ruang tersebut harus memenuhi persyaratan scaling f (t ) ∈ v j ⇔ f (2t ) ∈ v j +1 yang memastikan anggota-anggota dalam ruang hanyalah anggota-anggota ruang berikutnya dengan nilai skala tertentu.
20
Gambar 2.12 Perentangan ruang vektor nested dengan scaling function Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p13)
Nesting perentangan ϕ (2 j t − k ) , dinyatakan dengan vj seperti terlihat pada persamaan di atas diilustrasikan dalam Gambar 2.12 diperoleh dengan syarat bahwa
ϕ (t ) ∈ v1 , yang berarti jika ϕ (t ) terkandung dalam v1 , maka ϕ (t ) juga terkandung dalam v1 , himpunan yang diperluas dengan ϕ (2t ) . Ini berarti ϕ (t ) dapat dinyatakan dengan penjumlahan berbobot ϕ (2t )
ϕ (t ) = ∑ h(n) 2 ϕ (2t − n),
n∈ Z
(2.4)
n
dimana koefisien h(n) adalah deret bilangan riil yang dinamakan scaling function coefficients atau scaling filter atau scaling vector dan
2 mempertahankan norm dari
scaling function dengan nilai skala 2. Persamaan berulang (recursive) ini adalah dasar bagi teori scaling function. Persamaan tersebut dikenal juga dengan nama yang berbeda untuk menjelaskan interpretasi ataupun sudut pandang yang berbeda, yaitu persamaan refinement, persamaan multiresolution analysis (MRA) atau persamaan dilation.
21 Daubechies scaling function ditunjukkan seperti pada Gambar 2.13 dan persamaan
h(2) =
3− 3 4 2
(2.4)
, h(3) =
terpenuhi 1− 3 4 2
untuk
koefisien
h(0) =
1+ 3 4 2
, h(1) =
3+ 3 4 2
,
.
Gambar 2.13 Daubechies scaling function, N=4 Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p13)
2.2.3. Wavelet Function
Fitur penting dari sinyal dapat dijelaskan atau diparameterisasi lebih baik, bukan dengan penggunaan ϕ j ,k (t ) dan menambah nilai j untuk meningkatkan ukuran dari subruang diperluas oleh scaling function, tetapi melalui himpunan fungsi ψ j ,k (t ) yang memperlebar selisih antar ruang hasil perentangan scaling function pada berbagai nilai skala. Himpunan fungsi tersebut dinamakan wavelet function. Ada beberapa keuntungan mensyaratkan bahwa scaling function dan wavelet function harus orthogonal. Fungsi basis orthogonal memungkinkan untuk mempermudah kalkulasi expansion coefficients dan penerapan teorema Parseval yang memungkinkan partisi dari energi sinyal dalam domain transformasi wavelet.
22 Jika scaling function dan wavelet function membentuk basis orthogonal, terdapat teorema Parseval yang menghubungkan energi sinyal g (t ) dengan energi dalam setiap komponen dan koefisien waveletnya. Maka dari itu (Donoho, 1993) perentangan wavelet dari sinyal memiliki nilai yang turun dengan cepat sehingga sinyal dapat direpresentasikan secara efektif oleh sejumlah kecil dari perentangan wavelet tersebut. Komplemen orthogonal V j dalam V j +1 dinyatakan sebagai W j . Ini berarti bahwa semua anggota V j orthogonal terhadap semua anggota W j . Kita syaratkan
ϕ j ,k (t ),ψ j ,l (t ) = ∫ ϕ j ,k (t ) ψ j ,l (t ) dt = 0 untuk semua j , k , l ∈ Z . Hubungan antar subhimpunan yang berbeda-beda disajikan sebagai berikut. Diformulasikan nesting himpunan-himpunan yang diperluas Vo ⊂ V1 ⊂ V2 ⊂ ... ⊂ L2 . Didefinisikan subhimpunan perentangan wavelet W0 V1 = V0 ⊕ W0 yang dapat dijabarkan lebih lanjut V2 = V0 ⊕ W0 ⊕ W1 . Maka dapat ditulis L2 = V0 ⊕ W0 ⊕ W1 ⊕ ...
(2.5)
dimana V0 adalah himpunan perentangan awal oleh scaling function ϕ (t − k ) . Gambar 2.14 memperlihatkan nesting himpunan scaling function V j untuk berbagai skala j dan
bagaimana himpunan wavelet adalah disjoint differences (kecuali untuk anggota nol) atau komplemen orthogonal.
23
Gambar 2.14 Himpunan vektor scaling function dan wavelet function Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p15)
Karena wavelet ini berada dalam himpunan yang diperluas oleh scaling function yang lebih kecil berikutnya, W0 ⊂ V1 , maka dapat direpresentasikan dengan penjumlahan berbobot dari scaling function ϕ (2t ) hasil translasi, dengan
ψ (t ) = ∑ h1 (n) 2 ϕ (2t − n),
n∈ Z
(2.6)
n
untuk beberapa himpunan koefisien
h1 (n).
Dari persyaratan bahwa wavelet
merentangkan selisih atau himpunan komplemen orthogonal dan orthogonalitas bilangan mentranslasi wavelet (atau scaling function), maka koefisien wavelet berhubungan dengan koefisien scaling function yaitu h1 (n) = (−1) n h(1 − n).
(2.7)
Fungsi yang dihasilkan oleh persamaan (2.5) memberikan bentuk dasar atau mother wavelet ψ (t ) untuk kelompok expansion functions dari bentuk
ψ j ,k (t ) = 2 j / 2 ψ (2 j t − k ) dimana 2 j adalah skala t ( j adalah log2 dari skala), 2 − j k adalah translasi dalam t, dan 2 j / 2 mempertahankan norm L2 dari wavelet pada skala-skala yang berbeda.
24 Wavelet Daubechies yang berhubungan dengan scaling function pada Gambar 2.14 diperlihatkan pada Gambar 2.15. Koefisien dalam persamaan (2.6) adalah
h1 (0) =
1− 3 4 2
, h1 (1) = −
3− 3 4 2
, h1 (2) =
3+ 3 4 2
, h1 (3) = −
1+ 3 4 2
yang
memenuhi
persamaan (2.7).
Gambar 2.15 Wavelet Daubechies, N=4 Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p16)
Telah dirancang himpunan fungsi ϕ k (t ) dan ψ j ,k (t ) yang dapat merentang semua L2 ( R). Berdasarkan L2 = V0 ⊕ W0 ⊕ W1 ⊕ ... , setiap fungsi g (t )∈ L2 ( R ) dapat ditulis g (t ) =
∞
∑
k = −∞
∞
c(k ) ϕ k (t ) + ∑
∞
∑ d ( j, k )ψ
j = 0 k = −∞
j ,k
(t )
(2.8)
sebagai serangkaian perentangan melalui scaling function dan wavelet function. Dalam perentangan tersebut, penjumlahan pertama menghasilkan sebuah fungsi beresolusi rendah atau perkiraan kasar dari g (t ). Untuk setiap kenaikan nilai index j dalam penjumlahan kedua, resolusi yang lebih tinggi atau lebih baik ditambahkan, sehingga menambah tingkat detil.
25 Jika bentuk fungsi perentangan adalah basis orthonormal atau tight frame, maka koefisien tersebut dapat dihitung dengan inner product yaitu c(k ) = c0 (k ) = g (t ), ϕ k (t ) = ∫ g (t ) ϕ k (t ) dt dan d j (k ) = d ( j , k ) = g (t ),ψ j ,k (t ) = ∫ g (t )ψ j ,k (t ) dt. Koefisien d ( j , k ) kadang ditulis sebagai d j (k ) untuk menegaskan perbedaan translasi waktu index k dan parameter skala j. Koefisien c(k ) kadang ditulis sebagai c j (k ) atau c( j , k ) jika skala awal umum yang dipergunakan selain j = 0 untuk batas bawah penjumlahan fungsi pada persamaan (2.8).
2.2.4. Filter Banks
Dalam banyak aplikasi, tidak perlu untuk terlibat langsung dengan scaling function ataupun wavelet function. Hanya koefisien h(n), h1 (n) dalam persamaan (2.4) dan (2.6), serta c(k ), d j (k ) dalam persamaan (2.8) yang perlu diperhatikan, dan koefisien-koefisien tersebut dapat ditampilkan masing-masing sebagai filter digital dan sinyal digital (Gopinath et al., 1992; Vaidyanathan, 1992). Agar dapat langsung menggunakan koefisien transformasi wavelet, harus diperoleh hubungan antara expansion coefficients pada skala yang lebih rendah dengan skala yang lebih tinggi. Dimulai dengan persamaan recursive dasar
ϕ (t ) = ∑ h(n) 2 ϕ (2t − n)
(2.9)
n
dengan asumsi terdapat solusi yang unik, dilakukan scaling dan translasi variabel waktu untuk menghasilkan
26
ϕ (2 j t − k ) = ∑ h(n) 2 ϕ (2 (2 j t − k ) − n) = ∑ h(n) 2 ϕ (2 j +1 t − 2k − n) n
n
dimana, setelah mengubah variabel m = 2k + n , menjadi
ϕ (2 j t − k ) = ∑ h(m − 2k ) 2 ϕ (2 j +1 t − m). m
Jika kita notasikan v j sebagai
{
}
v j = Span 2 j / 2 ϕ (2 j t − k ) k
kemudian f (t )∈ v j +1 ⇒ f (t ) = ∑ c j +1 (k ) 2 ( j +1) / 2 ϕ (2 j +1 t − k ) k
dapat dinyatakan pada skala j + 1 hanya dengan scaling function dan tanpa wavelet. Pada suatu skala resolusi rendah, wavelet diperlukan untuk detil yang tidak tersedia pada skala j. Terdapat f (t ) = ∑ c j (k ) 2 j / 2 ϕ (2 j t − k ) + ∑ d j (k ) 2 j / 2 ψ (2 j t − k ) k
k
dimana syarat 2 j / 2 mempertahankan unity norm dari fungsi basis pada skala yang berbeda-beda. Jika ϕ j ,k (t ) dan ψ j ,k (t ) adalah orthonormal, koefisien skala level
j
diperoleh lewat inner product c j (k ) = f (t ), ϕ j ,k (t ) = ∫ f (t ) 2 j / 2 ϕ (2 j t − k ) dt dimana dengan mengganti persamaan (2.9) dan menukar penjumlahan dan integralnya, dapat dituliskan sebagai c j (k ) = ∑ h(m − 2k ) ∫ f (t ) 2 ( j +1) / 2 ϕ (2 j +1 t − m) dt m
akan tetapi integral dari inner product dengan scaling function pada skala j + 1 menghasilkan
27 c j (k ) = ∑ h(m − 2k ) c j +1 (m).
(2.10)
m
Hubungan yang sesuai dengan koefisien wavelet adalah d j (k ) = ∑ h1 (m − 2k ) c j +1 (m).
(2.11)
m
2.2.5. Filtering dan Down-Sampling atau Decimating
Dalam ilmu pemrosesan sinyal digital, filtering (penyaringan) sederet bilangan (sinyal input) diperoleh dengan mengoperasikannya dengan himpunan angka yang lain yang dinamakan filter coefficients (koefisien filter), taps, weights, atau impulse response. Untuk deret input x(n) dan koefisien filter h(n), deret output y (n) diperoleh dari N −1
y ( n) = ∑ h( k ) x ( n − k ) k =0
Jika jumlah koefisien filter N adalah finite (berhingga), filter tersebut dinamakan fitler Finite Impulse Response (FIR). Jika jumlahnya infinite (tidak berhingga), maka dinamakan Infinite Impulse Filter (IIR). Masalah perancangan yang dihadapi adalah memilih
h(n) sehingga didapatkan efek yang diharapkan, antara lain untuk
menghilangkan noise atau memisahkan sinyal (Oppenheim et al., 1989; Parks et al., 1987). Dua operasi dasar dalam filter multirate adalah down-sampler dan up-sampler. Down-sampler menerima sinyal
x(n) sebagai input dan menghasilkan output
y (n) = x(2n) seperti pada Gambar 2.16.
28
Gambar 2.16 Down-sampler atau decimator Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p33)
Pada down-sampling, terdapat kemungkinan kehilangan informasi karena setengah dari data dibuang. Akibat yang ditimbulkan, dalam domain frekuensi (transformasi Fourier) dinamakan aliasing yang menyatakan bahwa hasil dari kehilangan informasi ini adalah pencampuran dari komponen frekuensi (Oppenheim et al.,1989; Parks et al.,1987). Hanya jika sinyal awalnya band-limited (setengah dari koefisien Fouriernya adalah nol) maka tidak ada kehilangan informasi yang disebabkan oleh down-sampling. Persamaan (2.10) dan persamaan (2.11) membahas down-sampling dan filtering digital. Persamaan tersebut menunjukkan bahwa scaling coefficients dan wavelet coefficients pada tingkat skala yang berbeda dapat diperoleh dengan mengoperasikan expansion coefficients pada skala j dengan koefisien recursive invers-waktu h(− n) dan h1 (n) kemudian melakukan down-sampling atau decimating untuk menghasilkan
expansion coefficients pada skala j − 1 berikutnya. Atau dapat dikatakan juga bahwa koefisien pada skala j difilter oleh dua filter digital FIR dengan koefisien h(−n) dan h1 (n) setelah down-sampling memberikan expansion coefficients dan wavelet kasar
berikutnya. Implementasi kedua persamaan c j (k ) dan d j (k ) diatas digambarkan pada Gambar 2.17 dimana tanda ↓ 2 menunjukkan down-sampling bernilai 2 dan gambar
kotak lainnya menunjukkan filtering FIR atau pengoperasian dengan h(− n) dan h1 (n).
29 Untuk mempermudah penulisan, digunakan h(n) dan h0 (n) untuk menunjukkan koefisien scaling function untuk persamaan perentangan (2.9).
Gambar 2.17 Analysis bank dua band Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p33)
Filter FIR yang diimplementasikan dengan h(− n) adalah lowpass filter dan yang diimplementasikan dengan h1 (− n) adalah highpass filter. Jumlah data yang diproses oleh sistem ini menjadi ganda dengan penggunaan 2 filter, kemudian dibagi dua dengan penggunaan decimation kembali ke jumlah asal. Ini berarti ada kemungkinan bahwa tidak ada informasi yang hilang dan memungkinkan untuk mengembalikan sinyal asal dengan lengkap. Aliasing yang terjadi di upper bank dapat dibatalkan dengan sinyal dari lower bank. Inilah gagasan dibalik perfect reconstruction dari teori filter bank (Vaidyanathan, 1992; Fliege, 1994). Gambar 2.18 menunjukkan pemisahan, filtering dan decimation yang dapat
diulang pada scaling coefficients untuk menghasilkan struktur dua skala. Mengulangi langkah-langkah ini pada scaling coefficients dinamakan melakukan iterasi filter bank. Meng-iterasi filter bank sekali lagi menghasilkan struktur tiga tingkat seperti pada Gambar 2.19.
30
Gambar 2.18 Analysis tree dua tingkat dengan dua band Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p34)
Gambar 2.19 Analysis tree tiga tingkat dengan tiga band Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p35)
Reaksi frekuensi dari filter digital adalah transformasi Fourier waktu-diskrit dari reaksi (koefisien) impulse h(n), yaitu H (ω ) =
∞
∑ h( n) e ω i
n
.
n = −∞
Besar dari fungsi kompleks ini memberikan ratio dari output terhadap input dari filter untuk sampel kurva sinus pada frekuensi ω dalam satuan radian per detik. Tingkat pertama dari dua bank membagi spektrum dari c j+1 (k ) menjadi lowpass dan highpass band, menghasilkan scaling coefficients dan koefisien wavelet pada skala yang lebih rendah c j (k ) dan d j (k ). Tingkat kedua kemudian membagi lowpass band menjadi lowpass band dan highpass band lainnya yang lebih rendah. Tingkat pertama membagi spektrum menjadi dua bagian yang sama. Tingkat kedua membagi setengah spektrum yang lebih rendah menjadi seperempat dan seterusnya. Maka dihasilkan
31 himpunan nilai logaritmik dari bandwidth seperti pada Gambar 2.20. Konsep ini dinamakan filter Constant-Q dalam peristilahan filter bank karena ratio dari lebar band terhadap pusat frekuensi band selalu konstan.
Gambar 2.20 Band frekuensi untuk analysis tree Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p35)
2.2.6. Filtering dan Up-Sampling atau Stretching
Rekonstruksi sinyal asal dengan koefisien skala dapat dilakukan dengan kombinasi dari scaling function dan koefisien wavelet pada resolusi yang lebih kasar. Hal ini dimungkinkan mengingat sinyal dalam scaling function
j + 1 himpunan
f (t ) ∈ v j +1 . Fungsi ini dapat ditulis dalam bentuk scaling function sebagai f (t ) = ∑ c j +1 (k ) 2 ( j +1) / 2 ϕ (2 j +1 t − k )
(2.12)
k
atau dalam bentuk skala berikutnya (yang membutuhkan wavelet) sebagai f (t ) = ∑ c j (k ) 2 j / 2 ϕ (2 j t − k ) + ∑ d j (k ) 2 j / 2 ψ (2 j t − k ). k
(2.13)
k
Substitusi persamaan (2.9) dan persamaan (2.6) ke dalam persamaan (2.13) menghasilkan f (t ) = ∑ c j (k ) ∑ h(n) 2 ( j +1) / 2 ϕ (2 j +1 t − 2k − n) + k
n
∑ d j (k ) ∑ h1 (n) 2 ( j +1) / 2 ψ (2 j +1 t − 2k − n). k
n
32 Karena semua fungsi tersebut orthonormal, melakukan perkalian persamaan (2.12) dan fungsi diatas dengan ϕ (2 j +1 t − k ' ) dan integral menghasilkan koefisien c j +1 (k ) = ∑ c j (m) h(k − 2m) + ∑ d j (m) h1 (k − 2m). m
(2.14)
m
Untuk perpaduan dalam filter bank, terdapat deret up-sampling atau stretching pertama, diikuti filtering. Berarti input kedalam filter memiliki nilai nol yang disisipkan diantara tiap syarat-syarat awal. Atau dapat ditulis juga y (2n) = x(n) dan y (2n + 1) = 0 dimana sinyal input direntangkan mencapai 2 kali panjang awal dan nilai nol disisipkan. Up-sampling atau stretching dapat dilakukan dengan nilai faktor selain dua, dan kedua persamaan diatas dapat saja memiliki nilai x(n) dan 0 terbalik.Jelas bahwa up-sampling tidak menyebabkan kehilangan informasi. Persamaan (2.14) melakukan up-sampling terhadap deret koefisien skala j yaitu c j (k ), yang berarti menggandakan panjangnya dengan mensisipkan nilai nol diantara tiap term, kemudian mengoperasikannya dengan scaling coefficients h(n). Hal yang sama dilakukan pada deret wavelet coefficients skala j dan hasilnya dijumlahkan untuk menghasilkan scaling function coefficient j + 1. Struktur ini diperlihatkan pada Gambar 2.21 dimana g 0 (n) = h(n) dan g1 (n) = h1 (n). Kombinasi proses ini dapat diteruskan pada
level-level manapun dengan menggabungkan koefisien skala wavelet yang sesuai. Hasil two-scale tree diperlihatkan pada Gambar 2.22.
33
Gambar 2.21 Synthesis bank dua band Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p37)
Gambar 2.22 Synthesistree dua tingkat untuk dua band Sumber: Introduction to Wavelets and Wavelets Transform A Primer(1998,p37)
2.2.7. Transformasi Forward dan Inverse Wavelet
Proses forward dan inverse dari transformasi wavelet dapat diterapkan menggunakan sejumlah up-sampler, down-sampler dan filter banks dua band yang berulang (recursive). Koefisien lowpass-filter hk diasosiasikan dengan scaling function. Output dari tiap lowpass-filter adalah c j (k ) atau komponen approksimasi dari sinyal awal untuk level dari tree tersebut. Koefisien highpass-filter g k diasosiasikan dengan wavelet function dimana g k = (−1) k h1− k . Output dari tiap highpass-filter adalah d j (k ) atau komponen detil dari sinyal asal. Nilai c j+1 (k ) dari level sebelumnya dipergunakan untuk menghasilkan nilai c j (k ) dan d j (k ) baru untuk level tree berikutnya.
34
Gambar 2.23 Transformasi wavelet forward
Transformasi wavelet inverse melakukan operasi yang berkebalikan dari transformasi
wavelet
forward.
Expansion
coefficients
digabungkan
untuk
merekonstruksi sinyal asal. Nilai koefisien c j (k ) dan d j (k ) yang sama dalam transformasi forward dipergunakan, namun dengan cara yang berkebalikan. Proses ini berlangsung menuruni cabang dari tree dan menggabungkan sinyal approksimasi dan detil menjadi sinyal approksimasi dengan level detil yang lebih tinggi. Sinyal akan diinterpolasi dimana nilai nol disisipkan diantara tiap sampel approksimasi dan detil dan sinyal kemudian dilewatkan pada lowpass-filter dan highpass-filter. Nilai nol tersebut kemudian digantikan dengan nilai perkiraan yang didapatkan dari convolution. Output dari filter kemudian dijumlahkan untuk membentuk koefisien approksimasi untuk resolusi level berikutnya yang lebih tinggi. Himpunan koefisien approksimasi akhir pada level tree paling atas dari proses transformasi invers ini adalah rekonstruksi dari titik-titik data sinyal asal.
35
Gambar 2.24 Transformasi wavelet invers
2.2.8. Basis, Basis Orthogonal dan Basis Biorthogonal
Dalam mempelajari sistem wavelet, istilah basis, basis orthogonal, basis biorthogonal, frame dan tight frame diperlukan dan penting untuk dipahami. Himpunan vektor atau fungsi f k (t ) yang merentang himpunan vektor F (atau F adalah perentangan dari himpunan tersebut) jika untuk setiap anggota himpunan tersebut dapat dinyatakan sebagai kombinasi linier anggota himpunan itu. Berarti, jika terdapat himpunan fungsi finite atau infinite
f k (t ), kita nyatakan Spank { f k }= F sebagai
himpunan vektor dengan semua angota dari himpunan tersebut memiliki bentuk g (t ) = ∑ a k f k (t )
(2.15)
k
dimana k ∈ Z dan t , a ∈ R. Inner product biasanya ditunjukkan oleh himpunan ini dan dinyatakan dengan f (t ), g (t ) . Norm didefinisikan dan ditunjukkan dengan f =
f, f .
Himpunan (set) f k (t ) adalah set basis atau basis untuk himpunan F jika himpunan dari {a k } dalam persamaan (2.15) adalah unik untuk g (t )∈ F . Himpunan
36 dinamakan basis orthogonal jika
f k (t ), f l (t ) = 0 untuk semua k ≠ l. Jika berada dalam
himpunan Euclidean tiga dimensi, vektor basis orthogonal adalah vektor koordinat yang memiliki sudut 900 terhadap satu sama lain. Dinamakan basis orthonormal jika f k (t ), f l (t ) = δ (k − l ) dan juga selain bersifat orthogonal, vektor basis dinormalisasi
terhadap unity norm : f k (t ) =1 untuk semua nilai k. Dari definisi diatas, jelas jika terdapat basis orthonormal, setiap anggota dalam himpunan vektor, g (t )∈ F , persamaan g (t ) = ∑ a k f k (t ) dapat ditulis sebagai k
g (t ) = ∑ g (t ), f k (t ) f k (t )
(2.16)
k
dan dengan melakukan inner product
f k (t ) pada kedua sisi persamaan (2.15)
didapatkan a k = g (t ), f k (t )
(2.17)
dimana inner product dari sinyal g (t ) dengan vektor basis
f k (t ) menghasilkan
koefisien a k yang cocok. Persamaan
perentangan
atau
representasi
ini
sangat
berharga
karena
menunjukkan bahwa persamaan (2.16) adalah operator identitas dalam pengertian bahwa inner product yang dioperasikan pada g (t ) menghasilkan himpunan koefisien (yang ketika digunakan untuk mengkombinasikan vektor basis secara linier) menghasilkan kembali sinyal asal g (t ). Dasar dari teorema Parseval yang menyatakan bahwa norm atau energi dapat dipartisi terhadap expansion coefficients a k . Maka dari itu, interpretasi, penyimpanan, transmisi, perkiraan, kompresi dan manipulasi koefisien
37 tersebut sangat berguna. Jelas bahwa persamaan (2.10) adalah bentuk untuk semua tipe metode Fourier. Disamping keuntungan basis orthonormal, ada kasus-kasus dimana permasalahan sistem basis tidak sesuai jika dibuat orthogonal. Untuk kasus-kasus ini masih dapat dipergunakan persamaan (2.6) dan juga serupa dengan persamaan (2.16) dengan ~ menggunakan dual basis set f k (t ) yang anggotanya tidak orthogonal satu sama lain, tapi
terhadap anggota yang berhubungan dari set perentangan ~ f l (t ), f k (t ) = δ (l − k ). Karena jenis orthogonalitas ini membutuhkan dua set vektor, expansion set dan dual set, sistem ini dinamakan biorthogonal. Menerapkan rumus diatas dengan perentangan pada persamaan (2.15) menghasilkan ~ g (t ) = ∑ g (t ), f k (t ) f k (t ).
(2.18)
k
Meski sistem orthogonal lebih rumit, tidak hanya himpunan perentangan asal tapi juga menemukan, menghitung dan menyimpan vektor dual set bersifat umum dan dapat menghasilkan himpunan perentangan yang jauh lebih besar. Namun, jika vektor basisnya memiliki korelasi yang kuat, sistem biorthogonal dapat menghasilkan masalahmasalah numerik yang lebih besar. Perhitungan expansion coefficent dengan inner product pada persamaan (2.17) dinamakan bagian analysis dari keseluruhan proses dan perhitungan sinyal dari koefisien dan vektor perentangan pada persamaan (2.15) dinamakan bagian synthesis. Dalam dimensi yang finite, operasi analysis dan synthesis berbentuk perkalian matriks-vektor sederhana.
38 2.2.9. Frame dan Tight Frame
Sementara persyaratan bagi himpunan fungsi menjadi basis orthonormal sudah cukup untuk representasi dalam persamaan (2.16) dan persyaratan dari himpunan (set) untuk menjadi basis sudah terpenuhi untuk persamaan (2.18), keduanya tidak diperlukan. Agar dapat menjadi basis, diperlukan keunikan dari koefisien atau dapat juga dikatakan himpunan tersebut harus independen, yaitu tidak ada anggota yang merupakan kombinasi linier dari anggota lainnya. Jika himpunan fungsi atau vektor dependen namun tetap memungkinkan perentangan seperti tertera pada persamaan (2.18) maka dinamakan frame. Jadi, frame adalah spanning set. Istilah frame muncul dari definisi yang mensyaratkan batas berhingga pada loncatan yang tidak sama rata (Dauechies, 1992; Young, 1980) dari inner product. Jika diharapkan bahwa koefisien perentangan sinyal dapat merepresentasikan sinyal dengan baik, koefisien-koefisien ini harus punya sifat-sifat tertentu. Koefisien ini paling baik ditetapkan dalam syarat energi dan batas energi. Untuk basis orthogonal, koefisien ini mengambil bentuk teorema Parseval. Untuk menjadi frame dalam himpunan sinyal, himpunan perentangan ϕ k (t ) harus memenuhi A g ≤ ∑ ϕk , g 2
2
≤B g
2
(2.19)
k
untuk beberapa 0 < A dan B < ∞ dan untuk semua sinyal g (t ) dalam himpunan. Membagi persamaan tersebut dengan g
2
menunjukkan bahwa A dan B dibatasi oleh
energi yang dinormalisasi dari inner product. A dan B membatasi koefisien normalisasi energi. Jika A = B maka himpunan perentangannya dinamakan tight frame. Maka
39 A g = ∑ ϕk , g 2
2
(2.20)
k
yang merupakan generalisasi teorema Parseval untuk tight frame. Jika A = B = 1, tight frame berubah menjadi basis orthogonal. Dari hal ini, dapat ditunjukkan bahwa untuk tight frame (Daubechies, 1992) g (t ) = A −1 ∑ ϕ k (t ), g (t ) ϕ k (t ) k
yang adalah sama dengan perentangan menggunakan basis orthonormal kecuali untuk syarat A −1 yaitu ukuran redundansi dalam himpunan perentangan. Jika himpunan perentangan adalah bukan tight frame, tidak ada teorema Parseval yang ketat dan energi dalam domain transformasi tidak dapat dipartisi dengan tepat. Namun, semakin kecil selisih nilai A dan B, semakin baik perkiraan partisi yang dapat dilakukan. Jika A = B, dihasilkan tight frame dan partisi dapat dilakukan secara tepat dengan persamaan (2.20). Daubechies (Daubechies, 1992) membuktikan bahwa semakin ketat batasan frame dalam persamaan (2.19), maka analysis dan synthesis sistem akan lebih baik. Atau, jika nilai A mendekati nol dan/atau nilai B memiliki selisih yang sangat besar dibandingkan nilai A, akan terjadi masalah dalam perhitungan analysis-synthesis. Frame adalah versi over-complete dari himpunan basis dan tight frame adalah versi over-complete dari himpunan basis orthogonal. Jika digunakan frame yang tidak termasuk basis ataupun tight frame, himpunan dual frame dapat dispesifikasikan sehingga analysis dan synthesis dapat dilakukan juga sama seperti untuk basis nonorthogonal. Jika tight frame yang dipergunakan, perhitungan yang dilakukan mirip dengan perhitungan untuk basis non-orthogonal.
40 2.2.10. Jenis-Jenis Wavelet
Secara umum, transformasi wavelet dapat dikategorikan menjadi transformasi wavelet diskrit (Discrete Wavelet Transform atau DWT) dan transformasi wavelet kontinu (Continuous Wavelet Transform atau CWT). DWT adalah transformasi wavelet yang paling sering digunakan karena selain lebih mudah diimplementasi, DWT juga memiliki waktu komputasi yang lebih pendek dibandingkan CWT. Ada sejumlah fungsi basis yang dapat dipergunakan sebagai mother wavelet dalam transformasi wavelet. Karena mother wavelet menghasilkan semua fungsi wavelet yang dipergunakan dalam transformasi lewat translasi dan scaling, mother wavelet menentukan karakteristik dari transformasi wavelet yang dihasilkan. Maka dari itu, detil dari aplikasi yang dikembangkan harus diperhatikan agar mother wavelet yang dipilih dapat mengefektifkan penggunaan transformasi wavelet.
Gambar 2.25 Jenis-jenis wavelet (a) Haar (b) Daubechies4 (c)Coiflet1 (d) Symlet2 (e) Meyer (f) Morlet (g) Mexican Hat
41 Gambar 2.23 memberikan gambaran dari fungsi wavelet yang umum
dipergunakan. Wavelet Haar adalah wavelet yang tertua dan paling sederhana. Wavelet Daubechies adalah yang paling sering dipergunakan. Wavelet-wavelet tersebut mewakili dasar dari pemrosesan sinyal dengan wavelet dan banyak dipergunakan dalam aplikasi. Dinamakan juga wavelet Maxflat karena respon frekuensinya memiliki nilai flatness maksimum pada frekuensi 0 dan π. Sifat ini sangat diharapkan pada beberapa aplikasi. Wavelet Haar, Daubechies, Symlets dan Coiflets disusun oleh wavelet orthogonal. Bersama dengan wavelet Meyer, wavelet-wavelet tersebut mampu melakukan perfect reconstruction. Wavelet Meyer, Morlet dan Mexican Hat memiliki bentuk simetri.
2.2.11. Transformasi Wavelet Daubechies D4
Transformasi wavelet Daubechies ditemukan oleh matematikawan Ingrid Daubechies. Transformasi Daubechies D4 memiliki empat koefisien lowpass-filter (dinotasikan dengan hk ) dan empat koefisien highpass-filter (dinotasikan dengan g k ). Koefisien lowpass-filter adalah : h0 = h1 = h2 = h3 =
1+ 3 4 2 3+ 3 4 2 3− 3 4 2 1− 3 4 2
Setiap langkah transformasi wavelet mengaplikasikan koefisien lowpass-filter pada data input. Jika himpunan data awal memiliki N jumlah data, maka scaling function akan diaplikasikan dalam transformasi wavelet untuk menghitung N / 2 data yang dihaluskan.
42 Kemudian nilai-nilai data yang dihaluskan tersebut disimpan dalam bagian bawah dari setengah vektor input elemen N. Koefisien highpass-filter adalah : g 0 = h3 g1 = − h2 g 2 = h1 g 3 = − h0 Setiap langkah transformasi wavelet juga mengaplikasikan highpass-filter pada data input. Jika himpunan data awal memiliki N jumlah data, koefisien highpass-filter akan diaplikasikan untuk menghitung N / 2 selisih (mewakili perubahan nilai dalam data). Nilai hasil perhitungan tersebut akan disimpan dalam bagian atas dari setengah vektor input elemen N. Scaling function dan wavelet function dihitung dengan menggunakan inner product antara koefisien lowpass-filter dan highpass-filter dengan empat nilai data. Persamaan untuk menghitung scaling function Daubechies D4 adalah : ci = h0 s i + h1 s i +1 + h2 si + 2 + h3 s i +3 dan persamaan untuk menghitung wavelet function Daubechies D4 adalah : d i = g 0 si + g1 si +1 + g 2 si + 2 + g 3 s i +3 dimana si adalah data sinyal input dengan index i. Setiap iterasi dalam transformasi wavelet menghitung nilai scaling function dan nilai wavelet function. Index i di-increment sebanyak 2 dalam tiap iterasi dan nilai scaling function dan wavelet yang baru dhitung. Pada transformasi forward, dengan himpunan data finite, index i akan diincreament hingga mencapai nilai N-2. Data yang pertama dari sinyal dinotasikan
43 dengan index 0. Pada iterasi yang terakhir, inner product akan dihitung dari nilai data sinyal ke N-2, N-1, N dan N+1. Hal ini menjadi masalah karena tidak ada data sinyal asal dengan index N dan N+1. Hal ini ditunjukkan pada transformasi matriks berikut : ⎡ h0 ⎢g ⎢ 0 ⎢0 ⎢ ⎢0 ⎢0 ⎢ ⎢0 ⎢0 ⎢ ⎢⎣ 0
h1
h2
h3
0
0
0 0
g1 0
g2
g3
0
0
0 0
h0
h1
h2
h3
0 0
0
g0
g1
g2
g3
0 0
0
0
0
0
0 0
h1
h2
h3
g1 0
g2
g3
0
0 h0 0 g0 0 0
h0
h1 h2
0
0
0
0
g0
g1 g 2
⎤ ⎡s0 ⎤ ⎥ ⎢s ⎥ ⎥ ⎢ 1⎥ ⎥ ⎢s2 ⎥ ⎥ ⎢ ⎥ ⎥ • ⎢ s3 ⎥ ⎥ ⎢s4 ⎥ ⎥ ⎢ ⎥ ⎥ ⎢ s5 ⎥ h3 ⎥ ⎢ s 6 ⎥ ⎥ ⎢ ⎥ g 3 ⎥⎦ ⎣⎢ s 7 ⎦⎥
Masalah yang sama juga terjadi pada transformasi invers, dimana dua nilai pertama invers dhitung dari data sinyal ke -2, -1, 0 dan 1. Hal ini ditunjukkan pada matriks dibawah : ⎡h2 ⎢h ⎢ 3 ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣⎢
g2
h0
g0
0
0
0 0
g3
h1
g1
0
0
0 0
h2
g2
h0
g0
0 0
h3
g3
h1
g1
0 0
0
g2
h0
g0
0
0 h2 0 h3
g3
h1
g1
0
0
0
0
h2
g2
0
0
0
0
h3
g3
0 0 ⎤ ⎡ ai ⎤ 0 0 ⎥⎥ ⎢⎢ ci ⎥⎥ 0 0 ⎥ ⎢ a i +1 ⎥ ⎥ ⎢ ⎥ 0 0 ⎥ ⎢ ci +1 ⎥ • 0 0 ⎥ ⎢a i + 2 ⎥ ⎥ ⎢ ⎥ 0 0 ⎥ ⎢ ci + 2 ⎥ h0 g 0 ⎥ ⎢ ai +3 ⎥ ⎥ ⎢ ⎥ h1 g1 ⎦⎥ ⎣⎢ ci +3 ⎦⎥
Untuk mengatasi masalah ini, ada 3 solusi yang dapat diterapkan : a. Memperlakukan data seolah-olah data tersebut adalah periodik. Data tak tersedia yang berada di awal diisi dengan pengulangan dari data yang berada di akhir (untuk transformasi forward) dan data kosong yang berada di akhir diisi dengan pengulangan dari data yang berada di awal (untuk transformasi invers).
44 b. Memperlakukan data seolah-olah direfleksikan pada kedua ujung himpunan data tersebut (pencerminan/mirroring). c. Menerapkan orthogonalisasi Gram-Schmidt untuk menghitung scaling function dan wavelet khusus pada ujung awal dan akhir dari himpunan data.
2.2.12. Peramalan Dengan Autoregressive
Setelah didapatkan scaling coefficients dan wavelet coefficients dari transformasi forward, maka dilakukan prediksi terhadap koefisien-koefisien tersebut dan nilai data hasil peramalan diperoleh melalui transformasi invers koefisien-koefisien tersebut. Metode peramalan yang akan digunakan adalah model autoregressive (AR) untuk prediksi linier forward dari anggota x n , n = 1, 2, ..., N dan x n = 0 untuk n <1, n > N p
xˆ n = ∑ a k x n − k k =1
dimana xˆ n adalah prediksi dari x n , a k adalah koefisien filter prediksi, N banyak data dan p adalah order dari model AR. Algoritma prediksi yang mempergunakan DWT, langkah-langkahnya adalah : a.
Mengambil elemen data input x n , n = 1,2,..., N + p .
b.
Menghitung nilai DWT dari data input dalam interval finite dan menentukan scaling function coefficients dan wavelet function coefficients..
c.
Melakukan transformasi forward prediksi linier dari scaling coefficients dan wavelet coefficients untuk setiap level skala dengan rumus : p
cˆkj = ∑ a k c nj− k k =1
45 p
dˆ kj = ∑ a k d nj− k , untuk j =1, 2, ..., m k =1
dimana koefisien a k adalah filter prediksi yang diperoleh dari model AR. d.
Memperoleh data yang diprediksi dengan melakukan transformasi invers terhadap koefisien hasil prediksi.
2.3.
Alat Bantu Rancang – State Transition Diagram (STD)
State Transition Diagram digunakan untuk menggambarkan urutan dan variasi layar yang muncul ketika menjalankan program. Dalam State Transition Diagram, digunakan dua notasi, yaitu : a. State, yaitu kotak persegi panjang untuk mewakili tampilan layar dari bagian program tertentu.
b. Anak panah berarah untuk mewakili arus kontrol dan kejadian yang memicu sehingga layar menjadi aktif atau menerima fokus. Arah dari panah menunjukkan urutan layar yang muncul.
Kondisi Aksi
Untuk menggambarkan setiap arah kontrol digunakan sebuah panah yang berbeda dengan labelnya masing-masing karena aksi yang berbeda memicu
46 arus kontrol asal dan arus kontrol pada layar tujuan yang berbeda. Kondisi merupakan suatu event yang dapat dideteksi oleh sistem, misalnya sinyal, interupsi atau data. Aksi adalah hal yang dilakukan oleh sistem jika terjadi perubahan state.