BAB II LANDASAN TEORI

advertisement
BAB II
LANDASAN TEORI
Bab ini akan menjelaskan mengenai landasan teori yang dipakai oleh penulis
dalam penelitian ini. Bab ini dibagi menjadi beberapa bagian, yang masing masing akan
menjelaskan Principal Component Analysis (PCA), Eigenface, Klustering K-Means,
Koreksi Gamma, dan Jarak Euclidean.
2.1 Principal Component Analysis
Principal Component Analysis digunakan untuk mengurangi besarnya dimensi
dari data yang diobservasi, menjadi dimensi yang lebih kecil tanpa kehilangan informasi
yang signifikan dalam menggambarkan keseluruhan data [7]. PCA akan digunakan pada
fase terakhir eigenface, untuk mencari bagian terpenting pada eigenvector. Sebelum itu
akan dijelaskan konsep-konsep dasar yang digunakan pada PCA.
2.1.1 Standar Deviasi
Standar deviasi dari sebuah himpunan data adalah ukuran seberapa tersebarnya
nilai data-data tersebut. Sebagai contoh, jika kita memiliki dua himpunan data masingmasing [2 9 15 35] dan [0 2 3 5], maka standar deviasi dari himpunan pertama akan
lebih besar dari yang kedua. Hal tersebut ditunjukkan oleh rumusan dari standar deviasi
sebagai berikut[7],
 X
n
s
i 1
i
X

2
(2.1)
n
Dari rumus diatas, s merupakan standar deviasi, X adalah sebuah himpunan data,
dan X adalah rata-rata dari X. X ditunjukkan oleh rumus berikut [7].
18
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
(2.2)
Dengan menggunakan rumus (2.1), maka himpunan data [2 9 15 35] akan
memiliki nilai standar deviasi 14.198 dan himpunan [0 2 3 5] akan memiliki nilai
standar deviasi 2.0816. Nilai standar deviasi yang menunjukkan bahwa nilai data-data
yang ada pada himpunan tersebut tersebar jauh dari nilai rata-rata himpunan tersebut.
Sedangkan nilai standar deviasi yang kecil menunjukkan bahwa nilai data-data yang ada
di dalam sebuah himpunan berkumpul di sekitar rata-rata nilai himpunan tersebut.
2.1.2 Varian
Varian meruoakan cara lain untuk mengukur tersebarnya data-data yang ada
dalam sebuah himpunan. Faktanya, varian adalah kuadrat dari standar deviasi. Rumus
dari varian adalah sebagai berikut,
(2.3)
s2 merupakan varian dari sebuah himpunan data.
2.1.3 Kovarian
Dalam teori probabilitas dan statistik, kovarian merupakan ukuran seberapa kuat
hubungan antara dua variabel[10]. Jika kedua variabel berada pada nilai yang
diharapkan, maka kovarian antara dua variabel ini akan bernilai positif. Sebaliknya, jika
salah satu variabel berada di atas nilai yang diharapkan dan variabel yang lain berada di
bawah nilai yang diharapkan, maka kovarian diantara dua variabel ini akan bernilai
negatif. Dua buah variabel dikatakan independen jika tidak ada hubungan antara kedua
variabel tersebut. Dengan kata lain, meskipun diketahui nilai salah satu variabel, maka
tidak dapat ditentukan variabel yang lain[10].
19
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
Kovarian selalu diukur antar dua dimensi. Jika kita memiliki himpunan data yan
berdimensi tiga (x, y, z), maka kita dapat menghitung kovarian antara dimensi x dan y,
antara dimensi x dan z, dan antara dimensi y dan z. Melakukan penghitungan kovarian
antara x dan x, y dan y, dan z dan z masing-masing akan memberikan nilai varian dari x,
y, dan z.
Rumus kovarian diberikan sebagai berikut,
 X
cov X , Y  
n
i 1
i

 X Yi  Y

n  1
(2.4)
2.1.4 Vektor Eigen atau Nilai Eigen
Jika A adalah suatu matriks persegi berdimensi m x n dalam ruang Cn, serta x
dan b adalah suatu vektor berdimensi n x 1, dan terdapat persamaan linear
Ax  b
(2.5)
Maka maksudnya adalah transformasi dilakukan oleh matriks A terhadap vektor
x ke suatu vektor baru b [8, 9]. Ilustrasi dari transformasi yang dilakukan oleh matriks A
terhadap vektor x dapat dilihat pada Gambar 2.1.
Vektor eigen dari A adalah suatu vektor tak nol v ε Cn, dan didefinisikan sebagai
berikut,
Av  v
(2.6)
dimana λ adalah suatu skalar yang biasa disebut sebagai nilai eigen dari A, dan
A merupakan perkalian skalar dari v. Transformasi dilakukan oleh matriks A terhadap
vektor v dari ruang Cn ke ruang Cn hanya akan merubah panjang dari vektor v sesuai
nilai eigen λ. Gambar 2.1menggambarkan transformasi yang dilakukan oleh matriks A
terhadap vektor eigen v.
20
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
Gambar 2.1 Transformasi matriks A terhadap vektor x
Gambar 2.2 Transformasi matriks A terhadap vektor eigen v
Beberapa properti yang berguna dalam proses penghitungan nilai eigen λ dari
matriks A adalah sebagai berikut [9]:
1. Av  v, untuk v  0
2. ( A  I )v  0 mempunyai x  v sebagai solusi nontrivial
3. A  I tidak saling invertibel
4. det( A  I )  0
2.1.6 Principal Component
Transformasi yang dilakukan sangat dipengaruhi oleh besarnya nilai eigen yang
dimiliki oleh vektor eigen. Oleh karena itu, mereduksi dimensi dengan cara membuang
vektor-vektor eigen dengan nilai eigen yang sangat kecil tidak akan membuat kita
21
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
kehilangan data yang penting. Vektor-vektor eigen dengan nilai eigen yang terbesar
disebut sebagai principal component dari sebuah matriks.
Cara untuk mendapatkan principal component dari sebuah matriks dilakukan
dalam beberapa langkah [7],
1. Mengurangi setiap nilai dari matriks dengan rata-rata nilai dari setiap masingmasing dimensi.
2. Menghitung matriks kovariannya
3. Mencari vektor eigen dan nilai eigen dari matriks kovarian tersebut.
4. Kemudian vektor eigen yang ada diurutkan berdasarkan nilai eigen-nya dari
yang paling besar ke yang paling kecil.
5. Dengan memilih vektor-vektor eigen yang memiliki nilai-nilai eigen terbesar
maka kita telah mendapatkan principal component dari matriks awal dan kita
dapat membentuk feature vector.
Feature vector berguna untuk mendapatkan data-data dari matriks awal yang
bersesuaian dengan vektor eigen yang telah kita pilih dengan cara mengalikan transpose
dari feature vector dengan transpose dari matriks yang datanya sudah dikurangi dengan
nilai rata-rata.
2.2 Eigenface
Eigenface adalah metode yang dikembangkan oleh Pentland dan Turk pada
tahun 1991[4, 5]. Menurut mereka, dalam bahasa teori informasi metode ini adalah
mengekstrak informasi dari citra wajah yang relevan, meng-encodenya seefisien
mungkin dan membandingkannya dengan citra wajah yang lain yang telah di encode
dengan metode yang sama[5].
22
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
Eigenface memecah citra wajah menjadi bagian kecil yang menjadi karakter
fitur dari citra yang disebut face space, yaitu bagian penting dari citra wajah yang bisa
mewakili ciri-cirinya [5]. Hal ini bisa dilakukan dengan metode matematika yang
disebut Principal Component Analysis (PCA), yang telah dijelaskan pada bagian 2.1.
Dalam melakukan penghitungan eigenface dengan PCA ini, ada beberapa
langkah yang harus dilakukan [11].
1. Mempersiapkan data citra wajah
Dalam tahap ini, data citra wajah pelatihan ( 1 ) dipersiapkan terlebih
dahulu untuk dilakukan proses perhitungan eigenface, biasanya data citra wajah
pelatihan ini dibuat menjadi bentuk vektor.
2. Mencari selisih antara data citra wajah pelatihan dengan matriks rata-rata
Kita hitung matriks rata-rata Ψ, dan kemudian kurangi data citra wajah
pelatihan i dengan matriks rata-rata. Misalkan banyaknya data citra wajah
pelatihan adalah M,

1
M

M

n 1 i
(2.7)
(2.8)
 i  i  
3. Menghitung matriks kovarian
Langkah selanjutnya menghitung matriks kovarian C berdasarkan,
C
1
M

M
n 1
T
 n
n
(2.9)
4. Menghitung vektor eigen dan nilai eigen dari matriks kovarian
Pada langkah ini, temukan vektor eigen µi dari matriks kovarian C yang
diurutkan berdasarkan nilai eigen-nya λi. Nilai eigen-nya diurutkan dari yang
terbesar ke yang terkecil.
23
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
5. Memilih principal component
Dari M vektor eigen (eigenface) µi, hanya M’ vektor yang perlu dipilih.
Vektor yang dipilih adalah vektor yang memiliki nilai eigen yang paling besar.
Semakin besar nilai eigen-nya, maka semakin besar karakteristik fitur dari citra
wajah yang digambarkan oleh vektor eigen yang bersesuaian dengan nilai eigennya. Eigenface dengan nilai eigen yang rendah dapat dihilangkan, untuk
mengurangi biaya komputasi.
2.3 Klustering K-Means
Klustering K-Means adalah metode yang digunakan untuk membagi data
menjadi beberapa kluster (sub-kelompok) berdasarkan hasil pekerjaan dari Lloyd pada
tahun 1982[12]. Jika diketahui X adalah himpunan dari sekelompok data dan k adalah
jumlah titik berat dari k kluster, maka K-Means membagi data menjadi k kluster dengan
k titik berat[13]. Algoritma ini memiliki proses pekerjaan sebagai berikut[14],
1. Klustering dilakukan dengan membuat titik berat 3 buah secara acak, yang
dipilih dari 3 buah anggota vektor.
2. Dihitung jarak euclidean-nya (dijelaskan pada bagian 2.5) dengan anggota
vektor yang lain. Sebuah titik anggota vektor dikatakan anggota dari sebuah
kluster, jika jarak euclidean antara titik tersebut dengan titik berat dari ke-3
kluster, paling kecil jika dibandingkan dengan jaraknya dengan titik berat
kluster lain.
3. Setelah diketahui pembagian klasternya, maka akan didapat titik berat baru
dari tiap kluster.
4. Ulangi lagi proses (dari b) hingga pembagian kluster tidak berubah-ubah.
24
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
2.4 Koreksi Gamma
Sebelum menjelaskan koreksi Gamma, penulis akan mengenai konsep
Transformasi Power-Law.
2.4.1 Transformasi Power-Law
Transformasi Power-Law adalah salah satu dari metode yang paling sederhana
dari teknik peningkatan kualitas citra (image enhancement)[15]. Metode ini
dioperasikan pada citra dalam level grayscale. Metode ini memiliki bentuk dasar,
s  cr
(2.10)
Dari rumus diatas, s adalah nilai piksel dalam grayscale setelah transformasi,
dan r adalah nilai piksel sebelum transformasi, juga dalam grayscale. Sedangkan c dan
γ (Gamma) adalah konstanta positif.
2.4.2 Koreksi Gamma
Koreksi Gamma adalah perubahan nilai Gamma untuk memperbaiki fenomena
respon dari transformasi power-law[15]. Sehingga bisa memperbaiki kualitas citra
sesuai yang diinginkan. Sesuai dengan persamaan 2.10, jika γ > 1, maka perubahan citra
akan menjadi semakin gelap. Sedangkan jika γ < 1, maka perubahan piksel pada citra
akan menjadi semakin terang.
2.5 Jarak Euclidean
Jarak Euclidean adalah jarak antara dua titik yang diukur dengan menarik garis
lurus antara dua titik tersebut. Metode penghitungan jarak euclidean ini digunakan
dalam metode Klustering K-Means untuk menghitung jarak antara titik berat / centroid.
Selain itu, metode ini juga digunakan dalam proses pengukuran kemiripan suatu citra
alis dengan citra yang lain.
25
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
Suatu citra dapat direpresentasikan sebagai suatu titik pada ruang berdimensi M.
Dalam pengukuran kemiripan antar citra tersebut, cukup dihitung jarak antara dua buah
titik yang merupakan representasi dari dua buah citra tersebut. Semakin kecil jarak
antara dua buah citra wajah, semakin tinggi nilai kemiripan antara kedua citra wajah
tersebut [4]. Hal ini juga bisa dilakukan dalam penghitungan kemiripan citra alis.
Sehingga dalam penghitungan jarak euclidean tiga buah citra alis, p, q, dan r.
Dimana kemiripan antara p dan q adalah D(p,q), dan kemiripan antara p dan r adalah
D(p,r). Citra alis p dikatakan lebih mirip dengan q jika D(p,q) < D (p,r), dan sebaliknya
citra alis p dikatakan lebih mirip r jika D(p,r) < D (p,q).
Prinsip Jarak Euclidean
Dalam ruang euclidean berdimensi n, Rn, jarak antara titik x dan titik y
dirumuskan dengan persamaan berikut[16, 17].
D ( p, q ) | x  y |

n
i 1
| xi  yi |2
(2.11)
Maka untuk mengukur jarak euclidean antara p(x1) dan q(x2) di ruang
berdimensi satu (R1) bisa didapatkan dengan.
D( p, q) 
x1  x2 2
| x1  x2 |
(2.12)
Untuk mendapatkan jarak euclidean antara p(x1 , y1) dan q(x2, y2) di ruang
berdimensi dua (R2) dapat dilakukan dengan menggunakan persamaan berikut.
D( p, q) 
x1  x2 2   y1  y2 2
(2.13)
Untuk mendapatkan jarak euclidean antara p(x1,y1,z1) dan q (x2,y2,z2) di ruang
berdimensi tiga (R3) dapat dilakukan dengan persamaan berikut.
D( p , q ) 
 x1  x2 2   y1  y2 2  z1  z2 2
26
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
(2.14)
Sedangkan untuk mendapatkan jarak euclidean di ruang berdimensi n (Rn),
dimana terdapat vektor p(x1, x2, x3, ..., xn) dan vektor q(y1, y2, y3, ..., yn), dapat dihitung
dengan persamaan berikut.
D( p , q ) 
x1  y1 2  x2  y2 2  ...  xn  yn 2
(2.15)
Jika kedua titik p dan q berada pada koordinat polar p (r1,  1) dan q (r2,  2),
maka jarak euclidean dapat dihitung dengan persamaan berikut.
D( p, q )  r12  r2 2  r1r2 cos1   2 
27
Perbandingan eigenface dan klustering..., M. Faizal Reza, FASILKOM UI, 2008
(2.16)
Download