INTEGRASI METODE 2DPCA-ICA DAN SVM PADA PENGENALAN WAJAH
Rima Tri Wahyuningrum
Laboratorium Komputasi dan Sistem Cerdas
Program Studi Teknik Informatika, Universitas Trunojoyo
Madura
Jl. Raya Telang PO.BOX 2, Kamal, Bangkalan, Madura - 691962
E-mail : rima_tw@yahoo.co.id
Abstrak
Pada penelitian ini, kami mempresentasikan sebuah integrasi
metode ekstraksi fitur yang efisien antara Two Dimensional Principal Component
Analysis (2DPCA) - Independent Component Analysis (ICA) dan Support Vector
Machines (SVM) Multiclass pada pengenalan wajah. Berbeda dengan PCA-ICA pada
pengenalan wajah, 2DPCA melakukan ekstraksi fitur berdasarkan pada 2D matrik
citra wajah dan eigenvektornya berkorespondensi dengan eigenvalue yang
diurutkan secara descending. Hal ini mengatasi kekurangan dari PCA-ICA.
Kemudian untuk pengukuran kemiripan / metode klasifikasi menggunakan SVM yang
memiliki performa sangat tinggi di berbagai proses pengenalan obyek. Untuk uji
coba dan evaluasi performansi dari sistem yang dibuat, penelitian ini
menggunakan basis data wajah Yale, ORL dan Bern. Berdasarkan hasil uji coba,
rata-rata pengenalan wajah menggunakan 2DPCA-ICA dan SVM lebih tinggi dibandingkan
dengan metode lainnya yaitu 99.6%.
Kata Kunci : 2DPCA, ICA, SVM, pengenalan wajah.
Abstract
In this paper,we presented an integration of an efficient
feature extraction method between Two Dimensional Principle Component Analysis
(2DPCA) - Independent Component Analysis (ICA) and Support Vector Machines
(SVM) multiclass in face recognition. Unlike the PCA-ICA in face recognition,
2DPCA to extract features based on the 2D facial image where eigenvector matrix
corresponding to eigenvalue in descending order. It overcomes the shortcomings
of PCA-ICA. Then to measure the similarity / classification method using SVM
which have performance very high in object recognition processes. To test and
evaluate the performance of the system are made, this research used a face
database Yale, ORL and Bern. Based on the test results, the average face
recognition using 2DPCA-ICA and SVM is higher than other methods, namely 99.6%.
Pengenalan adalah suatu kemampuan dasar dari beberapa sistem
visual. Hal ini menunjukkan proses pemberian label suatu obyek yang merupakan
bagian dari kelas tertentu. Wajah manusia adalah salah satu obyek terpenting
pada sistem visual. Manusia hanya dapat mengenali manusia lainnya dalam keadaan
tertentu saja, padahal kemampuan ini sangat krusial untuk saling berinteraksi,
sistem keamanan dan lain sebagainya.
Masalah pengenalan wajah menjadi daya tarik para peneliti
dalam kurun waktu terakhir. Matrik citra wajah orang yang sama dapat memiliki
perbedaan. Hal ini disebabkan
beberapa faktor, seperti pencahayaan, ekspresi wajah, dan
pose. Dalam melakukan proses pengenalan terdapat dua hal penting yaitu
ekstraksi fitur dan pengukuran kemiripan/ metode klasifikasi yang digunakan.
Metode ekstraksi fitur yang banyak digunakan adalah
Principal Component Analysis (PCA) dan Independent Component Analysis (ICA).
PCA pertama dikenalkan oleh Turk and Pentland pada tahun 1991 sedangkan ICA
dikenalkan oleh Bell and Sejnowski pada tahun 1995. PCA bertujuan untuk
mewakili citra masukan berdasarkan eigenvector yang berkorespondensi dengan
eigenvalue yang disusun secara decreasing sedangkan ICA bertujuan untuk
menemukan transformasi
linear pada data masukan menggunakan variabel bebas secara
statistik yang mungkin. Kedua metode ini sangat sensitif terhadap pencahayaan.
Sehingga konsep ICA dapat dianggap generalisasi dari PCA [1].
Pada metode PCA, matrik citra wajah harus terlebih dahulu
diubah menjadi 1D vektor citra. Sehingga hasil citra vektor memiliki ruang
dimensi yang tinggi, akibatnya sulit untuk melakukan evaluasi matrik kovarian
secara akurat karena ukurannya yang besar dan hanya efektif untuk jumlah data
pelatihan yang sedikit [2]. Oleh karena itu, dilakukan pengembangan metode PCA
yaitu 2DPCA untuk mengatasi kelemahan metode PCA tersebut.
Pada 2DPCA menggunakan teknik proyeksi citra langsung,
matrik citra wajah 2D tidak perlu ditransformasikan ke dalam bentuk citra
vektor namun secara langsung matrik kovarian citranya dapat dibentuk langsung
dengan menggunakan matrik citra aslinya sehingga ukuran matrik kovarian
citranya menjadi lebih kecil. Metode 2DPCA memiliki dua keuntungan penting
daripada PCA, yaitu pertama, lebih mudah dan akurat untuk melakukan evaluasi
matrik kovarian. Kedua, waktu yang dibutuhkan untuk menentukan eigenvector
lebih sedikit [2].
Pada penelitian sebelumnya, Denis et. al membandingkan
metode PCA dan ICA dengan pengukuran kemiripan menggunakan SVM [3]. Selain itu
telah dilakukan penerapan ekstraksi kemiripan menggunakan Euclidean Distance
dan SVM [4]. Kemudian Gan et.al melakukan penelitian dengan menggunakan
2DPCA-ICA sebagai metode ekstraksi fitur dan nearest neighbor sebagai metode
klasifikasinya [5].
Pada penelitian ini mempresentasikan integrasi metode
2DPCA-ICA dan SVM sebagai metode klasifikasi dengan tujuan meminimalkan
kesalahan (error) yang terjadi sehingga nilai akurasi pada pengenalan wajah
meningkat serta komputasi yang diperlukan lebih cepat. Uji coba dilakukan
menggunakan basis data wajah Yale, ORL dan Bern.
METODE
Two Dimensional Principal Component Analysis (2DPCA)
Algoritma 2DPCA dapat dijelaskan sebagai berikut [1]:
1. Himpunan sebanyak M citra dari basis data citra wajah
pelatihan (xi), yang diproyeksikan ke dalam matrik dua dimensi (xi).
2.
3.
4. Y=
±̅ =
Ï = dar Perhitungan
pelatihan
Perhitungan himpunan
Perhitungan
x x K x
11 21 M 1
x x L x
12 22 M2
K K K K
x x K x
1N 2N MN
rata-rata dari (±̅):
r å
+r
å ∑ x¯
matrik
citra pelatihan
r å
∑ #±~ −
±̅%æ~±~
å +r
eigenvalue
i matrik kovarian (1)
1
total matrik citra
(2)
kovarian dari
(G):
− ±̅~ (3)
dan eigenvector
dapat diperoleh
berdasarkan persamaan 4:
çæ(Ï)ç = ∧ (4)
Eigenvalue (∧) selalu berkorespondensi dengan
perubahan eigenvector (U). Selanjutnya eigenvector diproyeksikan sesuai
eigenvalue mulai dari yang terbesar (d).
5. Memperoleh fitur vektor proyeksi optimal dari 2DPCA, yang
direpresentasikan oleh Y1, Y2, ..., Yd, yang disebut sebagai principal
component vectors dari sampel citra wajah pelatihan (x).
Independent Component Analysis (ICA)
Pemodelan ICA dinotasikan sebagai r(t) = As(t) dengan r(t)
adalah variabel acak yang diteliti, s(t) adalah vektor dari komponen bebas
(independent component) dan A adalah matrik citra [3]. Tujuan dari ICA yaitu
meramalkan matrik A dan komponen bebas s(t) menggunakan variabel masukan r(t).
Berdasarkan ICA asli, diasumsikan sangat sederhana yaitu s(t) merupakan
komponen bebas secara statistik. Pada penelitian ini diasumsikan bahwa komponen
bebas menggunakan distribusi non-gauss yaitu FAST ICA yang bertujuan untuk memaksimalkan
fungsi kontras.
Two Dimensional Principal
Component Analysis - Independent Component Analysis
(2DPCA-ICA)
Diasumsikan matrik data pelatihan dinotasikan dengan X = [x1
x2 ... xn], dan berkorespondensi dengan komponen bebas S =
[s1 s2 ... smj. Hubungan antara X dan S ditunjukkan pada
persamaan berikut [5]:
X = AS
(5)
Berdasarkan persamaan 5, setiap citra wajah xi dapat
diwakili sebagai kombinasi linear dari s1, s2, ..., sm dengan nilai bobot
masing-masing ai1, ai2, ..., aim. Oleh karena itu, A adalah matrik n x m yang
disebut sebagai matrik fitur gabungan. FAST ICA digunakan untuk menghitung
matrik gabungan, A.
Matrik gabungan, A merupakan matrik balikan, sehingga
didapatkan W dengan rumus:
A = W-1 (6)
dimana W adalah matrik transformasi.
Pada penelitian ini, 2DPCA digunakan untuk mereduksi dimensi
dari data pelatihan xi,
i = 1, 2, ..., M. Berdasarkan persamaan 4, eigenvalue (∧)
dan eigenvector (U) diperoleh dari perhitungan matrik kovarian. Selanjutnya
eigenvector diproyeksikan sesuai eigenvalue mulai dari yang terbesar (d) untuk
menghitung matrik pemutihan (whitened matrix) berdasarkan persamaan 7 berikut:
æ
é =∧~ t1/2 ç
,
ìi(î = 1,2, ..., o) disebut sebagai
eigenvalue dan disusun ìr ≥ ìM ≥ ⋯ ≥ ìd. Eigenvector berkorespondensi
dengan eigenvalue dinotasikan sebagai ði(î = 1,2, . .., o), selanjutnya kompresi matrik fitur dari
eigenvector ditunjukkan sebagai çd = [ðr ðM ... ðd].
Proses terakhir, data pelatihan dinotasikan sebagai é(±j −
±)ñññæ, ò = 1,2,..., ó. FAST-ICA digunakan untuk menghitung matrik gabungan, A,
dan matrik fitur, W, ô ∈ õmd  and. Jika d adalah komponen bebas yang dipilih, maka matrik
bebas (independent matrix) didefinisikan sebagai berikut:
ö = ôé
(8)
dengan ô ∈ õmd  d, é ∈ õdÂn, dan ö ∈ õmdÂn. Selanjutnya vektor proyeksi optimal dari 2DPCA-ICA
diperoleh dari
÷ = [±l − ±]ø öæ
(9)
dengan ÷ ∈ õmÂmd.
Setelah ekstraksi fitur dengan 2DPCA-ICA, maka didapatkan
vektor fitur proyeksi dari
Support Vector Machines (SVM) Salah satu metode
klasifikasi yang memiliki performa sangat tinggi adalah
Support Vector Machines (SVM). Metode ini pertama kali dikenalkan oleh Vapnik
tahun 1995 untuk klasifikasi biner. SVM mampu mengoptimalkan hyperplane yang
memisahkan kelas
kelas saat melakukan
ujicoba.
Selanjutnya Hsu dan Lin berhasil mengembangkan SVM multiclass
[6]. Pada dasarnya terdapat dua
pendekatan untuk menyelesaikan permasalahan SVM multiclass.
Pendekatan pertama adalah dengan menggabungkan semua data
dalam suatu permasalahan optimasi, sedangkan pendekatan
kedua adalah dengan membangun multiclass classifier, yaitu dengan cara
menggabungkan beberapa SVM biner. Pendekatan pertama menuntut penyelesaian
masalah optimasi yang lebih rumit dan komputasi yang
tinggi,
sehingga pendekatan ini tidak
banyak
dikembangkan.
Selain itu,
Liu
et.al telah
mengembangkan SVM multiclass one against all [7].
Dalam penelitian ini menggunakan SVM one against all dengan
kernel gaussian. Pada proses klasifikasi pelatihan variabel hyperplane untuk
setiap
pengklasifikasi
(classifier) yang
didapat akan disimpan dan nantinya digunakan sebagai
datatiap pengklasifikasi dalam proses pengujian, dengan kata lain proses
klasifikasi pelatihan adalah untuk mencari support vector dari data input
(dalam hal ini digunakan quadratic programming).
Pada
proses klasifikasi pengujian menggunakan hasil ekstraksi
fitur data pengujian dan hasil proses klasifikasi pelatihan. Hasil dari proses
ini berupa nilai indeks dari fungsi keputusan yang
terbesar
yang
menyatakan kelas dari data pengujian. Jika kelas yang
dihasilkan dari proses klasifikasi pengujian sama dengan
kelas data pengujian, maka pengenalan dinyatakan benar. Hasil akhirnya berupa
citra wajah yangsesuai dengan nilai indeks dari fungsi keputusan yang terbesar
hasil dari proses klasifikasi pengujian. Berikut ini adalah algoritma SVM one
against all
proses pelatihan dilanjutkan dengan proses pengujian
–
pada
:
1. Membangun
sejumlah k SVM biner (k adalah jumlah kelas).
2. Proses
pelatihan pada setiap SVM biner (no.2-4). Memetakan input space ke feature
space menggunakan kernel Gaussian
|K(x,y) = exp( (2) |2
s )
(10)
3. Menentukan
sejumlah support vector dengan cara menghitung nilai alpha a1, ..., aN ( N =
sejumlah data pelatihan) menggunakan quadratic programming
l l
1
Q(a) = a − aa y y x x
i i j i j
i j
i=1 2 , 1
i i=
(11)
l
dengan : ai 3 0 (i =1,2, ... ,l) Y ai y = 0
i
i=1
Data xri yang berkorelasi dengan ai > 0
inilah yang disebut sebagai support vector
4. Solusi
bidang pemisah didapatkan dengan
rumus: w =Eaiyixi (12)
dan b = yk- wTxk untuk setiap xk , dengan ak1 0.
5. Proses
pengujian pada setiap SVM biner (no.5-6).
Memetakan input space ke feature space menggunakan kernel
Gaussian, seperti ditunjukkan pada persamaan 10.
6. Menghitung fungsi keputusan:
f i =K(xi,xd)wi +bi (13)
dengan: i = 1 sampai k; xi = support vector; xd = data
pengujian.
7. Menentukan
nilai fi yang paling
maksimal. Kelas i dengan fi terbesar adalah kelas dari data
pengujian.
RANCANGAN SISTEM
Secara garis besar sistem terdiri dari dua bagian, yaitu
proses pelatihan citra dan proses pengujian. Pada Gambar 1 merupakan gambaran
garis besar sistem pengenalan wajah menggunakan metode 2DPCA-ICA dan SVM. Pada
proses pelatihan terdapat proses 2DPCA¬ICA yang digunakan untuk mengekstraksi
fitur, fitur-fitur yang terpilih pada saat proses pelatihan digunakan dalam
proses klasifikasi dan juga digunakan untuk mendapatkan fitur¬fitur yang
terpilih pada data uji coba. Masing¬masing basis data wajah yang digunakan
dibagi menjadi dua, sebagian digunakan untuk proses
pelatihan (training) dan sisanya digunakan untuk proses pengujian (testing).
Gambar 1. Rancangan sistem pengenalan wajah menggunakan
metode 2DPCA-ICA dan
SVM
HASIL DAN PEMBAHASAN
Pada penelitian ini,
integrasi metode
2DPCA-ICA dan SVM diterapkan pada pengenalan wajah
menggunakan database wajah Yale, ORL dan Bern. Database wajah Yale menggunakan
variasi ekspresi wajah dan pencahayaan. Database ini terdiri dari 165 citra
dari 15 orang, setiap orang memiliki 11 perbedaan citra dengan ukuran dimensi
64 x 88. Sedangkan database wajah ORL menggunakan variasi pose dan ukuran data.
Database ini terdiri dari 40 orang, masing-masing orang memiliki 10 perbedaan,
dengan ukuran dimensi 92 x 112.. Pada database wajah Bern terdiri dari 28
orang, masing-masing orang memiliki 10 perbedaan, dengan ukuran dimensi 64 x
88..
Pada uji coba, semua citra pada tiga database wajah diubah
menjadi grayscale dan dilakukan normalisasi menjadi 30 x 24 piksel dengan
metode interpolasi bilinear. Selanjutnya ukuran matrik kovarian adalah 24 x 24
untuk mendapatkan eigenvector. Pada penelitian ini, memilih eigenvector yang
berkorespondensi dengan 6 eigenvalue terbesar sehingga dilakukan perhitungan
matrik pemutihan (whitened matrix) E _ ∧d"' Ud, dengan d = 6.
Kemudian dilakukan proses FAST-ICA untuk menghitung vektor
dari komponen bebas, S. Pada penelitian ini menggunakan 6
komponen bebas (d = 6). Berdasarkan persamaan 8, bahwa dimensi S adalah
24x6x24. Selanjutnya menghitung vektor proyeksi berdasarkan persamaan 9
sehingga didapatkan Y, dengan ukuran dimensi sama dengan 24x24x6.
Dilanjutkan dengan proses klasifikasi menggunakan SVM one
against all. Setelah menghitung fungsi keputusan (fi) dan kelas data x akan
ditentukan berdasarkan nilai fungsi keputusan yang tertinggi. Untuk pencarian
solusi tersebut menggunakan quadratic programming. Pada penelitian ini
menggunakan Matlab 2010, termasuk
quadratic programming langsung
menggunakan yang sudah tersedia di Matlab.
Untuk masing-masing database wajah pelatihan menggunakan 3
wajah (uji 3), 4 wajah (uji 4), 5 wajah (uji 5) . Sisa wajah yang tidak
digunakan pada proses pelatihan, maka digunakan sebagai data pengenalan/
pengujian. Pada Tabel 1, 2 dan 3 menunjukkan hasil pengenalan wajah menggunakan
database Yale, ORL, dan Bern dengan membandingkan metode 2DPCA + SVM dan
2DPCA-ICA + SVM.
Tabel 1 Perbandingan hasil pengenalan wajah menggunakan
2DPCA dan 2DPCA-ICA dengan SVM sebagai pengklasifikasinya pada database Yale
Metode Akurasi
pengenalan (%)
Uji 3 Uji 4 Uji
5
2DPCA +
SVM 80.65 83.42 87.25
2DPCA-ICA
+ SVM 84.5 89.55 93.6
Tabel 2 Perbandingan hasil pengenalan wajah menggunakan
2DPCA dan 2DPCA-ICA dengan SVM sebagai pengklasifikasinya pada database ORL
Metode Akurasi
pengenalan (%)
Uji 3 Uji 4 Uji
5
2DPCA + 88.3 92.5 98.75
SVM
2DPCA-ICA 90.5 94.75 99.6
+ SVM
Tabel 3 Perbandingan hasil pengenalan wajah menggunakan
2DPCA dan 2DPCA-ICA dengan SVM sebagai pengklasifikasinya pada database Bern
Metode Akurasi
pengenalan (%)
Uji 3 Uji 4 Uji
5
2DPCA + 86.47 93.65 96.25
SVM
2DPCA-ICA 84.5 94.55 99 + SVM
Berdasarkan Tabel 1, 2 dan 3 menunjukkan bahwa rata-rata
akurasi pengenalan wajah menggunakan 2DPCA-ICA + SVM lebih tinggi dibandingkan
dengan 2DPCA + SVM, yaitu sebesar 99,6% dengan 5 data pelatihan pada database
ORL. Metode 2DPCA-ICA mampu menggabungkan kelebihan 2DPCA (ukuran matrik
kovarian yang lebih kecil dibandingkan PCA) dan ICA (generalisasi dari PCA).
SIMPULAN
Pada penelitian ini mempresentasikan integrasi metode
2DPCA-ICA dan SVM one against all pada pengenalan wajah. Uji coba menggunakan
database wajah Yale, ORL dan Bern. Berdasarkan hasil uji coba, 2DPCA-ICA dan
SVM memiliki rata-rata akurasi pengenalan wajah lebih tinggi dibandingkan 2DPCA
dan SVM, yaitu sebesar 99.6% menggunakan pada 5 data pelatihan pada database
ORL.
DAFTAR PUSTAKA
[1] Liu, C. Enhanced Independent
Component Analysis of Gabor Features for Face Recognition.
IEEE Transactions on Neural Networks. 14: 919-928. 2003.
[2] Yang, J.,
Zhang, D., Frangi, A.F. and Yang, J.Y. Two-Dimensional PCA : A New Approach to
Appearance-Based Face Representation and Recognition. IEEE Transactions on
Pattern Analysis and Machine Intelligence. 26 (1) : 131- 137. 2004.
[3] Deniz, O.,
Castrillon, M., and Hernandez, M. Face Recognition Using Independent Component
Analysis and Support Vector Machines. Pattern Recognition Letters. 24:
2153-2157. 2003.
[4] Fortuna,
J. and Capson, D. Improved Support Vector Classification Using PCA and ICA
Feature Space Modification. Pattern Recognition. 37: 1117-1129.
[5] Gan,
J.-y., Li, C.-z., and Zhou, D.-p. A Novel Method for 2DPCA-ICA in Face
Recognition. ICIC 2007, CCIS 2, pp. 1203-1209. 2007.
[6] Hsu, C.W.,
and Lin, C.J. A Comparison of Methods for Multi-class Support Vector Machines,
IEEE Transactions on Neural Networks. 13(2): 415-425. 2002.
[7] Liu, Y.,
Wang, R., Zeng, Y., and He, H. An Improvement of One-against-all Method for
Multiclass Support Vector Machine. 4th International Conference: Sciences of
Electronic, Technologies of Information and Telecommunications (SETIT 2007).
Tunisia. 2007.
Tidak ada komentar:
Posting Komentar