• Tidak ada hasil yang ditemukan

Penerapan Metode Eigenface Untuk Pencocokan Wajah Dengan Menggunakan Klasifikasi Naive Bayesian.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Penerapan Metode Eigenface Untuk Pencocokan Wajah Dengan Menggunakan Klasifikasi Naive Bayesian."

Copied!
81
0
0

Teks penuh

(1)

KLASIFIKASI NAIVE BAYESIAN

ABSTRAK

Wajah adalah biometrik yang secara alamiah dipunyai dan menjadi ciri khas

setiap manusia. Ciri khas wajah yang unik ini dapat dimanfaatkan untuk membantu

komputer mengenali wajah seseorang. Di antara metode yang ada, supaya komputer

dapat mengenali ciri wajah digunakan metode eigenface di tahap preprocessing dan metode naïve bayesian untuk proses klasifikasi. Kedua metode ini yang digunakan untuk pencocokan wajah dalam tulisan ini. Setiap hasil dari proses klasifikasi akan

dihitung akurasinya dengan menggunakan confusionmatrix. Dari hasil percobaan yang telah dilakukan, dengan menggunakan metode ini dapat dicapai akurasi 88%

dari 200 citra wajah yang berasal dari 20 mahasiswa dimana setiap mahasiswa

mempunyai 10 citra wajah. Berdasarkan hasil akurasi ini dapat disimpulkan bahwa

untuk pengenalan wajah dengan menggunakan komputer dapat digunakan metode

(2)

ABSTRACT

Face is a biometric that naturally belongs to human race and become one of

human characteristic. This unique characteristic can be used to help computers

recognize an image of person's face. In order to help computer recognize an image

of person’s face, eigenface method can be used in the image preprocessing stage and naïve bayesian method for the classification process. Both of these methods

are used for face recognize in this paper. Each result of the classification process

will be calculated using confusion matrix to gain the accuracy of the classification.

The results of the experiments that have been conducted, the accuracy reach up to

88% obtained from 200 face images by 20 students where each student have 10 face

images. Based on this result, eigenface and naïve bayesian concluded as suitable

(3)

i

Penerapan Metode Eigenface Untuk Pencocokan Wajah

Dengan Menggunakan Klasifikasi Naive Bayesian

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika

Oleh :

Halaman Judul

Ega Bima Putranto 115314059

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA

(4)

ii

Application of Eigenface Method For Face Recognize Use

Naïve Bayesian Classified

A Thesis

Presented as Partial Fulfillment of the Requirements to Obtain Sarjana

Komputer Degree in Informatics Engineering Study Program

Written By:

Halaman Judul (English)

Ega Bima Putranto 115314059

INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY YOGYAKARTA

(5)

iii

HALAMAN PESETUJUAN

SKRIPSI

Penerapan Metode Eigenface Untuk Pencocokan Wajah

Dengan Menggunakan Klasifikasi Naive Bayesian

Disusun oleh:

Ega Bima Putranto

115314059

Telah disetujui oleh:

Dosen Pembibing

(6)

iv

HALAMAN PENGESAHAN SKRIPSI

Penerapan Metode Eigenface Untuk Pencocokan Wajah

Dengan Menggunakan Klasifikasi Naive Bayesian

Dipersiapkan dan disusun oleh:

Nama : Ega Bima Putranto

NIM : 115314059

Telah dipertahankan di depan panitia penguji

pada tanggal 22 Juli 2015

dan dinyatakan memenuhi syarat

Susunan Panitia Penguji:

Nama Lengkap Tanda Tangan

Ketua Dr. Anastasia Rita Widiarti, M.Kom ___________

Sekretaris Eko Hari Parmadi, S.Si., M.Kom ___________

Anggota Dr. Cyprianus Kuntoro Adi, SJ., M.A., M.Sc. ___________

Yogyakarta, Juli 2015

Fakultas Sains dan Teknologi

Universitas Sanata Dharma

Dekan,

(7)

v

HALAMAN PERSEMBAHAN

“One way to forget about pain is to do something you will be in completely…So Computer Games”-- Danil Ishutin (Dendi)

(8)

vi

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini

tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan

dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.

Yogyakarta, 30 Juni 2015

Penulis

(9)

vii

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI

KARYA ILMIAH

UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata

Dharma:

Nama : Ega Bima Putranto

NIM : 115314059

Demi pengembangan ilmu pengetahuan, saya memberikan kepada

perpustakaan

Universitas Sanata Dharma karya ilmiah yang berjudul:

PENERAPAN METODE EIGENFACE UNTUK PENCOCOKAN WAJAH DENGAN MENGGUNAKAN KLASIFIKASI NAIVE BAYESIAN

Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya

memberikan kepada perpustakaan Universitas Sanata Dharma hak untuk

menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk

pangkalan data, mendistribusikan secara terbatas, dan mempublikasikan di

internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari

saya maupun memberikan royalty kepada saya selama tetap mencatumkan nama

saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, 30 Juli 2015

Yang menyatakan,

(10)

viii

PENERAPAN METODE EIGENFACE UNTUK

PENCOCOKAN WAJAH DENGAN MENGGUNAKAN

KLASIFIKASI NAIVE BAYESIAN

ABSTRAK

Wajah adalah biometrik yang secara alamiah dipunyai dan menjadi ciri

khas setiap manusia. Ciri khas wajah yang unik ini dapat dimanfaatkan untuk

membantu komputer mengenali wajah seseorang. Di antara metode yang ada,

supaya komputer dapat mengenali ciri wajah digunakan metode eigenface di tahap

preprocessing dan metode naïve bayesian untuk proses klasifikasi. Kedua metode ini yang digunakan untuk pencocokan wajah dalam tulisan ini. Setiap hasil dari

proses klasifikasi akan dihitung akurasinya dengan menggunakan confusion matrix. Dari hasil percobaan yang telah dilakukan, dengan menggunakan metode ini dapat dicapai akurasi 88% dari 200 citra wajah yang berasal dari 20 mahasiswa

dimana setiap mahasiswa mempunyai 10 citra wajah. Berdasarkan hasil akurasi

ini dapat disimpulkan bahwa untuk pengenalan wajah dengan menggunakan

(11)

ix

APPLICATION OF EIGENFACE METHOD FOR FACE

RECOGNIZE USE NAÏVE BAYESIAN CLASSIFIED

ABSTRACT

Face is a biometric that naturally belongs to human race and become one

of human characteristic. This unique characteristic can be used to help computers

recognize an image of person's face. In order to help computer recognize an image of person’s face, eigenface method can be used in the image preprocessing stage and naïve bayesian method for the classification process. Both of these methods

are used for face recognize in this paper. Each result of the classification process

will be calculated using confusion matrix to gain the accuracy of the

classification. The results of the experiments that have been conducted, the

accuracy reach up to 88% obtained from 200 face images by 20 students where

each student have 10 face images. Based on this result, eigenface and naïve

(12)

x

KATA PENGANTAR

Dengan kerendahan hati terucap puji dan syukur kepada Tuhan Yang

Maha Esa karena dengan perlindungan dan kuasa-Nya penulis dapat menyelesaikan skripsi yang berjudul “Penerapan Metode Eigenface Untuk Pencocokan Wajah Dengan Menggunakan Klasifikasi Naïve Bayesian”. Pada

proses penulisan tugas akhir ini, terucap banyak terimakasih kepada:

1. Kedua orang tua penulis, Bapak M. Alim Bimo Gunarto dan Ibu Siti

Baroyani yang menyemangati penulis.

2. Kedua saudara penulis, Antonius Aryanto Nugroho dan Mita Kurnianti

yang tanpa henti memberi semangat kepada penulis.

3. Romo Dr. Cyprianus Kuntoro Adi, SJ, MA, M.Sc. selaku dosen

pembimbing, terima kasih atas bimbingan, kesabaran, inspirasi, dan

motivasi yang telah diberikan sehingga penulis dapat menyelesaikan

skripsi ini.

4. Bapak Eko Hari Parmadi, S.Si., M.Kom. dan Ibu Dr. Anastasia Rita

Widiarti, M.Kom. selaku dosen penguji yang telah memberikan banyak masukan terhadap skripsi ini.

5. Romo Poldo Situmorang, Benedictus Reynusa Paradhipta dan Aluisius

Bayu Saputra yang bersama-sama memberikan ide, inspirasi dan

semangat dengan cara membantu ataupun menyusahkan.

6. Seluruh civitas akademika Teknik Informatika angkatan 2011, terutama

anggota C++ yang telah berjuang bersama dan saling memberi

semangat dan inspirasi.

7. Teman-teman Dota 2 Yogo, Niel, Pantrek, Angga, Nusa dan yang tidak

bisa disebut satu persatu, yang telah menemani dan menghibur penulis.

8. Semua pihak baik langsung maupun tidak langsung, yang telah

membantu dalam proses penyelesaian skripsi ini.

Yogyakarta, 22 Juli 2015 Penulis,

(13)

xi

Daftar Isi

Halaman Judul ... i

Halaman Judul (English) ... ii

HALAMAN PESETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERSEMBAHAN ... v

PERNYATAAN KEASLIAN KARYA ... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI ... vii

ABSTRAK ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

Daftar Isi ... xi

Daftar Gambar... xiii

Daftar Tabel ... xiv

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan ... 2

1.4 Batasan Masalah ... 2

BAB II LANDASAN TEORI ... 3

2.1 Pengenalan Wajah ... 3

2.1.1 Pengertian Pengenalan Wajah ... 3

2.1.2 Tahapan Pengenalan Wajah ... 4

2.1.3 Ekstrasi Ciri ... 5

2.2 Metode Eigenface ... 5

2.2.1 Principal Component Analysis (PCA) ... 7

2.2.2 Proses Principal Component Analysis (PCA) / Eigenface .. 7

2.2.3 Contoh PerhitunganEigenface ... 8

2.3 Naive Bayesian ... 16

2.3.1 Klasifikasi Naive Bayesian ... 16

2.3.2 Contoh Perhitungan Naive Bayesian ... 18

(14)

xii

BAB III METODOLOGI ... 22

3.1 Metode Pengumpulan Data ... 22

3.2 Teknik Analisis Data ... 22

3.3 Desain User Interface ... 28

3.4 Spesifikasi Software dan Hardware ... 30

BAB IV IMPLEMENTASI DAN ANALISIS HASIL ... 31

4.1 Implementasi ... 31

4.1.1 Pengolahan Data ... 31

4.1.1.1 Preprocessing ... 32

4.1.1.2 Proses ... 34

4.1.1.3 Output ... 35

4.1.1.4 Akurasi ... 35

4.1.2 User Interface ... 36

4.2 Analisis ... 39

BAB V KESIMPULAN DAN SARAN ... 43

5.1 Kesimpulan ... 43

5.2 Saran ... 43

Daftar Pustaka ... 45

(15)

xiii

Daftar Gambar

Gambar 2.1 PengenalanWajah (Zhao dan Chellapa, 2006) ... 4

Gambar 3.1 Diagram Block ... 22

Gambar 3.2 User Interface ... 29

Gambar 4.1 Data Awal I ... 31

Gambar 4.2 Data Awal II ... 32

Gambar 4.3 Cropping dan Resize ... 32

Gambar 4.4 Data I ... 33

Gambar 4.5 Data II ... 33

Gambar 4.6 Tabel Hasil Confusion matrix ... 35

Gambar 4.7 Hasil Matrix ... 36

(16)

xiv

Daftar Tabel

Tabel 2.1 Hasil eigen value dan eigen vektor ... 13

Tabel 2.2Tabel IPK ... 18

Tabel 2.3 Hasil IPK ... 19

Tabel 2.4 Hasil Uji IPK ... 19

Tabel 2.5 Confusion Matrix ... 20

Tabel 2.6 Contoh Confusion Matrix ... 21

Tabel 3.1 Pembagian Data ... 27

Tabel 3.2 Contoh Hasil Confusion Matrix (akurasi 88%) ... 28

(17)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Indonesia merupakan negara yang maju. Teknologi di Indonesia juga

sudah bisa dikatakan maju karena penggunaan teknologi yang banyak. Bisa

dibuktikan dengan salah satunya adalah biometrik. Biometrik adalah metode

mengenali karakteristik biologis manusia dari ciri fisik biologisnya. Contoh

penerapan biometrik di Indonesia beberapa diantaranya adalah sistem absensi

yang menggunakan sidik jari, raut wajah, dan retina mata.

Walaupun banyak yang menerapkan biometrik ini, sangat disayangkan di

Indonesia belum banyak yang membuatnya sendiri. Banyak perkantoran atau

instansi-instansi lainya yang masih membelinya dari luar negeri. Hal ini membuat

Indonesia di mata dunia masih sebagai konsumen bukan sebagai pengembang

perangkat lunak.

Metode eigenface pernah digunakan untuk citra wajah beperapa karyawan Universitas Sanata Dharma Yogyakarta. Penelitian tersebut menggunakan metode

ecludian distance sebagai pencocokan wajahnya. Tingkat keberhasilan dari metode ecludian distance adalah 97.143% yang didapat dari salah satu kombinasi data dari proses 3 fold crossvalidation. (Putri, 2012)

(18)

mampu membantu pengembang perangkat lunak untuk mendalami metode

tersebut sehingga dapat mengurangi permasalahan yang sudah disebutkan diatas.

1.2 Rumusan Masalah

Berdasarkan latar belakang yang telah disebutkan sebelumnya, maka dapat

dirumuskan permasalahan, yaitu:

1. Bagaimana metode eigenface dapat mengekstrasi ciri citra wajah?

2. Berapa akurasi pengenalan wajah menggunakan klasifikasi naive bayesian

dalam mengenali wajah?

1.3 Tujuan

Adapun tujuan dari penelitian ini, antara lain :

1. Menerapkan metode eigenface untuk mengektraksi ciri citra wajah dengan baik.

2. Mengetahui akurasi pengenalan wajah menggunakan klasifikasi naive bayesian.

1.4 Batasan Masalah

1. Citra digital hanya dapat menggunakan tampilan background polos sehingga tidak ada obyek-obyek dibelakangnya.

2. Sistem hanya berbentuk prototype yang dibuat menggunakan MATLAB. 3. Data sebanyak 200 citra wajah dari 20 orang dimana setiap orang memiliki

10 citra wajah dengan berbagai ekspresi.

4. Data citra wajah berukuran 150x150 pixels. Proses resize dan cropping

(19)

2

BAB II

Landasan Teori

Landasan teori digunakan untuk menjelaskan teori yang akan digunakan

pada penelitian ini, diantaranya pengertian wajah, eigenface, naive bayesian dan

Principal Component Analysis (PCA).

2.1 Pengenalan Wajah

Wajah atau muka adalah bagian depan dari kepala manusia meliputi

wilayah dari dahi hingga dagu, termasuk rambut, alis, mata, hidung, pipi, mulut,

bibir, gigi, kulit, dan dagu (Sugiono, 2008). Elemen-elemen itulah yang menjadi

pembeda antara wajah satu dengan yang lain. Selain elemen fisik ada faktor-faktor

lain yang mempengaruhi wajah yaitu: syaraf dan pembuluh darah, trauma fisik

dan hasil pembedahan, ekspresi karena pembuluh, air mata dan keringat,

kesakitan dan kelelahan, gender, ras, pertumbuhan dan usia. Oleh karena itu tidak

ada satu wajahpun yang serupa mutlak, bahkan pada manusia kembar identik

sekalipun karena wajah terutama digunakan untuk ekspresi wajah, penampilan

serta identitas (Sitorus dkk, 2006).

2.1.1 Pengertian Pengenalan Wajah

Pengenalan wajah adalah suatu teknologi yang disebut biometrik yang

sudah lama digunakan. Teknologi biometrik pada wajah ini sudah banyak

digunakan pada isntansi-instansi pemerintah maupun swasta seperti perkantoran

swasta maupun negeri, kepolisian, kemiliteran, dan perumahan. Teknologi

(20)

Izin Mengemudi), sistem keamanan rumah,dan sistem pengamanan komputer

pribadi.

Pada pengenalan wajah langkah yang dikerjakan adalah melakukan

pengenalan wajah secara mandiri atau otomatis yang lalu akan disimpan pada

suatau basis data tertententu.

2.1.2 Tahapan Pengenalan Wajah

Dalam melakukan pengenalan wajah (face recognition), ada beberapa tahapan proses yang harus dilalui, seperti :

Gambar 2.1 PengenalanWajah (Zhao dan Chellapa, 2006)

Deteksi wajah (face detection) merupakan proses awal yang harus dilakukan pada citra input untuk mendeteksi adanya citra wajah di dalam citra

masukan. Namun, berdasarkan Gambar 2.1 tahap-tahap proses pengenalan wajah

dikelompokkan menjadi 2 bagian, yaitu proses ekstraksi ciri dan proses

pengenalan wajah (Zhao dan Chellapa, 2006). Proses deteksi wajah akan

dilakukan bersama dalam proses ekstraksi ciri. Hal ini dikarenakan dalam proses

deteksi wajah diperlukan ekstraksi ciri di dalam citra masukan yang akan

mendeteksi apakah citra masukan merupakan citra yang mengandung ciri wajah.

Citra Input Deteksi

Wajah Ektrak Ciri

Pengenalan

Wajah Vertifikasi

(21)

2.1.3 Ekstrasi Ciri

Secara umum, (Zhao dan Chellapa 2006) menjelaskan ada dua macam ciri

(feature) pada wajah, yaitu holistic features dan facial feature. Facial feature

contoh cirinya adalah warna dan bentuk, besar dan letak hidung, mulut, mata,

telinga, dan lain-lain. Sedangkan pada holistic features setiap cirinya adalah merupakan suatu karakteristik dari seluruh wajah. Wajah dianggap sebagai

kesatuan yang utuh. Untuk melakukan ekstrak ciri pada wajah, (Zhao dan

Chellapa, 2006) membedakan teknik pengenalan wajah menjadi tiga metode,

sebagai berikut:

a) Holistic methods

Metode ini digunakan untuk menyelesaikan kasus holistic features

yaitu mencari informasi secara keseluruhan pada wajah.

b) Features-based

Metode ini digunakan untuk menyelesaikan kasus facial features

yaitu mencari informasi berdasarkan ciri yang ada pada wajah seperti

hidung, mata, telinga, dan lain-lain.

c) Hybrid methods

Metode ini merupakan penggabungan dari metode holistic methods

dan features-based.

2.2 Metode Eigenface

Kata eigenface sebenarnya berasal dari bahasa jerman yaitu “eigenwert

dimana “eigen” artinya karakteristik dan “wert” artinya nilai. Eigenface adalah

(22)

Component Analysis (PCA) yang dikembangkan di MIT. Banyak penulis lebih menyukai istilah eigen image. Teknik ini telah digunakan pada pengenalan tulisan tangan, pembacaan bibir, pengenalan suara dan pencitraan medis. Menurut

layman (Al Fatta, 2009) Eigenface adalah sekumpulan unsur wajah yang telah dibuat standar yang diambil dari analisis statistik dari banyak gambar wajah.

Algoritma eigenface secara keseluruhan cukup sederhana. Training image

direpresentasikan dalam sebuah vector flat (gabungan vektor) dan digabung bersama-sama menjadi sebuah matriks tunggal. Eigenface dari masing-masing citra kemudian diekstraksi dan disimpan dalam file temporary atau database. Test image yang masuk didefinisikan juga nilai eigenfaces-nya dan dibandingkan dengan eigenfaces dari image database atau file temporary (Prasetyo dan Rahmatun, 2008).

Cara perhitungannya dilakukan dengan cara:

1. Pencarian matriks A berukuran N x N dapat dihitung dengan :

. = � . (2.1)

λ dinamakan eigenvalue dari matriks A, sedangkan x merupakan eigenvector yang sama dengan scalar (λ).

2. Pencarian determinan dari matriks A dengan rumus :

| − �| = (2.2)

3. Setelah nilai eigenvalue (�) ditemukan langkah selanjutnya adalah mencari

eigenvektor dengan menggunakan rumus :

(23)

2.2.1 Principal Component Analysis (PCA)

Principal Component Analysis (PCA) adalah sebuah transformasi linier yang biasa digunakan untuk mereduksi data. Principal Component Analysis

(PCA) adalah sebuah teknik statistika yang berguna pada bidang pengenalan,

klasifikasi dan mereduksi data citra. PCA juga merupakan teknik yang umum

digunakan. Karena Principal Component Analysis (PCA) sangat ampuh untuk mereduksi data baik seperti teks, citra, dan sinyal.

2.2.2 Proses Principal Component Analysis (PCA) / Eigenface

Proses perhitungan PCA dapat dilakukan dengan langkah-langkah sebagai

berikut (Fatta, 2009)

1. Mengambil satu set training citra wajah (M). Misalkan M berjumlah 10 buah

citra wajah.

2. Inisialisasi untuk tiap citra wajah dari set training. r adalah sebuah vektor

× berdasarkan matriks dari citra wajah yang berukuran NxN.

3. Menghitung rata-rata vektor citra wajah

= ∑��= � (2.4)

4. Melakukan normalisasi ukuran citra dengan melakukan pengurangan

vektor citra wajah dengan nilai rata-rata tersebut.

(24)

5. Menghitung matriks kovarian

= ∑��= � �� = � � (2.6)

Dimana

= [ … . �] � (2.7)

6. Dikarenakan ukuran matriks terlalu besar, maka pencarian matriks

kovarian menjadi :

= � (2.8)

7. Menghitung eigenvalue (λ) dan eigenvector (x) dari matriks kovarian

= � (2.9)

8. Menghitung eigenvector sebanyak M dari matriks kovarian

= � (2.10)

dengan persamaan :

� = . � (2.11)

9. Melakukan normalisasi terhadap u. 10. Mengumpulkan eigenvector sebanyak K.

2.2.3 Contoh Perhitungan Eigenface

1. Terdapat 3 buah image yang masing-masing mempunyai 2x2 matriks.

(25)

Image1 = [ ][ ]

Image1 = [ ][ ]

2. Lalu ditransformasikan ke matriks × �

S = [ ]

3. Mencari rata-rata vector

+ +

= = .

+ +

= = .

+ +

= =

+ +

= = .

Sehingga didapatkan :

= | . .

.

|

4. Mengurangi vector citra wajah dengan nilai Y

[ ] − | . .

.

| = [ − . − .

− − .

(26)

[ ] − | . . . | = [ − . . . ] [ ] − | . . . | = [ . . − . ]

5. Selanjutnya, , , digabungkan menjadi satu matriks A

= [ − . − . − − . − . . . . . − . ]

6. Menghitung kovarian menggunakan rumus �

= [− .− . . − . . . − − − . . . ] × [ − . − . − − . − . . . . . − . ] = [ . − − . − . − . − . − . ]

7. Menghitung eigenvalue dan eigenvector dari korvarian matriks . (Untuk

mempermudahkan perhitungan maka angka dirubah)

(27)

− � {− � + � + } − + −� + =

− � { � − � + } + =

− � { � − � + } =

− � � − � −

� = � = � =

8. Eigenvalue � , � , � yang didapat dari matriks digunakan untuk menghitung eigenvektor

 Untuk � =

[ −−

− − −− ] [ ] =

[−

− −− ] [ ] =

Diperolehlah persamaan:

− + =

− + =

− + =

Langkah selanjutnya dilakukan proses eliminasi sehingga diperoleh,

[ ] = [ ]

Eigenvektornya adalah

[ ]

(28)

[ −−

− − −− ] [ ] =

[−

− −− ] [ ] =

Diperolehlah persamaan:

− =

− + − =

− + − =

Langkah selanjutnya dilakukan proses eliminasi sehingga diperoleh,

[ ] = [− ]

Eigenvektornya adalah

[− ]

 Untuk � =

[ −−

− − −− ] [ ] =

[−

− −− ] [ ] =

Diperolehlah persamaan:

− =

− + − =

− + − =

(29)

[ ] = [ ]

Eigenvektornya adalah

[ ]

9. Menghitung eigenvektor sebanyak M dari matriks .

� = . � = [ − . − . − − . − . . . . . − . ] × [ ] = [ − − − − ] = [ − . − . − − . − . . . . . − . ] × [− ] = [ ] = [ − . − . − − . − . . . . . − . ] × [ ] = [ − . . . ]

10.Setelah itu eigenvalue diurutkan dari yang paling kecil sampai yang

paling besar.

Tabel 2.1 Hasil eigen value dan eigen vektor

Eigenvalue Eigenvektor

λ=3 -1.3333

0.6667

3

(30)

λ=2 -8

-6

-1

-1

λ=1 8

6

1

1

11.Memproyeksikan kedalam eigenspace

=

[− . . . ] × [

− . − .

− − .

] = − .

[− . . . ] × [

− . . .

] = .

[− . . . ] × [

. .

− .

] = − .

=

[− − − − ] × [

− . − .

− − .

(31)

[− − − − ] × [ − . . . ] = . [− − − − ] × [ . . − . ] = − . = [ − ] × [ − . − . − − . ] = − . [ − ] × [ − . . . ] = − . [ − ] × [ . . − . ] = .

12.Memasukkan nilai kedalam sebuah vector

� = [− .. − . . . − . − . − . . ]

13.Langkah selanjutnya dari matriks omega ini di cari mean (µ) dan standar

deviasi (σ).

14. � = [

(32)

2.3 Naive Bayesian

Bayesian filter atau Naive Bayes Classifier merupakan metode terbaru untuk mengklasifikasikan dokumen. Algoritma ini adalah metode probabilitas dan

dikemukakan oleh ilmuwan Inggris bernama Thomas Bayes, yaitu memprediksi

probabilitas di masa depan berdasarkan pengalaman sebelumnya. Dasar dari

teorema Naive Bayes digunakan dalam pemrograman adalah rumus Naive Bayes

sebagai berikut ini:

│ = │ ∗ / (2.12)

 P (A|B) = Probabilitas yang dihitung (Posterior) dari peristiwa A karena

adanya informasi yang dikandung dalam peristiwa B.

 P (B|A) = Probabilitas yang dihitung (Posterior) dari peristiwa B karena

adanya informasi yang dikandung dalam peristiwa A.

 P (A) = Probabilitas tak bersyarat atau disebut probabilitas awal (Prior)

dari peristiwa A.

 P (B) = Probabilitas tak bersyarat atau disebut probabilitas awal (Prior)

dari peristiwa B.

2.3.1 Klasifikasi Naive Bayesian

Jika X adalah vektor masukkan yang berisi fitur dan Y adalah label kelas,

Naïve Bayes dituliskan dengan P (X|Y). Notasi tersebut berarti probabilitas label

kelas Y didapatkan setelah fitur-fitur X diamati. Notasi ini disebut juga

probabilitas akhir (posterior probability) untuk Y, sedangkan P (Y) disebut

(33)

Selama proses pelatihan harus dilakukan pembelajaran probabilitas akhir P

(Y|X) pada model untuk setiap kombinasi X dan Y bedasarkan informasi yang

didapat dari data latih. Dengan membangun model tersebut, suatu data uji X’

dapat diklasifikasikan dengan mencari nilai Y’ dengan memaksimalkan nilai

P(X’|Y’).

Yang lalu didapatkan rumus Naïve Bayes untuk klasifikasi sebagai

berikut:

| = � ∏��=1�( �| )

� (2.13)

P(Y|X) adalah probabilitas data dengan vektor X pada kelas Y. P(Y)

adalah probabilitas awal kelas Y. ∏��= | adalah probabilitas independen

kelas Y dari semua fitur dalam vektor X. Nilai P(X) selalu tetap sehingga dalam

perhitungan prediksi selanjutnya tinggal menghitung bagian

∏��= �| dengan memilih yang terbesar sebagai kelas yagg dipilih

sebagai hasil prediksi. Sementara probabilitas independen ∏��= | tersebut

merupakan pengaruh semua fitur dari data terhadap setiap kelas Y.

Naive bayesian memiliki bentuk peluang kelas bersyarat untuk atribut kontinyu. Distribusi dikarakterisasi dengan dua parameter yaitu mean,

, dan

varian, 2. Untuk tiap kelas yj, peluang kelas bersyarat untuk atribut Xi adalah

ij

ij i x ij j i i x Y y X P 2 2 2 exp 2 1          (2.14)

(34)

training record yang dimiliki kelas yj. Dengan cara sama,

2ij dapat diestimasi

dari sampel varian

 

s2 training record tersebut.

2.3.2 Contoh Perhitungan Naive Bayesian

[image:34.595.137.455.251.576.2]

Terdapat data sebagai berikut:

Tabel 2.2Tabel IPK

IPK

Tidak Lulus

2 3.5

3 3.25

2 2.75

2.5 3.5

1.6 4

2.5 3.75

2.3 2.25

3.25 3.8

Jika terdapat IPK 3.5 nilai tersebut dikategorikan lulus atau tidak. Langkah

pertama adalah menentukan rata-rata dan standar deviasi untuk masing-masing

(35)

Tabel 2.3 Hasil IPK

IPK

Tidak Lulus

2 3.5

3 3.25

2 2.75

2.5 3.5

1.6 4

2.5 3.75

2.3 2.25

3.25 3.8

Mean 2.39375 3.35

Standar Deviasi 0.544083 0.586759

Kemudian nilai mean dan standar deviasi dimasukkan kedalam rumus

[image:35.595.128.497.87.730.2]

naive bayesian bersarat pada rumus (2.14). Setelah itu dihasilkan nilai sebagai berikut:

Tabel 2.4 Hasil Uji IPK

g(IPK= . 5,m,σ|Tidak) 0.73342325 0.289865

0.212593567

g(IPK= . 5,m,σ|Lulus) 0.680081055 0.985582

(36)

Dihasilkan nilai IPK 3,25 mirip dengan data training lulus jadi dapat

disimpulkan bahwa jika IPK 3,25 kemungkinan besar lulus.

2.4 Confusion Matrix

Fungsi confusion matrix adalah mebghitung seberapa tepat dan lengkap klasifikasi terhadap suatu kelas data. Isi dari confusion matrix adalah informasi

[image:36.595.128.502.283.589.2]

hasil actual dan prediksi yang dihasilkan oleh pengklasifikasian.

Tabel 2.5 Confusion Matrix

Prediksi

negatif

positif

Asli

negatif

A

B

positif

C

D

 A adalah jumlah nilai prediksi benar ketika contoh negatif.

 B adalah jumlah nilai prediksi salah ketika contoh positif.

 C adalah jumlah nilai prediksi salah ketika contoh negatif.

 D adalah jumlah nilai prediksi benar ketika contoh positif.

Akurasi adalah hasil dari penjumlahan nilai diagonal dibagi dengan jumlah

total keseluruhan data dan selajutnya dikalikan 100%.

= + + ++ × % (2.14)

(37)
[image:37.595.140.459.136.575.2]

Tabel 2.6 Contoh Confusion Matrix

1 1 1 1 1 1

0 2 2 0 2 0

0 1 1 2 1 1

0 0 0 6 0 0

0 0 0 0 6 0

0 0 0 0 0 6

(38)

3

BAB III

METODOLOGI

Berdasarkan pada landasan teori yang telah disampaikan pada bab kedua

di atas, pada bab ini dibahas metodologi yang akan digunakan pada penelitian ini.

Bab ini berisi tentang blok diagram, data, tatap muka pengguna dan contoh

perhitungan.

3.1 Metode Pengumpulan Data

Mengambil 200 citra wajah mahasiswa Universitas Sanata Dharma

Program Studi Teknik Informatika angkatan 2011 dikarenakan data sangat mudah

untuk didapat dan data yang dihasilkan adalah data yang nyata.

3.2 Teknik Analisis Data

Hasil yang diperoleh dari pengumpulan data selanjutnya dianalisa dengan

tahap- tahap sebagai berikut :

Proses

Data Preprocessing Output Akurasi

Eigenface Greyscale

Naivebayesian Data Model Confusionmatrix Cropping dan

[image:38.595.113.511.255.692.2]

Resize

(39)

1. Data

Data yang diambil adalah citra wajah dari mahasiswa Universitas Sanata

Dharma Fakultas Teknik Program Studi Teknik Informatika. Dengan jumlah

mahasiswa 20 dan setiap mahasiswa mempunyai 10 citra wajah sehingga total

data keseluruhan adalah 200 citra wajah. citra asli berukuran 3456 x 5184 pixel yang di ambil menggunakan kamera Digital Single Lens Reflex (DSLR).

2. Preprocessing

Data citra asli pada awal preprocessing dipotong fokus pada bagian wajah menjadi 150 x 150 pixel karena data yang diperkecil terlebih dahulu untuk mempermudah proses perhitungan di dalam sistem. Proses memperkecil citra

wajah menggunakan program Adobe Photoshop CS 5 Version 12.0 (64x bits).

Data yang sudah didapat lalu diproses melalui grayscale, sehingga citra menjadi putih keabu-abuan. Matriks akan berbentuk seperti ini (contoh

perhitungan menggunakan matriks berukuran 2x2 yang seharusnya 150x150).

= [ ] = [ ] = [ ] = [ ] = [ ] = [ ]

= [ ] ℎ = [ ] = [ ] = [ ]

(40)

Langkah selanjutnya mengurangi matriks S dengan rata-ratanya untuk

setiap kolom menggunakan zero mean. Dan hasil disimpan pada matriks A.

Setelah didapatkan matriks A, penghitungan kovarian dilakukan. Perhitungan dilakukan dengan cara C=A*A’. Berikut adalah hasil dari

(41)

Hasil C selanjutnya akan dinormalisasi menggunakan zscore. Berdasarkan nilai kovarian, matriks C menghasilkan eigenvalue dan eigenvektor.

Eigenvalue diurutkan (sorting) berdasarkan nilai yang paling tinggi ke paling rendah. Tahap ini adalah tahap akhir dari proses eigenface. Selanjutnya

eigenvektor diurutkan berdasarkan indeks eigenvalue yang telah diurutkan sebelumnya. Langkah terakhir dari proses eigenface adalah pembentukan dataset

yang baru dengan nama matriks u.

Agar bentuk akhir sama dengan matriks asli yang digunakan pada sistem

(42)

Proses yang telah disebutkan di atas adalah perhitungan setiap orang,

dimana masing-masing orang mempunyai 10 citra wajah maka ukuran matriks

yang akan terbentuk adalah berukuran 22500x100 seperti matriks

u=[ ⋱ ] dimana setiap baris merupakan atribut (feature).

Matriks u selanjutnya di normalisasi menggunakan zscore data matriks u agar dapat dipotong sesuai keinginan, data yang digunakan mempunyai panjang

feature 22500 jika feature ini dipotong maksimal yang dapat dipotong adalah 22499 dan minimal adalah satu. Proses pemotongan adalah memotong baris dari

matriks u diatas. 3. Proses

Hasil eigenface dari 10 citra wajah per orang dibagi menjadi fivefold. Fungsi fivefold adalah membuat lima buah bagian dari 10 citra wajah untuk diambil satu bagian (dua citra wajah) untuk testing dan empat bagian untuk training, sehingga data training terdapat delapan buah citra wajah dan data testing

terdapat dua buah citra wajah. Langkah ini dilakukan berulang sebanyak iterasi

jumlah orang. Hasil dari fivefold disimpan dan digabungkan. Langkah selanjutnya, data training diproses menggunakan NaiveBayes.fit dan data testing menggunakan

predict. Proses NaiveBayes.fit menggunakan fungsi matlab, data training diolah menggunakan fungsi ini. Hasil proses ini menghasilkan data model yang disebut

(43)

predict, hasil model dari pengolahan data training lalu di predict menggunakan data testing.

4. Output

Proses output akan menghasilkan keluaran data model. Data model ini

berisi mean dan varian yang dihasilkan dari proses NaiveBayes.fit. Proses predict

menghasilkan prediksi klasifikasi dari data testing. 5. Akurasi

Proses akurasi bertujuan untuk menguji keakuratan dan keberhasilan suatu

sistem. Setiap proses menghasilkan confusion matrix, lalu proses ini diulang samapai semua bagian pernah menjadi data testing. Pembagian data dibagi seperti

[image:43.595.113.513.244.603.2]

berikut :

Tabel 3.1 Pembagian Data

Sehingga didapat hasil akhir yang berupa confusion matrix. Pembagian data ini terjadi ketika proses setelah eigenface.

(44)
[image:44.595.121.538.145.539.2]

Tabel 3.2 Contoh Hasil Confusion Matrix (akurasi 88%)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0

2 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

3 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0

4 0 0 0 8 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0

5 0 0 0 0 7 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0

6 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0

7 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 0 0 0

8 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 0 0

9 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 1 0 0

10 0 0 0 0 0 0 0 0 1 9 0 0 0 0 0 0 0 0 0 0

11 0 0 0 0 1 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0

12 0 0 0 0 2 0 0 0 0 0 0 7 0 0 0 0 1 0 0 0

13 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 2 0

14 0 0 0 0 0 0 0 1 0 0 0 0 0 9 0 0 0 0 0 0

15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0

16 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 8 0 0 1 0

17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 1 0

18 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 8 1 0

19 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 9 0

20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10

Confusion matrix mempresentasikan hasil dari pencocokan data training dan data testing. Setiap data yang memiliki nilai sama antara data training dan data testing dapat dikatakan bernilai benar. Setiap hasil pencocokan yang bernilai

benar akan dihitung dengan dijumlahkan kemudian dibagi dengan jumlah data dan

dikalikan dengan 100%, sehingga menghasilkan akurasi. Pencocokan data yang

bernilai benar membentuk diagonal pada matriks, dengan kata lain penjumlahan

dari diagonal confusion matrix merupakan akurasi dari sistem.

3.3 Desain User Interface

Agar proses dapat mudah dilihat oleh pengguna maka dirancang interface

(45)
[image:45.595.131.501.111.565.2]

Gambar 3.2 User Interface

Pada data input diinputkan jumlah orang, jumlah foto, jumlah atribut,

ekstensi foto dan grayscale. Pada interface juga terdapat citra asli dan citra

eigenface agar pengguna juga dapat melihat perubahan citra. Lalu confusion matrix dan akurasi juga ditampilkan akan mempermudah pengguna untuk memantau sistem.

Panel di bawahnya menunjukkan hasil analisis untuk beperapa kali

percobaan yang disertai dengan informasi grafik sehingga pengguna akan

(46)

3.4 Spesifikasi Software dan Hardware

Untuk proses membuat sistem dan data digunakan software dan hardware

sebagai berikut :

1. Software

a) Sistem operasi : Windows 8.1 Single Language 64-bit

b) Bahasa pemprograman : Matlab version 8.0.0.783 (R2012b)

c) Program pengolah citra : Adobe Photoshop CS5 v.12.0 64-bit

2. Hardware

a) Processor : Intel(R) Core(TM) i7-4800MQ CPU @ 2.70GHz b) Memory : 16 GB

(47)

4

BAB IV

IMPLEMENTASI DAN ANALISIS HASIL

Metodologi yang dijelaskan pada bab-bab sebelumnya diimplementasikan

pada bab ini yang meliputi implementasi, pengolahan data, preprocessing, proses, output, akurasi, user interface dan analisis.

4.1 Implementasi

Landasan teori yang telah dipaparkan akan lebih berguna jika

diimplementasikan. Imlementasi yang akan dipaparkan pada bab ini meliputi

pengolahan data dan user interface.

4.1.1 Pengolahan Data

[image:47.595.113.513.256.720.2]

Data mentah yang diambil menggunakan kamera Digital Single Lens Reflex (DSLR) sejumlah 200 citra wajah dengan rincian 20 orang yang setiap orangnya mempunyai 10 citra wajah.

(48)
[image:48.595.116.506.106.735.2]

Gambar 4.2 Data Awal II

Data mentah ini belum bisa diolah kedalam sistem karena ukuran dan

tidak fokusnya citra terhadap wajah. Data mentah ini harus diproses dalam tahap

preprocessing.

4.1.1.1 Preprocessing

Tahap awal sebelum data masuk ke pengolahan data mining data masih bisa dikatakan sebagai data mentah yang harus melelaui proses preprocessing. Tahap preprocessing yang harus dilalui adalah:

1. Cropping dan Resize

(49)
[image:49.595.141.510.231.672.2]

Proses pemotongan dan pengecilan citra menggunakan Adobe Photoshop CS 5 Version 12.0 (64x bits). Proses ini bertujuan mefokuskan citra pada wajah dan memperkecil ukuran citra yang awalnya berukuran 3456 x 5184 pixel bisa dilihat pada gambar 4.3 menjadi 150x150 pixel pada gambar 4.4 dan gambar 4.5.

Gambar 4.4 Data I

(50)

2. Grayscaling

Proses awal preprocessing adalah grayscaling (keabu-abuan). Data citra yang berjumlah 200 citra wajah dirubah menjadi citra keabu-abuan dan disimpan

kedalam matriks S. Setiap baris matriks tersimpan satu orang yang mempunyai

citra wajah 10 citra. Proses ini berulang hingga 20 kali sesuai dengan jumlah

orang, sehingga data citra wajah yang berjumlah 200 ini bisa masuk ke proses

berikutnya yaitu eigenface. 3. Eigenface

Data yang sudah menjadi grayscale memasuki proses kedua dari

reprocessing yaitu eigenface. Pada proses ini citra wajah diubah menjadi citra

eigenface. Hasil eigenface disimpan ke dalam matriks u yang di dalam setiap kolom tersimpan satu citra wajah yang sudah berbentuk citra eigenface, setiap proses eigenface menyimpan satu set data satu orang di dalam matriks u yang panjang kolomnya sepanjang 22500. Panjang kolom ini bisa dipotong sesuai

dengan keinginan pengguna. Setelah dipotong hasil pemotongan data ini disimpan

kedalam matriks hasileigface yang menampung 200 citra wajah eigenface yang telah dipotong.

4.1.1.2 Proses

Pada proses ini adalah memproses data citra wajah menggunakan

klasifikasi naïve bayes. Sebelum masuk inti proses naïve bayes data dipisah terlebih dahulu menjadi data training dan data testing. Hasil dari pemisahan ini disimpan kedalam 2 matriks yaitu trainingsmuaorang dan testingsemuaorang,

(51)

testingsemuaorang untuk menyimpan data citra wajah testing. Perhitungan naïve bayesian menggunakan fungsi matlab yaitu naivebayes.fit dan predict, trainingsemuaorang diproses menggunakan naivebayes.fit kemudian

testingsemuaorang diproses menggunakan predict. Fungsi model = naivebayes.fit(trainingsemuaorang) adalah fungsi matlab yang digunakan untuk mengolah data training sedangkan fungsi model.predict(testingsemuaorang)

untuk mengolah data testing.

4.1.1.3 Output

Berdasarkan proses naïve bayesian, maka dihasilkan mean dan varian

sebagai data model yang diperoleh dari data training, kemudian hasil prediksi kelas yang didapat dari data testing. Selanjutnya, langkah yang dilakukan adalah mencocokan data testing dengan kelas training proses ini akan digunakan untuk proses selanjutnya yaitu perhitungan akurasi.

4.1.1.4 Akurasi

Proses menghitung akurasi terbentuk dari perhitungan jumlah hasil

[image:51.595.220.441.595.722.2]

confusion matrix. Penjumlahan diagonal matriks ini akan memberikan nilai akurasi sistem. Hasil dari confusion matrix dapat dilihat gambar 4.6

(52)

Hasil confusion matrix diambil ketika dilakukan pemotongan feature

sejumlah 19095. kemudian dari confusion matrix dapat dihitung akurasinya dengan cara jumlah diagonal dibagi dengan seluruh jumlah data jadi jumlah

diagonal dari gambar 4.6 adalah 175 dan lalu dibagi dengan keseluruhan data 200

yang menghasilkan nilai 0,875 selanjutnya dikalikan dengan 100 agar hasil

menjadi perseratus, akurasi yang didapat adalah 87.5%. Pemotongan feature

minimal sehingga didapatkan akurasi 87.5% adalah 19095 dari total feature

[image:52.595.123.512.253.556.2]

22500.

Gambar 4.7 Hasil Matrix

4.1.2 User Interface

Pembuatan User interface sistem pencocokan wajah menggunakan sarana

yang diberikan oleh Matlab version 8.0.0.783 (R2012b), user interface ini berguna

untuk mempermudahkan pengguna di dalam penginputan data yang dibutuhkan

(53)
[image:53.595.124.506.113.573.2]

Gambar 4.8 User Interface

Gambar tersebut menjelaskan bahwa input dialog terdapat interaksi yang dibutuhkan oleh pengguna. Panel input dialog membutuhkan inputan berupa jumlah orang, jumlah foto, jumlah atribut, ekstensi foto, grayscale, tombol save

dan proses.

 Jumlah orang menjelaskan jumlah orang yang akan diproses di dalam

sistem.

 Jumlah foto menjelaskan jumlah foto setiap orang yang akan diproses di

dalam sistem.

 Jumlah atribut mendeskripsikan jumlah atribut atau feature yang sudah

(54)

 Ekstensi foto menjelaskan ekstensi citra yang akan digunakan meliputi

*.jpg, *.bmp, *.jpeg.

Grayscale menjelaskan data citra sudah berbentuk citra grayscale atau

tidak.

 Tombol save digunakan untuk menyimpan model data.

 Tombol proses digunakan utnuk menjalankan sistem.

Selanjutnya bagian proses foto menampilkan citra wajah yang

berbentuk grayscale dan citra wajah yang berbentuk eigenface. Bagian

confusion matrix menampilkan jumlah confusion matriks, dalam confusion matrix terdapat tombol biru yang berguna untuk memperbesar tabel dari

confusion matrix. Terakhir dari user interface adalah bagian akurasi dalam akurasi akan menampilkan jumlah akurasi yang didapatkan dari perhitungan

confusion matrix.

Panel input foto tedapat check box graysclae, tombol input foto, foto

testing, foto hasil, nama file testing, label dan keterangan benar atau salah kegunaanya adalah:

Check box graysclae berguna untuk jika inputan citra testing sudah berupa

grayscale.

 Tombol input foto adala tombol untuk memilih dan memproses inputan

citra.

 Foto testing dan foto hasil menampilkan citra yang diinputkan dan hasil

citra setelah diolah.

(55)

 Label adalah menampilkan hasil label yang didapatkan setelah proses.

 Keterangan benar dan salah adalah keterangan yang didapatkan saat data

testing dan data hasil dicocokkan menghasilkan citra yang benar atau

salah.

Panel Uji Akurasi dan Hasil Uji Tertinggi terdapat min atribut, max

atribut, range, jumlah atribut, akurasi dan tombol proses uji kegunaan panel

tersebut adalah:

 Min Atribut adalah inputan pengguna yang memasukkan batas minimal

atribut yang sudah melalui proses eigenface yang akan digunakan.

 Max Atribut adalah inputan pengguna yang memasukkan batas maksimal

atribut yang sudah melalui proses eigenface yang akan digunakan.

 Range adalah inputan pengguna yang memasukkan jarak atribut yang

sudah melalui proses eigenface sesuai keinginan.

 Jumlah Atribut menunjukkan titik atribut yang sudah melalui proses

eigenface tertinggi menunjukkan akurasi tertinggi.  Akurasi menunjukkan akurasi teringgi yang didapatkan.

 Grafik Hasil Uji Akurasi menampilkan grafik dalam bentuk garis dari

beperapa percobaan akurasi.

4.2 Analisis

Implementasi yang telah ditulis diatas membantu analisis terhadap

(56)
[image:56.595.111.536.137.762.2]

Tabel 4.1 Hasil Percobaan Akurasi

No Panjang

Atribut Akurasi(%) No

Panjang

Atribut Akurasi(%)

1 1 8 62 20949 88

2 2 8.5 63 20950 88

3 3 9.5 64 20951 88

4 4 10 65 20952 88

. . . 66 20953 88

. . . 67 20954 88

5 100 37 68 20955 88

6 101 37 69 20956 88

7 102 36.5 70 20957 88

8 103 38.5 71 20958 88

9 104 37.5 72 20959 88

10 105 37.5 73 20960 88

11 106 36 74 20961 88

. . . . . .

. . . . . .

12 113 36 75 21066 88

13 114 36.5 76 21067 88

14 115 36.5 77 21068 88

15 116 37 78 21069 88

16 117 37.5 79 21070 88

17 118 38 80 21071 88

18 119 38 81 21072 88

19 120 37.5 82 21073 88

. . . 83 21074 88

. . . 84 21075 88

20 1000 51.5 85 21076 87.5

21 1001 51.5 . . .

22 1002 51 . . .

23 1003 51.5 85 22467 87.5

24 1004 51.5 86 22468 87.5

25 1005 51.5 87 22469 87.5

26 1006 51.5 88 22470 87.5

27 1007 51.5 89 22471 87.5

28 1008 51.5 90 22472 87.5

29 1009 51.5 91 22473 87.5

30 1010 51.5 92 22474 87.5

(57)

. . . . . .

31 20000 87.5 93 22493 87.5

32 20001 87.5 94 22494 87.5

33 20002 87.5 95 22495 87.5

34 20003 87.5 96 22496 87.5

35 20004 87.5 97 22497 87.5

36 20005 87.5 98 22498 87.5

37 20006 87.5 99 22499 87.5

38 20007 87.5 100 22500 87.5

39 20008 87.5

40 20009 87.5

41 20010 87.5

42 20011 87.5

43 20012 87.5

44 20013 87.5

45 20014 87.5

46 20015 87.5

47 20016 87.5

48 20017 87.5

49 20018 87.5

50 20019 87.5

51 20020 87.5

. . .

. . .

52 20939 87.5

53 20940 88

54 20941 88

55 20942 88

56 20943 88

57 20944 88

58 20945 88

59 20946 88

60 20947 88

(58)
[image:58.595.113.512.111.577.2]

Gambar 4.6 Hasil Atribut dan Akurasi

Berdasarkan tabel 4.1 dengan 22500 kali percobaan didapatkan hasil

seperti yang tertera di dalam percobaan. Percobaan dilakukan dengan mengambil

dari minimum feature dengan nilai nol sampai 22500, dengan jarak satu feature

setiap percobaan.

 Nilai akurasi tertingi adalah 88% pada panjang feature 20940.

(59)

5

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan penelitian, penerapan metode eigenface untuk pencocokan wajah dengan menggunakan naïve bayesian dapat disimpulkan beperapa hal, yaitu:

1. Ekstraksi ciri menggunakan metode eigenface dan klasifikasi menggunakan metode naïve bayesian terbukti mampu mengenali wajah dengan baik, karena didapatkan akurasi yang tinggi sebesar 88%.

2. Hasil dari percobaan menggunakan semua feature sepanjang 22500 akurasi metode eigenface menggunakan naive bayesian membantu mengenali wajah sebesar 87.5%. Hasil akurasi terbesar yang didapatkan adalah sebesar 88%

dari panjang feature 20940.

3. Berdasarkan penelitian dari panjang feature 0-20940 sampai 0-21075 didapatkan akurasi yang stabil sebesar 88%.

5.2 Saran

Untuk penelitian lebih lanjut, ekstrak ciri menggunakan metode eigenface

dan klasifikasi menggunakan metode naïve bayesian dapat digunakan untuk membuat sistem informasi seperti sistem absensi, sistem keamanan rumah, sistem

(60)

Untuk memudahkan pengguna sistem, citra wajah bisa terdapat

obyek-obyek lain yang terdapat di dalam citra. Sehingga citra wajah yang diinputkan

(61)

Daftar Pustaka

Depdiknas. (2002). Kamus Besar Bahasa Indonesia (Edisi Ketiga). Jakarta: Balai Pustaka.

Fatta, H. A. (2009). Rekayasa Sistem Pengenalan Wajah. Yogyakarta: Andi Offset.

Prasetyo, E. (2012). Konsep dan Aplikasi menggunakan MATLAB. Yogyakarta: Andi Offset.

Prasetyo, E. (2014). Mengolah Data Menjadi Informasi Menggunakan Matlab.

Yogyakarta: Andi Offset.

Prasetyo, E., & Rahmatun, I. (2008). Desain System Pengenalan Wajah Dengan Variasi Ekspresi dan Posisi Menggunakan Metode EIGENFACE. Jurnal Ilmiah Informatika dan Komputer, Vol.11, No.01, pp.33.

Putri, Y. W. (2012). Penerapan Face Recognition Menggunakan Metode Eigenface Pada Sistem Presensi Karyawan Universitas Sanata Dharma.

Skripsi. Yogyakarta: Fakultas Sains dan Teknologi, Universitas Sanata Dharma.

Sitorus, S. d. (2006). Pengolahan Citra Digital. Medan: USU Press.

Sugiono, D. (2008). Kamus Besar Bahasa Indonesia Pusat Bahasa Edisi Keempat. Jakarta: PT Gramedia Pustaka Utama.

(62)

LAMPIRAN

Source Code

1. Bayes.m

function [ ConMatrix,model ] = Bayes(

class_train,class_test,trainingSemua,testingSemua )

%UNTITLED5 Summary of this function goeBayess here % Detailed explanation goes here

model = NaiveBayes.fit(trainingSemua,class_train); class_predict = model.predict(testingSemua);

ConMatrix=hitungConfusionmat (class_test,class_predict);

function confMat=hitungConfusionmat(class_test,class_predict)

yu=unique(class_test); confMat=zeros(length(yu)); for i=1:length(yu)

for j=1:length(yu)

confMat(i,j)=sum(class_test==yu(i) & class_predict==yu(j)); end end ConMatrix=confMat; end % assignin('base','class_predict',class_predict); end 2. Eigface.m

function [hasilEig,eigPic]=eigface(S,irow,icol)

[jmlBaris,jmlKolom] = size(S); rerataData = mean(S,2);

S=double(S); A=S;

for i=1:jmlBaris

for j=1:jmlKolom

A(i,j)=S(i,j)-rerataData(i,1); end

end

ADbl=A;

% ADbl=[];

% for i=1:jmlKolom

% temp=double(A(:,i)); % ADbl=[ADbl temp]; % end

(63)

% ADbl=zscore(ADbl);

C=ADbl'*ADbl; C=zscore(C);

% 3. Hitung eigenvector dan eigenvalue dari covariance matrix.

[eigenvector,eigenvalue]=eig(C);

% 4. Pilih component dan bentuk vector feature dan principal component dari

% eigenvector yang memiliki eigenvalue paling besar diambil (decreasing order).

eigenvalue=diag(eigenvalue);

[~, indeks]=sort(eigenvalue,'descend');

featureVector=eigenvector(:,indeks);

% 5. Menurunkan data set yang baru.

u = ADbl*featureVector;

% assignin('base','u',u);

% % PCA denggan PCA dari Matlab % ADbl=double(S);

% [~,u,~] = princomp(ADbl);

% Normalisasi

u= zscore(u);

% % Potong PC

% cutU=u(1:jmlPC,:);

% Hasil akhir

hasilEig=u;

% Tampilan foto eigenface

for i=1:size(u,2)

img=reshape(u(:,i),icol,irow); img=img';

img=histeq(img,255); eigPic=img;

(64)

3. Input.fig

4. Input.m

function varargout = Input(varargin)

%INPUT M-file for Input.fig

% INPUT, by itself, creates a new INPUT or raises the existing

% singleton*. %

% H = INPUT returns the handle to a new INPUT or the handle to

% the existing singleton*. %

% INPUT('Property','Value',...) creates a new INPUT using the % given property value pairs. Unrecognized properties are passed via

% varargin to Input_OpeningFcn. This calling syntax produces a

% warning when there is an existing singleton*. %

% INPUT('CALLBACK') and INPUT('CALLBACK',hObject,...) call the

% local function named CALLBACK in INPUT.M with the given input

% arguments. %

(65)

% instance to run (singleton)". %

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Input

% Last Modified by GUIDE v2.5 29-Jul-2015 20:43:54

% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @Input_OpeningFcn, ...

'gui_OutputFcn', @Input_OutputFcn, ...

'gui_LayoutFcn', [], ...

'gui_Callback', []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

% End initialization code - DO NOT EDIT

% --- Executes just before Input is made visible.

function Input_OpeningFcn(hObject, ~, handles, varargin)

% This function has no output args, see OutputFcn. % hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) % varargin unrecognized PropertyName/PropertyValue pairs from the

% command line (see VARARGIN)

clc;

% Choose default command line output for Input

handles.output = hObject; axes(handles.Logo1)

imshow('Icons\logo.png') axes(handles.axeGreyTraining) imshow('Icons\whos.jpg')

axes(handles.axeEigenfaceTraining) imshow('Icons\whos.jpg')

axes(handles.axFotoTesting) imshow('Icons\whos.jpg') axes(handles.axFotoHasil) imshow('Icons\whos.jpg')

% Icon button zoom in confusion matriks

(66)

icon=imread('Icons\figure.jpg');

set(handles.BtnFigureTable,'CData',icon);

% Icon button zoom in

set(handles.btnZoomIn,'Visible','off');

icon=imread('Icons\zoom_in.jpg');

set(handles.btnZoomIn,'CData',icon);

% Icon button zoom out

set(handles.btnZoomOut,'Visible','off');

icon=imread('Icons\zoom_out.jpg');

set(handles.btnZoomOut,'CData',icon);

% Icon button hand

set(handles.btnHand,'Visible','off');

icon=imread('Icons\hand.jpg');

set(handles.btnHand,'CData',icon);

% Icon button figure axes grafik hasil uji

set(handles.btnFigAxGrafikUji,'Visible','off');

icon=imread('Icons\figure.jpg');

set(handles.btnFigAxGrafikUji,'CData',icon);

% Axes grafik hasil uji

set(handles.axGrafikUji,'Visible','off');

% Update handles structure

guidata(hObject, handles);

% UIWAIT makes Input wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.

function varargout = Input_OutputFcn(~, ~, handles)

% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure

varargout{1} = handles.output;

% --- Executes during object creation, after setting all properties.

function Logo1_CreateFcn(~, ~, ~) %#ok<DEFNU>

% hObject handle to Logo1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

(67)

% Hint: place code in OpeningFcn to populate Logo1

% --- Executes on button press in btnDataTraining.

function btnDataTraining_Callback(hObject, ~, handles) %#ok<DEFNU>

% hObject handle to btnDataTraining (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

clc;

try

set(handles.tblConMatrik,'Visible','off'); set(handles.txtAkurasi,'Visible','off'); set(handles.txtPersen,'Visible','off'); set(handles.BtnFigureTable,'Visible','off'); set(handles.btnSave,'Enable','inactive');

set(handles.BtnFigureTable,'Enable','inactive'); warning('off'); %#ok<WNOFF>

handles.folder= uigetdir;

if handles.folder ~= 0

jmlOrang=str2double(get(handles.etJumlahOrang, 'String'));

jmlFoto=str2double(get(handles.etJumlahFoto, 'String'));

jmlPC=str2double(get(handles.edJumlahPC, 'String'));

handles.jmlOrang=jmlOrang; handles.jmlFoto=jmlFoto;

if get(handles.popFormat,'Value') == 1

handles.format='.jpg';

elseif get(handles.popFormat,'Value') == 2

handles.format='.bmp';

else

handles.format='.jpeg';

end

% Mengambil nama file, menghilangkan angka dan ekstensi

files =

dir(fullfile(strcat(handles.folder,'\*',handles.format)));

namaFile=cell(1,jmlOrang); namaSemua=cell(1,jmlOrang);

for i=1:jmlFoto*jmlOrang nama=files(i).name;

nama=regexprep(nama,strcat('[12345678910]+',handles.format),''); namaSemua{i}=nama;

if mod(i,jmlFoto)==0 namaFile{i}=nama; end

end

(68)

handles.nama=namaFile;

% Pengambilan file dan memulai proses eigenface

chkBox=get(handles.chkBoxGrey,'Value');

for i=1:jmlOrang S=[];

for j=1:jmlFoto

str=strcat(handles.folder,'\',char(handles.nama(i)),int2str(j),han

dles.format);

gambar=imread(str);

if chkBox==0

gambar=rgb2gray(gambar); % Berarti foto yang

digunakan

% adalah foto berwarna

else

% gambar=rgb2gray(gambar);

end

axes(handles.axeGreyTraining); %#ok<LAXES>

imshow(gambar); % Gambar grey untuk axeGreyTraining

% pause(0.1);

[irow,icol]=size(gambar); a=gambar';

temp=reshape(a,irow*icol,1); S=[S temp]; %#ok<AGROW>

set(handles.txtDimensiData,'String',['[m , n] =

[',num2str(irow),' , ',num2str(icol),'] => Size: ', num2str(irow*icol)]); end handles.S=S;

% Proses eigenface

[hasilEig,eigPic]=eigface(S,irow,icol);

hasilSemuaEigFace{i}=hasilEig; %#ok<AGROW> % Menampung seluruh hasil eigenface

% ke dalam cell

% Foto eigenface untuk axeEigenfaceTraining

axes(handles.axeEigenfaceTraining); %#ok<LAXES>

imshow(eigPic); end

% Potong PC

(69)

hasilEigFaceMtx=[]; for i=1:n

hasilEigFace{i}=hasilSemuaEigFace{i}(1:jmlPC,:);

%#ok<AGROW>

hasilEigFaceMtx=[hasilEigFaceMtx;hasilSemuaEigFace{i}(1:jmlPC,:)'] ; %#ok<AGROW>

end

handles.hasilSemuaEigFace=hasilSemuaEigFace;

% Pembentukan class training dan testing

jmlTesting=2;%str2double(get(handles.edJmlTesting,'String')); handles.jmlTesting=jmlTesting; class_semuaData=zeros(1,(jmlOrang*jmlFoto)); class_train=zeros(1,(jmlOrang*jmlFoto)-(jmlOrang*jmlTesting)); class_test=zeros(1,jmlOrang*jmlTesting); class=1; idxSemuaData=1; idxTrain=1; idxTest=1;

for i=1:jmlOrang for j=1:jmlFoto

class_semuaData(idxSemuaData)=class; idxSemuaData=idxSemuaData+1;

end

for j=1:jmlFoto-jmlTesting

class_train(idxTrain)=class; idxTrain=idxTrain+1;

end

for k=1:jmlTesting

class_test(idxTest)=class; idxTest=idxTest+1; end class=class+1; end handles.class_semuaData=class_semuaData'; class_train=class_train'; class_test=class_test'; handles.class_train=class_train; handles.class_test=class_test; handles.hasilEigFaceMtx=hasilEigFaceMtx;

model = NaiveBayes.fit(hasilEigFaceMtx,class_semuaData); handles.dataModelSemua=model.Params;

% assignin('base','class_semuaData',class_semuaData);

% assignin('base','hasilEigFaceMtx',hasilEigFaceMtx);

%

assignin('base','dataModelSemua',handles.dataModelSemua);

(70)

[testing,training,dataModel,ConMatrix,akurasi]=klafikasiAkurasi (hasilEigFace,jmlOrang,jmlFoto,class_train,class_test,jmlTesting); handles.testing=testing; handles.training=training; handles.conMax=ConMatrix; [~,n]=size(dataModel); dataModel{n+1}=handles.dataModelSemua; handles.model=dataModel;

% assignin('base','dataModel',dataModel);

% Menampilkan confius matriks

set(handles.tblConMatrik,'Data',ConMatrix);

set(handles.tblConMatrik,'ColumnWidth',{30});

set(handles.tblConMatrik,'Visible','on'); set(handles.BtnFigureTable,'Visible','on');

% Menampilkan hasil akurasi

set(handles.txtAkurasi,'String',num2str (akurasi));

set(handles.txtAkurasi,'Visible','on');

% Menampilkan logo persen

set(handles.txtPersen,'Visible','on'); % Mengaktifkan tombol Save dan figure tabel

set(handles.btnSave,'Enable','on');

set(handles.BtnFigureTable,'Enable','on');

% Set max PC untuk percobaan uji akurasi

set(handles.edPercobaanMax,'String',num2str(irow*icol));

end

catch err

uiwait(msgbox(strcat('ADA

ERROR:',err.message),'Peringatan','modal'));

end

guidata(hObject, handles);

%=========================================================END OF TRAINING

% --- Executes on button press in BtnFigureTable.

function BtnFigureTable_Callback(~, ~, handles) %#ok<DEFNU>

% hObject handle to BtnFigureTable (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

% Hint: get(hObject,'Value') returns toggle state of BtnFigureTable

X=handles.conMax;

% Konversi matrix dari nomor ke cell array string

(71)

% Penentuan yang akan diberi warna dengan fotmat html

[m,n]=size(X);

for i=1:m for j=1:n if i==j

XX(i,j) = strcat(...

'<html><span style="color: #429808; font-we

Gambar

Gambar 2.1 PengenalanWajah (Zhao dan Chellapa, 2006)
Tabel 2.1 Hasil eigen value dan eigen vektor
Tabel 2.2 Tabel IPK
Tabel 2.4 Hasil Uji IPK
+7

Referensi

Dokumen terkait

Manfaat Praktis : Hasil penelitian ini diharapkan dapat memberikan masukan pada ibu yang bekerja agar dapat mengendalikan stresnya dalam menjalankan perannya

Penelitian ini bertujuan untuk mengetahui kerapatan tumbuhan Anaphalis javanica di gunung Burni Telong Bener Meriah serta mengetahui factor abiotik yang mempengaruhi

Krisis tersebut terjadi akibat terdapat banyak ketidakadilan yang terjadi dalam pelaksanaan hukum pada masa pemerintahan Orde Baru.. Seperti kekuasaan kehakiman yang dinyatakan pada

Alhamdulillah rasa syukur saya ucapkan kepada Allah SWT atas segala rahmat, hidayah serta anugerah-Nya sehingga saya dapat menyelesaikan skripsi yang berjudul “POLA

Dari hasil penelitian yang telah dilakukan menunjukkan bahwa efek iradiasi dengan sinar gamma mengakibatkan terjadinyaperubahan fenotipe tanaman (Tabel 1 .)• Perubahan fenotipe

The abalone feeding experiment was conducted over an 8-week 56 days period from July to September, 1997, at HMSC. Dietary treatments consisted of dulse cultured under one of

Pajak penghasilan terkait pos-pos yang akan direklasifikasi ke laba rugi 0 PENGHASILAN KOMPREHENSIF LAIN TAHUN BERJALAN - NET PAJAK PENGHASILAN TERKAIT.. TOTAL LABA (RUGI)