• Tidak ada hasil yang ditemukan

DETEKSI WAJAH MANUSIA MENGGUNAKAN METODE HAARCASCADE CLASSIFIER.

N/A
N/A
Protected

Academic year: 2017

Membagikan "DETEKSI WAJAH MANUSIA MENGGUNAKAN METODE HAARCASCADE CLASSIFIER."

Copied!
93
0
0

Teks penuh

(1)

SKRIPSI

Disusun oleh :

RYAN RAYNALDI

NPM. 0934010206

J URUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL

"

VETERAN

"

(2)

SKRIPSI

Diajukan Untuk Memenuhi Sebagai Persyaratan Dalam Memperoleh Gelar Sarjana Komputer

Jurusan Teknik Informatika

Disusun oleh :

RYAN RAYNALDI

NPM. 0934010206

J URUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”

J AWA TIMUR

(3)

MENGGUNAKAN METODE HAARCASCADE CLASSIFIER

Disusun O leh :

RYAN RAYNALDI

NPM. 0934010206

Telah disetujui untuk mengikuti Ujian Negar a Lisan Gelombang IV Tahun Akademik 2012/2013

Pembimbing Utama Pembimbing Pendamping

Basuki Rahmat, S.Si, MT Dr. Ir. Ni Ketut Sari, MT NPT. 3 6907 06 0209 1 NIP. 19650731 199203 1 001

Mengetahui,

Ketua J urusan Teknik Infor matika Fakultas Teknologi Industri UPN ”Veteran” J awa Timur

(4)

Disusun Oleh :

RYAN RAYNALDI NPM. 0934010206

Telah dipertahankan di hadapan dan diterima oleh Tim Penguji Skr ipsi J ur usan Teknik Infor matika Fakultas Teknologi Industri

Univer sitas Pembangunan Nasional ”Veteran” J awa Timur Pada Tanggal 14 J uni 2013

Pembimbing : Tim Penguji :

1. 1.

Basuki Rahmat, S.Si, MT Intan Yuniar Pur basar i, S.Kom, M.Sc

NPTY. 3 6907 06 0209 1 NPTY. 2 8006 04 40198

Univer sitas Pembangunan Nasional ”Veter an” J awa Timur

(5)

KETERANGAN REVISI lisan gelombang IV, TA 2012/2013 dengan judul:

“DETEKSI WAJ AH MANUSIA MENGGUNAKAN METODE

HAARCASCADE CLASSIFIER”

Surabaya, 19 Juni 2013 Dosen Penguji yang memerintahkan revisi:

1) Intan Yuniar Purbasari, S.Kom, M.Sc NPTY. 2 8006 04 40198

2) Wahyu S J Putra, S.Kom, M.Kom NPTY. 3 8608 10 02951

3) Barry Nuqoba, S.Si, M.Kom NIP. 19841102 0212122 1 002

(6)

terselesaikannya Laporan Skripsi. Ucapan terima kasih ini saya tujukan kepada : 1) Allah SWT., karena berkat Rahmat dan berkahNya kami dapat menyusun dan

menyelesaikan Laporan Skripsi ini hingga selesai.

2) Keluarga tercinta, terutama kedua orang tua bapak dan ibu tersayang, terima kasih atas semua doa, dukungan serta harapan-harapanya pada saat penulis menyelesaikan skripsi dan laporan ini.

3) Bapak Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor Universitas Pembangunan Nasional “Veteran” Jawa Timur.

4) Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri UPN “Veteran” Jawa Timur.

5) Ibu Dr. Ir. Ni Ketut Sari, MT. selaku Ketua Jurusan Teknik Informatika UPN “Veteran” Jawa Timur sekaligus dosen pembimbing pendamping yang telah dengan sabar membimbing dengan segala kerendahan hati dan banyak ide, petunjuk, masukan, bimbingan, dorongan serta bantuan yang sangat berarti dan bermanfaat bagi tugas akhir ini. Serta bersedia meluangkan waktu untuk membimbing dan membantu.

(7)

kesah dan membantu penyusun agar dapat menyelesaikan Tugas Akhirnya. 8) Bapak Frinda Wahyu N , S.Kom., Selaku PIA Tugas Akhir, Serta bapak ibu

dosen Teknik Informatika UPN “Veteran” Jawa Timur

9) Kawan-kawan pengurus HIMATIFA, Awan, Arka P, Dia, Nita, Indra, Frans, Rachman, Emil, Alfian Syarizal, Tio, Satrio C, Agus Widodo, Irkham, Alfian Fachturam, Alon, Rafael, Imam Taufik ,Rio, Ridho, Yogi, Gede yang selalu memberi support yang luar biasa dan inspirasi dalam penyelesain penulias skripsi ini, HIMATIFA JAYA.

10)Para Sahabatku Rully Gita H, Firna Anas O, yang selalu menemani dan tak bosan – bosan selalu memberi support.

11) Serta keluarga besar Warga Informatic”dhe, Asep kurnaivi ,Ika Wahyu, Agustin,Wahyu, Amel, Umam, Rahman, Gayo, Adi Suryanto, Yanuar, Radit, Hirson, Dedy, Doni, dan teman-teman yang lain, yang tidak bisa disebut satu persatu yang telah membantu dalam penyelesaian Laporan Skripsi ini.

12) Serta Warkop C7 dan Warkop Kelir yang telah menyidiakan tempat yang nyaman dan fasilitas internet yang sangat membantu dalam penyelesain skripsi ini.

(8)

melimpahkan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini yang berjudul “DETEKSI WAJ AH MANUSIA MENGGUNAKAN METODE HAARCASCADE CLASSIFIER “tepat waktu.

Skripsi dengan beban 4 SKS ini disusun guna diajukan sebagai salah satu syarat untuk menyelesaikan program Strata Satu (S1) pada jurusan Teknik Informatika, Fakultas Teknologi Industri, UPN ”VETERAN” Jawa Timur.

Melalui Skripsi ini peneliti merasa mendapatkan kesempatan emas untuk memperdalam ilmu pengetahuan yang diperoleh selama di bangku perkuliahan, terutama berkenaan tentang penerapan teknologi perangkat bergerak. Akhir kata dengan segala kerendahan hati penulis menyadari bahwa skripsi ini masih jauh dari kriteria penelitian yang sempurna. Oleh karena itu, kritik dan saran yang sifatnya membangun penulis sangat harapkan. Semoga skripsi ini dapat bermanfaat bagi penulis khususnya dan umumnya bagi pembaca serta peneliti selajutnya.

Surabaya,14 juni 2013

(9)

ABSTRAK ... i

KATA PENGANTAR ... ii

UCAPAN TERIMA KASIH ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... ix

DAFTAR TABEL ... xi

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 3

1.3. Batasan Masalah ... 4

1.4. Tujuan ……….. ... 4

1.5. Manfaat ... 5

1.6. Metodologi Penelitian ... 6

1.7. Sistematika Penulisan ... 6

BAB II TINJ AUAN PUSTAKA ... 9

2.1 Peneliti pendahulu ... 9

2.1.1 Traning Data……… ... 10

(10)

2.1.4. Cascade Classifier ... 11

2.3.1. Tahapan Normalisasi Ukuran Citra (Resizing) ... 16

2.3.2. Tahapan Grayscaling ... 17

(11)

3.3.1. Interface Menu Utama ... 45

4.4.1 Implementasi Istalasi open.cv dan emgu.cv ... 53

4.4.2 Menu Deteksi Wajah ... 61

4.4.2.1. Proses Load ... 61

4.4.2.2. Proses Resize Image ... 62

4.4.2.3. Proses Convert Image ke Grayscale ... 62

4.4.2.4. Proses Memanggil Cascade Classifier. ... 62

4.4.2.5. Prosespencarian wajah ,Rectangledan hitung wajah 62 4.4.2.6. Proses Save ... 63

4.4.2.7. Proses View face ... 63

(12)

4.5.1 Skenario Uji Coba ………... 65

4.5.2 Pelaksanaan Uji Coba ... 65

4.6 Analisa Aplikasi ... 70

4.6.1 Tabel Hasil Uji Coba ... 71

BAB V KESIMPULAN DAN SARAN ... 78

5.1. Kesimpulan ... 78

5.2 Saran ... 79

(13)

DOSEN PEMBIMBING II : Dr. Ir. NI KETUT SARI, MT

ABSTRAK

Algoritma pendeteksian wajah manusia merupakan suatu algoritma yang bertujuan untuk mendeteksi wajah manusia pada gambar yang memiliki karakteristik wajah manusia. Dalam pendeteksian wajah manusia metode yang digunakan adalah haarcascade Classifier.

Metode haarcascade Classifier dalam pendeteksian wajah manusia yang digunakan untuk mengklasifikasikan wajah dengan cara setiap masukan kemudian dihitung nilai fiturnya menggunakan citra integral. Hasil perhitungan ditraining menggunakan suatu algoritma boosting yang merupakan variasi dari algoritma AdaBoost. Hasil training inilah yang digunakan untuk membentuk Cascade Classifier, Akan tetapi dalam membantu proses deteksi wajah , terdapat juga tahapan-tahapan proses yang diantaranya adalah grayscale,threshold,dan rectangle. Tahapan proses-proses tersebut pada dasarnya untuk merubah gambar pixel berwarna menjadi pixel abu-abu (grayscale),untuk merubah pixel berwarna menjadi waran hitam putih (threshold) dan untuk menandai hasil proses pendeteksian wajah manusia menggunakan fungsi rectangle .

Hasil dari aplikasi deteksi wajah ini akan menghasilkan sub-sub citra baru berupa gambar wajah manusia yang sudah terpisah dari gambar asalnya, serta dapat menghitung jumlah wajah yang terdeteksi dari gambar yang diproses. Dari 20 uji coba dengan aplikasi secara otomatisi yang yang telah dilakukan, 16 uji coba dapat di deteksi dengan secara akurat, dengan kriteria wajah menghadap ke depan (frontal), dalam posisi tegak, tidak terhalangi sebagian oleh objek lain(wajah, tangan, rambut yang menutupi sebagian wajah, dll)

(14)

1.1 Latar Belakang

Sistem biometrik saat ini telah mencapai perkembangan yang luar biasa dalam menggantikan sistem konvensional, Sistem biometrik adalah sistem untuk melakukan identifikasi dengan cara menggunakan ciri-ciri fisik atau anggota badan manusia, seperti sidik jari, retina mata, suara. Teknologi biometrik ini memiliki beberapa kelebihan seperti tidak mudah hilang, tidak dapat lupa, tidak mudah dipalsukan, dan memiliki keunikan yang berbeda antara manusia satu dengan yang lain. Dalam sistem pengenalan wajah, pendeteksian posisi wajah merupakan salah satu tahap yang penting karena di dunia nyata wajah dapat muncul di dalam citra dengan berbagai ukuran dan posisi (Fraser F, 2003).

(15)

classifier Ada Boost yang didasarkan pada Haar-seperti fitur dan bukan pixel

(Viola P &Michael J Jones, 2001).

Pengenalan karakteristik (pola) wajah manusia merupakan salah satu bidang yang sangat menarik untuk diteliti karena sampai sekarang masih belum ditemukan suatu metode yang benar-benar sempurna dalam mengenal suatu wajah. Hal ini dikarenakan wajah manusia terlalu kompleks, sehingga untuk mengembangkan suatu perhitungan yang ideal adalah hal yang sulit. Di dalam setiap penelitian tentang pengenalan karakteristik (pola) wajah manusia, pasti akan kita temukan sesuatu yang berhubungan dengan image processing dan computer vision. Image Processing adalah salah satu jenis teknologi untuk menyelesaikan masalah mengenai pemrosesan gambar. Dalam Image Processing, gambar yang ada diolah sedemikian rupa sehingga gambar tersebut lebih mudah diproses, sedangkan Computer Vision mempunyai tujuan utama yaitu untuk membuat suatu keputusan yang berguna tentang obyek fisik nyata yang didapat dari perangkat atau sensor (Viola P &Michael J Jones, 2001).

Dari sekian banyak metode pengenalan wajah yang telah digunakan, kami mencoba untuk mengembangkan metode yang sudah ada yaitu metode Haarcascade Classifier. Hal yang paling mendasari dalam pengambilan metode Haarcascade Classifier ini adalah karena metode Haarcascade Classifier

(16)

Metode HaarCascade Classifier merupakan salah satu metode yang berada di library emgu cv. library emgu cv sendiri merupakan wrapper dari Library Open.cv yang khusus berjalan di bahasa pemgroman berbasis (.net) contohnya seperti C #, VB .net, VC + +, IronPython dll (Seo N, 2007).

Aplikasi yang akan dibuat menerima input berupa gambar manusia yang memiliki karakteristik wajah manusia, yang diperoleh dari kamera digital, yang kemudian akan ditransfer menjadi digital image dengan format JPEG ke komputer untuk diproses. Output dari aplikasi deteksi wajah adalah foto wajah manusia yang sudah terpotong dari foto asal. Foto wajah manusia tersebut akan disimpan ke dalam database komputer untuk keperluan pendataan.

Aplikasi deteksi wajah manusia secara otomatis ini pada dasarnya adalah untuk pencarian (identifikasi) posisi wajah manusia yang akan menghasilkan gambar wajah manusia yang telah terpotong. Pencarian posisi akan dilakukan dengan salah satu metode pengolahan citra biner yaitu operasi HaarCascade

Classifier yang dipadukan dengan karakteristik wajah manusia.

1.2 Rumusan Masalah

Adapun permasalahan yang akan dibahas adalah sebagai berikut :

1) Menerapkan tahapan proses untuk membuat aplikasi deteksi wajah manusia dengan menggunakan visual studio.net 2010.

(17)

3) Menerapkan library Emgu Cv dalam Aplikasi deteksi wajah manusia.

1.3 Batasan Masalah

Untuk menjaga fokus dari penelitian ini, maka beberapa batasan yang diberikan adalah sebagai berikut :

1) Wajah yang akan dideteksi adalah wajah yang menghadap ke depan (frontal), dalam posisi tegak, dan tidak terhalangi sebagian oleh objek lain.

2) Pengambilan gambar dilakukan dengan memanggil file dari komputer dengan format JPEG dan JPG. (Still image)

3) Dengan tahapan proses resize, pendeteksian wajah, rectangle ,pemotongan (Cropping) dan penyimpanan (save).

4) Hasil dari pendeteksian wajah manusia akan di simpan dengan format JPEG dengan resolusi VGA (256 x 256 pixel).

5) Menggunakan metode HaarCascade Classifier di library Emgu Cv (2.4.2.1777) untuk mendeteksi wajah manusia

6) Bahasa pemrograman yang dipakai adalah visual basic (.net) dengan kompiler microsoft visual studio 2010.

1.4 Tujuan

(18)

1.5 Manfaat

Manfaat dari penulisan tugas akhir ini adalah :

1. Sebagai dasar solusi untuk membantu sistem keamanan seperti keamanan log in sistem, identifikasi dan autofikasi, yang akan dapat mengidentifikasi wajah secara otomatis.

2. Aplikasi deteksi wajah yang berguna untuk mendeteksi wajah manusia dengan tingkat akurasi yang tinggi, cepat, dan hasil yang konsisten dalam pengujiannya

3. Dapat mengetahui secara lebih detail teknik pengenalan wajah manusia oleh komputer, dengan menggunakan metode HaarCascade Classifier. Pada tools yang terdapat di libraryEmgu Cv

4. Dapat dipergunakan sebagai dasar penelitian selanjutnya untuk sistem pengenal wajah manusia secara otomatis dan dapat dipergunakan untuk berbagai keperluan.

1.6 Metode Penelitian

Beberapa metode dan teknik yang dipergunakan dalam pengumpulan dan pengolahan data skripsi ini antara lain :

a) Metode Pengumpulan Data

(19)

b) Metode Analisis

Metode analisis dalam penulisan ini mencakup bagaimana menganalisa cara kerja algoritma untuk mendeteksi citra wajah manusia secara sistematis.

c) Perancangan dan Pembuatan Aplikasi

Melakukan perancangan algoritma yang digunakan, perancangan struktur data,diagram alur serta interface yang akan digunakan untuk implementasi dalam perangkat lunak yang akan dibuat. Kemudian dilakukan pengimplementasian ke dalam bahasa pemrograman yang untuk aplikasi. d) Pengujian dan Evaluasi Aplikasi

Melakukan pengujian pada aplikasi yang telah dibuat serta mengevaluasi hasil yang diperoleh untuk perbaikan aplikasi sehingga dapat mengetahui apakah aplikasi sesuai dengan tujuan yang diharapkan.

e) Pembuatan Naskah Skripsi

Melakukan dokumentasi dari semua tahap agar dapat dipelajari untuk pengembangan lebih lanjut. Memaparkan dasar-dasar teori dan metode yang terlibat di dalamnya, diantaranya desain perangkat lunak dan implementasinya, hasil pengujian aplikasi termasuk juga perbaikan.

1.7 Sistematika Penulisan

(20)

gambaran yang lebih jelas, maka diuraikan secara singkat mengenai materi dari bab-bab dalam penulisan tugas akhir ini sebagai berikut:

BAB I PENDAHULUAN :

Pada bab ini berisi latar belakang, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, dan sistematika penulisan pembuatan tugas akhir ini.

BAB II TINJAUAN PUSTAKA :

Pada bab ini menjelaskan mengenai landasan teori-teori pendukung pembuatan tugas akhir ini.

BAB III ANALISIS DAN PERANCANGAN SISTEM:

Pada bab ini berisi tentang analisis dan perancangan aplikasi dalam pembuatan Tugas Akhir Deteksi Wajah Manusia Menggunakan Algoritma Cascade Classifier Pada Library Emgu CV.

BAB IV HASIL DAN PEMBAHASAN :

(21)

kesalahan-kesalahan dari program yang mungkin terjadi sehingga dapat diperbaiki

BAB V KESIMPULAN DAN SARAN :

Pada bab ini berisi kesimpulan dan saran dari penulis untuk pengembangan aplikasi.

DAFTAR PUSTAKA :

(22)

2.1. Peneliti Pendahulu

Dalam penelitian pendahulu deteksi wajah digunakan untuk melacak dimana letak wajah manusia dalam sebuah image dan kemudian dilakukan penglokalisasian pada wajah manusia.

(23)

2.1.1. Training Data

Algoritma Haar menggunakan metode statistical dalam melakukan pendeteksian wajah. Metode ini menggunakan sample haa-rlike fetures. Classifier ini menggunakan gambar berukuran tetap (umumnya berukuran 24x24). Cara kerja dari haar dalam mendeteksi wajah adalah dengan menggunakan teknik sliding window berukuran 24x24 pada keseluruhan gambar dan mencari apakah terdapat bagian dari gambar yang berbentuk seperti wajah atau tidak. Haar juga memiliki kemampuan untuk melakukan scaling sehingga dapat mendeteksi adanya wajah yang berukuran lebih besar ataupun lebih kecil dari ganbar pada classifier (Viola P &Michael J Jones, 2001).

Tiap feature dari haar-like feature didefinisikan pada bentuk dari feature, diantaranya koordinat dari feature dan juga ukuran dari feature tersebut ((Viola P &Michael J Jones, 2001).

2.1.2. Fitur Haar

(24)

2.1.3. Integral Image

Integral Image digunakan untuk menentukan ada atau tidaknya dari ratusan fitur Haar pada sebuah gambar dan pada skala yang berbeda secara efisien. Pada umumnya, pengintegrasian tersebut berarti menambahkan unit-unit kecil secara bersamaan. Dalam hal ini unit-unit-unit-unit kecil tersebut adalah nilai-nilai piksel. Nilai integral untuk masing-masing piksel adalah jumlah dari semua pixel dari atas sampai bawah. Dimulai dari kiri atas sampai kanan bawah, keseluruhan gambar itu dapat dijumlahkan dengan beberapa operasi bilangan bulat per pixel (Viola P &Michael J Jones, 2001).

2.1.4. Cascade Classifier.

Cascade classifier adalah sebuah rantai stage classifier, dimana setiap stage classifier digunakan untuk mendeteksi apakah didalam image sub-window terdapat obyek yang diinginkan (object of interest). Stage classifier dibangun dengan menggunakan algoritma adaptive-boost (AdaBoost). Algoritma tersebut mengkombinasikan performance banyak weak classifier untuk menghasilkan strong classifier. Weak classifier dalam hal ini adalah nilai dari haar-like feature. Jenis AdaBoost yang digunakan adalah Gentle AdaBoost (Viola P &Michael J Jones, 2001).

Dalam penelitian pendahulu pengembangan library emgu cv banyak di kolaborasikan di bahasa pemrograman C# karena sama dengan bahasa yang terdapat di emgu cv

(25)

2.2. Landasan Teori

2.2.1. Artificial Intelligence

Artificial Intelligence atau kecerdasan buatan (disingkat AI) adalah kemampuan suatu alat untuk melakukan fungsi yang biasanya dihubungkan dengan kecerdasan manusia, seperti penalaran dan pembelajaran melalui pengalaman. AI adalah cabang dari computer science yang berupaya meniru kemampuan penalaran manusia dengan mengorganisasi dan memanipulasi pengetahuan faktual dan heuristik. Bidang aktivitas AI meliputi sistem pakar, pengenalan bahasa alami, pengenalan suara, penglihatan komputer (Computer Vision) dan robotika.(Dr. John Fernandez.2003)

2.2.2. Citra Digital

(26)

merupakan array dua dimensi dari pixel-pixel tersebut. Image inilah yang akan menjadi input awal dalam Computer Vision (Gonzales R.C.,1992).

Citra digital adalah citra dengan f(x,y) yang nilainya didigitalisasikan baik dalam koordinat spasial maupun dalam gray level. Digitalisasi dari koordinat spasial citra disebut dengan image sampling. Sedangkan digitalisasi dari gray level citra disebut dengan gray-level quantization .Citra digital dapat dibayangkan sebagai suatu matriks dimana baris dan kolomnya merepresentasikan suatu titik di dalam citra, dan nilai elemen matriks tersebut menunjukkan gray level di titik tersebut Hal tersebut diilustrasikan oleh Gambar 2.1. (Gonzales, R.C.,1992)

Gambar 2.1 Citra Digital (Gonzales, R.C.,1992).

2.2.3. Warna

(27)

(berwarna putih). Nilai warna ditentukan oleh tingkat kecerahan maupun kesuraman warna. Nilai ini dipengaruhi oleh penambahan putih ataupun hitam.

Untuk keperluan penampilan secara visual, nilai data digital merepresentasikan warna dari citra yang diolah. Format citra digital yang banyak dipakai adalah :

a) Citra Biner (binary image)

Citra biner (binary image) adalah citra yang hanya mempunyai dua nilai derajat keabuan yaitu hitam dan putih. Pixel-pixel objek bernilai 1 dan pixel-pixel latar belakang bernilai 0. Pada waktu menampilkan gambar, 0 adalah putih dan 1 adalah hitam. Jadi latar belakang pada citra biner berwarna putih sedangkan objek berwarna hitam yang tercemin dalam Gambar 2.2.

Gambar 2.2 Citra biner (Gonzales, R.C.,1992). b) Citra Warna (true color)

(28)

Green, Blue). Setiap warna pokok mempunyai intensitas sendiri dengan nilai maksimum 255 (8-bit).

Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (B) dari suatu triplet. Setiap triplet akan merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B k nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp citra setiap pixel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan tiga sumbunya yang mewakili komponen warna merah (red) R, hijau (green) G, biru (blue) B seperti pada Gambar 2.3 di bawah ini (Gonzales R.C.,1992).

(29)

c) Cita Grayscale (skala keabuan)

Citra grayscale adalah citra digital yang setiap pixel-nya merupakan sampel tunggal, yaitu informasi intensitas. Citra jenis ini terbentuk hanya dari warna abu-abu pada tingkatan yang berbeda-beda, mulai dari warna hitam pada tingkat intensitas terendah hingga warna putih pada tingkat intensitas tertinggi seperti pada Gambar 2.4 dibawah ini. (Gonzales R.C.,1992).

Gambar 2.4 Citra Grayscale (Gonzales, R.C.,1992).

2.3. Pengolahan Citr a Digital(Image Processing)

2.3.1. Tahapan Normalisasi Ukuran Citr a (Resizing)

(30)

Scaling atau penskalaan pada citra disebut juga image zooming, yaitu proses untuk mengubah ukuran citra asli (zoom in / memperbesar ukuran citra asli atau zoom out / memperkecil ukuran citra asli). Proses perubahan ukuran resolusi citra dibutuhkan untuk menyesuaiakan resolusi citra masukan dengan resolusi citra template. Contoh gambar resizing seperti Gambar 2.5 dibawah ini, (Gonzales, R.C.,1992).

150x150 pixel 200x200 pixel

Gambar 2.5 ResizingImage

Gambar 2.5 mengilustrasikan perubahan ukuran pixel dengan ukuran awal 200x200 pixel menjadi 150x150 pixel.

2.3.2. Tahapan Grayscaling.

(31)

memudahkan proses perhitungan pada operasi berikutnya contoh perbuaha citra RGB ke Gray seperti pada Gambar 2.6 dibawah ini.

Gambar 2.6 Grayscaling Image

Grayscale dapat dengan mudah dihitung berdasarkan nilai RGB yang diketahui menggunakan prosedur sederhana seperti dibawah ini :

W =

(2.1)

W = nilai grayscale R = nilai warna merah G = nilai warna hijau B= nilai warna biru

2.3.3. Tahapan Thresholding

(32)

Pembuatan citra biner adalah salah satu bentuk thresholding dengan nilai 0 dan 1, yaitu melakukan perubahan semua nilai pixel yang lebih besar atau sama dengan nilai ambang menjadi 1 dan semua nilai pixel yang lebih kecil dari nilai ambang menjadi 0. (Gonzales R.C.1992). Gambar 2.7 mencerminkan perubahan warna gray ke thresholding.

Warna hitam pixel < 0 Warna pitih pixel > 1

Gambar 2.7 Thresholding image (Gonzales R.C.,1992).

2.3.4. Tahapan Deteksi Wajah (face detection)

Deteksi wajah adalah teknologi komputer yang menentukan lokasi dan ukuran wajah manusia di sembarang (digital) gambar. Mendeteksi fitur wajah dan mengabaikan hal lain, seperti bangunan, pohon dan tubuhan.

(33)

Deteksi wajah dapat dianggap sebagai kasus yang lebih umum dari lokalisasi wajah . Di lokalisasi wajah, tugas ini adalah untuk menemukan lokasi dan ukuran dari sejumlah dikenal wajah (biasanya satu). Dalam deteksi wajah, seseorang tidak memiliki informasi tambahan (Dr. John Fernandez.2003).

Awal algoritma face-detection difokuskan pada deteksi wajah manusia frontal, sedangkan algoritma baru mencoba untuk memecahkan masalah yang lebih umum dan sulit multi-view deteksi wajah. Artinya deteksi wajah yang baik diputar sepanjang sumbu dari wajah untuk pengamat, atau diputar sepanjang sumbu vertikal atau kiri-kanan , atau keduanya. Algoritma baru memperhitungkan variasi dalam gambar atau video dengan faktor-faktor seperti penampilan wajah, pencahayaan, dan pose (Dr. John Fernandez.2003).

2.3.5. Metode Cascade Classifier

(34)

dinyatakan sebagai bukan wajah (tidak akan diproses lagi). Hal ini sangat mempercepat proses pengklasifikasian, karena jumlah inputan yang diterima di setiap classifier akan semakin berkurang (Viola P &Michael J Jones, 2001).

(35)

Gambar 2.8 Cascade Classifier (Viola dan jones,2001).

Pada klasifikasi tingkat pertama, tiap subcitra akan diklasifikasi menggunakan satu fitur. Klasifikasi ini kira-kira akan menyisakan 50% subcitra untuk diklasifikasi di tahap kedua. Seiring dengan bertambahnya tingkatan klasifikasi, maka diperlukan syarat yang lebih spesifik sehingga fitur yang digunakan menjadi lebih banyak. Jumlah sub-citra yang lolos klasifikasi pun akan berkurang hingga mencapai jumlah sekitar 2%.

2.3.6. Haarcascade Template File

Kreteria wajah manusia yang dapat terdeteksi dalam template haarcascade antara lain :

a) Warna kulit tidak berpengaruh

b) Wajah yang menghadap ke depan (frontal) dan dalam posisi tegak c) Tidak terhalangi sebagian oleh objek lain seperti tangan, wajah

lain, rambut yang menutupi sebagian wajah.

(36)

Potongan code dalam haarcascade_frontalface_alt.xml sebagai

<threshold>-0.0315119996666908</threshold> <left_val>2.0875380039215088</left_val>

<right_val>-2.2172100543975830</right_val></_></_> <_>

<threshold>0.0123960003256798</threshold> <left_val>-1.8633940219879150</left_val>

(37)

<_>3 19 9 2 3.</_></rects> <tilted>0</tilted></feature>

<threshold>-0.0191600006073713</threshold> <left_val>-0.7988010048866272</left_val>

<right_val>-0.0340790003538132</right_val></_></_> <_>

<threshold>-3.7730000913143158e-003</threshold> <left_val>-0.1912409961223602</left_val>

<right_val>0.2153519988059998</right_val></_></_> <_>

<threshold>-0.0221730004996061</threshold> <left_val>0.4860099852085114</left_val>

<right_val>3.6160000599920750e-003</right_val></_></_></trees> <stage_threshold>-2.9928278923034668</stage_threshold>

<parent>23</parent>

<next>-1</next></_></stages></haarcascade_frontalface_default> </opencv_storage>

(38)

akan diklasifikasi, berapapun ukurannya akan diubah terlebih dahulu ke dalam ukuran 24x24. Misal, terdapat sub-window berukuran 40x40, maka sub-window tersebut akan dikonversi menjadi window berukuran 24x24 (seperti contoh pda Gambar 2.9). Demikian pula, jika terdapat sub-window yang lebih kecil dari 24x24 ,misalnya 10x10 sub-window tersebut akan diubah ke dalam ukuran 24x24 (seperti contoh pda Gambar 2.10). Dengan melakukan pengkonversian ini, maka citra sub-window berukuran sekecil apapun dapat diklasifikasi.

(39)

Gambar 2.10 Citra Sub-Window Berukuran 10x10 Diubah Ke Ukuran 24x24(Viola dan jones,2001).

(40)

menunjukkan jumlah fitur yang digunakan untuk mengklasifikasi setiap sub-window yang mencapai tahapan tersebut (Viola dan jones,2001).

Bentuk fitur yang digunakan, bisa sama, tetapi bisa juga berbeda, begitu juga dengan posisi dan ukuran fitur tersebut. Namun tidak ada fitur yang persis sama (memiliki bentuk, posisi, dan ukuran yang sama) di tree yang berbeda.Di setiap tree hanya terdapat satu node, yaitu root node. Di dalam setiap node ini,terdapat fitur Haarlike (rects), nilai threshold (threshold), serta nilai-nilai batasan minimum dan maksimum (left_val dan right_val) yang harus dipenuhi suatu fitur agar sub-window dapat lolos ke tahap selanjutnya. Untuk dapat melewati suatu tahapan, suatu sub-window harus berhasil melewati semua tree yang ada di dalam tahapan tersebut.Perhitungan nilai fitur juga dilakukan di dalam tree. Berikut adalah penjelasan mengenai fitur Haarlike (rects) pada setiap tree (Viola dan jones,2001).

<rect s>

<_>3 7 1 4 4 - 1 .< /_> <_>3 9 1 4 2 2 .< /_> < /rect s>

(41)

setiap nilai pixel pada fitur persegi tersebut. Apabila fitur persegi pada suatu baris bertemu dengan fitur persegi pada baris lain, maka setiap nilai pixel akan dikalikan dengan hasil penjumlahan antara angka terakhir dari masing-masing baris yang saling bertemu tersebut.

Fitur persegi tersebut kemudian di-threshold dengan algoritma sebagai berikut:

IF pixel < 0 THEN set_to _black ELSE set_to_white

(42)

Gambar 2.11 Stages Tree 0 Pada haarcascade_frontalface_alt.xml (Viola dan jones,2001).

(43)

Gambar 2.12 Pohon keputusan dalam haarcascade_frontalface_alt. (Viola dan jones,2001).

Hasil perhitungan tersebut lalu dibandingkan dengan nilai threshold, apabila nilai fitur lebih kecil dari nilai threshold, maka fitur tersebut akan dianggap tidak ada.Sebalinya, jika nilai fitur lebih besar atau sama dengan nilai threshold, maka nilai fitur ini akan dilanjutkan ke left_val dan right_val. Apabila nilai fitur berada di antara nilai left_val dan right_val, maka sub-window tersebut berhasil melewati classifier lemah atau tree.

(44)

2.4. Visual Studio .Net 2010

Bahasa Visual Basic adalah salah satu diantara sekian banyak bahasa pemrograman yang cukup banyak digunakan oleh para programmer. Visual Basic adalah bahasa pemrograman visual dengan dasar pemrograman bahasa Basic. Bahasa Basic (Beginner's All-purpose Sybolic Instruction Code) dikembangkan pertama kali pada awal 1950-an. Sementara bahasa Visual Basic, yang merupakan pengembangan bahasa Basic dikembangkan pertama kali oleh microsoft pada tahun 1991.

Visual Basic merupakan salah satu development tool yaitu alat bantu yang dapat digunakan untuk membuat berbagai macam program komputer, khususnya yang berbasis windows. Pembuatan aplikasi dengan menggunakan bahasa Visual Basic dimulai dengan memperkirakan kebutuhan, kemudian merancang tampilan program yang diikuti dengan pembuatan kode program tersebut.

Agar bisa menguasai bahasa pemrograman Visual Basic, diharuskan mempelajari dasar-dasarnya dengan lebih baik dan kuat. Beberapa komponen utama dalam bahasa Visual Basic yang harus diketahui diantaranya :

a) Project

Project adalah sekumpulan modul. Jadi project (proyek) adalah program aplikasi itu sendiri. Didalamnya terdapat form beserta code nya. Project ini disimpan dalam file berakhiran .vbproj. File ini akan menyimpan seluruh komponen program, termasuk pilihan project, pilihan environment, pilihan file exe dan segala sesuatu yang berhubungan dengan project.

(45)

Form adalah object yang dipakai sebagai tempat bekerja program aplikasi. Jadi bisa dikatakan di form inilah kita melakukan aktifitas perancangan program. Biasanya pada saat mendesain form, terdapat garis titik-titik yang disebut grid. Grid sangat berguna untuk membantu pengaturan tata letak objek yang dimasukkan dalam form, karena gerakan penunjuk mouse akan sesuai (tepat) pada titik-titik grid.

c) Toolbox

Toolbox adalah kotak alat yang berisi icon-icon untuk memasukkan objek tertentu ke dalam jendela form. Kita dapat memodifikasi toolbox, misalnya menambah komponen icon dengan mengklik kanan pada toolbox, lalu memilih Components atau Add Tab.

Icon-icon pada toolbox ini seringkali disebut sebagai control. Setiap control memeiliki properti seperti warna, tulisan yang diletakkan pada control dan properti lainnya. Control diletakkan pada toolbox untuk dipilih dan digambarkan pada form.

d) Properties

Properties digunakan untuk menentukan setting suatu objek. Suatu objek biasanya mempunyai beberapa properties yang dapat diatur langsung dari jendela properties atau lewat kode program. Setting properties akan menentukan cara kerja dari objek yang bersangkutan saat program aplikasi dijalankan, misalnya menentukan warna objek, bingkai objek, pengambilan data dan lain-lain.

(46)

Kode program adalah serangkaian tulisan perintah yang akan dilaksanakan jika suatu objek dijalankan. Kode program ini akan mengontrol dan menentukan jalannya suatu objek.

f) Event

Event adalah peristiwa atau kejadian yang diterima oleh suatu objek, misalnya klik, seret, tunjuk, dan lain-lain. Event yang diterima objek akan memicu MS.VB menjalankan kode program yang ada di dalamnya.

g) Metoda (Method)

Metoda adalah suatu set perintah seperti halnya fungsi dan prosedur, tetapi sudah tersedia di dalam suatu objek. Seperti halnya properti (yang juga terdapat pada suatu objek), suatu metoda dapat dipanggil dengan menyebut nama objek diikuti tanda titik dan nama metodanya.

2.5. EMGU CV

Emgu Cv adalah pembungkus platform. lintas Bersih ke OpenCV perpustakaan pengolahan citra. Membiarkan OpenCV fungsi yang akan dipanggil dari bahasa kompatibel NET seperti C #, VB, C + +, Iron Python dll. pembungkus dapat dikompilasi di Mono dan berjalan di Windows, Linux, Mac OS X, iPhone, perangkat iPad dan Android.

(47)

dibandingkan dengan dikelola C + + implementasi di mana file header hanya dapat dimasukkan. Jika Anda melihat Emgu Cv berjalan pada VB.net anda akan mengetahui bagaimana kenyamanan mengunaka platfone ini (Seo, N, 2007).

Keuntungan menggunakan library emgu cv adalah:

a. Emgu Cv seluruhnya dibuat berdasarkan bahasa C#, namun dapat digunakan oleh bahasa yang lain juga, seperti VB.NET, C++, dan ironpython.

b. Dalam image processing, image class menggunakan generic parameter yaitu Color dan Depth.

c. Setelah melakukan proses pada image, Emgu Cv secara otomatis akan melakukan dispose image.

d. Serialisasi XML, digunakan apabila program dikerjakan dalam WCF (Windows Communication Fundation), akan digunakan dalam layanan web, dan membutuhkan pengembalian nilai dalam bentuk image<tcolor,tdepth> sebagai parameter. Ini juga dapat berguna untuk penggunaan perangkat lunak pengamatan jarak jauh yang menggunakan kelas capture untuk menangkap gambar dari kamera.

(48)

Pada bab ini akan dijelaskan mengenai proses pembuatan aplikasi deteksi wajah manusia menggunakan metode HaarCascade classifier pada library emgu cv . Proses perancangan aplikasi dalam sub-bab ini akan dibagi menjadi beberapa tahap anatara lain : analisis, gambaran aplikasi secara umum, perancangan proses.

3.1Analisis

Secara garis besar proses perancangan aplikasi akan dibagi menjadi beberapa tahap seperti pada Gambar 3.1.

(49)

Gambar 3.1 merupakan desain tahapan dari pengembangan sistem Deteksi wajah menggunakan metode HaarCascade Classifier. Keterangan detail dari proses tersebut adalah sebagai berikut :

3.1.1 Menu Deteksi Wajah

(50)

Pada Gambar 3.2 merupakan alur menu deteksi wajah manusia dan terdapat 5 tahapan alur , antara lain :

a) Alur pertama adalah load image,dimana proses load image akan memanggil image yang berada pada hardisk

OpenFileDialog1.Filter = " J PG Files (*.jpg)|*.jpg|J PEG Files (*.jpeg)|*.jpeg"

Dimana:

openfileDialog1= komponen yang digunakan untuk memilih file yang akan dibuka

JPG dan JPEG = filter format image yang dapat dipanggil.

b) Setelah proses load image yaitu resize image. Proses resize image digunakan untuk mengecilkan/memperbesar ukuran gambar, karena ukuran gambar yang tertangkap kamera ukurannya tidak sama maka akan dikecilkan/diperbesar menjadi ukuran 512 x 512, Pada Emgu CV untuk me-resize image dengan menggunakan perintah :

image_result=image_scr .Resize (512, 512, _ Emgu.CV.CvEnum.INTER.CV_INTER_CUBIC) dimana :

image_scr asimage awal image_result asimage hasil

Resize(512, 512, Emgu.CV.CvEnum.INTER. _ CV_INTER_CUBIC) as Resize(lebar, tinggi, tipe_interpolasi)

(51)

RGB akan dikonversi menjadi grayscale. Pada EmguCv untuk mengkonversi image RGB ke grayscale dengan menggunakan perintah:

image_result = image_scr .Convert(Of Gray, Byte)() dimana :

image_scr as image(Of Bgr, Byte) image_result as image(Of Gray,Byte)

d) Pada alur keempat ialah pendektesian wajah manusia menggunakan

haarcascade_front alface_alt .xml. pada library emgu cv, proses ini untuk mendeteksi wajah manusia dan rectangel wajah manusia.

Untuk menjalankan fungsi deteksi wajah :

Dim faceDetector As New

CascadeClassifier(" haarcascade_frontalface_default.xml" ) Dimana:

Dim faceDector as new = sebagai deklarasi dari deteksi wajah. CascadeClassifier = memanggil file yang berisi CascadeClassifie pada library emgu cv

("haarcascade_frontalface_default.xml") = memanggil fungsi haarcascade_frontalface_default.xml pada library emgu cv.

Untuk menjalankan proses rectangel : Draw(face, New Bgr(Color.Red), 1) Dimana:

(52)

New Bgr(Color.Red) = untuk memberi warna Draw. ,1)= ukur tebal garis Draw

e) Proses yang terakhir adalah crooping dan save wajah manusia untuk mendapatkan ouput wajah manusia kemudian di seve ke data basse komputer.

Untuk menjalankan proses crooping:

Result = CopyGambarDiResize.Copy(face).Resize(256, 256,

Gambar 3.3 Alur Menu Gallery

(53)

di panggil dalam satu from yang akan menghasilkan sub-sub wajah manusia yang sudah terproses dalam menu deteksi wajah sebelumnya.

3.1.3. Menu Profil

Dimana dalam menu profil ,sistem akan menampilkan from baru untuk biodata.

3.2. Perancangan pr oses

Untuk mengetahui proses-proses yang dilakukan maka akan dijelaskan sebagai berikut :

3.2.1. Resize Image

Resize Image adalah tahap awal untuk mengecilkan/memperbesar ukuran image yang akan diproses. Image tersebut akan dikecilkan/diperbesar menjadi ukuran 512 x 512 seperti Gambar 3.4 dibawah ini .

(54)

Langkah awal pada flowchart resize image adalah menetukan ukuran resize. Kemudian prosesnya dimulai dari width terlebih dahulu untuk dilakukan penghitungan pixel RGB. Setelah itu akan di lakukan proses yang ke2 yaitu high untuk melakukan penghitungan pixel RGB. Proses tersebut akan terus berlangsung sampai kondisi 512 x 512 terpenuhi dan tidak ada lagi pixel RGB yang akan dihitung.

3.2.2. Pr oses Grayscale

Grayscale merupakan proses pengolahan citra dengan cara mengubah nilai-nilai pixel awal citra menjadi sebuah citra keabuan alur proses grayscale seperti pada Gambar 3.5.

(55)

Langkah awal pada flowchart grayscale adalah citra masukan berwarna yang kemudian akan diproses menjadi citra grayscale. Citra keabuan adalah citra yang setiap pixel mengandung satu layer dimana nilai intensitasnya berada pada interval 0-255, sehingga nilai-nilai pixel pada citra keabuan tersebut dapat direpresentasikan dalam sebuah matriks yang dapat memudahkan proses perhitungan pada operasi berikutnya.

Image(Of Gray, Byte) = face.Convert(Of Gray, Byte) Dimana :

Image := gambar input-an

Of gray,byte = proses perubahan citra RGB ke Grayscale. Face.convert= hasil proses grayscale.

3.2.3. Mendeteksi wajah manusia

(56)

terlacak obyek wajah atau tidak. Jika mengandung wajah manusia dalam image yang diproses akan terdeteksi atau terlacak dan di rectangle, jika tidak ada mengandung wajah manusia proses akan selesai seperti Gambar 3.6.

(57)

3.2.4. Pemotongan Wajah Manusia

Setelah proses pendeteksian wajah manusia akan dilakukan proses crop pada lokasi wajah yang teridentifikasi, hasil image yang telah di-croping berukuran 256 x 256 pixel.

Proses cropping dilakukan pada daerah khusus yang dikenali, pada hal ini daerah yang mengandung wajah. Hasil wajah yang terpotong akan menjadi hasil akhir yang di aplikasi dektesi wajah manusia,dan selanjutnya di simpan kedalam folder komputer dalam bentuk JPEG seperti pada Gambar 3.7.

(58)

3.3. Perancangan Interface

Interface merupakan suatu halaman perangkat lunak sebagai tempat interaksi bagi pengguna dan perangkat lunak tersebut.. Pada perancangan interface akan dibuat dengan satu halaman yang dimana berfungsi sebagai interaksi ole user. Oleh sebab itu user diharapkan dapat memahami bagaimana cara jalan aplikasi ini. Berikut ini tahapan desain interface agar mudah dipahami :

3.3.1. Interface Menu Utama

Pada form ini pengguna dapat melihat tampilan awal aplikasi. Tampilan menu awal aplikasi dapat dilihat ketika pertama kali aplikasi dijalankan atau ketika pengguna mengklik tombol home. Pada menu awal ini terdapat 3 menu utama yaitu deteksi wajah,gallery dan profil. user dapat memilih salah satu dari menu awal ini seperti contoh Gambar 3.8.

.

(59)

3.3.2. Interface Menu Deteksi Wajah.

Pada form menu deteksi wajah user dapat melakukan pendeteksian wajah dengan memanggil image melalui tombol load image yakni untuk memanggil gambar yang berada pada folder komputer.hasil input-an akan ditampilakan pada imagebox (load image). Terdapat tombol proses and save dimana dalam tombol ini digunakan untuk mengolah image yang telah dipanggil tadi untuk dideteksi apakah mengandung wajah manusia atau tidak, dan selanjutnya akan di simpan. Terdapat panel (picture box) yang berfungsi untuk menampilkan hasil cropping dari proses deteksi wajah manusia. Dan dalam menu ini terdapat fungsi Label yang berfungsi untuk menampilkan jumlah wajah manusia yang terdeteksi. Dan ada tombol home untuk kembali ke menu utama. Contoh tampilan interface terdapat pada Gambar 3.9 seperti di bawah ini.

(60)

3.3.3. Interface Menu Gallery.

Pada menu gallery terdapat fungsi panel, dimana dalam fungsi ini digunakan untuk menampilkan seluruh hasil proses deteksi wajah, contoh desain interface seperti pada Gambar 3.10.

Gambar 3.10. Desain interface Menu Gallery. 3.3.4. Inter face Menu Profil

Pada menu profil terdapat picturebox dan texbox, dimana dalam picturebox digunakan untuk menampilkan foto dari pembuat aplikasi dan texbox ini digunakan untuk menampilakan biodata dari pembuat aplikasi ini seperti Gambar 3.11.

(61)

Pada bab IV ini akan dijelaskan mengenai implementasi, hasil uji coba dan

evaluasi dari rancangan program yang telah dibuat pada bab III. Bagian implementasi

aplikasi kali ini meliputi : lingkungan implementasi, implementasi data, implementasi

antarmuka dan implementasi proses.

4.1 Kebutuhan Har dwar e dan Softwar e

Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat

lunak yang digunakan pada implementasi aplikasi ini.

Kebutuhan Har dwar e :

• Laptop dengan processor Intel (R) Core-i5 – 33317u, 1.78 hz

• RAM 4000 MegaByte

VGA Card share memory up to 2000 MegaByte NVIDIA-GEFORCE.GT

• Monitor 14”

Hard Disk 500 GigaByte

Kebutuhan Softwar e :

• Sistem Operasi Windows 7 Profesional.

Mircosoft Visual studio.net 2010

(62)

4.2. Implementasi Data

Seperti yang telah dijelaskan sebelumya pada Bab III, maka data yang akan

diimplementasikan pada aplikasi deteksi wajah manusia dengan metode Haarcascade

Classifier ialah dengan menggunakan sumber data input-an berupa gambar dengan

bantuan kamera digital yang kemudian dipindahkan kedalam komputer dalam

bentuk citra sembarang (format .jpeg, dan . jpg) .

Dari input-an data tersebut nantinya akan diproses melalui beberapa tahapan

proses. Dimana output dari proses ini adalah terbentuknya sub-sub wajah baru yang

sudah terpotong.

4.3. Implementasi Interface

Pada implementasi antarmuka ini merupakan interaksi antara pemakai (user)

dengan sistem. Form utama ini merupakan tampilan awal saat program dijalankan.

Pada tampilkan utama ini terdapat menu-menu yang mempunyai fungsi berbeda –

beda pada aplikasi ini. Berikut menu-menu utama dalam tampilan awal :

a. Menu Deteksi wajah : untuk masuk ke form aplikasi deteksi wajah

Manusia.

b. Menu Gallry : untuk masuk ke from gallry(dimana terdapat

hasil wajah yang telah terpotong)

c. Menu Profil : untuk menampilkan profil pembuat Aplikasi.

(63)

Ga mbar 4.1 Implementasi Interface from utama

4.3.1. Menu Deteksi Wajah

Pada tampilan form menu deteksi wajah ini terdapat 3 Tombol yang

memiliki fungsi antara lain:

a) Tombol load image yang berfungsi memanggil gambar yang berada di

dalam folder komputer yang akan diproses.

b) Tombol Proses dan save yang mempunyai proses untuk memproses

deteksi wajah manusia,menghitung jumlah wajah yang terdeteksi ,

men-crooping hasil wajah yang terdeteksi dan menyimpan hasil crooping wajah

yang terdeteksi.

c) Tombol home yang berfungsi untuk kembali ke menu utama.

Didalam menu deteksi wajah juga terdapat imagebox yang

(64)

awal yang berfungsi untuk menampilkan image hasil dari tombol loadimage.

Image akan di tampilkan juga sudah di rezise. Imagebox kedua dengan nama

gambar hasil deteksi wajah manusia, yaitu sebuah imagebox yang

menampilkan hasil gambar yang terdeteksi wajah manusia dari metode

HaarCascades Classifier.

Selanjutnya juga terdapat kolom view face dimana kolom view face

tersebut digunakan untuk menampilkan wajah yang sudah ter-crooping dari

proses deteksi wajah manusia dengan metode HaarCascades Classifier serta

terdapat view hasil jumlah wajah terdeteksi untuk menampilkan jumlah dari

wajah manusia yang terdeteksi seperti gambar 4.2.

Gambar 4.2 Implementasi Interface Menu Deteksi Wajah

4.3.2. Menu Ga ller y

Pada menu gallery terdapat fungsi panel,dimana dalam fungsi ini

(65)

ter-gallery seperti pada Gambar 4.3.

Ga mbar 4.3 Implementasi Interface Menu Gallery

4.3.3. Pr ofil

Dalam tampilan juga terdapat menu profil, dimana jika menu profil di

klik akan muncul biodata pembuat aplikasi . Seperti terlihat pada Gambar 4.4.

(66)

4.4 Implementasi Proses

Bagian implementasi proses ini menjelaskan mengenai implementasi

proses-proses sesuai dengan konsep yang telah dibuat pada bab III. Seperti yang telah

digambarkan dalam flowchart.

4.4.1 Implementasi Instalasi Dan Emgu Cv

Aplikasi deteksi wajah ini merupakan aplikasi yang menggunakan library

Emgu Cv, oleh karena itu sebelum proses coding maka diperlukan untuk melakukan

konfigurasi/setting pada komputer dan Microsoft Visual Studio.Net agar dapat

menjalankan fungsi-fungsi yang terdapat dalam library Emgu CV tersebut. Tahapan

tahapan instalasi sebagai berikut :

1. Instalasi Open.CV dan Konfigurasinya :

Untuk memulai instalasinya, double klik pada file Open.CV yang sudah

di-download. Sebenarnya ini bukanlah instalasi, melainkan hanya mengekstrak file saja.

Pilih lokasi untuk mengekstrak file .exe Open.CV. Untuk lebih memudahkan kita

dalam me-ekstrak pada drive C. Setelah proses ekstrak file selesai, tahap selanjutnya

adalah melakukan setting path agar file library Open.CV dapat dipanggil dari Visual

Studio. Klik kanan pada komputer, pilih Properties kemudian pilih Advanced system

(67)

Ga mbar 4.5 Tampilan setting Open.Cv pertama

Kemudian klik Environment Variables seperti pada Gambar 4.6 .

(68)

Pada bagian System variables cari bagian path, kemudian klik edit seperti pada

Gambar 4.7. Tambahkan baris berikut ini :

;C:\opencv\build\x86\vc10\lib\;C:\opencv\build\bin\;C:\opencv\build\x86\vc

10\bin\

Gambar 4.7 Tampilan setting OpenCV ketiga

Klik OK, kemudian restart komputer agar system dapat mengenali path

(69)

Buat project baru dengan format windows applications, kemudia isi nama

file(deteksi wajah) seperti gambar 4.8.

Gambar 4.8 Tampilan Membuat Newproject

Kemudian arahkan kursor mouse ke nama file(deteksi wajah) yang berada

dibagian kanan lalu klik kanan dan pilih add reference letak add reference seperti

pada Gambar 4.9.

(70)

Kemudian Pilih browse,kemudian cari file Emgu.util.dll di file

C;/Emgu/emgucv-windows-x86/bin/Emgu.util.dll.

Emgu.util.dll ialah tools yang terdapat pada emgu cv yang digunakan untuk

mengakses data image pada proses image yang ada pada visual studio.net

seperti contoh Gambar 4.10.

Ga mbar 4.10. Tampilan Untuk Mengimputkan file emgu.util.dll

Kemudian klik kanan pada deteksiwajah di solution explore kemudian pilih

add ,klik existing item.untuk menginputkan (.xml) seperti Gambar 4.11

dibawah ini.

(71)

C;/Emgu/emgucv-windows-x86/bin/haarcascade_frontalface_default.xml

haarcascade_frontalface_default.xml itu sendiri ialah sebuah template

yang disediakan oleh tools open.cv yang mempunyai nilai stages, tree, nilai

threshold, serta bentuk, ukuran, dan posisi fitur seperti Gambar 4.12.

Gambar 4.12. Tampilan Untuk Menginputkan

haarcascade_frontalface_default.xml.

File haarcascade_frontalface_default.xml akan terhubung dengan

diproject deteksi wajah, haarcascade_frontalface_default.xml sudah

terhubung seperti Gambar 4.13.

(72)

kemudian Copy folder (x86) yang berada di

C;/Emgu/emgucv-windows-x86/bin/ x86. Seperti pada Gambar 4.14.

Gambar 4.14 folder x86 yang berada di folder emgu cv.

Kemudian Paste folder x86 yang sudah sudah di copy tadi ke

documents /visualStudio2010/ projects/deteksiwajah/bin/Debug seperti

Gambar 4.15.

(73)

vb.net pilih chooseitems Klik Browse cari file Emgu.CV.UI.dll di

C;/Emgu/emgucv-windows-x86-/bin/Emgu.CV.UI.dll. seperti Gambar 4.16.

kemudian pilih open

.

Gambar 4.16. InputEmgu. Cv.UI.dll

Pada view code di project yang telah dibuat tambahkan kode sebagai berikut :

Imports Emgu.CV

Imports Emgu.CV.Structure

Imports Emgu.CV.CvEnum

Tahap-tahap konfigurasi open cv dan emgu cv di visual studio(.net) ini

berfungsi untuk menunjang aplikasi deteksi wajah manusia agar dapat berjalan secara

(74)

Sesuai dengan judul tugas akhir ini, penulis mencoba untuk memanfaatkan

fungsi-fungsi yang terdapat dapat pada library emgu cv untuk diterapkan pad visual

studio(.net).

4.4.2 Menu Deteksi Wajah

4.4.2.1. Pr oses Load

Pada proses load image ini, yaitu merupakan sebuah proses yang

bertujuan untuk memanggil inputan berupa gambar yang terdapat pada folder

komputer. Gambar yang dapat dipanggil hanya gambar yang berformat jpg

dan jpeg.

'Open file/load image

OpenFileDialog1.Filter = "JPG Files (*.jpg)|*.jpg|JPEG Files (*.jpeg)|*.jpeg"

If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then Dim GambarAwal As New Image(Of Bgr, Byte)(OpenFileDialog1.FileName)

4.4.2.2. Pr oses Resize Image

Pada proses resize image ini,dimana dari hasil load image yang

memanggil image yang berukuran tidak beraturan akan disamakan dengan

ukuran 512x512 pixel pada proses ini.

'Resize Gambar

Dim GambarDiResize As Image(Of Bgr, Byte) = GambarAwal.Resize(512,

(75)

Proses ini merupakan proses perubahan image yang telah di input-kan

ke dalam citra grayscale(abu-abu) seperti yang sudah di jelaskan pada bab

sebelumnya.

' Conver t t he I mage t o Gr ayscal e

Di m I mageGr ay As I mage(Of Gr ay,

Byt e) =CopyGambar Di Resi ze. Conver t (Of Gr ay, Byt e) ( )

4.4.2.4.Pr oses memanggil Cascade Classifier

Pada proses memanggil Cascade Classifier ini digunaka untuk

memanggil Template“haarcascde_frontalface_default.xml” yang berada

Proses pencarian wajah yaitu pencarian wajah yang telah dideteksi

oleh proses deteksi ,kemudian hasil pencarian wajah manusia yang sudah

terdeteksi dilokalisasi (rectangle) dan dihitung oleh computer secara

(76)

'Find Face

For Each face As Rectangle In

faceDetector.DetectMultiScale(ImageGray, 1.1, 10, New

CopyGambarDiResize.Draw(face, New Bgr(Color.Red), 1) 'menampilkan jumlah wajah

Label1.Text = t

4.4.2.6. Pr oses Save

Proses save ialah proses dimana hasil citra wajah yang telah tedeteksi dan

terpotong untuk dapat disimpan kedalam data foder komputer dengan

format (.jpeg).

Dim i As Integer = 1

Do While (i < (save_result.ToArray().Length + 1)) save_result.ToArray()(i -

1).Save(Application.StartupPath + "/hasil/face" + i.ToString() + ".jpeg")

terdapat pada Source Code dibawah ini.

'view face

Private Sub ADD_Face_Found(ByVal img_found As

Image(Of Bgr, Byte))

(77)

faces_panel_Y)

digunakan untuk menampilkan seluruh hasil proses pendeteksian wajah. Dimana

proses pemanggilan face merupakan hasil dari proses pendeteksian wajah dengan

metode HaarCascade Classifier yang tersimpan didalam folder komputer untuk

di tampilkan semua dalam satu from Gallery.

Public Class Form4

(78)

4.5. Uji Coba Pr ogr am

Pada sub bab ini akan dibahas mengenai uji coba terhadap aplikasi yang telah

dibuat dan selanjutnya akan dievaluasi dari hasil uji coba tersebut. Uji coba

dilaksanakan untuk mengetahui kemampuan aplikasi dapat berjalan dengan baik

sesuai dengan rancangan. Evaluasi dilakukan untuk menentukan tingkat keberhasilan

dari aplikasi yang telah dibuat.

4.5.1 Skenar io Uji Coba

Untuk memastikan bahwa aplikasi ini berjalan dengan baik, diperlukan

adanya skenario yang akan dicoba, antara lain :

1) Memasukkan beberapa image foto manusia untuk melihat perbedaan

keberhasilan, setiap image foto memiliki jumlah objek wajah manusia yang

berbeda serta wajah manusia yang berbeda.

2) Melakukan proses deteksi wajah dengan metode HaarCascade Classifier,

untuk menguji tingkat keberhasilan melalui proses yang sudah

direncanakan. Karena tidak semua image terdapat wajah manusia.

3) Menampilkan seluruh hasil cropping wajah manusia yang sudah terdeteksi.

4.5.2 Pelaksanaa Uji Coba

Langkah pertama dalam membuat program Deteksi wajah manusia

(79)

aplikasi dengan menggunakan windows_from pada visual studio.net.

Setelah perancangan tampilan langkah ketiga memasukkan source code ke

dalam program, maka langkah terakhir adalah dengan mencoba program

tersebut. Dengan menekan tombol Start Debugging (F5) seperti Gambar 4.17

di bawah ini.

Gambar 4.17 Tampilan Awal Aplikasi

Tombol deteksi wajah pada tampilan awal aplikasi berfungsi untuk masuk

ke form aplikasi deteksi wajah manusia, tombol Gallery berfungsi untuk masuk

ke from gallry (untuk melihat hasil wajah yang sudah terpotong) dan tombol

(80)

Apabila Tombol/menu deteksi wajah di klik, user akan masuk pada deteksi

wajah,seperti terlihat di Gambar 4.18.

Gambar 4.18 Tampilan Menu Deteksi Wajah

Tombol load image pada tampilan form menu deteksi wajah berfungsi untuk

mengambil image yang sudah tersimpan dikomputer. Image sebelumnya sudah

diambil dengan menggunakan kamera digital dan kemudian disimpan di folder

komputer. Setelah menekan tombol load maka akan tampil jendela

OpenFileDialog , dan kemudian cari letak image yang akan diproses kemudian klik

dua kali pada image. Image yang diambil pada load image adalah file image yang

berformat JPEG atau JPEG. Pada proses loadimage, program hanya bisa

menjalankan perintah open atau cancel pada jendela OpenFileDialog. tombol

aplikasi lainnya tidak bisa dijalankan sebelum proses OpenFileDialog selesai

(81)

Ga mbar 4.19 Tampilan Proses Load Image

Image yang telah dipamggil melalui load image akan ditampilkan pada

imagebox gambar awal dan image sudah di rezise dengan ukuran 512x512 Pixel.

Seperti pada Gambar 4.20 berikut.

(82)

Tombol proses and save berfungsi untuk menjalankan proses deteksi wajah

manusia. image yang berada pada gambar awal akan diproses untuk mendapatkan

output, terdapat 3 output antara lain:

a) Wajah manusia yang berhasil dideteksi,yang tandai dengan Rectangle yang

ditampilkan pada imagebox hasil deteksi wajah.

b) Jumlahwajah manusia yang berhasil terdeteksi.

c) Wajah manusia yang sudah terpotong yang ditampilkan view face.

Hasil wajah yang terpotong akan disimpan secara otomatis di dalam folder hasil atau

folder komputer seperti Gambar 4.21.

(83)

dengan rectangle/bujur sangkar berwarna merah,yang menunjukan itu adalah wajah

manusia, jumlah wajah manusia yang terdeteksi juga ditampilkan sesuai wajah yang

terdeteksi. Viewface menampilkan hasil wajah manusia yang telah terpotong.

tombol home digunakan untuk kembali kemenu utama/tampilan awal aplikasi.

Tombol Gallery pada menu utama digunakan untuk masuk ke from Gallry

Foto,dimana dalam from Gallry Foto ini memuat seluruh wajah manusia yang

berhasil terdeteksi dari proses deteksi wajah. Seperti Gambar 4.22 dibawah ini.

Gambar 4.22 Gallery Foto

4.6 Analisa Aplikasi

Berdasarkan hasil uji coba yang telah dilakukan, maka akan dilakukan

(84)

4.6.1 Tabel Hasil Analisa Pr oses Uji Coba

Pada Tabel 4.1 ini merupakan hasil uji coba yang telah dilakukan,dimana

wajah yang terdetsi dengan program di bandingkan dengan perhitungan

manual oleh mata.

Tabel 4.1 Tabel Uji Coba Process deteksi wajah manusia

(85)

Coba Ter deteksi Penghitungan Program

Penghitungan Manual

gan

4

4 4 Ber ha sil

5

8 8 Ber ha sil

6

1 2

Tida k

Ber ha sil

7

1 3

Tida k

(86)
(87)

Coba Ter deteksi Penghitungan Program

Penghitungan Manual

gan

12

3 4 Tida k

ber ha sil

13

2 2 Ber ha sil

14

3 3 Ber ha sil

15

(88)
(89)

Coba Ter deteksi Penghitungan Program

Penghitungan Manual

gan

20

2 2 Ber ha sil

Presentase keberhasilan hasil uji coba : 16/20 x 100%= 80 %

Dimana :

16 ialah jumlah wajah yang berhasil dideteksi dengan sempurna

20 ialah jumlah uji coba

100 % ialah presentase

80% ialah nilai persentase keberhasilan

Peresentasi ketidak keberhasilan uji coba : 4/20x 100% = 20%

Dimana :

4 ialah jumlah wajah yang tidak berhasil dideteksi dengan sempurna

20 ialah jumlah uji coba

100 % ialah presentase

(90)

Analisa keberhasilan Uji Coba:

1. Pendeteksian wajah dapat dilakukan secara otomatis dapat mendeteksi wajah

manusia dengan baik, dari 20 uji coba yang dilakukan 16 uji coba dapat

meindefikasi dengan baik.

2. Image yang dapat terdeteksi dengan baik dan optimal diantaranya wajah

menghadap ke depan (frontal), dalam posisi tegak, tidak terhalangi sebagian

oleh objek lain(wajah, tangan, rambut yang menutupi sebagian wajah, dll)

3. Ekspresi wajah dan pencahayan tidak mempengaruhi proses pendeteksian

wajah pada sistem ini, hal ini dapat dibuktikan pada uji coba deteksi wajah

dengan berbagaimacam ekspresi dan kondisi tetep bisa berjalan baik.

Analisa ketidak berhasilan uji coba:

1. Adapun ada bebrapa wajah manusia yang tidak dapat terdeteksi,dengan

tingkat akurasinya wajah yang tidak terdeteksi dengan baik, dari 20 uji coba 4

uji coba dinyatakan kurang sempurna dalam mendeteksi wajah manusia.

2. Terdapat banyak faktor yang mempengaruhi proses ini deteksi wajah manusia

tidak berjalan optimal diantaranya wajah tidak menghadap ke depan (frontal),

tidak dalam posisi tegak, terhalangi sebagian oleh objek lain (wajah, tangan,

rambut yang menutupi sebagian wajah, dll).

3. Pengambilan objek yang terlalu jauh juga mempengaruhi proses deteksi ini

Gambar

Gambar 2.5 Resizing Image
Gambar 2.9 Citra Sub-Window Berukuran 40x40 Diubah Ke Ukuran
Gambar 2.12 Pohon keputusan dalam haarcascade_frontalface_alt.
Gambar 3.1 Desain Tahapan Deteksi Wajah Menggunakan Metode HaarCascade
+7

Referensi

Dokumen terkait

Dalam jurnal ini akan dirancang sebuah aplikasi pendeteksian wajah dengan jarak jauh dengan menggunakan metode Haar Cascade Classifier yang akan meneliti sejauh mana

Setelah proses pelatihan selesai dilakukan maka tahap berikutnya adalah melakukan penyelarasan data untuk menghitung rata-rata dari kumpulan data landmark yang

Dengan melihat hasil prosentase rata rata yang diperoleh, dapat ditarik kesimpulan bahwa metode Viola Jones kurang akurat digunakan sebagai metode untuk

Setelah dilakukan tiga skenario pengujian didapatkan kesimpulan bahwa deteksi wajah manusia menggunakan You Only Look Once dengan dataset WIDER Face berjumlah 1920 citra training

tanpa menggunakan marker akan tetapi dengan menggunakan titik landmark pada setiap fitur-fitur wajah, yang nantinya dapat memberikan kontribusi pada bidang penelitian facial motion

Metode ini terdiri atas tiga komponen penting yaitu integral image digunakan untuk menentukan ada atau tidaknya fitur Haar tertentu pada sebuah gambar, metode

Penelitian ini menerapkan suatu metode yang dapat mempermudah dalam pembuatan animasi maupun game dengan melakukan deteksi fitur-fitur wajah untuk mendapatkan

Berdasarkan perancangan, pembahasan, implementasi, dan pengujian yang telah dilakukan, diperoleh suatu sistem deteksi wajah untuk keamanan mobil menggunakan metode haar