1 10/20/2015
Media Transformasi: FT, DCT, Wavelet
- Background Needed
- Mathematicis
- Signal Processing
- Image Processing
2 10/20/2015
Kaitan Citra dengan frekuensi?
Citra ambil 1 baris plot (sumbu x: posisi
piksel dalam baris, sumbu y: intensitas
keabuan/warna)
Columns 1-9 : 71 70 70 70 73
77 81 83 73
……………………..
Columns 307-315: 92 93 84 93 96
79 121 218 232
Columns 316-324: 233 74 0 11 24
14 14 13 11
……………………..
Columns 397 through 400 : 24 8 13
15
3 10/20/2015
Kaitan (cont.)
Frekuensi dapat
dilihat perbaris dan
perkolom atau
perbidang
4 10/20/2015
Domain Transformasi
Transformasi juga diperlukan bila kita ingin
mengetahui suatu informasi tertentu yang
tidak tersedia sebelumnya
Contoh :
–Untuk mengetahui informasi frekuensi citra
maka transformasi yang diperlukan adalah
transformasi Fourier
–Untuk mengetahui informasi kombinasi skala
dan frekuensi kita memerlukan transformasi
wavelet
5 10/20/2015
Mengapa perlu transformasi ?
–Setiap orang pada suatu saat pernah
menggunakan suatu teknik analisis dengan
transformasi untuk menyederhanakan
penyelesaian suatu masalah [Brigham,1974]
–Contoh: penyelesaian fungsi y = x/z
Analisis konvensional : pembagian secara manual
Analisis transformasi : melakukan transformasi
– log(y) = log(x) – log(z)
– look-up table pengurangan look-up table
6 10/20/2015
Transform on Compression
Encoder
Input Codeword
data Transform Quantization assignment
Coded
bit-string
Decoder
7 10/20/2015
Transformasi
Transformasi dapat diklasifikasikan menjadi 2
jenis, yakni:
–Transformasi transformasi geometris/piksel
–Transformasi ruang/domain/space
8 10/20/2015
Transformasi Geometris
Transformasi piksel masih bermain di
ruang/domain yang sama (domain spasial), hanya
posisi piksel yang kadang diubah
Contoh: rotasi, translasi, scaling, invers, shear,
dll.
Transformasi jenis ini relatif mudah
diimplementasikan dan banyak aplikasi yang
dapat melakukannya (Paint, ACDSee, dll)
9 10/20/2015
Transformasi Ruang
Transformasi ruang merupakan proses perubahan
citra dari suatu ruang/domain ke ruang/domain
lainnya, contoh: dari ruang spasial ke ruang
frekuensi
Masih ingat istilah ‘ruang’ ? Ingat-ingat kembali pelajaran
Aljabar Linier tentang Basis dan Ruang
– Contoh : Ruang vektor. Salah satu basis yang merentang
ruang vektor 2 dimensi adalah [1 0] dan [0 1]. Artinya,
semua vektor yang mungkin ada di ruang vektor 2
dimensi selalu dapat direpresentasikan sebagai kombinasi
linier dari basis tersebut.
10 10/20/2015
Transformasi Ruang
Ada beberapa transformasi ruang, a.l.:
– Transformasi Fourier (basis: cos-sin)
– Transformasi DCT (basis: cos)
– Transformasi Wavelet (basis: scaling function dan mother
wavelet)
11 10/20/2015
Historical Development
Pre-1930
– Joseph Fourier (1807) with his theories of frequency
analysis
The 1930s
– Using scale-varying basis functions; computing the energy
of a function
1960-1980
– Guido Weiss and Ronald R. Coifman; Grossman and Morlet
Post-1980
– Stephane Mallat; Y. Meyer; Ingrid Daubechies; wavelet
applications today
12 10/20/2015
Fourier Transform
Seluruh gelombang
periodic dapat degenerate
menjadi kombinasi
gelombang Sin and Cos
Transformasi Fourier
mendekomposisi
gelombang periodic
menjadi Komponen
Frekuensi
13 10/20/2015
Transformasi Fourier (FT)
Pada tahun 1822, Joseph Fourier, ahli matematika
dari Prancis menemukan bahwa: setiap fungsi
periodik (sinyal) dapat dibentuk dari penjumlahan
gelombang-gelombang sinus/cosinus.
Contoh : Sinyal kotak merupakan penjumlahan
dari fungsi-fungsi sinus
14 10/20/2015
Fungsi kotak sebagai penjumlahan
fungsi-fungsi sinus
Bangun program matlab berikut:
– function kotak(n)
t = 0:pi/200:8*pi;
kot = sin(t);
for i = 3 : 2: n
kot = kot + (sin(i*t))/i;
end
plot(kot)
(c) (d)
Gambar a) n = 1, b) n =3, c) n = 7, d) n = 99
16 10/20/2015
FT - Motivasi
Jika semua sinyal periodik dapat dinyatakan dalam
penjumlahan fungsi-fungsi sinus-cosinus,
pertanyaan berikut muncul :
– Jika saya memiliki sebuah sinyal sembarang, bagaimana saya
tahu fungsi-fungsi cos – sin apa yang membentuknya ?
17 10/20/2015
Rumus FT – 1 dimensi
Rumus FT kontinu 1 dimensi
F (u ) f ( x) exp[ 2 jux]dx
f ( x) F (u ) exp[ 2 jux]du
N
1
f ( x) x 0 F (u ) exp[ 2 jux / N ]
N 1
N
18 10/20/2015
Contoh FT 1 dimensi
Contoh berikut diambil dari Polikar
(http://engineering.rowan.edu/~polikar/WAVELETS/WTtutorial.html)
19 10/20/2015
FT dari sinyal tersebut
Terlihat bahwa FT dapat
menangkap frekuensi-
frekuensi yang dominan
dalam sinyal tersebut,
yaitu 5,10, 20, 50
20 10/20/2015
Contoh Penghitungan FT 1 dimensi
(Gonzalez hlm 90-92)
1 N 1 1 N 1
F (u )
N
x 0
f ( x) exp[ 2 jux / N ] x 0 f ( x)(cos( 2ux / N ) j sin( 2ux / N ))]
N
contoh : f (0) 2, f (1) 3, f (2) 4, f (3) 4
1 N 1
F (0) x 0 f ( x)(cos( 2 0 x / N ) j sin( 2 0 x / N ))]
N
1
[ f (0) f (1) f (2) f (3)] 3.25
4
1 3
F (1) x 0 f ( x)(cos( 2x / 4) j sin( 2x / 4))]
4
1
[2(1 0) 3(0 j ) 4(1 0) 4(0 j )
4
1 1
(2 3 j 4 4 j ) (2 j ) 0.5 0.25 j
4 4
1 1
F (2) [1] 0.25 F (3) [2 j ] 0.5 0.25 j
4 4
21 10/20/2015
Contoh FT 2 Dimensi
Sumber: http://www.icaen.uiowa.edu/~dip/LECTURE/LinTransforms.html
Translasi :
f ( x, y) exp[ 2 j (u0 x v0 y) / N ] F (u u0 , v v0 )
f ( x x, y y) F (u, v) exp[ 2 j (ux0 vy0 ) / N ]
23 10/20/2015
Sifat-sifat FT 2 dimensi
Periodik
–FT dan IFT bersifat periodik dengan periode N (N
adalah jumlah titik)
Rotasi
–Jika kita merotasikan f(x,y) sebanyak θ0. maka
F(u,x) juga akan berotasi sebanyak θ0, demikian
pula sebaliknya.
Distributif
–FT dan IFT bersifat distributif terhadap
penjumlahan tapi tidak terhadap perkalian
24 10/20/2015
Sifat-sifat FT 2 dimensi
Penskalaan
af ( x, y ) aF (u, v)
1
f (ax, by ) F (u / a, v / b)
ab
Nilai Rata-rata
N 1 N 1
1 1
f ( x, y ) 2
N
x 0 y 0
f ( x, y)
N
F (0,0)
25 10/20/2015
Proses Konvolusi pada Domain Kontinue
26 10/20/2015
Konvolusi pada Domain Transformasi
27 10/20/2015
Fast Fourier Transform (FFT)
Merupakan algoritma penghitungan yang mengurangi
kompleksitas FT biasa dari 𝑁2 menjadi 𝑁 log2𝑁 saja
Pada implementasinya, FFT merupakan cara yang umum
digunakan untuk menghitung FT diskret
Invers FT juga dapat dihitung dengan kompleksitas
𝑁 log2𝑁 (IFFT)
– Di Matlab : 𝑓𝑓𝑡(𝑥) atau 𝑓𝑓𝑡2(𝑋) untuk FT dan
– 𝑖𝑓𝑓𝑡(𝑥) atau 𝑖𝑓𝑓𝑡2(𝑋) untuk invers FT
28 10/20/2015
Discrete Cosine Transform (1D-DCT)
The one-dimensional forward Discrete Cosine Transform (1-D DCT) of N
samples is formulated by
𝑁−1
2 Π 2𝑥 + 1 𝑢
𝐹 𝑢 = 𝐶 𝑢 𝑓 𝑥 cos
𝑁 2𝑁
𝑥=0
for u = 0, 1, . . . , N - 1, where
1
; 𝑓𝑜𝑟 𝑢=0
𝐶 𝑢 ={ 2
1; 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
The function f(x) represents the value of the xth sample of the input signal.
29 10/20/2015
Inverse DCT(1D-IDCT)
The one-dimensional inverse Discrete Cosine Transform (1-D IDCT) of N
samples is formulated by:
𝑁−1
2 Π 2𝑥 + 1 𝑢
𝐹 𝑥 = 𝐶 𝑢 𝐹 𝑢 cos
𝑁 2𝑁
𝑢=0
for x = 0, 1, . . . , N – 1, where
1
; 𝑓𝑜𝑟 𝑢=0
𝐶 𝑢 ={ 2
1; 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
The function f(x) represents the value of the xth sample of the input signal.
30 10/20/2015
Two-dimensional DCT (2D-DCT)
We divide image matrix 8x8 blocks and apply 2D-DCT
which is defined by:
Inverse
DCT:
31 10/20/2015
Partitioning to 8x8 Blocks
32 10/20/2015
Langkah DCT 2-D
y
Row Column
f(x,y) Transform C(x,v) Transform C(u,v)
33 10/20/2015
Koefisien frekuensi pada DCT
Komponen
Frekuensi
Terendah
Komponen
Frekuensi
Tertinggi
34 10/20/2015
Pengurutan Secara Zig-zag
Frekuensi
Terendah
Frekuensi
Tertinggi
35 10/20/2015
Pemetaan Koefisien DCT ke dalam
Subband
LL LH
HL HH
36 10/20/2015
Wavelet Transform
37 10/20/2015
SHORT TIME FOURIER TRANSFORM
(STFT)
Dennis Gabor (1946) Used STFT
– To analyze only a small section of the signal at a time -- a technique called
Windowing the Signal.
A 3D transform
A function of time
and frequency
38 10/20/2015
Fourier Wavelet
Tranformasi wavelet (WT) merupakan perbaikan
dari transformasi Fourier(FT).
FT : hanya dapat menangkap informasi apakah
suatu sinyal memiliki frekuensi tertentu ataukah
tidak, tapi tidak dapat menangkap dimana
frekuensi itu terjadi.
Ilustrasi : seperti pada konser musik. FT hanya
bisa mengatakan apakah suatu ‘nada’ tertentu
muncul, tapi tidak dapat mengatakan kapan nada
itu muncul dan berapa kali
39 10/20/2015
Kekurangan FT
Gambar atas : ada
4 frek pada suatu
sinyal, muncul
secara bersamaan
Gambar bawah :
ada 4 frek pada FT
suatu sinyal,
muncul secara
bergantian
bentuk FT
keduanya hampir
sama
(http://engineering.rowan.edu/~polikar/WAVELETS/WTtutorial.html)
40 10/20/2015
Kekurangan FT
Jika transformasi Fourier hanya memberikan
informasi tentang frekuensi suatu sinyal, maka
transformasi wavelet memberikan informasi
tentang kombinasi skala dan frekuensi.
Selain itu, FT berdasarkan pada basis sin-cos
yang bersifat periodik dan kontinu, sehingga sulit
bagi kita jika ingin melakukan perubahan hanya
pada posisi tertentu (pasti akan mempengaruhi
posisi-posisi lainnya)
41 10/20/2015
Contoh
Contoh pada halaman berikut menggambarkan
dekomposisi 2 buah sinyal yang hampir sama
Jika didekomposisi menggunakan basis Walsh, maka
semua koefisien dekomposisinya memiliki nilai yang
berbeda (ditunjukkan dengan warna merah),
sedangkan jika didekomposisi menggunakan wavelet
Haar, koefisien dekomposisinya tidak terlalu banyak
berbeda.
Hal ini disebabkan basis Walsh (dan FT) sama-sama
bersifat periodik, sehingga sulit mengubah satu bagian
tanpa mempengaruhi bagian lainnya.
42 10/20/2015
43 10/20/2015
44 10/20/2015
Transformasi Wavelet
Wavelet berasal dari sebuah scaling function. Dari
scaling function ini dapat dibuat sebuah mother
wavelet. Wavelet-wavelet lainnya akan muncul
dari hasil penskalaan, dilasi dan pergeseran
mother wavelet.
Scaling function mother wavelet mother
wavelet yang diskalakan, didilasikan dan digeser.
45 10/20/2015
Rumus Scaling Function dan Wavelet
Rumus Scaling ( x) ck (2 x k )
function :
0 ( x) (1) k c1k (2 x k )
Rumus wavelet: k
46 10/20/2015
Basis Wavelet Haar
Jadi Scaling function dan wavelet sama-sama membentuk sebuah basis baru.
47 10/20/2015
Wavelet Haar sebagai basis
Dalam ruang 1 0 0 0
vektor 4 dimensi, 0 1 0 0
kita biasa memiliki v 0 , v 1 , v 2 , v 3
basis seperti 0 0 1 0
berikut:
0
0
0 1
48 10/20/2015
Wavelet Haar
Sekarang, jika kita memiliki sebuah vektor,
bagaimana merepresentasikan vektor tersebut
sebagai kombinasi linier dari basis-basis
wavelet Haar ?
Bagaimana menentukan nilai a,b,c dan d ?
x0 1 1 1 0
x 1 1 1 0
1 a b c d
x2 1 1 0 1
3
x
1
1 0 1
49 10/20/2015
Contoh wavelet Haar
6 1 1 1 0
4 1 1 1 0
2 3 1 (6)
7 1 1 0 1
5 1 1 0 1
a berarti ‘aproksimasi’
d berarti ‘detail’
50 10/20/2015
Wavelet Transform
1 * t
CWT ( , s) ( , s)
x x(t ) ( )dt
|s| t s
51 10/20/2015
Examples
52 10/20/2015
Continuous Wavelet transform
The kernel functions used in wavelet transform are all obtained
from one prototype function known as mother wavelet , by scaling
and/or translating it
1 t b
a ,b (t ) ( ) 1, 0 (t ) (t )
Here a a
a = scale parameter
b = translation parameter
53 10/20/2015
CWT (Contd..)
In order to become a wavelet a function must
satisfy the above two conditions
(t )dt 0
dt
2
| (t ) |
54 10/20/2015
Inverse wavelet transform
1 1
x(t ) 2 W (a, b)a ,b (t )dadb
C a
where
| ( w) |
C | w | dw
provided
(t )dt 0
55 10/20/2015
Trans. Wavelet 2 dimensi
56 10/20/2015
Macam-macam Wavelet
Seperti telah disebutkan sebelumnya,
berdasarkan scaling functionnya, wavelet
dapat dibedakan menjadi beberapa
macam, diantaranya :
–Wavelet Haar
–Wavelet Daubechies
–Wavelet Symlet
–dll
57 10/20/2015
Mother wavelet
58 10/20/2015
Discrete wavelet Transform
Discrete domain counterpart of CWT
DWT is given by
k 2
k ,n (t ) 2 (2k t n) || k ,n (t ) || 1
x(t ) d k ,n k ,n (t )
k n
59 10/20/2015
d k ,n x, k ,n x(t )k*,n (t )dt
Trans. Wavelet 2 dimensi
Trans. Wavelet 2 dimensi dilakukan terhadap
baris, kemudian terhadap kolom, atau sebaliknya
dengan pembagian sebagai berikut :
LL LH
HL HH
60 10/20/2015
Implementasi 2D-DWT
COLUMN ~
H 1 2 LL Ak 1
S
ROW ~
S H 2 1
COLUMN ~
S G 1 2 LH Dk(h)1
INPUT
ROW
COLUMN
IMAGE S ~
1 2 HL Dk(v)1
S
H
~
G 2 1
ROW ~
S G 1 2 HH Dk(d)1
COLUMN
S
LLL LLH LLH
LL LH LH LH
LHL LH LL
LHL LH
INPUT
IMAGE H H
HL HH HL HH HL HH
61 10/20/2015
Downsample columns along the rows: For each row,
2 1 keep the even indexed columns, discard the odd
indexed columns
62 10/20/2015
Reconstruction
LL Ak 1 1 2 H
2 1 H
LH
Dk(h)1 1 2 G
ORIGINAL
IMAGE
HL
Dk(v)1 1 2 H
2 1 G
HH Dk(d)1 1 2 G
63 10/20/2015
Kegunaan Wavelet
Kompresi data (citra format JPEG 2000)
Ekstraksi ciri
Penghilangan noise
Grafika komputer
Kompresi video
dll
64 10/20/2015
References
Solomon David, “Data Compression” , Fourth
Edition, Springer, 2007.
Hoque Imran, Yipeng Li, Diwei Zhang, “Run
Length Encoding/Decoding”.
Hendrawan, “Huffman dan Arithmetic Coding”, ITB
65 10/20/2015
THANK YOU
10/20/2015
66