Pertemuan 12 Transformasi Wavelet
Pertemuan 12 Transformasi Wavelet
Syahroni Hidayat
Pengertian Wavelet
• Wavelet adalah gelombang kecil/singkat
• Wavelet merupakan fungsi matematik yang membagi-bagi data
menjadi beberapa komponen frekuensi yang berbeda-beda, kemudian
dilakukan analisis untuk masing-masing komponen menggunakan
resolusi yang sesuai dengan skalanya (Graps, 1995).
• Transformasi Wavelet : Transformasi linier yang mirip dengan
Transformasi Fourier , bedanya transformasi wavelet membolehkan
penempatan waktu dalam dalam komponen-komponen frekuensi yang
berbeda dari sinyal yang diberikan.
• Kelebihan lainnya: Transformasi Wavelet dapat mengolah seluruh
sinyal tanpa adanya kehilangan informasi (losses).
Peroses Transformasi Wavelet
• Inversnya
Transformasi Wavelet Diskrit
• Haar
• Daubechies (dbN)
• Symlet (SymN)
• Coiflet (CoifN)
• dsb
Implementasi Wavelet
Algoritma Haar
• (6 + 6) / 2 = 6
• (3 + -5) / 2 = -1
• (4 + 2) / 2 = 3
Contoh
• (7 - 1) / 2 = 3
• (6 - 6) / 2 = 0
• (3 - -5) / 2 = 4
• (4 - 2) / 2 = 1
• (4 + 6) / 2 = 5
• (-1 + 3) / 2 = 1
• (4 - 6) / 2 = -1
• (-1 - 3) / 2 = -2
Runtun Baru
[5 1 -1 -2 3 0 4 1 ]
A2 D2 D1
Contoh
Runtun Baru
[5 1 -1 -2 3 0 4 1 ]
2 terdepan, Rerata2 (A3), dan Selisih (D3)
[5 1 -1 -2 3 0 4 1 ]
• (5 + 1) / 2 = 3
• (5 - 1) / 2 = 2
Runtun Baru
[3 2 -1 -2 3 0 4 1 ]
A3 D3 D2 D1
Hasil
Data
[7 1 6 6 3 -5 4 2]
Haar Transform
[3 2 -1 -2 3 0 4 1 ]
Matlab/Octave Code
x = [7 1 6 6 3 -5 4 2]
wx = haar_tr(x)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
end;
Matlab/Octave Code
function haar_transform01;
clc;
close all;
clear all;
x = [3 5 4 8 13 7 5 3]
wx = haar_tr(x)
end
Hasil
x= 3 5 4 8 13 7 5 3
wx = 6 -1 -1 3 -1 -2 3 1
Inverse Haar Transform
Haar Transform
[3 2 -1 -2 3 0 4 1 ]
A3 D3 D2 D1
Transformasi Balik
A3 D3
3 + 2 = 5
3 - 2 = 1
Runtun menjadi,
[5 1 -1 -2 3 0 4 1 ]
A2 D2 D1
Inverse Haar Transform
[5 1 -1 -2 3 0 4 1 ]
A2 D2 D1
A2 D2
5 + -1 = 4, 5 - -1 = 6
1 + -2 = -1, 1 - -2 = 3
[4 6 -1 3 3 0 4 1 ]
A1 D1
Inverse Haar Transform
[4 6 -1 3 3 0 4 1 ]
A1 D1
4 + 3 = 7, 4 - 3 = 1
6 + 0 = 6, 6 - 0 = 6
-1 + 4 = 3, -1 - 4 = -5
3 + 1 = 4, 3 - 1 = 2
[7 1 6 6 3 -5 4 2 ]
check -->[7 1 6 6 3 -5 4 2]
Matlab/Octave Code HT-Inverse
function ihaaa = ihaar_tr(x)
ihaaa = [];
i = 1;
n = 2^i;
function Abaru = ihaar01(A,D)
while (n<=length(x))
A = x(1:n/2); ff = [A ; D];
D = x(1+n/2:n); D = [-diff(ff)];
Abaru = ihaar01(A,D); A = [sum(ff)];
x(1:n) = Abaru; Abaru = reshape([A ; D],1,[]);
i = i+1;
n = 2^i; end
end;
ihaaa = x;
end
Matlab/Octave Code HT-Inverse
function ihaar_transform01;
clc;
close all;
clear all;
x = [3 2 -1 -2 3 0 4 1 ]
jawaban = [7 1 6 6 3 -5 4 2]
iwx = ihaar_tr(x)
end
Hasil
x= 3 2 -1 -2 3 0 4 1
jawaban = 7 1 6 6 3 -5 4 2
iwx = 7 1 6 6 3 -5 4 2
if (abs(wx(i))<0.02)
wx(i)=0;
if (abs(wx(i))<0.04)
wx(i)=0;
[y, Fs] = wavread('iwav02.wav');
wx = haar_tr(y)
for (i=1:length(wx))
if (abs(wx(i))<0.04)
wx(i)=0;
end;
end;
iwx = ihaar_tr(wx);
wavwrite(iwx,Fs,'iwavihaar.wav')
TERIMA KASIH