Latar Belakang PENDAHULUAN Penelitian mengenai pengenalan wajah termotivasi oleh banyaknya aplikasi praktis yang diperlukan dalam identifikasi wajah. Pengenalan wajah sebagai salah satu dari teknologi biometrik utama menjadi semakin penting dengan adanya kemajuan yang cepat dalam teknologi, seperti kamera digital, internet, mobile devices, dan peningkatan permintaan pada sistem keamanan. Pengenalan wajah mempunyai beberapa keuntungan di atas teknologi biometrik lainnya, yaitu alami (natural), tidak ada gangguan (non intrusive), dan mudah digunakan (Karande & Talbar 2008b). Ada dua pendekatan utama pada masalah pengenalan wajah, yaitu pendekatan geometris (feature based) dan pendekatan fotometrik (view based). Pendekatan geometris merupakan pendekatan yang mengekstraksi dan menghubungkan fitur komponen citra wajah seperti mata, hidung, dan mulut. Adapun pendekatan fotometrik merupakan pendekatan yang merepresentasikan informasi piksel citra wajah. Pada penelitian pengenalan wajah terdapat banyak metode yang diusulkan seperti Principal Component Analysis (PCA), Linear Discriminant Analysis (LDA), dan Elastic Bunch Graph Matching (EBGM) (Karande & Talbar 2008a). Penelitian ini menggunakan algoritme Voting Feature Intervals (VFI5) dengan pendekatan fotometrik. Algoritme VFI5 merepresentasikan deskripsi sebuah konsep dengan sekumpulan interval fitur. Pada sekumpulan data yang sama dari ECG recordings, algoritme VFI5 menghasilkan akurasi yang lebih tinggi, yaitu 62% dibandingkan dengan algoritme klasifikasi standar seperti Naive Bayesian (NB) yang menghasilkan akurasi 50% dan Nearest Neighbor (NN) menghasilkan yang akurasi 53% Pengenalan wajah menggunakan algoritme VFI5 telah dilakukan dengan hasil akurasi yang cukup baik. Pramitasari (2009) pada penelitiannya menggunakan algoritme VFI5 dengan praproses transformasi wavelet menghasilkan akurasi mencapai 90%. Penelitian pengenalan wajah lainnya menggunakan algoritme VFI5 dilakukan oleh Purwaningrum (2009) dan menghasilkan akurasi hingga 96,3%. Penelitian Purwaningrum (2009) ini menggunakan input histogram citra yang memiliki beberapa keunggulan dibanding menggunakan nilai piksel citra. Penggunaan algoritme VFI5 juga dilakukan pada pengenalan citra tanda tangan oleh Muttaqien (2009). Penelitian ini berbasis histogram dengan tambahan penggunaan partisi citra dan menghasilkan akurasi tertinggi hingga 95,56%. Tujuan Penelitian ini bertujuan melakukan pengenalan wajah dengan berbagai ekspresi menggunakan algoritme VFI5 berbasis histogram dan penggunaan partisi citra. Ruang Lingkup Ruang lingkup penelitian ini adalah pengenalan citra wajah dengan berbagai ekspresi berdasarkan tingkat keabuan. Data citra yang digunakan adalah data sekunder berupa citra 15 orang yang berbeda dengan masingmasing wajah memiliki delapan ekspresi yang berbeda, yaitu ekspresi memakai kacamata, tersenyum, tidak memakai kacamata, biasa, cemberut, menutup mata, kaget, dan kerling. Seluruh citra memiliki latar belakang berwarna putih yang seragam. Citra Digital TINJAUAN PUSTAKA Sebuah citra didefinisikan sebagai sebuah fungsi dua dimensi, f(x,y), dimana x dan y adalah koordinat spasial dan amplitudo dari f merupakan pasangan dari koordinat (x,y) yang disebut intensity atau gray level sebuah citra. Ketika x, y, dan nilai amplitudo f bernilai diskret dan terbatas, maka citra tersebut disebut citra digital. Citra digital dibentuk oleh sejumlah elemen yang terbatas dimana setiap elemen telah memiliki lokasi dan nilai khusus. Elemenelemen ini sering disebut sebagai picture elemen, image elemen, pels, atau pixels. dari beberapa istilah tersebut, pixels merupakan istilah yang paling sering digunakan untuk menunjukkan elemen citra digital. Citra memiliki derajat keabuan berformat 8- bit dan 256 intensitas warna yang berkisar pada nilai 0 sampai 255. Nilai 0 menunjukkan tingkat paling hitam dan 255 menunjukkan tingkat paling putih (Gonzales & Woods 2002). Pengolahan Citra (Image Processing) Pengolahan citra digital merupakan proses yang masukan dan keluarannya adalah citra dan meliputi proses pengekstrakan atribut dari citra 1
dan pengenalan citra. Selain itu, yang dimaksud dengan pengolahan citra digital biasanya adalah pengolahan citra menggunakan komputer digital (Gonzalez & Woods 2002). Ekstraksi Fitur Ekstraksi fitur menghasilkan representasi baru oleh transformasi dari data asli. Pengurangan dimensi dari representasi data dengan ekstraksi fitur bisa memberikan tujuan tambahan, mencakup penghilangan redundansi, menemukan variabel tersembunyi, dan mengetahui struktur data (Dahua 2006). Histogram Histogram sebuah citra dengan derajat keabuan antara [0, L-1] merupakan fungsi diskret h(r k ) = n k dengan r k adalah derajat keabuan ke-k dan n k adalah jumlah piksel pada citra yang mempunyai derajat keabuan r k dengan k = 0, 1, 2,, L-1. Normalisasi histogram dapat dilakukan dengan membagi setiap nilai dengan total jumlah piksel pada citra dengan jumlah semua komponen hasil normalisasi tersebut sama dengan 1. Histogram merupakan dasar dari berbagai teknik pemrosesan domain spasial. Histogram dapat digunakan untuk memperbaiki citra, kompresi, dan segmentasi citra (Gonzales & Woods 2002). Contoh citra dan histogramnya disajikan pada Gambar 1. Gambar 1 Dua wajah yang berbeda dan histogramnya. Klasifikasi Klasifikasi merupakan serangkaian proses untuk menemukan sekumpulan model yang merepresentasikan dan membedakan kelas-kelas data. Klasifikasi ini bertujuan agar model tersebut dapat digunakan untuk memprediksi kelas dari suatu data yang label kelasnya tidak diketahui (Han & Kamber 2006). Algoritme klasifikasi terdiri atas dua tahap, yaitu pelatihan dan prediksi/klasifikasi. Pada tahap pelatihan dibentuk model domain dari data pelatihan yang ada. Adapun pada tahap klasifikasi, menggunakan model tersebut untuk memprediksi kelas dari suatu data/instance baru Voting Feature Intervals (VFI5) Algoritme VFI5 merupakan algoritme klasifikasi yang merepresentasikan deskripsi sebuah konsep dengan sekumpulan intervalinterval nilai fitur. Pengklasifikasian sebuah instance baru didasarkan pada vote klasifikasi yang dibuat oleh nilai tiap fitur secara terpisah. VFI5 bersifat supervised learning dan nonincremental sehingga semua data latih dapat diproses secara bersamaan. Tiap contoh data latih direpresentasikan sebagai nilai-nilai fitur sebuah vektor disertai sebuah label yang merepresentasikan kelas contoh data. Algoritme VFI5 membentuk interval-interval nilai fitur (interval) untuk tiap fitur dari contoh data latih (Guvenir 1998). Interval-interval yang dibuat dapat berupa point interval atau range interval. Point interval terdiri atas seluruh end point secara berturutturut, sedangkan range interval terdiri atas nilainilai antara dua end point yang berdekatan tetapi tidak termasuk kedua end point tersebut. Vote tiap kelas pada interval tersebut kemudian disimpan untuk tiap intervalnya. Oleh karena itu, sebuah interval dapat merepresentasikan beberapa kelas dengan menyimpan vote tiap kelas. Keunggulan algoritme VFI5 adalah algoritme ini cukup kokoh (robust) terhadap fitur yang tidak relevan tetapi mampu memberikan hasil yang baik pada real-world datasets yang ada. VFI5 mampu menghilangkan pengaruh yang kurang menguntungkan dari fitur yang tidak relevan dengan mekanisme votingnya (Guvenir 1998). Algoritme VFI5 terdiri atas dua tahap, yaitu tahap pelatihan dan klasifikasi 1. Pelatihan Langkah pertama pada tahap pelatihan adalah menemukan end points tiap kelas c pada tiap fitur f. End points kelas c yang diberikan merupakan nilai yang terkecil dan terbesar pada dimensi fitur linear (kontinu) f untuk beberapa instance dari kelas c yang sedang diamati. Pada hal lainnya, end points pada dimensi fitur nominal (diskret) f untuk kelas c yang diberikan adalah semua nilai yang berbeda dari f pada beberapa instance kelas c yang sedang diamati. End points dari tiap fitur f kemudian disimpan dalam array EndPoints[f]. Terdapat end points sebanyak 2k pada tiap fitur linear dengan k merupakan jumlah kelas. Jika fitur tersebut merupakan fitur linear maka point interval dari 2
Gambar 2 Algoritme pelatihan VFI5 (Guvenir 1998). Gambar 3 Algoritme klasifikasi VFI5 (Guvenir 1998). tiap end point yang berbeda dan range interval di antaranya dibentuk. Jika fitur tersebut merupakan fitur nominal, maka tiap end point yang berbeda merupakan sebuah point interval. Langkah selanjutnya, banyaknya instance pelatihan pada tiap interval dihitung dan jumlah instance kelas c pada interval i dari fitur f direpresentasikan sebagai interval_class_ count[f,i,c]. Pada tiap instance pelatihan, dicari interval i yang merupakan nilai fitur f dari instance pelatihan e (e f ) tersebut berada. Jika interval i adalah point interval dan e f sama dengan batas bawah interval tersebut (yang sama dengan batas atas pada point interval), jumlah kelas instance tersebut (ef) pada interval i ditambah 1. Jika interval i adalah range interval dan e f berada pada interval tersebut maka jumlah kelas instance ef pada interval i ditambah 1. Hasil proses inilah yang menjadi vote pelatihan kelas c pada interval i. 3
Supaya efek perbedaan distribusi tiap kelas dapat dihilangkan, vote kelas c untuk fitur f pada interval i dinormalisasi dengan membagi vote tersebut dengan jumlah instance kelas c yang direpresentasikan dengan class_count[c]. Hasil normalisasi ini dinotasikan sebagai interval_class_vote[f,i,c]. Selanjutnya, nilainilai interval_class_vote[f,i,c] dinormalisasi sehingga jumlah vote beberapa kelas pada tiap fitur sama dengan 1. Tujuan normalisasi ini adalah agar tiap fitur mempunyai kekuatan voting yang sama pada proses klasifikasi dan tidak dipengaruhi oleh ukuran fitur tersebut. Algoritme pelatihan VFI5 disajikan pada Gambar 2. 2. Klasifikasi Tahap klasifikasi dimulai dengan inisialisasi vote tiap kelas dengan nilai nol. Pada tiap fitur f dicari interval i tempat nilai e f berada dengan e f merupakan nilai fitur f dari instance uji e. Jika e f tidak diketahui (hilang), fitur tersebut tidak diikutsertakan dalam voting dengan memberikan vote nol pada tiap kelas. Jika e f diketahui maka interval tersebut dapat ditemukan dan dapat menyimpan instance pelatihan beberapa kelas. Kelas-kelas dalam sebuah interval direpresentasikan oleh vote kelas-kelas pada interval tersebut. Pada tiap kelas c, fitur f memberikan vote yang sama dengan interval_class_vote[f,i,c]. Notasi ini merepresentasikan vote fitur f yang diberikan pada kelas c. Tiap fitur f mengumpulkan semua vote dalam sebuah vektor (feature_vote[f,c 1 ],, feature_vote[f,cj],, feature_vote[f,c k ]), dengan feature_vote[f,cj] merupakan vote fitur f untuk kelas Cj dan k adalah jumlah kelas. Sebanyak d (jumlah fitur) vektor vote dijumlahkan untuk memperoleh total vektor vote (vote[c 1 ],, vote[c k ]). Kelas dari instance uji e adalah kelas yang memiliki jumlah vote terbesar. Algoritme klasifikasi VFI5 disajikan pada Gambar 3. Contoh Penerapan Algoritme VFI5 pada Data dengan Dua Fitur Penerapan algoritme pelatihan VFI5 dengan sembilan instance pelatihan disajikan pada Gambar 4. Pada Gambar 4(a) diketahui ada sembilan instance pelatihan dengan dua kelas yang berbeda dan masing-masing instance memiliki dua fitur (f1 dan f2). Langkah pertama dicari nilai minimum dan maksimum dari tiap fitur pada tiap kelas, kemudian semua nilai minimum dan maksimum tiap fitur tersebut diurutkan secara ascend tanpa melibatkan kelas. Langkah selanjutnya, pada Gambar 4(b) semua nilai minimum dan maksimum yang sudah diurutkan dijadikan interval (point interval dan range interval). Setelah itu dicari pada interval mana instance pelatihan berada dan ditambah 1. Berikutnya, pada Gambar 4(c) dilakukan tahap normalisasi pertama yaitu membagi nilai-nilai tiap interval dengan jumlah instance tiap kelas. Setelah itu, pada Gambar 4(d) dilakukan tahap normalisasi kedua yaitu membagi nilai hasil normalisasi pertama dengan jumlah nilai tiap fitur. Nilai hasil normalisasi kedua ini menjadi nilai vote yang akan digunakan pada tahap klasifikasi. (a) (b) (c) (d) Gambar 4 Contoh penerapan algoritme pelatihan VFI5. (a) Pencarian nilai minimum dan maksimum tiap kelas tiap fitur. (b) Pencarian keberadaan nilai instance pelatihan pada interval. (c) Tahap normalisasi pertama. (d) Tahap normalisasi kedua sebagai nilai vote pada tahap klasifikasi. 4
Berikut ini penerapan algoritme klasifikasi VFI5 disajikan pada Gambar 5. Pada Gambar 5(a) dapat dilihat terdapat dua instance data uji yang belum diketahui label kelasnya. Langkah pertama pada tahap klasifikasi yaitu dicari pada interval mana instance data uji berada. Setelah itu, pada Gambar 5(b) nilai vote yang diperoleh dari tahap pelatihan pada interval itu diambil untuk tiap kelasnya. Pada Gambar 5(c) dapat dilihat kelas yang memiliki nilai vote terbesar (semua nilai vote dijumlah untuk tiap kelasnya) maka diduga sebagai kelas prediksi. pembagian menjadi 64 interval disajikan pada Gambar 6. (a) (b) (c) Gambar 5 Contoh penerapan algoritme klasifikasi VFI5, (a) Data uji dengan dua instance. (b) Nilai vote hasil tahap pelatihan. (c) Nilai vote data uji dan kelas hasil prediksi. Penerapan VFI5 Berbasis Histogram Menurut Purwaningrum (2009), penerapan VFI5 berbasis histogram adalah penggunaan nilai histogram sebagai fitur pada algoritme VFI5. Selang histogram yang memiliki nilai 0-255 (256 interval) dibagi ke dalam beberapa interval kemudian dihitung jumlah piksel yang mempunyai derajat keabuan pada interval tertentu. Nilai pada interval-interval ini yang dijadikan fitur pada algoritme VFI5. Contohnya, jika dibagi ke dalam 64 interval, maka selang 0-3 menjadi 1 interval, selang 4-7 menjadi 1 interval, dan seterusnya sampai interval 64, yaitu selang 252-255. Jumlah piksel yang mempunyai derajat keabuan pada intervalinterval tersebut dijadikan sebagai fitur pada algoritme VFI5. Contoh histogram hasil Gambar 6 Contoh citra dengan histogram asli (256 interval) dan histogram hasil pembagian menjadi 64 interval. Confusion Matrix Confusion matrix merupakan sebuah tabel yang terdiri dari banyaknya baris data uji yang diprediksi benar dan tidak benar oleh model klasifikasi. Tabel ini diperlukan untuk menentukan kinerja suatu model klasifikasi (Tan et al. 2005). Contoh confusion matrix dapat dilihat pada Tabel 1. Tabel 1 Confusion matrix untuk data 2 kelas Kelas Aktual Kelas Prediksi Kelas 1 Kelas 2 Kelas 1 K 11 K12 Kelas 2 K 21 K 22 Akurasi hasil klasifikasi dari confusion matrix dihitung dengan rumus: Akurasi = METODE PENELITIAN Metodologi yang digunakan pada penelitian ini terdiri atas beberapa tahap. Tahapan-tahapan tersebut disajikan pada Gambar 7. 5