TINJAUAN PUSTAKA Citra Digital Secara umum citra merupaka gambar pada bidag dua dimesi. Ditijau dari sudut padag matematis, citra merupaka sebuah fugsi kotiu dari itesitas radiasi pada bidag dua dimesi. Sumber radiasi megeluarka radiasi yag kemudia megeai objek, objek mematulka kembali sebagia dari radiasi tersebut, patula radiasi ii ditagkap oleh sesor pada alat-alat optik seperti mata, kamera, pemidai (scaer) da sebagaiya. Akhirya bayaga objek tersebut direkam dalam suatu media tertetu. Citra semacam ii disebut juga sebagai citra patula. Jika objek meghasilka radiasi sediri, maka citra yag tertagkap oleh sesor disebut sebagai citra emisi. Sedagka jika objek bersifat traspara, sehigga citra yag dihasilkaya merupaka represetasi dari radiasi yag berhasil diserap oleh partikel-partikel dari objek tersebut, maka citra tersebut adalah citra absorpsi. Utuk pembahasa selajutya pada seluruh bagia dari riset ii, yag disebut sebagai citra adalah citra patula yag ditagkap oleh sesor pada kamera. Aalisis terhadap sebuah citra dapat dilakuka dega megguaka batua komputer melalui sebuah sistem visual buata yag biasa disebut dega computer visio. Secara umum, tujua dari sistem visual adalah utuk membuat model yata dari sebuah citra. Utuk itu citra yag ditagkap oleh sesor yag masih dalam betuk fugsi kotiu (aalog) harus dirubah terlebih dahulu mejadi fugsi diskret (digital) yag dapat dibaca oleh komputer. Proses ii disebut sebagai digitasi, terdiri dari dua sub proses yaitu samplig da kuatifikasi. Samplig merupaka proses utuk megubah sebuah siyal dalam ruag kotiu mejadi siyal dalam ruag diskret, hasil dari proses ii adalah citra yag terdiri dari piksel-piksel yag tersusu dalam kolom da baris. Setiap piksel merupaka hasil peggabuga dari beberapa siyal yag salig berdekata. Sekali sebuah citra megalami proses samplig, tidak dimugkika utuk megembalikaya kedalam betuk kotiu. Setiap piksel biasaya aka memuat ilai itesitas yag pada awalya mempuyai rage kotiu, artiya sagat bayak kemugkia ilai yag dapat dimuat oleh setiap piksel. 7
Sehubuga dega keterbatasa kemampua komputer utuk memproses pegkodea ilai-ilai tersebut, dibutuhka sebuah metode utuk membatasiya. Kuatifikasi merupaka proses utuk megubah rage ilai itesitas yag semula kotiu mejadi rage ilai yag diskret sedemikia sehigga dapat diakomodasi oleh sistem pegkodea bier pada komputer. Akhirya, sebuah citra yag telah melalui proses digitasi disebut sebagai citra digital. Represetasi Citra Digital Citra digital biasa direpresetasika sebagai sebuah fugsi dua dimesi f(x,y), x da y adalah koordiat spasial yag meujukka lokasi dari sebuah piksel didalam sebuah citra da amplitudo dari f pada setiap pasaga koordiat (x,y) adalah itesitas dari citra pada piksel tersebut [Gozales, 2004]. Utuk kebutuha pegolaha da aalisis, represetasi tersebut ditampilka dalam betuk matriks sebagai berikut :... (1) Tipe-Tipe Citra Digital Tiga tipe citra digital yag serig diguaka adalah citra itesitas, citra bier, da citra RGB. Citra itesitas da citra bier merupaka citra mookrom (lebih dikeal dega citra hitam putih) sedagka citra RGB merupaka citra berwara. a. Citra Itesitas, merupaka sebuah matriks dua dimesi berukura mx yag setiap selya berisi ilai itesitas atara 0 sampai dega 255. Itesitas 0 ditagkap sebagai wara hitam pekat, sedagka itesitas 255 ditagkap sebagai wara putih terag oleh mata mausia. Nilai itesitas yag ada diataraya merupaka gradasi dari wara hitam ke putih, atau lebih serig disebut wara keabua (grayscale). b. Citra bier, merupaka sebuh matriks dua dimesi berukura mx yag setiap selya berisi kode 0 atau 1 yag merupaka represetasi dari ilai logical "bear" 8
atau "salah", disebut juga tipe data boolea. Nilai 0 serig diasosiasika dega wara putih terag (setara dega ilai 255 pada citra itesitas) sedagka ilai 1 serig diasosiasika dega wara hitam (setara dega ilai 0 pada citra itesitas). Namu bagaimaapu, asosiasi tersebut bisa berubah-ubah tergatug dari asumsi yag diguaka oleh peggua. Tidak ada kesepakata baku yag megatur bagaimaa ilai 0 da 1 dihubugka dega wara hitam da putih. Umumya, citra bier terbetuk dari citra itesitas yag megalami proses tresholdig. Proses ii sagat sederhaa, pertama-tama tetapka sebuah ilai T yag terletak diatara rage ilai itesitas. Ubah ilai itesitas dari setiap piksel dega megikuti atura berikut: 0, jika f() T g() =... (2) 1, jika f()<t c. Citra RGB (red, gree, blue), merupaka kumpula dari 3 buah matriks 2 dimesi yag masig-masig memuat ilai itesitas (0 s.d. 255) utuk wara merah, hijau da biru. Sebuah piksel merupaka komposisi dari ketiga ilai itesitas tersebut (triplet). Jika diguaka sebagai iput pada sistem moitor berwara, triplet tersebut aka meghasilka wara-wara yag uik. Pricipal Compoets Aalisys (PCA) Ide utama dari pricipal compoet aalysis (PCA) adalah meguragi dimesioalitas dari set data yag megadug bayak sekali variabel yag beriterelasi, dega tetap mempertahaka sebayak mugki iformasi (variasi data). Hal ii dicapai dega metrasformasika set data ke set variabel data yag baru, diamaka pricipal compoet (PC). Pricipal Compoet satu dega yag lai tidak salig berkorelasi da diurutka sedemikia rupa sehigga Pricipal Compoet yag pertama memuat palig bayak variasi dari data set. Sedagka Pricipal Compoet yag kedua memuat variasi yag tidak dimiliki oleh Pricipal Compoet pertama. (Jolliffe IT, 2002) Pricipal Compoets Aalisys 1D (Turk ad Petlad, 1991). Secara matematis ide dasar dari PCA adalah melakuka sebuah trasformasi 9
liear dari R m ke R dimaa <<< m dega memaksimumka variasi data. Misalka iput vector adalah x R m dega E[x]=0 (zero mea) da y adalah vektor berdimesi, maka trasformasi liear dari R m ke R dapat diyataka sebagai : dega : [ a1 T ] a T 2 a T =[ a a 1 a 1m] =[, a 2 11 a 12 [ x1 x m] 2 x = a21 a 22 [ y1 ] y y 2... a 2m] =[ a Secara umum trasformasi dapat diyataka sebagai : (3) a1 a 2 a m] y i =a i T x ; i = 1,2,...,... (4) sehigga : var y i var y i = var a i T x = E [( a i T x x T a i var y i = a i T E xx T a i dimaa Σ adalah matriks covaria. var y i = a i T a i... (5) Selajutya harus ditetuka a i yag dapat membuat var y i mejadi maksimum dega kodisi batas a =1 atau a T i a i =1 atau a T i a i 1=0 karea a i adalah sebuah uit vektor. Salah satu tekik memecahka permasalah optimisasi seperti ii adalah megguaka tekik peggada lagrage. Peetua a i dihitug sebagai berikut : Masalah optimisasi : Maksimumka : var y i = a i T a i Kedala : a T i a i 1=0 Melalui peggada lagrage, fugsi yag dimaksimumka adalah : 10
f a i = a i T a i - λ( a i T a i 1 ) F a i =0 = 2Σ a i - 2 λ a i = 0 Σ a i = λ a i... (6) Dari persamaa 6 terlihat bahwa λ adalah ilai-ilai eige dari matriks Σ, sedag a i adalah vektor eige yag bersesuaia dega masig-masig λ. Jika ruas kiri da kaa persamaa tersebut dikalika dega a i T maka aka diperoleh : a i T a i = a i T λ a i kerea a i T a i =1, maka : a i T a i = λ var y i = λ... (7) Dari persamaa (7) tersebut dapat dilihat bahwa ilai eige dari matriks covaria Σ adalah var y i. Sehigga agar diperoleh varia maksimum maka a i adalah vetor-vektor eige yag bersesuaia dega ilai-ilai eige terbesar dari matriks Σ. Pricipal Compoets Aalisys 2 Dimesi (Yag J. et al, 2004) Pada tekik pegeala wajah berbasis 1D PCA, citra wajah 2D aka dirubah terlebih dahulu mejadi vektor citra 1D. Akibatya ruag vektor citra yag terbetuk aka memiliki dimesi sagat besar. Hal ii meyebabka perhituga matriks kovaria secara akurat serta perhituga ilai eige da vektor eige dari matriks kovaria tersebut mejadi relatif sulit. Berbeda dega 1D PCA, pada 2D PCA citra wajah tetap direpresetasika dega matriks. Hal ii meyebabka matriks kovaria yag terbetuk mejadi jauh lebih kecil. Dampak dari fakta tersebut, 2D PCA memiliki dua kelebiha dibadigka dega 1D PCA, yaitu : 1. Evaluasi terhadap matriks kovaria lebih akurat. 2. Waktu yag diperluka utuk meghitug ilai eige da vektor eige lebih cepat 11
Formulasi 2D PCA Misalka X adalah vektor kolom satua berdimesi. PCA 2D melakuka poreksi sebuah matriks acak dari citra A berukura m x kepada X dega trasformasi liear. Y = A X Sehigga aka diperoleh vektor Y berdimesi m, diamaka vektor feature dari A. Permasalahaya adalah meetuka vektor X yag memaksimumka total scatter dari proyeksi data. Secara matematis dapat diyataka sebagai : J(X) = tr (Sx)... (8) dimaa Sx meyataka matriks kovaria dari vektor feature data-data traiig, da tr (Sx) adalah trace dari Sx. Selajutya matriks kovaria Sx dapat diyataka sebagai : Sx = E Y EY Y EY T =E [ AX E AX ][ AX E AX ] T = E [ A EA X ][ A EA X ] T, sehigga : tr S x = X T [ E [ A EA T A EA ]] X... (9) Kemudia didefiisika sebuah matriks G t =E [ A EA T A EA ]... (10) Matriks G t diamaka matriks kovaria(scatter) citra yag berukura x. Matriks ii dapat dihitug lagsug dari M buah citra-citra traiig A j j=1,2,..., M M G t = 1 A M j A T A j A... (11) j=1 Maka kriteria pada persamaa (8) dapat diyataka sebagai : J X = X T G t X...(12) Kolom vektor satua X yag memaksimisasi J(X) disebut sumbu proyeksi yag optimal. Ii berarti total scatter (varias) dari data yag telah diproyeksika pada X mejadi maksimum. Sumbu tersebut adalah vektor-vektor eige dari matriks G t yag bersesuaia dega ilai-ilai eige terbesar. 12
Liear Support Vector Machie (SVM) Kosep SVM dapat dijelaska secara sederhaa sebagai usaha mecari hyperplae terbaik yag berfugsi sebagai pemisah dua buah class pada iput space. Gambar berikut memperlihatka beberapa patter yag merupaka aggota dari dua buah kelas : +1 da 1. Pola yag tergabug pada class 1 disimbolka dega segitiga, sedagka pola pada class +1, disimbolka dega ligkara. Problem klasifikasi dapat diterjemahka dega usaha meemuka garis (hyperplae) yag memisahka atara kedua kelompok tersebut. Gambar 2 : Support vector, hyperplae da margi Hyperplae pemisah dapat diyataka dega persamaa w T x b=0 dimaa w adalah vektor ormal dari hyperplae da b merupaka itercept hyperplae. Misalka himpua buah data traiig adalah D={ x, y }, aggotaya adalah pasaga x i da label kelasya y i utuk i=1,2,...,, dimaa dalam SVM label kelas diyataka sebagai +1 da -1. Selajutya liear classifier dapat diyataka sebagai f x i =sig w T x i b... (13) Permasalaha selajutya adalah mecari set parameter w,b sehigga f x i = w T x i b = y i utuk semua i. SVM berusaha mecari fugsi pemisah/hyperplae optimum diatara fugsi yag tidak terbatas jumlahya yag memisahka dua kelas objek. Optimal hyperplae kemudia ditetuka terhadap support vector dega memaksimumka margi (ρ). Support vectors adalah data traiig yag terletak palig dekat ke hyperplae. Data-data ii merupaka data yag palig sulit utuk diklasifikasika. Hyperplae yag optimal diperoleh pada 13
saat jarak support vector egatif ke hyperplae sama dega jarak support vector positif ke hyperplae ( ρ/2). Jarak terpedek setiap vektor data x i ke hyperplae adalah jarak tegak lurus terhadap hyperplae (proyeksi) sehigga paralel dega vektor ormal w. Uit vektor ormal hyperplae adalah w w sehigga jarak proyeksi x i terhadap hyperplae adalah r w w hyperplae adalah x ' maka x '= x yr w w. Misalka proyeksi x terhadap... (14) dimaa perkalia dega y adalah utuk merubah tada sesuai dega kelas positif da egatif. w x x ' r w w w T x b=0 Gambar 3 : Proyeksi x terhadap hyperplae Karea x ' terletak pada hyperplae maka w T x ' b=0 sehigga : w T x yr w w b=0. Setelah persamaa tersebut diatur ulag aka diperoleh : r= y wt x b w atau jarak absolut atar x i a dega hyperplae adalah r= w T x i b w... (15) Jika ormal vektor w yag diguaka adalah uit vektor, maka w =1 da jarak x i ke hyperplae adalah w T x i b. Agar persamaa 14
mejadi uik, diambil w T x i b =1 utuk setiap support vector x i (vektor terdekat ke hyperplae). Sehigga jarak support vector x i terhadap hyperplae adalah w T x i b w = 1 w da margi ρ = 2 w. Permasalaha kemudia mejadi bagaimaa memilih w da b agar 2 w maksimum dega kodisi batas : w T x i b 1 jika x i kelas positif da w T x i b 1 jika x i kelas egatif. Permasalah ii dapat dirubah mejadi formulasi stadar SVM sebagai permasalaha miimisasi : Miimumka fugsi : J w = 1 2 w 2 Kodisi batas : g i w, b =1 y i w T x i b utuk i = 1, 2 Permasalaha ii merupaka permasalaha optimisasi fugsi kuadrat dega kedala liear. Karea J w adalah sebuah fugsi kuadrat, maka aka ada satu global miimum. Salah satu tekik pemecahaya adalah dega metoda Peggada Lagrage da Teorema Karush-Kuh-Tucker. (Smith, 2004), (Kecma, 2001). Dega metoda tersebut permasalaha mejadi maksimumka : L D λ = λ i 1 i=1 2 i=1 λ i λ j y i y j x T i x j... (16) j=1 kedala : λ i 0 da λ i y i =0... (17) i=1 dimaa λ = { λ 1,... λ } adalah peggada lagrage (variabel baru) utuk masig-masig data. Persamaa (16 ) dapat ditulis megguaka otasi matriks : L D λ = λ i 1 [ λ 1 i=1 2 H λ ]T [ λ 1 ] λ... (18) dimaa H merupaka matiks berukura x, dega ilai pada baris ke-i da kolom ke-j dari matriks H adalah H ij = y i y j x i T x j 15
Selajutya L D λ dapat dioptimasi megguaka Quadratic Programmig. Berdasarka pada λ = { λ 1,... λ } optimal yag diperoleh : jika λ i =0 maka data ke-i adalah buka support vector jika λ i 0 da y i w T x i b 1 =0 maka data ke-i adalah support Kemudia vector. w dihitug megguaka persamaa w= i=1 b dapat dihitug megguaka sembarag Persamaa hyperplae optimal yag diperoleh adalah : λ i y i x i... (19) λ i 0 melalui persamaa b= 1 y i w T x i... (20) f x = x i S λ i y i x i T x i b... (21) dimaa S adalah himpua support vector S={ x i λ i 0 } Metoda Kerel Jika suatu kasus klasifikasi memperlihatka ketidakliiera, algorithma liear SVM tidak bisa melakuka klasifikasi dega baik. Metoda kerel adalah salah satu tekik utuk megatasi hal ii. Dega metoda kerel suatu data x i di iput space dimappig ke feature space F dega dimesi yag lebih tiggi melalui map φ sebagai berikut φ : x φ(x). Karea itu data x di iput space mejadi φ(x) di feature space. Dari persamaa (16) terlihat bahwa optimisai fugsi L D a haya bergatug pada data x i melalui perkalia titik xi T x j. Jika x i dibawa ke dimesi yag lebih tiggi oleh φ(x) maka harus dihitug hasil kali titik pada dimesi yag lebih tiggi tersebut φ x T i φ x j. Fugsi yag aka dimaksimasi mejadi 16
L D a = a i 1 i=1 2 a i a j y i y j φ x T i φ x j... (22) i=1 j =1 Serig kali fugsi φ (x) tidak tersedia atau tidak bisa dihitug, tetapi dot product dari dua vektor dapat dihitug baik di dalam iput space maupu di feature space. Dot product ii diamaka kerel da diotasika sebagai Sehigga persamaa (19) mejadi : K x i, x j L D a = a i 1 i=1 2 a i a j y i y j K x i, x j... (23) i=1 j =1 Diharapka pada dimesi yag lebih tiggi data dapat dipisahka secara liear. Gambar 4 : Suatu kerel map megubah problem yag tidak liier mejadi liier dalam space baru Gambar 4 medeskrisika suatu cotoh feature mappig dari ruag dua dimesi ke feature space tiga dimesi. Dalam iput space, data tidak bisa dipisahka secara liier, tetapi bisa dipisahka di feature space. Beberapa fugsi kerel yag umum diguaka adalah : Liear K x i, x j = x i T x j Poliamial K x i, x j = x i T x j 1 p Radial Basis Fuctio (data dibawa ke dimesi tak higga) K x i, x j =exp 1 2σ 2 x i x j 2 17