UNIVERSITAS BINA NUSANTARA Program Ganda Teknik Informatika Matematika PERANCANGAN PROGRAM SIMULASI DETEKSI WAJAH DENGAN SUPPORT VECTOR MACHINES VIOLA JONES Andoko NIM: 0600653013 ABSTRAK Dengan tingkat intelektual sekarang ini, manusia tidak dapat memberikan definisi yang spesifik mengenai wajah manusia, sehingga metode pemrograman hard computing tidaklah mungkin diterapkan untuk menyelesaikan masalah ini. Di lain pihak, support vector machines menawarkan suatu model matematika yang dapat mengolah data (input dan ouput) yang diberikan, dan melakukan proses generalisasi terhadap data tersebut. Pada tulisan ini, akan dibahas penyelesaian masalah deteksi wajah dengan metode viola-jones, yaitu metode yang menggabungkan support vector machines, algoritma boosting, dan cascade classifier dan menerapkannya terhadap suatu sembarang citra digital, untuk mendapatkan posisi-posisi wajah pada citra tersebut. Kata Kunci: Face detection, support vector machines, boosting algorithms
KATA PENGANTAR Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmatnya, sehingga penulis dapat menyusun dan menyelesaikan makalah ini. Pada halaman ini, penulis ingin mengucapkan banyak terima kasih kepada: 1. Bapak Gerardus Polla, Prof., Dr., Drs., M.App.Sc. selaku Rektor Universitas Bina Nusantara yang senantiasa memberikan dorongan untuk kemajuan mahasiswanya. 2. Bapak Wikaria Gazali, S.Si., MT. selaku Dekan FMIPA Universitas Bina Nusantara, yang memberikan dukungan moriil kepada penulis agar dapat menyelesaikan skripsi ini. 3. Bapak Ngarap Imanuel Manik, Drs., M Kom. selaku Ketua Jurusan FMIPA Universitas Bina Nusantara sekaligus Dosen Pembimbing materi yang telah memberikan pengarahanpengarahan dalam materi maupun teknis penulisan kepada penulis. 4. Bapak Gintoro S.Kom, MM selaku Dosen Pembimbing yang telah memberikan bimbingan dalam penulisan dan perancangan program kepada penulis. 5. Orang tua penulis yang telah mendukung secara moril dan senantiasa mengingatkan penulis agar dapat menyelesaikan skripsi ini. 6. Rekan-rekan sekelas jurusan TI-MAT angkatan 2002, rekan-rekan dari litbang google India, dan semua pihak yang tidak dapat disebutkan satu per satu, yang telah memberikan bantuan yang sangat berarti dalam proses penyusunan skripsi ini. Penulis menyadari bahwa makalah ini masih jauh dari kesempurnaan. Oleh karena itu, penulis mengharapkan masukan kritik dan saran yang membangun dari semua pihak. Semoga makalah ini dapat bermanfaat bagi para pembacanya. Jakarta, 27 Juli 2007 Penulis Andoko 0600653013 iv
DAFTAR ISI Halaman Judul Luar. i Halaman Judul Dalam.. ii Abstrak. iii Kata Pengantar. iv Daftar Isi.. v Daftar Gambar. vii Daftar Tabel.. viii BAB 1 : PENDAHULUAN.. 1 1.1 Latar Belakang Masalah.. 1 1.2 Ruang Lingkup Masalah.. 2 1.3 Perumusan Masalah.. 3 1.4 Tujuan dan Manfaat Penelitian 3 1.5 Metodologi Penelitian.. 4 1.6 Sistematika Penulisan... 4 BAB 2 : LANDASAN TEORI. 6 2.1 Machine Learning 6 2.2 Supervised Learning. 7 2.3 Linear Learning Machines... 7 2.3.1 Rosenblatt s Perceptron 8 2.3.2 Dual dari Linear Machines... 9 2.4 Trik Kernel 10 2.5 Support Vector Machines. 11 2.5.1 Sejarah Support Vector Machines 11 2.5.2 Maximal Margin Classifier.. 12 2.5.3 Soft Margin Optimisation. 12 2.6 Meta-Algoritma 13 2.7 Algoritma Boosting.. 13 2.7.1 AdaBoost.. 14 2.8 Perancangan Software... 14 2.8.1 System Development Life Cycle 15 2.9 Simulasi Komputer. 18 BAB 3 : ANALISIS DAN PERANCANGAN PROGRAM 20 3.1 Perancangan Program Aplikasi. 20 3.1.1 Gambaran Umum Program Aplikasi 20 3.1.2 Spesifikasi Rumusan Perancangan... 20 3.1.3 Use-Case Diagram 21 3.2 Perancangan Modul.. 22 3.2.1 Perancangan Menu 22 3.2.2 Perancangan Menu Detect From Image... 22 3.2.3 Perancangan Menu Detect From Video 24 3.2.4 Perancangan Author Dialog.. 24 3.3 Spesifikasi Program.. 25 v
3.3.1 Perancangan Spesifikasi Proses Form Detect From Image.. 25 3.3.2 Perancangan Spesifikasi Proses Form Detect From Video...26 BAB 4 : IMPLEMENTASI DAN EVALUASI PROGRAM 27 4.1 Implementasi Sistem. 27 4.1.1 Spesifikasi Hardware 27 4.1.2 Spesifikasi Software. 27 4.1.3 Tampilan Layar Utama. 28 4.1.4 Tampilan Layar Form Detect From Image.. 28 4.1.5 Tampilan Layar Form Detect From Video... 32 4.1.6 Tampilan Layar Author Dialog 34 4.2 Evaluasi Hasil Program.35 BAB 5 : KESIMPULAN DAN SARAN 42 5.1 Kesimpulan.. 42 5.2 Saran. 43 DAFTAR PUSTAKA.. 44 DAFTAR RIWAYAT HIDUP LAMPIRAN vi
DAFTAR GAMBAR Gambar 2.1 Sebuah vektor memisahkan bidang menjadi 2 daerah 8 Gambar 2.2 Ilustrasi fungsi kernel dalam menyederhanakan klasifikasi 11 Gambar 2.3 Waterfall Model 17 Gambar 3.1 Use-Case Diagram Program Aplikasi ViolaJonesSimulator 20 Gambar 3.2 Rancangan Menu 21 Gambar 3.3 Rancangan Form Detect From Image 22 Gambar 3.4 Rancangan Form Training 23 Gambar 3.5 Rancangan Author Dialog 24 Gambar 4.1 Tampilan Layar Utama 27 Gambar 4.2 Tampilan Layar awal Form Detect From Image 28 Gambar 4.3 Tampilan Layar Form Detect From Image Saat Memilih File 29 Gambar 4.4 Tampilan Layar Form Detect From Image Sebelum Proses Deteksi 30 Gambar 4.5 Tampilan Layar Form Detect From Image Sesudah Proses Deteksi 30 Gambar 4.6 Tampilan Layar Awal Form Detect From Video Saat Memilih File 31 Gambar 4.7 Tampilan Layar Form Detect From Video 32 Gambar 4.8 Tampilan Layar Form Detect From Video Sebelum Proses Deteksi 32 Gambar 4.9 Tampilan Layar Form Detect From Video Saat Proses Deteksi Berlangsung 33 Gambar 4.10 Tampilan Layar Form About 34 Gambar 4.11 Hasil proses deteksi citra bukan wajah 01.jpg dan bukan wajah 02.jpg 36 Gambar 4.12 Hasil proses deteksi citra bukan wajah 03.jpg dan jenggot.jpg 36 Gambar 4.13 Hasil proses deteksi citra kacamata.jpg 37 Gambar 4.14 Hasil proses deteksi citra lena.jpg 37 Gambar 4.15 Hasil proses deteksi citra patung.jpg 38 Gambar 4.16 Hasil proses deteksi citra ramai 01.jpg 38 Gambar 4.17 Hasil proses deteksi citra ramai 02.jpg 39 Gambar 4.18 Hasil proses deteksi citra ramai 03.jpg 39 Gambar 4.19 Hasil proses deteksi citra rambut.jpg dan topi.jpg 39 vii
DAFTAR TABEL Tabel 2.1 Algoritma perceptron (bentuk primal) 9 Tabel 2.2 Algoritma perceptron (bentuk dual) 10 Tabel 4.1 Tabel data citra yang digunakan 34 Tabel 4.2 Tabel hasil proses deteksi 35 viii