Anda di halaman 1dari 81

APLIKASI PENDETEKSI WAJAH MANUSIA UNTUK MENGHITUNG JUMLAH

MANUSIA MENGGUNAKAN METODE VIOLA-JONES

SKRIPSI

MUHAMMAD SANTANA
091402097

PROGRAM STUDI TEKNOLOGI INFORMASI


FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara


APLIKASI PENDETEKSI WAJAH MANUSIA UNTUK MENGHITUNG JUMLAH
MANUSIA MENGGUNAKAN METODE VIOLA-JONES

SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi

MUHAMMAD SANTANA
091402097

PROGRAM STUDI TEKNOLOGI INFORMASI


FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara


i

PERSETUJUAN

Judul : APLIKASI PENDETEKSI WAJAH MANUSIA


UNTUK MENHITUNG JUMLAH MANUSIA
MENGGUNAKAN METODE VIOLA-JONES
Kategori : SKRIPSI
Nama : MUHAMMAD SANTANA
Nomor Induk Mahasiswa : 091402097
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM-TI) UNIVERSITAS
SUMATERA UTARA

Diluluskan di
Medan, 21 Agustus 2015

Komisi Pembimbing :
Pembimbing 2 Pembimbing 1

Romi Fadillah Rahmat B.Comp. Sc.M.Sc. Sarah Purnamawati, ST. M.Sc


NIP 1986030321010121004 NIP 198302262010122003

Diketahui/Disetujui oleh
Program Studi S1 Teknologi Informasi
Ketua,

Muhammad Anggia Muchtar, S.T., M.M.I.T.


NIP 198001102008011010

Universitas Sumatera Utara


ii

PERNYATAAN

APLIKASI PENDETEKSI WAJAH MANUSIA UNTUK MENHITUNG JUMLAH


MANUSIA MENGGUNAKAN METODE VIOLA-JONES

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya sendiri, kecuali beberapa kutipan
dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 21 Agustus 2015

Muhammad Santana
091402097

Universitas Sumatera Utara


iii

UCAPAN TERIMA KASIH

Alhamdulillah segala puji dan syukur saya sampaikan kehadirat Allah SWT beserta
Nabi Besar Muhammad SAW yang telah memberikan rahmat, hidayah-Nya sehingga
saya dapat menyelesaikan skripsi ini untuk memperoleh gelar Sarjana Program Studi
S-1 Teknologi Informasi Universitas Sumatera Utara.
Dengan segala kerendahan hati penulis ucapkan terima kasih kepada:
1. Ayah penulis, Sartuno. SH., ibu penulis, Nelly Trisna., kakak penulis Neno
Viantisca SH dan Neno Tamara Viransiska SE., adik penulis Neno
Ramadhianita yang telah memberikan doa dan dukungan moral kepada penulis
untuk menyelesaikan skripsi ini beserta keluarga besar yang telah turut
mendoakan penulis.
2. Ibu Sarah Purnamawati,ST.,M.Sc dan Bapak Romi Fadillah Rahmat B.Comp.
Sc.M.Sc selaku dosen pembimbing penulis yang telah meluangkan waktu,
pikiran, saran, dan kritiknya untuk penulis dalam menyelesaikan skripsi ini.
3. Bapak DR. Sawaluddin M.IT dan Bapak Dedy Arisandi, ST.,M.Kom yang
telah bersedia menjadi dosen penguji dan memberikan saran dan kritik yang
membangun dalam penyelesaian skripsi ini.
4. Ketua dan Sekretaris Program Studi S1 Teknologi Informasi, Bapak
Muhammad Anggia Muchtar, S.T., MM.IT. dan Bapak Mohammad Fadly
Syahputra, B.Sc., M.Sc.IT.
5. Seluruh dosen yang mengajar serta Ibu Mega, Kak Umi dan Bang Manaf,
sebagai staff Tata Usaha Program Studi Teknologi Informasi Universitas
Sumatera Utara.
6. Pacar yang selalu mendukung dan memberi semangat kepada penulis, Millana
Lubis.
7. Teman-teman yang selalu mendukung dan memberi semangat kepada penulis,
Tri Setiawan, Dhimas Eko Prasetyo, Akhmad Sofyan Dalimunthe, Adnan
Buyung Nasution, Nuryuliana, Fadli Rizki, Raisha Ariani Sirait dan semua
teman angkatan 2009.
8. Sahabat penulis, Raja Usty Siregar, Indah Kemala Sari, Mutia. Serta teman-
teman bermain PointBlank Clan Pahlawan_IND Bang Khank, Anam, Benny,
Andri yang selalu mendukung dan memberi semangat kepada penulis.

Penulis menyadari bahwa masih banyak kekurangan dalam skripsi ini, untuk itu
penulis mengharapkan saran dan kritik yang bersifat membangun dari semua pihak
demi kesempuranaan skripsi ini. Akhir kata penulis ucapkan terima kasih.

Universitas Sumatera Utara


iv

ABSTRAK

Pemantauan keramaian di tempat-tempat umum diperlukan untuk pengawasan,


monitoring maupun untuk keperluan survey kepadatan manusia. Untuk keperluan
survey kepadatan data hasil pemantauan dibutuhkan guna perbaikan tataruang maupun
pengembangan infra struktur pada tempat umum tersebut. Menghitung jumlah
manusia pada tempat keramaian umum dapat menggunakan tenaga manusia (manual).
Tetapi menggunakan cara manual rentan terhadap kesalahan. Maka pada penelitian ini
dilakukan perhitungan jumlah manusia dengan cara mendeteksi manusia dari citra
input berdasarkan deteksi bagian dari tubuh manusia yaitu wajah. Dalam penelitian ini
digunakan Viola Jones untuk mendeteksi wajah manusia dalam citra digital dan
capture melalui webcam. Citra diinput mengalami proses resize kemudian diubah
menjadi citra abu-abu dengan proses Grayscaling dilanjutkan pembaca fitur haar yang
di ambil dari library OpenCV, perhitungan fitur dengan citra integral, dan
pendeteksian objek dengan cascade of classifier. Dari hasil percobaan menggunakan
Load File diperoleh: akurasi sebesar 84.8 %, error 14.5 % dan koreksi visual 7.3 %.
Dan dari hasil percobaan menggunakan Capture Webcam diperoleh: akurasi sebesar
82.9%, error 16.5% dan koreksi visual 1.3%.

Kata kunci: Deteksi Wajah, Menghitung Manusia, Viola-Jones, Citra, OpenCV,

Webcam.

Universitas Sumatera Utara


v

HUMAN FACE DETECTION APPLICATION FOR CALCULATING THE

NUMBER OF PEOPLE USING VIOLA-JONES

ABSTRACT

Monitoring crowds in public places is necessary for supervision, monitoring for


survey purposes of human density. For the purposes of the survey data density of
monitoring results needed to repair the spatial and infrastructure development in
public places. Calculating people in public places can generally use human labor
(manual). But using the manual method is prone to errors. So In this research,
calculation of the number of people by means of detecting human from the input
image based on the detection part of the human body, specifically face human. In this
research Viola Jones used to detect human object in a digital image and capture via
webcam. inputted image experience resize process then converted into a gray image
with Grayscaling process followed reader haar feature taken in OpenCV library, the
calculation of the integral features of the image, and object detection with a cascade of
classifier. From the experimental results obtained using the Load File: an accuracy of
84.8%, 14.5% error and visual correction of 7.3%. And the results of experiments
using Webcam Capture obtained: an accuracy of 82.9%, 16.5% error and visual
correction of 1.3%.

Keyword: Face Detection, People Counting, Viola-Jones, Image, OpenCV, Webcam.

Universitas Sumatera Utara


vi

DAFTAR ISI

Hal.

PERSETUJUAN i
PERNYATAAN ii
UCAPAN TERIMA KASIH iii
ABSTRAK iv
ABSTRACT v
DAFTAR ISI vi
DAFTAR TABEL x
DAFTAR GAMBAR xi

BAB 1 PENDAHULUAN 1
1.1. Latar Belakang 1
1.2. Rumusan Masalah 2
1.3. Batasan Masalah 2
1.4. Tujuan Penelitian 3
1.5. Manfaat Penelitian 3
1.6. Metodologi Penelitian 3
1.7. Sistematika Penulisan 4

BAB 2 LANDASAN TEORI 5


2.1. Sistem Biometrika 5
2.1.1 Pengertian Sistem Biometrika 5
2.2. Metode Viola-Jones 7
2.3. OpenCV (Intel® Open Source Computer Vision Library) 11
2.3.1. Teknik Background Subtraction dan Frame Differencing 13
2.3.2. Fitur OpenCV 14
2.4. Pengolahan Citra 14
2.4.1. Defenisi Pengolahan Citra 14
2.4.2. Jenis-Jenis Citra Digital 16

Universitas Sumatera Utara


vii

2.4.3. Elemen-Elemen Citra Digital 17


2.4.4. Langkah-Langkah Pengolahan Citra Digital 18
2.4.5. Sistem Pencitraan 20
2.5. Pra-Pemrosesan (Pre-Processing) 21
2.5.1. Konversi Citra RGB menjadi Citra Grayscale 21
2.5.2. Segmentasi 22
2.5.2.1. Thresholding (Pengambangan) 23
2.5.2.2. Normalisasi 24
2.6. Ekstraksi Fitur 25
2.6.1. Ciri Berdasarkan Blok 25
2.7. Konsep Pengenalan Wajah 26
2.7.1. Konsep Umum Pengenalan Wajah 28
2.8. Penelitian Terdahulu 29

BAB 3 ANALISIS DAN PERANCANGAN SISTEM 31


3.1. Arsitektur Umum 31
3.1.1. Resize Citra 32
3.1.2. Membaca Nilai Piksel Citra 32
3.1.3. Menghitung Nilai Grayscale Citra 34
3.1.4. Fitur Haar 35
3.1.5. Citra Integral 36
3.1.6. Cascade of Clasifier 37
3.2. Data 38
3.3. Perancangan Sistem 38
3.3.1. Flowchart 38
3.3.2. Pemrosesan Awal 40
3.4. Rancangan Antarmuka 41
3.4.1. Rancangan Menu Utama 41
3.4.2. Rancangan Pengenalan dengan Load File 42
3.4.3. Rancangan Pengenalan dengan Capture Webcam 43
3.4.4. Rancangan Help 45
3.4.5. Rancangan About 45
3.4.6. Rancangan Pengujian 46

Universitas Sumatera Utara


viii

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM 48


4.1. Implementasi Sistem 48
4.1.1. Spesifikasi Perangkat Keras dan Lunak 48
4.1.2. Tampilan Menu Utama 48
4.1.3. Tampilan Pengenalan Load File 49
4.1.4. Tampilan Pengenalan Capture Webcam 50
4.1.5. Tampilan Help 50
4.1.6. Tampilan About 50
4.2. Pengujian Sistem 50
4.2.1. Tampilan Hasil Pengujian Load File 50
4.2.2. Tampilan Hasil Pengujian Capture Webcam 58
BAB 5 KESIMPULAN DAN SARAN 64
5.1. Kesimpulan 64
5.2. Saran 64

DAFTAR PUSTAKA 65

Universitas Sumatera Utara


ix

DAFTAR TABEL

Hal.

Tabel 2.1. Penelitian Terdahulu 29


Tabel 2.2. Penelitian Terdahulu (Lanjutan) 30
Tabel 3.1. Matriks Nilai RGB Citra Warna 34
Tabel 3.2. Nilai Grayscale Citra Masukan 36
Tabel 3.3. Perhitungan Citra Integral 36
Tabel 3.4. Hasil Citra Integral 36
Tabel 3.5. Rancangan Hasil Pengujian Deteksi Manusia dengan Load File 46
Tabel 3.6. Rancangan Hasil Pengujian Deteksi Manusia dengan Capture Webcam 47
Tabel 4.1. Hasil Pengujian Deteksi Manusia Load File 57
Tabel 4.2. Hasil Pengujian Deteksi Manusia Load File (Lanjutan) 58
Tabel 4.3. Hasil Pengujian Deteksi Manusia Capture Webcam 63

Universitas Sumatera Utara


x

DAFTAR GAMBAR

Hal.

Gambar 2.1. Contoh Haar Like Feature 7


Gambar 2.2. Variasi Fitur pada Haar 8
Gambar 2.3. Integral Image 8
Gambar 2.4. Perhitungan Nilai Fitur 9
Gambar 2.5. Cascade Clasifier 11
Gambar 2.6. Klasifikasi Haar digunakan dalam OpenCV 12
Gambar 2.7. Nilai Piksel dari Citra Objek Manusia 15
Gambar 2.8. Citra Biner 16
Gambar 2.9. Citra Keabuan 16
Gambar 2.10. Citra Warna 17
Gambar 2.11. Langkah-Langkah Pengolahan Citra Digital 18
Gambar 2.12. Proses Pencitraan Citra Analog menjadi Citra Digital 20
Gambar 2.13. Proses Konversi Citra RGB menjadi Citra Grayscale 22
Gambar 2.14. Proses Pemisahan 23
Gambar 2.15. Contoh Pembagian Blok yang saling Tumpang Tindih 25
Gambar 2.16. Citra Wajah 27
Gambar 3.1. Arsitektur Umum Deteksi dan Menhitung Manusia 31
Gambar 3.2. Citra Wajah Manusia 32
Gambar 3.3. Contoh Nilai Piksel Citra Warna 33
Gambar 3.4. Matriks Nilai Grayscale 34
Gambar 3.5. Pencarian Fitur Haar 35
Gambar 3.6. Contoh Perhitungan Nilai Integral 36
Gambar 3.7. Hasil Deteksi Wajah 38
Gambar 3.8. Proses Pendeteksian citra Manusia 39
Gambar 3.9. Rancangan Menu Utama 42
Gambar 3.10. Rancangan Pengenalan dengan Load File 43
Gambar 3.11. Rancangan Pengenalan dengan Capture Webcam 44
Gambar 3.12. Rancangan Help 45
Gambar 3.13. Rancangan About 45

Universitas Sumatera Utara


xi

Gambar 4.1. Tampilan Menu Utama 49


Gambar 4.2. Tampilan Pengenalan Load File 49
Gambar 4.3. Tampilan Pengenalan Capture Webcam 50
Gambar 4.4. Tampilan Percobaan 1 51
Gambar 4.5. Tampilan Percobaan 2 51
Gambar 4.6. Tampilan Percobaan 3 52
Gambar 4.7. Tampilan Percobaan 4 53
Gambar 4.8. Tampilan Percobaan 5 53
Gambar 4.9. Tampilan Percobaan 6 54
Gambar 4.10. Tampilan Percobaan 7 55
Gambar 4.11. Tampilan Percobaan 8 55
Gambar 4.12. Tampilan Percobaan 9 56
Gambar 4.13. Tampilan Percobaan 10 57
Gambar 4.14. Tampilan Percobaan 1 58
Gambar 4.15. Tampilan Percobaan 2 59
Gambar 4.16. Tampilan Percobaan 3 59
Gambar 4.17. Tampilan Percobaan 4 60
Gambar 4.18. Tampilan Percobaan 5 60
Gambar 4.19. Tampilan Percobaan 6 61
Gambar 4.20. Tampilan Percobaan 7 61
Gambar 4.21. Tampilan Percobaan 8 62
Gambar 4.22. Tampilan Percobaan 9 62
Gambar 4.23. Tampilan Percobaan 10 63

Universitas Sumatera Utara


iv

ABSTRAK

Pemantauan keramaian di tempat-tempat umum diperlukan untuk pengawasan,


monitoring maupun untuk keperluan survey kepadatan manusia. Untuk keperluan
survey kepadatan data hasil pemantauan dibutuhkan guna perbaikan tataruang maupun
pengembangan infra struktur pada tempat umum tersebut. Menghitung jumlah
manusia pada tempat keramaian umum dapat menggunakan tenaga manusia (manual).
Tetapi menggunakan cara manual rentan terhadap kesalahan. Maka pada penelitian ini
dilakukan perhitungan jumlah manusia dengan cara mendeteksi manusia dari citra
input berdasarkan deteksi bagian dari tubuh manusia yaitu wajah. Dalam penelitian ini
digunakan Viola Jones untuk mendeteksi wajah manusia dalam citra digital dan
capture melalui webcam. Citra diinput mengalami proses resize kemudian diubah
menjadi citra abu-abu dengan proses Grayscaling dilanjutkan pembaca fitur haar yang
di ambil dari library OpenCV, perhitungan fitur dengan citra integral, dan
pendeteksian objek dengan cascade of classifier. Dari hasil percobaan menggunakan
Load File diperoleh: akurasi sebesar 84.8 %, error 14.5 % dan koreksi visual 7.3 %.
Dan dari hasil percobaan menggunakan Capture Webcam diperoleh: akurasi sebesar
82.9%, error 16.5% dan koreksi visual 1.3%.

Kata kunci: Deteksi Wajah, Menghitung Manusia, Viola-Jones, Citra, OpenCV,

Webcam.

Universitas Sumatera Utara


v

HUMAN FACE DETECTION APPLICATION FOR CALCULATING THE

NUMBER OF PEOPLE USING VIOLA-JONES

ABSTRACT

Monitoring crowds in public places is necessary for supervision, monitoring for


survey purposes of human density. For the purposes of the survey data density of
monitoring results needed to repair the spatial and infrastructure development in
public places. Calculating people in public places can generally use human labor
(manual). But using the manual method is prone to errors. So In this research,
calculation of the number of people by means of detecting human from the input
image based on the detection part of the human body, specifically face human. In this
research Viola Jones used to detect human object in a digital image and capture via
webcam. inputted image experience resize process then converted into a gray image
with Grayscaling process followed reader haar feature taken in OpenCV library, the
calculation of the integral features of the image, and object detection with a cascade of
classifier. From the experimental results obtained using the Load File: an accuracy of
84.8%, 14.5% error and visual correction of 7.3%. And the results of experiments
using Webcam Capture obtained: an accuracy of 82.9%, 16.5% error and visual
correction of 1.3%.

Keyword: Face Detection, People Counting, Viola-Jones, Image, OpenCV, Webcam.

Universitas Sumatera Utara


BAB 1

PENDAHULUAN

1.1 Latar Belakang

Seiring dengan perkembangan jaman, teknologi tidak hanya dipakai dalam bidang
komputer saja, namun hampir semua aspek kehidupan manusia tidak lepas dari
penggunaan teknologi. Pemantauan tempat-tempat keramaian umum untuk dapat
menghitung jumlah manusia merupakan salah satu dari sekian banyak bidang
memanfaatkan teknologi komputer.
Pemantauan keramaian di tempat-tempat umum diperlukan untuk pengawasan,
monitoring maupun untuk keperluan survey kepadatan manusia. Untuk keperluan
survey kepadatan, data hasil pemantauan dibutuhkan guna perbaikan tataruang
maupun pengembangan infra struktur pada tempat umum tersebut.
Sistem deteksi wajah, termasuk di dalamnya penghitungan jumlah wajah
dalam suatu citra, merupakan salah satu pemanfaatan teknologi pengolahan citra
digital. Proses deteksi wajah manusia dan penghitungan jumlah manusia memerlukan
metode tertentu yang didukung dengan suatu perangkat lunak. Oleh karena itu, perlu
dibuat sistem yang mampu mengidentifikasi dan menghitung semua daerah citra yang
mengandung wajah, yang di dalam penelitian ini digunakan metode Viola Jones.
Ada banyak penelitian yang telah dilakukan tentang pendeteksian manusia
Pada penelitian Santoso, Hadi dilakukan pendeteksian wajah-wajah pada sebuah citra
digital (Santoso, Hadi. 2013). Triatmoko, A.H et al Penggunaan Metode Viola-Jones
dan Algoritma Eigen Eyes dalam Sistem Kehadiran Pegawai (Triatmoko, A.H. 2014).
Dalam penelitian ini akan dikembangkan sistem kehadiran yang didasarkan pada
identifikasi fitur mata dan Mayo, M yang berjudul Deteksi Wajah Manusia pada Citra
Berwarna dengan Informasi Warna Kulit dan Support Vector Machines (Mayo, M.
2008).

Universitas Sumatera Utara


2

Dalam skripsi ini, aplikasi dibangun menggunakan metode Viola-Jones yang


terdiri dari metode haar-like feature, citra integral, adaboost, dan cascade of
classifier. Haar-like feature adalah fitur yang didasarkan pada Wavelet Haar (Viola et
al, 2001) yang digunakan sebagai dasar untuk penentuan objek. Citra integral adalah
representasi tengah untuk citra dan terdiri dari jumlah nilai keabu-abuan dari citra N
dengan tinggi y dan lebar x dimana nilai tiap pikselnya merupakan akumulatif dari
nilai piksel atas dan kirinya yang digunakan untuk pendeteksian fitur secara cepat.
Adaboost merupakan sebuah metode boosting yang berfungsi untuk mencari fitur-fitur
yang memiliki tingkat pembeda yang tinggi untuk dievaluasi terhadap data latih.
Cascade of classifier merupakan sebuah classifier yang telah terlatih dengan ribuan
contoh objek yang terdiri dari objek yang positif dan objek yang negatif. Metode
Viola-Jones telah banyak digunakan dalam penelitian-penelitian terutama tentang
pendeteksian wajah. Beberapa penelitian diantaranya adalah pendeteksian wajah
(Viola et al, 2004)
Berdasarkan latar belakang masalah diatas maka penulis memberi judul
penelitian ini dengan Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung Jumlah
Manusia Menggunakan Metode Viola-Jones.

1.2 Rumusan Masalah

Menghitung jumlah manusia pada tempat keramaian umum dapat menggunakan


tenaga manusia (manual). Tetapi menghitung dengan cara manual kurang efisien
karena rentan terhadap kesalahan. Oleh karena itu diperlukan sebuah pendekatan
untuk menghitung jumlah manusia secara otomatis dengan input berupa citra dan
capture menggunakan webcam.

1.3 Batasan Masalah

Dalam penelitian ini penulis membuat batasan masalah yaitu:


1. Input sistem adalah berupa file citra digital.
2. File citra yang diproses adalah wajah manusia yang tidak terhalangi seperti
menggunakan kacamata, cadar, atau helm.
3. Menampilkan output berupa jumlah manusia yang ada pada citra input, nilai
grayscale citra, waktu proses serta besar file.

Universitas Sumatera Utara


3

1.4 Tujuan Penelitian

Tujuan penelitian ini adalah mendeteksi wajah manusia untuk menghitung berapa
banyak jumlah manusia dan mempersingkat waktu pada tempat keramaian umum
yang ada pada citra digital dan capture melalui webcam menggunakan metode Viola-
Jones.

1.5 Manfaat Penelitian

Manfaat penelitian ini adalah:


1. Diperolehnya sebuah perangkat lunak yang dapat mendeteksi wajah manusia.
2. Dapat menghemat waktu karena perangkat lunak dapat dengan cepat menghitung
jumlah manusia daripada petugas yang menghitung dengan cara manual.

1.6 Metodologi Penelitian

Metodologi penelitian yang digunakan pada penelitian ini adalah :


a. Studi Literatur
Pada tahap ini dilakukan pengumpulan bahan referensi yang berkaitan dengan
metode Viola-Jones dari buku, artikel, paper, jurnal, makalah dan sumber lainnya.
b. Analisis
Pada tahap ini dilakukan analisis terhadap hasil studi literatur untuk mendapatkan
pemahaman mengenai metode Viola-Jones untuk mendeteksi wajah dan
menghitung jumlah manusia.
c. Perancangan
Pada tahap ini dilakukan perancangan perangkat lunak yang dibangun, seperti
perancangan proses dan antarmuka.
d. Implementasi
Pada tahap ini dilakukan pengkodean perangkat lunak sesuai dengan spesifikasi
yang ditentukan.
e. Pengujian
Pada tahap ini dilakukan pengujian terhadap perangkat lunak yang dibangun, dan
apakah sudah sesuai dengan harapan penulis.

Universitas Sumatera Utara


4

f. Penyusunan Laporan
Pada tahap ini dilakukan penulisan dokumentasi hasil analisis metode Viola-Jones
untuk mendeteksi wajah dan menghitung jumlah manusia.

1.7. Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari lima bagian utama sebagai berikut:

BAB 1 : PENDAHULUAN
Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan penelitian,
manfaat penelitian, metodologi penelitian dan sistematika penulisan.

BAB 2 : LANDASAN TEORI


Bab ini akan membahas teori-teori yang berhubungan dengan pokok pembahasan
dalam penelitian ini. Pada bab ini akan dijelaskan tentang landasan teori tentang citra
digital, metode Viola-Jones dalam mendeteksi dan menghitung jumlah manusia serta
penelitian terdahulu.

BAB 3 : ANALISIS DAN PERANCANGAN


Bab ini berisi analisis dan penerapan metode viola-jones, flowchart sistem serta
perancangan antar muka aplikasi.

BAB 4 : IMPLEMENTASI DAN PENGUJIAN


Bab ini berisi pembahasan tentang implementasi dari analisis dan perancangan sistem
dan pengujian terhadap sistem yang dibangun.

BAB 5 : KESIMPULAN DAN SARAN


Bab ini berisi kesimpulan dari keseluruhan uraian bab-bab sebelumnya dan saran-
saran yang diajukan untuk pengembangan selanjutnya.

Universitas Sumatera Utara


BAB 2

LANDASAN TEORI

2.1. Sistem Biometrika

2.1.1. Pengertian Sistem Biometrika

Biometrik berasal dari bahasa Yunani bios yang artinya hidup dan metron yang
artinya mengukur adalah studi tentang metode otomatis untuk mengenali manusia
berdasarkan satu atau lebih bagian tubuh manusia atau kelakuan dari manusia itu
sendiri yang memiliki keunikan. Dalam dunia teknologi informasi, biometrik relevan
dengan teknologi yang digunakan utnuk menganalisa fisik dan kelakuan manusia
untuk autentifikasi (Putra, 2010). Contohnya dalam pengenalan fisik manusia yaitu
dengan pengenalan sidik jari, retina, iris, pola dari wajah (facial patterns), tanda
tangan dan cara mengetik (typing patterns). Dengan suara adalah kombinasi dari dua
yaitu pengenalan fisik dan kelakuannya Dalam teknologi terkini ditawarkan adanya
beberapa kemudahan, seperti akses, pelayanan, dan sistem informasi. Kemudahan
tersebut dapat dirasakan seperti pada mekanisme pengambilan uang melalui ATM
(Anjungan Tunai Mandiri), mekanisme memperoleh sistem informasi (internet).
Mekanisme tersebut diperlukan adanya jaminan kerahasiaan sehingga tidak dapat
ditiru oleh user yang bukan berhak. Salah satu alat untuk menjamin bahwa yang
berhak mendapatkan layanan itu harus memberikan data identifikasi. Sistem
identifikasi tersebut bersifat otomatis dengan memberikan inputan identifikasi
personal. Saat ini terdapat beragam jenis aplikasi sistem keamanan yang dapat
mengindentifikasi dan memverifikasi individu dengan baik. Dua pendekatan
tradisional untuk pengenalan individu yang dikenal selama ini adalah pendekatan
berbasis pengetahuan (knowledge based), dimana seseorang yang akan masuk ke
dalam sistem keamanan perlu memasukkan password tertentu. Pendekatan lain adalah
berbasis token (token based), dimana diperlukan suatu benda atau pengenal khusus

Universitas Sumatera Utara


6

seperti kartu magnetik untuk masuk ke dalam sistem keamanan. Kedua pendekatan di
atas memiliki kelemahan, diantaranya : individu yang bersangkutan seringkali lupa
dengan kata kuncinya atau kartu magnetik yang menjadi kunci masuk ke dalam sistem
keamanan hilang atau dicuri orang. Pengenalan Biometrik merupakan alternatif
pengenalan individu selain pendekatan tradisional di atas, atribut biometrik yang
diturunkan oleh seorang individu tidak mungkin terlupakan atau hilang dicuri. Wajah,
sidik jari, telapak tangan, iris atau retina mata merupakan contoh karakteristik
fisiologis yang menjadi penanda atau ciri individu.
Pengertian pengenalan secara otomatis pada definisi biometrik adalah dengan
menggunakan teknologi (computer), pengenalan terhadap identitas seseorang dapat
dilakukan secara waktu nyata (realtime), tidak membutuhkan waktu berjam-jam atau
berhari-hari untuk proses pengenalan tersebut (Sutoyo, 2009). Sistem akan mencari
dan mencocokkan identitas seseorang dengan suatu basis data, acuan yang telah
disiapkan sebelumnya melalui proses pendaftaran. Contohnya sistem absensi
menggunakan sidik jari. Sistem biometrika akan melakukan pengenalan secara
otomatis atas identitas seseorang berdasarkan suatu ciri biometrika yang telah
disimpan dalam database.
Secara umum terdapat dua model sistem biometrika, yaitu:
1) Sistem Verifikasi
Sistem verifikasi bertujuan untuk menerima atau menolak identitas yang telah
diklaim oleh seseorang.
2) Sistem Identifikasi
Sistem identifikasi bertujuan untuk memecahkan identitas seseorang.
Pengguna tidak dapat memberikan klaim atau memberikan klaim negatif untuk
identitas yang telah terdaftar.
Penggunaan biometrik untuk sistem pengenalan memiliki beberapa
keunggulan dibanding sistem konvensional (penggunaan password, PIN, kartu, dan
kunci), di antaranya (Putra, 2010):

1) Non-repudation: suatu sistem yang menggunakan teknologi biometrik untuk


melakukan suatu akses, penggunaanya tidak akan menyangkal bahwa bukan
dia yang melakukan akses atau transaksi. Hal ini berbeda dengan penggunaan

Universitas Sumatera Utara


7

password atau PIN. Pengguna masih dapat menyangkal atas transaksi yang
dilakukanya, karena PIN atau password bisa dipakai bersama-sama.
2) Keamanan (security): sistem berbasis password dapat diserang menggunakan
metode atau algoritma brute force, sedangkan sistem biometrik tidak dapat
diserang dengan cara ini, karena sistem biometrika membutuhkan kehadiran
pengguna secara langsung pada proses pengenalan.
3) Penyaringan (screening) : proses penyaringan untuk mengatasi seseorang yang
menggunakan banyak identitas, seperti teroris yang dapat menggunakan lebih
dari satu paspor untuk memasuki satu negara. Sebelum menambahkan identitas
seseorang ke sistem, perlu dipastikan terlebih dahulu bahwa identitas orang
tersebut belum terdaftar sebelumnya. Untuk mengatasi masalah tersebut maka
diperlukan proses penyaringan identitas yang mana sistem konvensional tidak
dapat melakukanya. Biometrika mampu menghasilkan atau menyaring
beberapa informasi sidik jari atau wajah yang mirip dengan sidik jari atau
wajah yang dicari.

2.2. Metode Viola – Jones

Metode Viola-Jones merupakan metode pendeteksian obyek yang memiliki tingkat


keakuratan yang cukup tinggi yaitu sekitar 93,7 % dengan kecepatan 15 kali lebih
cepat daripada detektor Rowley Baluja-Kanade dan kurang lebih 600 kali lebih cepat
daripada detektor Schneiderman-Kanade. Metode ini, diusulkan oleh Paul Viola dan
Michael Jones pada tahun 2001 (Viola, 2004). Metode Viola-Jones menggabungkan
empat kunci utama yaitu Haar Like Feature, Integral Image, Adaboost learning dan
Cascade classifier. Haar Like Feature yaitu selisih dari jumlah piksel dari daerah di
dalam persegi panjang. Contoh Haar Like Feature disajikan dalam Gambar 2.1.

Gambar 2.1. Contoh Haar Like Feature (Viola, 2004)

Universitas Sumatera Utara


8

Nilai Haar Like Feature diperoleh dari selisih jumlah nilai piksel daerah gelap dengan
jumlah nilai piksel daerah terang:
F Harr = ∑ F white - ∑ F Black (2.1)

F Harr = Nilai fitur total


∑ F white = Nilai fitur pada daerah terang
∑ F Black = Nilai fitur pada daerah gelap

Setiap Haar-Like Feature terdiri dari gabungan kotak-kotak hitam dan putih.
Ada tiga tipe kotak feature dalam Haar:
a. Tipe two-rectangle feature (horizontal, vertikal)
b. Tipe three-rectangle feature
c. Tipe four-rectangle feature

Gambar 2.2. Variasi Fitur pada Haar (LienHart et al, 2002)

Integral Image yaitu suatu teknik untuk menghitung nilai fitur secara cepat dengan
mengubah nilai dari setiap piksel menjadi suatu representasi citra baru, sebagaimana
disajikan dalam Gambar 2.3.

X,Y

Gambar 2.3. Integral image (x,y) (Viola, 2004)

Universitas Sumatera Utara


9

Berdasarkan Gambar 2.3, citra integral pada titik (x,y) (ii(x,y)) dapat dicari
menggunakan persamaan (2.2):

ii(x,y) =∑x’ ≤ x, y’ ≤ y i(x’,y’) (2.2)


Keterangan
ii(x,y) = Citra integral pada lokasi x,y
i(x’,y’) = nilai piksel pada citra asli

Perhitungan nilai dari suatu fitur dapat dilakukan secara cepat dengan menghitung
nilai citra integral pada empat buah titik sebagaimana disajikan dalam Gambar 2.4.

Gambar 2.4. Perhitungan Nilai Fitur (Viola, 2004)

Jika nilai integral image titik 1 adalah A, titik 2 adalah A+B, titik 3 adalah A+C, dan
di titik 4 adalah A+B+C+D, maka jumlah piksel di daerah D dapat diketahui dengan
cara 4+1 – (2+3).

Algoritma Adaboost learning, digunakan untuk meningkatkan kinerja klasifikasi


dengan pembelajaran sederhana untuk menggabungkan banyak classifier lemah
menjadi satu classifier kuat. Classifier lemah adalah suatu jawaban benar dengan
tingkat kebenaran yang kurang akurat. Sebuah classifier lemah dinyatakan:

1,𝑗𝑖𝑘𝑎 𝑝𝑗𝑓𝑗(𝑥)<𝑝𝑗0𝑗(𝑥)
Hj (x) = { (2.3)
0,𝑙𝑎𝑖𝑛𝑛𝑦𝑎

Keterangan :
Hj(x) = adalah klasifikasi lemah
pj = adalah parity ke j
qj = adalah threshold ke j
x = adalah dimensi sub image misalnya 24x24

Universitas Sumatera Utara


10

Langkah-langkah untuk mendapatkan sebuah classifier kuat dinyatakan dalam suatu


algoritma sebagai berikut :
1. Diberikan contoh gambar (x1,y1), … (xn,yn) dimana yi= 0 untuk contoh positif
dan yi= 1 untuk contoh negatif
1 1
2. Inisialisasi bobot yi,1 = 𝑚′ 2𝑙;m dan l adalah jumlah negatif dan positif

3. Untuk t=1,…,T
Menormalkan bobot sehingga wt adalah distribusi probabilitas

𝑤𝑡,𝑖
Wt,I  𝑤𝑡,𝑖 (2.4)
∑𝑛
𝑗 =1

Untuk setiap fitur, j melatih classifier hj, untuk setiap fitur tunggal
Kesalahan (єj) dievaluasi dengan bobot wt
Єj = ∑𝑖 𝑤𝑖 |ℎ𝑗 (𝑥𝑖) − 𝑦𝑖| (2.5)
Pilih classifier ht dengan eror terkecil dimanaei = 0 untuk xi adalah klasifikasi
benar, dan ei= 1 untuk yang lain.
Perbaharui bobot :
Wt+1,i =Wt,i 𝛽𝑡1−𝑒𝑖 (2.6)

є𝑡
Dimana βt = (2.7)
1−є𝑡

Didapatkan sebuah Classifier kuat yaitu


1
1,∑𝑇 𝑇
𝑡=1∝𝑡ℎ𝑡(𝑥)≥ ∑𝑡=1∝𝑡
2
Hj (x) = { (2.8)
𝑙𝑎𝑖𝑛𝑛𝑦𝑎

1
dimana αt = log 𝛽𝑡

Cascade classifier adalah sebuah metode untuk mengkombinasikan classifier yang


kompleks dalam sebuah struktur bertingkat yang dapat meningkatkan kecepatan
pendeteksian obyek dengan memfokuskan pada daerah citra yang berpeluang saja.
Struktur cascade classifier disajikan Gambar 2.5.

Universitas Sumatera Utara


11

True True True


Sub Image 1 2 3 …. n Object

False False False

Non Object

Gambar 2.5. Cascade Clasifier (Dwiprasetyo, 2012)

Gambar 2.5 menjelaskan proses penyeleksian keberadaan obyek. Di asumsikan suatu


sub image di evaluasi oleh classifier pertama dan berhasil melewati classifier tersebut,
hal ini mengindikasikan sub image berpotensi terkandung obyek dan dilanjutkan pada
classifier ke dua sampai dengan ke-n, jika berhasil melewati keseluruhan classifier,
maka disimpulkan terdapat obyek yang dideteksi. Jika tidak, proses evaluasi tidak
dilanjutkan ke classifier berikutnya dan disimpulkan tidak terdapat obyek.

2.3. OpenCV (Intel® Open Source Computer Vision Library)

OpenCV merupakan singkatan dari Intel Open Source Computer Vision Library yang
sekurang-kurangnya terdiri dari 300 fungsi-fungsi C, bahkan bisa lebih. Software ini
gratis, dapat digunakan dalam rangka komersil maupun non komersil, tanpa harus
membayar lisensi ke intel (Santoso H, 2013). OpenCV dapat beroperasi pada
komputer berbasis Windows ataupun Linux. Library OpenCV adalah suatu cara
penerapan bagi komunitas open source vision yang sangat membantu dalam
kesempatan meng-update penerapan computer vision sejalan dengan pertumbuhan PC
(personal computer) yang terus berkembang. Software ini menyediakan sejumlah
fungsi-fungsi image processing, seperti halnya dengan fungsi-fungsi analisis gambar
dan pola.
Beberapa contoh aplikasi dari OpenCV adalah pada Human-Computer
Interaction (interaksi manusia komputer); Object Indentification (Identifikasi Objek),
Segmentation (segmentasi) dan Recognition (pengenalan); Face Recognition
(pengenalan wajah); Gesture Recognition (pengenalan gerak isyarat), Motion
Tracking (penjajakan gerakan), Ego Motion (gerakan ego), dan Motion Understanding

Universitas Sumatera Utara


12

(pemahaman gerakan); Structure From Motion (gerakan dari struktur); dan Mobile
Robotics (robot-robot yang bergerak).
Pengenalan wajah pada OpenCV menggunakan metode yang disebutkan oleh
metode Viola-Jones (Viola, 2001), juga disebut sebagai Haar cascade classifier.
Pendekatan ini untuk mendeteksi objek dalam gambar dengan menggabungkan empat
konsep yaitu:
a. Segi empat sederhana, disebut dengan Haar feature.
b. Sebuah Integral gambar untuk mempercepat menemukan feature.
c. Metode AdaBoost machine-learning.
d. Klasifikasi bertingkat untuk menyatukan banyaknya feature secara efesien.

Bentuk yang Viola dan Jones gunakan adalah berdasarkan Haar wavelets.
clasifikasi ini menggunakan gelombang segiempat tunggal (satu interval tinggi dan
yang satunya interval rendah) dalam dua dimensi, gelombang persegi adalah pasangan
dari segi empat yang berdekatan satu putih yang satunya hitam seperti pada Gambar
2.6.

Gambar 2.6. Klasifikasi Haar digunakan dalam OpenCV (Santoso H, 2013)

Sebelum melakukan pengenalan, gambar wajah didapat terlebih dahulu


sebelum di proses. Hal ini memungkinkan untuk mendapatkan sebuah hasil yang
benar dalam sebuah gambar kurang dari 10%. Hal ini sangat penting dilakukan
beberapa teknik kedalam standarisasi gambar. Banyak algoritma pengenalan wajah
sangat sensitif terhadap kondisi cahaya. Sama halnya dengan model rambut,
dandanan, perputaran sudut, ukuran dan emosi yang dapat mempengaruhi proses
pengenalan. Metode pengenalan yang digunakan adalah Eigenface, dan metode ini

Universitas Sumatera Utara


13

bekerja dengan gambar skala keabu-abuan. Langkah yang penting untuk mengambil
gambar sebelum di proses adalah sebagai berikut:
a. Gambar wajah di potong dan ukurannya disesuaikan.
b. Gambar Gambar di rubah ke skala ke abu-abuan
c. Histogram equalization
Pemrosesan gambar wajah adalah langkah berikutnya setelah gambar di
perbaiki. Hal ini menghasilkan Eigenface pada sebuah gambar. OpenCV dengan
sebuah fungsi operasi PCA, walaupun butuh sebuah database (set training) dari
sebuah gambar untuk di ketahui bagaimana pengenalan setiap orang. PCA merubah
semua pembelajaran gambar kedalam kumpulan dari Eigenface yang mewakili
perbedaan antara gambar pembelajaran dan rata-rata gambar wajah (Irianto, 2010).

2.3.1. Teknik Background Subtraction dan Frame Differencing

Yang dimaksud background adalah sejumlah piksel-piksel gambar yang diam dan
tidak bergerak didepan kamera. Model background yang paling sederhana meng-
asumsikan bahwa seluruh kecerahan piksel background berubah-ubah secara bebas,
tergantung pada distribusi normalnya. Karakteristik background dapat dihitung
dengan mengakumulasi beberapa jumlah frame sehingga akan menemukan jumlah
nilai-nilai piksel dalam lokasi s (x,y) dan jumlah square-square q (x,y) yang memiliki
nilai untuk setiap lokasi piksel (Triatmoko, 2014). Sedangkan foreground adalah
semua objek yang ada selain background dan biasanya foreground ini ada setelah
didapatkannya background. Background subtraction merupakan salah satu tugas
penting yang pertama kali dikerjakan pada aplikasi computer vision. Output dari
background subtraction biasanya adalah inputan yang akan diproses pada tingkat
yang lebih lanjut lagi seperti men-tracking objek yang teridentifikasi. Kualitas
background subtraction umumnya tergantung pada teknik pemodelan background
yang digunakan untuk mengambil background dari suatu layar kamera. Background
subtraction biasanya digunakan pada teknik segmentasi objek yang dikehendaki dari
suatu layar, dan sering diaplikasikan untuk sistem pengawasan. Tujuan dari
background subtraction itu sendiri adalah untuk menghasilkan urutan frame dari
kamera dan mendeteksi seluruh objek foreground. Suatu deskripsi pendekatan yang
telah ada tentang background subtraction adalah mendeteksi objek-objek foreground

Universitas Sumatera Utara


14

sebagai perbedaan yang ada antara frame sekarang dan gambar background dari layar
statik. Suatu piksel dikatakan sebagai foreground jika:

|Frame i–Background i | > Threshold..(1) (2.9)

2.3.2. Fitur OpenCV

Berikut ini adalah fitur-fitur pada library OpenCV (Bradski, 2008):


1. Manipulasi data gambar (alokasi memori, melepaskan memori, kopi gambar,
setting serta konversi gambar).
2. Image/video I/O (bisa menggunakan camera yang sudah didukung oleh
library ini)
3. Manipulasi matriks dan vector serta terdapat juga routines linear algebra
(products, solvers, eigenvalues, SVD)
4. Image processing dasar (filtering, edge detection, pendeteksian tepi, sampling
dan interpolasi, konversi warna, operasi morfologi, histogram, image
pyramida)
5. Analisis structural
6. Kalibrasi kamera
7. Pendeteksian gerak
8. Pengenalan objek
9. BasicGUI (Display gambar/video, mouse/keyboard control, scrollbar)
10. Image Labelling (line, conic, polygon, test drawing)

2.4. Pengolahan Citra

2.4.1. Definisi Pengolahan Citra Digital

Citra merupakan istilah lain dari gambar, yang merupakan komponen multimedia
yang memegang peranan sangat penting sebagai bentuk informasi visual. Citra digital
adalah citra hasil digitalisasi dari citra kontinu (analog). Pengolahan citra adalah
pemrosesan citra menjadi citra yang kualitasnya lebih baik, bertujuan agar mudah
diinterpretasi oleh manusia atau mesin (komputer). Beberapa contoh operasi
pengolahan citra adalah pengubahan kontras citra, penghilangan derau (noise) dengan

Universitas Sumatera Utara


15

operasi penapisan (filtering), penghasilan tepi objek, penajaman (sharpening),


pemberian warna semu (pseudocoloring), dan sebagainya (Sutoyo, 2009).
Citra digital adalah citra yang dapat diolah dengan komputer. Pengolahan citra
digital merupakan sebuah disiplin ilmu yang mempelajari hal-hal yang berkaitan
dengan perbaikan kualitas gambar seperti peningkatan kontras, transformasi warna,
restorasi citra dan transformasi gambar seperti rotasi, translasi, skala, transformasi
geometri. Sebuah citra digital dapat mewakili oleh sebuah matriks yang terdiri dari M
kolom N baris, dimana perpotongan antara kolom dan baris disebut piksel ( piksel =
picture element), yaitu elemen terkecil dari sebuah citra. Piksel mempunyai dua
parameter, yaitu koordinat dan intensitas atau warna. Nilai yang terdapat pada
koordinat (x,y) adalah f(x,y), yaitu besar intensitas atau warna dari piksel di titik itu.
Oleh sebab itu, sebuah citra digital dapat ditulis dalam bentuk matriks berikut :

𝑓(0,0) 𝑓(0,1) ⋯ 𝑓(0, 𝑀 − 1)


𝑓(1,0) ⋯ ⋯ 𝑓(1, 𝑀 − 1)
f(x,y)=[ ] (2.10)
⋮ ⋮ ⋱ ⋮
𝑓(𝑁 − 1,0) 𝑓(𝑁 − 1,1) ⋯ 𝑓(𝑁 − 1, 𝑀 − 1)

Berdasarkan gambaran tersebut, secara matematis citra digital dapat dituliskan


sebagai fungsi f(x,y), dimana harga x (baris) dan y (kolom) merupakan koordinat
posisi dan f(x,y) adalah nilai fungsi pada setiap titik (x,y) yang menyatakan besar
intensitas citra atau tingkat keabuan atau warna dari piksel di titik tersebut (Sutoyo,
2009). Berikut ini pada Gambar 2.7 nilai piksel dari citra objek manusia.

Nilai Intensitas Piksel


Gambar 2.7. Nilai piksel dari citra objek manusia (Robin, 2015)

Universitas Sumatera Utara


16

2.4.2. Jenis- Jenis Citra Digital

Berikut jenis-jenis citra digital antara lain :


a) Citra Biner
Citra biner diperoleh melalui proses pemisahan piksel-piksel berdasarkan
derajat keabuan yang dimilikinya. Piksel yang memiliki derajat keabuan lebih
kecil dari nilai batas yang ditentukan akan diberikan nilai 0, sementara piksel
yang memiliki derajat keabuan yang lebih besar dari batas akan diubah
menjadi bernilai 1. Berikut pada Gambar 2.8 contoh citra biner dalam bentuk
biner :

Gambar 2.8. Citra Biner (Andik, 2009)

b) Citra Keabuan (Graysacale)


Citra grayscale adalah citra digital yang setiap pikselnya 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.
Citra ini disebut juga citra hitam putih atau citra monokromatik. Berikut pada
Gambar 2.9 contoh citra dalam bentuk Grayscale :

Gambar 2.9 Citra Keabuan (Graysacale) (Andik, 2009)

c) Citra Warna (True Color)


Setiap piksel pada citra warna mewakili warna yang merupakan kombinasi
dari tiga warna (RGB= Read Green Blue). Piksel (picture element) digunakan

Universitas Sumatera Utara


17

untuk mengekspresikan resolusi layer digital, 1 piksel adalah unit terkecil dari
sebuah gambar. Berikut pada Gambar 2.10 contoh citra dalam bentuk RGB:

Gambar 2.10 Citra Warna (True Color) (Andik 2009)

Salah satu format citra digital yang lengkap yaitu citra bitmap atau sering juga
disebut dengan citra raster. Citra bitmap direpresentasikan dalam bentuk matriks atau
dipetakkan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini
memiliki kelebihan untuk memanipulasi warna, tetapi untuk mengubah objek sulit.
Tampilan bitmap mampu menunjukkan kehalusan gradasi bayangan dan warna dari
sebuah gambar. Oleh karena itu, bitmap merupakan media elektronik yang paling
tepat untuk gambar-gambar dengan perpaduan gradasi warna yang rumit, seperti foto
dan lukisan digital. Citra bitmap biasanya diperoleh dengan cara scanner, kamera
digital, video, scan fingerprint dan sebagainya (Sutoyo, 2009).

2.4.3. Elemen-Elemen Citra Digital

Berikut ini adalah elemen-elemen yang terdapat pada citra digital antara lain :
1. Kecerahan (brigthness)
Kecerahan (brigthness) merupakan intensitas cahaya yang dipancarkan piksel
dari citra yang dapat ditangkap oleh sistem pengelihatan. Kecerahan pada
sebuah titik (piksel) di dalam citra merupakan intensitas rata-rata dari suatu
area yang melingkupinya.
2. Kontras (contrast)
Kontras (contrast) menyatakan sebaran terang dan gelap dalam sebuah citra.
Pada citra yang baik, komposisi gelap dan terang tersebar secara merata.
3. Kontur (contour)
Kontur (contour) adalah keadaan yang ditimbulkan oleh perubahan pada
intensitas pada piksel-piksel yang bertetangga. Karena adanya perubahan
intensitas inilah mata mampu mendeteksi tepi-tepi objek di dalam citra.

Universitas Sumatera Utara


18

4. Warna
Warna sebagai persepsi yang ditangkap sistem visual terhadap panjang
gelombang cahaya yang dipantulkan oleh objek.
5. Bentuk (shape)
Bentuk (shape) adalah properti instrinsik dari objek 3 dimensi, dengan
pengertian bahwa bentuk merupakan properti instrinsik utama untuk sistem
visual manusia.
6. Tekstur (texture)
Tekstur (texture) dicirikan sebagai distribusi spasial dari derajat keabuan di
dalam sekumpulan piksel-piksel yang bertetangga. Tekstur adalah sifat-sifat
atau karakteristik yang dimiliki oleh suatu daerah yang cukup besar sehingga
secara alami sifat-sifat tersebut dapat berulang. Tekstur adalah keteraturan
pola-pola tertentu yang terbentuk dari susunan piksel-piksel dalam citra digital.

2.4.4. Langkah-Langkah Pengolahan Citra Digital

Representasi
Segmentasi dan
Deskripsi

Pre-processing
Hasil
Pengenalan
Domain Basis Pengetahuan dan
Masalah Interpretasi

Akuisi Citra

Gambar 2.11. Langkah-langkah pengolahan citra digital


(Sutoyo, 2009)

Secara umum, langkah-langkah pengolahan citra digital sebagai berikut :


1) Akuisi citra
Akuisi citra adalah tahap awal untuk mendapatkan citra digital. Tujuan akuisi
citra adalah untuk menentukan data yang diperlukan dan memilih metode
perekaman citra digital. Tahap ini dimulai dari objek yang akan diambil
gambarnya, persiapan alat-alat sampai pada pencitraan. Pencitraan adalah
kegiatan transformasi dari citra tampak (foto, gambar, lukisan, patung,

Universitas Sumatera Utara


19

pemandangan, dan lain-lain) menjadi citra digital. Beberapa alat yang dapat
digunakan untuk pencitraan adalah :
a) Video kamera
b) Kamera digital
c) Kamera konvensional dan konverter analog to digital
d) Scanner
e) Photo sinar-x/ sinar infra merah
Hasil dari akuisi citra ini ditentukan oleh kemampuan sensor untuk
mendigitalisasi sinyal yang terkumpul pada sensor tersebut. Kemampuan
digitalisasi alat ditentukan oleh resolusi alat tersebut.
2) Pre-processing
Tahap ini digunakan untuk menjamin kelancaran pada proses berikutnya. Hal-
hal penting yang dilakukan pada tingkatan ini diantaranya adalah sebagai
berikut :
a) Peningkatan kualitas citra (kontras, brightness, dan lain-lain)
b) Menghilangkan noise
c) Perbaikan citra (image restoration)
d) Transformasi (image transformation)
e) Menentukan bagian citra yang akan diobeservasi
3) Segmentasi
Tahapan ini digunakan untuk mempartisi citra menjadi bagian-bagian pokok
yang mengandung informasi penting. Misalnya memisahkan antara objek
dengan latar belakang.
4) Representasi dan deskripsi
Dalam hal ini representasi merupakan suatu proses untuk merepresentasikan
suatu wilayah sebagai suatu daftar titik-titik koordinat dalam kurva tertutup,
dengan deskripsi luasan atau perimeternya. Setelah suatu wilayah dapat
direpresentasi, proses selanjutnya adalah melakukan deskripsi citra dengan
cara seleksi ciri (feature extraction and selection). Seleksi ciri bertujuan untuk
memilih informasi kuantitatif dari ciri yang ada, yang dapat membedakan
kelas-kelas objek dengan baik, sedangkan ekstraksi ciri bertujuan untuk
mengukur besaran kuantitatif ciri setiap piksel, misalnya rata-rata, standar
deviasi, koefisien variasi, dan lain-lain.

Universitas Sumatera Utara


20

5) Pengenalan dan interpretasi


Tahap pengenalan bertujuan untuk memberi label pada sebuah objek yang
informasinya disediakan oleh descriptor, sedangkan tahap interpretasi
bertujuan untuk memberi arti atau makna kepada kelompok objek-objek yang
dikenali.
6) Basis pengetahuan
Basis pengetahuan sebagai basis data pengetahuan berguna untuk memandu
operasi dari masing-masing modul proses dan mengkontrol interaksi antara
modul-modul tersebut. Selain itu, basis pengetahuan juga digunakan sebagai
referensi pada proses template matching atau pada pengenalan pola.

2.4.5. Sistem Pencitraan

Pencitraan adalah proses untuk mentransformasi citra analog menjadi citra digital.
Citra analog adalah citra bersifat kontinu, seperti gambar pada televisi, foto yang
tercetak pada kertas foto, hasil dari scan, gambar-gambar yang tersimpan pada kaset
dan lain sebagainya (Sutoyo, 2009). Citra analog tidak dapat direpresentasikan dalam
komputer sehingga tidak dapat diproses pada komputer secara langsung. Oleh sebab
itu, agar citra dapat diproses pada komputer, proses konversi analog ke citra digital
harus dilakukan terlebih dahulu. Dalam penelitian ini alat yang digunakan untuk
pencitraan adalah webcam. Berikut ini Gambar 2.12 contoh proses pencitraan dari
citra analog (citra sidik jari) menjadi citra digital.

Gambar 2.12. Proses Pencitraan Citra Analog Menjadi Citra Digital (Al-Fatta,
2009)

Universitas Sumatera Utara


21

2.5. Pra-pemrosesan (Pre-processing)

Teknik pra-pemrosesan digunakan untuk mempersiapkan citra agar dapat


menghasilkan ciri yang lebih baik pada tahap pemisahan ciri terhadap proses
pengenalan pola. Teknik pra-pemrosesan sangat berkaitan dengan pengenalan pola.
Pengenalan pola secara umum merupakan suatu ilmu yang mengklasifikasikan atau
menggambarkan sesuatu berdasarkan pengukuran kuantitatif ciri atau sifat dari objek.
Pola sendiri merupakan suatu entitas yang terdefinisi dan dapat diidentifikasi dan
diberi nama. Salah satu contoh dari pola yaitu sidik jari. Pola dapat merupakan
kumpulan dari hasil pengukuran atau pemantauan dan dapat dinyatakan dalam notasi
vektor atau matriks. (Putra, 2010).
Pra-pemrosesan adalah transformasi input data mentah untuk membantu
kemampuan komputasional dan pencari ciri serta untuk mengurangi kesalahan. Pada
pra-pemrosesan, citra yang ditangkap oleh sensor akan dinormalisasi agar citra
menjadi lebih siap untuk diolah pada tahap pemisahan ciri. Kualitas ciri yang
dihasilkan pada proses pemisahan ciri sangat tergantung pada hasil pra-pemrosesan.

Berikut ini merupakan tahap-tahap pra-pemrosesan antara lain :


1. Mengubah citra RGB (Red Green Blue) menjadi beraras keabuan (Grayscale).
2. Segmentasi yaitu proses memisahkan antara wilayah latar belakang dengan
wilayah latar depan.
3. Normalisasi yaitu mengurangi dampak dari derau (noise) pada sensor, yang
digunakan untuk menstandarisasi nilai intensitas citra.

2.5.1. Konversi Citra RGB Menjadi Citra Grayscale

Citra RGB (Red Green Blue) / warna dapat diubah menjadi citra grayscale dengan
menghitung rata-rata elemen warna Red (Merah), Green (Hijau) dan Blue (Biru)
(Santi, 2011). Secara matematis perhitungan sebagai berikut:
𝑓𝑖𝑅 (𝑥,𝑦) + 𝑓𝑖𝐺 (𝑥,𝑦) + 𝑓𝑖𝐵 (𝑥,𝑦)
Fo (x, y) = (2.11)
3

Universitas Sumatera Utara


22

Berikut gambar contoh proses perhitungan konversi citra RGB menjadi grayscale.

F0 = (50+65+50)/3

R=50 R=40 R=90 R=80 R=50


G=65 G=40 G=90 G=50 G=30 55 45 90 60 40
B=50 B=55 B=90 B=50 B=40
R=40 R=50 R=40 R=20 R=50
G=80 G=80 G=90 G=20 G=60 50 60 70 30 60
B=30 B=50 B=80 B=50 B=70
R=80 R=70 R=80 R=10 R=80
G=60 G=70 G=90 G=70 G=50 60 70 80 30 70
B=40 B=70 B=70 B=10 B=80
R=50 R=40 R=70 R=60 R=50
G=90 G=60 G=70 G=20 G=80 70 50 70 40 60
B=70 B=50 B=70 B=40 B=50
R=50 R=40 R=80 R=70 R=90
G=65 G=60 G=80 G=60 G=85 60 60 80 60 80
B=50 B=80 B=80 B=50 B=70

Gambar 2.13. Proses Konversi Citra RGB Menjadi Grayscale (Santi, 2011)

2.5.2. Segmentasi

Segmentasi citra bertujuan untuk membagi wilayah-wilayah yang homogen.


Segmentasi merupakan suatu metode yang digunakan untuk mengubah citra input ke
dalam citra output berdasarkan atribut yang diambil dari citra tersebut. Segmentasi
membagi citra kedalam daerah intensitasnya masing-masing sehingga dapat
membedakan antara objek dengan background-nya. Pembagian ini tergantung
terhadap masalah yang akan diselesaikan. Segmentasi harus dihentikan apabila
masing-masing objek telah terisolasi atau terlihat dengan jelas. Tingkat keakurasian
segmentasi tergantung pada tingkat keberhasilan prosedur analisis yang dilakukan.
Algoritma pada segmentasi citra terbagi atas dua macam (Rachmad, 2008), yaitu:
1. Diskontinuitas
Diskontinuitas merupakan pembagian citra berdasarkan perbedaan dalam
intensitasnya, contohnya titik, garis, dan edge (tepi).

Universitas Sumatera Utara


23

2. Similaritas
Similaritas merupakan pembagian citra berdasarkan kesamaan-kesamaan
kriteria yang dimilikinya, contohnya thresholding, region growing, region
splitting, dan region merging.

(a) (b)
Gambar 2.14. Proses Pemisahan, (a) Gambar Asli, (b) Hasil Segmentasi
(Rachmad, 2008)

Pada Gambar 2.14 merupakan tahap segmentasi, dimana dalam proses ini
adalah proses pemisahan antara objek (citra sidik jari) dengan backgorund-nya.

2.5.2.1.Thresholding (Pengambangan)

Proses pengambangan akan menghasilkan citra biner yaitu citra yang memiliki dua
nilai tingkat keabuan yaitu hitam dan putih (Kumaseh, 2011). Secara umum proses
pengambangan citra grayscale untuk menghasilkan citra biner adalah sebagai berikut:

1 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) ≥ 𝑇
g(x,y) ={ } (2.12)
0 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) < 𝑇

Dengan g (x,y) adalah citra biner dari citra grayscale f (x,y), dan T menyatakan
nilai ambang. Nilai T memegang peranan yang sangat penting dalam proses
pengambangan. Kualitas citra biner sangat tergantung terhadap nilai T yang
digunakan.
Terdapat dua jenis pengambangan antara lain pengambangan global (global
thresholding) dan pengambangan secara lokal adaptif (locally adaptive thresholding).
Pada pengambangan global, seluruh piksel pada citra dikonversikan menjadi hitam
atau putih dengan suatu nilai ambang T. Kemungkinan besar pada pengambangan

Universitas Sumatera Utara


24

global akan banyak informasi yang hilang karena hanya menggunakan satu nilai T
untuk keseluruhan piksel. Untuk mengatasi masalah ini, dapat digunakan
pengambangan secara lokal adaptif. Pada pengambangan lokal adaptif, suatu citra
dibagi menjadi blok-blok kecil dan kemudian dilakukan pengambangan lokal pada
setiap blok dengan nilai T yang berbeda.

2.5.2.2. Normalisasi

Normalisasi intensitas digunakan untuk mengurangi ketidaksempurnaan citra akibat


adanya derau (noise) maupun ketidakseragaman pencahayaan. Normalisasi juga
digunakan untuk menstandarisasi nilai intensitas sebuah citra dari tingkat keabuan
pada piksel citra sidik jari. Proses normalisasi intensitas dilakukan terhadap setiap
piksel pada citra asli (Putra, 2010).
Algoritma proses normalisasi adalah sebagai berikut :
1) Hitung nilai rata-rata untuk setiap sektor pada citra sidik jari input.
2) Hitung nilai varian untuk setiap sektor pada citra sidik jari input.
3) Untuk setiap sektor pada citra sidik jari mengalami proses normalisasi.

Normalisasi dapat dihitung dengan rumus sebagai berikut :


𝑉0 𝑥{𝐼(𝑥,𝑦)− 𝑀𝑖 )2 }
𝑀0 + √ 𝑗𝑖𝑘𝑎 𝐼(𝑥, 𝑦) > 𝑀𝑖
𝑉𝑖
𝑁𝑖 (𝑥, 𝑦) = (2.22)
𝑉0 𝑥{𝐼(𝑥,𝑦)− 𝑀𝑖 )2 }
𝑀 − √ 𝑗𝑖𝑘𝑎 𝐼(𝑥, 𝑦) < 𝑀𝑖
{ 0 𝑉𝑖

dimana :
Ni (x, y) = citra hasil normalisasi
I(x, y) = citra asal
M0 = varian citra hasil
Mi = varian citra asal
V0x = rata-rata citra hasil
Vi = rata-rata setiap sektor citra asal

Universitas Sumatera Utara


25

2.6. Ekstraksi Fitur

Ekstraksi fitur (feature extraction) merupakan bagian fundamental dari analisis citra
(Putra, 2010). Fitur adalah karakteristik yang unik dari suatu objek. Karakteristik dari
fitur antara lain:
1. Dapat membedakan suatu objek dengan yang lainya (discrimination).
2. Memperlihatkan kompleksitas komputasi dalam memperoleh fitur.
Kompleksitas komputai yang tinggi akan menjadi beban tersendiri dalam
menemukan suatu fitur.
3. Tidak terikat (independence) dalam arti bersifat invarian terhadap berbagai
transformasi (rotasi, penskalaan, pergeseran dan sebagainya).
4. Jumlahnya sedikit, karena fitur yang jumlahnya sedikit akan dapat menghemat
waktu komputasi dan ruangan penyimpanan untuk proses selanjutnya (proses
pemanfaatan fitur).

2.6.1. Ciri Berdasarkan Blok

Sebelum menentukan arah orientasi citra sidik jari terlebih dahulu yang dilakukan
adalah membagi citra menjadi blok-blok (Putra, 2010). Terdapat dua model
pembagian blok, yaitu pembagian blok secara tumpang tindih (overlapping) dan
pembagian blok yang tidak saling tumpang tindih (non-overlapping). Pada model
tumpang tindih, suatu blok dengan blok lain yang saling berdampingan terdapat
sejumlah piksel yang saling tumpang tindih seperti paada Gambar 2.15(a). Pada model
pembagian blok yang tidak tumpang tindih, piksel pada suatu blok dengan blok yang
lain tidak saling tumpang tindih seperti pada Gambar 2.15(b). Dalam penelitian ini
digunakan pembagian blok yang tidak saling tumpang tindih (non-overlapping).

Gambar 2.15. (a) Contoh pembagian blok yang saling tumpang tindih,
(b) Contoh pembagian blok yang tidak saling tumpang tindih. (putra, 2010)

Universitas Sumatera Utara


26

Vektor ciri dari blok dapat dibentuk dengan nilai rata-rata ataupun standar
deviasi dari setiap blok. Nilai standar deviasi dapat dihitung dengan rumus berikut ini:
𝜎 = (𝑀−1 ∑𝑀 2 2
𝑖=1(𝑥𝑖 − 𝜇) ) (2.23)
dimana :
μ = nilai rata-rata, yang dapat dihitung dengan rumus sebagai berikut :
𝜇 = 𝑀−1 ∑𝑀
𝑖=1 𝑥𝑖 (2.24)
M = jumlah seluruh piksel dalam setiap blok.
x = nilai piksel.
Vektor fitur sidik jari dapat dibentuk dengan cara berikut :
V=(σ1, σ2, σ3 ... σN)
dimana :
σ1= nilai standar deviasi blok ke-i.
N = jumlah dari keseluruhan blok.

2.7. Konsep Pengenalan Wajah

Pengenalan wajah adalah suatu metoda pengenalan yang berorientasi pada wajah.
Pengenalan ini dapat dibagi menjadi dua bagian yaitu: dikenali atau tidak dikenali,
setelah dilakukan perbandingan dengan pola yang sebelumnya disimpan di dalam
database. Metoda ini juga harus mampu mengenali objek bukan wajah. Perhitungan
model pengenalan wajah memiliki beberapa masalah. Kesulitan muncul ketika wajah
direpresentasikan dalam suatu pola yang berisi informasi unik yang membedakan
dengan wajah yang lain (Robin, 2007).
Metoda pendeteksian wajah memakai dua prosedur, yaitu :
a. Pengenalan kontur wajah dengan mengenali bentuk hidung, mata dan mulut dan
bentuk korelasi diantara keduanya. Karakteristik organ tersebut kemudian
dinyatakan dalam bentuk vektor.
b. Analisis komponen yang prinsipil, berdasarkan informasi dari konsep ini, mencari
perhitungan model terbaik yang menjelaskan bentuk wajah dengan mengutip
informasi yang paling relevan yang terkandung di dalam wajah tersebut.

Dibalik kemudahan mengenali wajah, ada beberapa masalah yang mungkin timbul
dalam proses pengenalan wajah disebut dengan robust, yaitu:

Universitas Sumatera Utara


27

a. Perubahan Skala
Citra seseorang dapat direpresentasikan berbeda diakibatkan perbedaan jarak
antara wajah dengan kamera. Semakin dekat jarak maka citra akan semakin besar.
Contoh Gambar 2.16 (b).
b. Perubahan Posisi
Citra seseorang dapat direpresentasikan berbeda diakibatkan perubahan posisi
seseorang ataupun perubahan sudut pengambilan wajah. Contoh Gambar (c).
c. Perubahan Cahaya
Citra seseorang dapat direpresentasikan berbeda diakibatkan perubahan intensitas
cahaya yang terjadi ketika pengambilan citra. Contoh Gambar (d).
d. Perubahan detail dan ekspresi
Citra seseorang dapat direpresentasikan berbeda diakibatkan perubahan detail
seperti adanya janggut, kumis, pemakaian kacamata atau perubahan gaya rambut
selain itu perubahan ekspresi wajah menjadi tertawa, tersenyum, muram,
menangis juga dapat mengakibatkan pada citra yang dapat dilihat pada Gambar
2.16 (e).
Atribut detail citra wajah yang diakibatkan oleh perubahan posisi, cahaya serta detail
dapat dilihat pada Gambar 2.16.

Gambar 2.16. Citra Wajah (Robin, 2007)

Gambar (a) Citra asli, (b) Citra akibat perubahan skala, (c) Citra akibat perubahan
posisi, (d) Citra akibat perubahan cahaya, (e) Citra akibat penambahan detail atau
atribut dalam hal ini adalah kaca mata, topi dan lainnya (Robin, 2007).

Universitas Sumatera Utara


28

2.7.1. Proses Umum Pengenalan Wajah

Proses pengenalan wajah secara umum (Robin, 2007) adalah terdiri dari :
a. Acquisition module, merupakan blok input dari proses pengenalan wajah,
sumbernya dapat berasal dari kamera ataupun file citra.
b. Pre-processing module, merupakan proses penyesuaian citra input yang
meliputi, normalisasi ukuran citra, histogram equalization untuk memperbaiki
kualitas citra input agar memudahkan proses pengenalan tanpa menghilangkan
informasi utamanya, median filtering untuk menghilangkan noise akibat kamera
atau pergeseran frame, high pass filtering untuk menunjukan bagian tepi dari
citra, background removal untuk menghilangkan background sehingga hanya
bagian wajah saja yang diproses dan normalisasi pencahayaan ketika mengambil
citra input. Bagian pre-processing ini untuk menghilangkan masalah yang akan
timbul pada proses pengenalan wajah seperti yang dijelaskan sebelumnya.
c. Feature Extraction module, module ini digunakan untuk mengutip bagian
terpenting sebagai suatu vektor yang merepresentasikan wajah dan bersifat unik.
d. Classification module, pada modul ini, dengan bantuan pemisahan pola, fitur
wajah yang dibandingkan dengan fitur yang telah tersimpan di database
sehingga dapat diketahui apakah citra wajah tersebut dikenali.
e. Training set, modul ini digunakan selama proses pembelajaran proses
pengenalan, semakin kompleks dan sering maka proses pengenalan wajah akan
semakin baik.
f. Database : Berisi kumpulan citra wajah.

Universitas Sumatera Utara


29

2.8. Penelitian Terdahulu


Bagian ini menjelaskan beberapa penelitian terdahulu terkait dengan pendeteksian
objek manusia dengan mendeteksi wajah atau bagian tertentu dari objek manusia. Tabel
penelitian terdahulu ditunjukkan pada tabel 2.1.

Tabel 2.1. Penelitian Terdahulu


No. Judul Nama Metode Keterangan
1 Sistem Sianturi, J. Viola-Jones Akurasi pendeteksian yang
Pendeteksian 2014 diperoleh mencapai 86,88%.
Manusia untuk Posisi objek juga sangat
Keamanan berpengaruh terhadap
Ruangan keakuratan pendeteksian.
Menggunakan Posisi objek yang terbaik
Viola-Jones adalah saat objek berada di
depan kamera atau
membelakangi kamera.
2 Aplikasi Setiawan, I. Eigenface Aplikasi dapat mendeteksi
Security 2014 wajah karyawan dan mampu
Camera untuk mendeteksi wajah-wajah
Mendeteksi dengan persentasi diatas 80%
Wajah
Menggunakan
Open CV
Berbasis
Webcam
3 Penggunaan Triatmoko, Viola Jones Dalam Penelitian ini akan
Metode Viola A.H. 2014 dan Eigen dikembangkan sistem
Jones dan Eigen Eyes kehadiran yang didasarkan
Eyes dalam pada identifikasi fitur mata.
Sistem
Kehadiran
Pegawai

Universitas Sumatera Utara


30

Tabel 2.2. Penelitian Terdahulu (Lanjutan)


No. Judul Nama Metode Keterangan
4 Pendeteksian Santoso, Hadi. Adaboost Hasil pengujian yang di
Wajah pada 2013 Learning lakukan adalah semua wajah
Citra Digital pada kondisi di atas terdeteksi
dengan baik.
5 Deteksi Wajah Mayo, M. 2008 Support Proses klasifikasi SVM masih
Manusia pada Vector memiliki kekurangan dimana
Citra Berwarna Machines terkadang salah melakukan
dengan deteksi objek wajah, hal ini
Informasi dapat diminimalisir dengan
Warna Kulit cara meningkatkan
dan Support performansi SVM.
Vector
Machines

Universitas Sumatera Utara


BAB 3
ANALISIS DAN PERANCANGAN SISTEM

Bab ini secara garis besar membahas analisis metode Viola-Jones dalam mendeteksi
wajah dan menghitung jumlah manusia pada citra serta tahap-tahap yang akan dilakukan
dalam perancangan sistem yang akan dibangun.

3.1. Arsitektur Umum

Pada desain ini ditunjukkan bagaimana setiap proses berlangsung dan membentuk
sebuah aplikasi yang terbentuk dengan sistematis. Rancangan arsitektur dapat dilihat
pada Gambar 3.1

Input File Citra Resize Citra Pra-process


Baca Nilai Piksel Citra

Grayscale

Fitur Haar

Viola-Jones
Citra Integral

Cascade of Classifier

Wajah
manusia/Bukan

Hitung Jumlah Wajah


Manusia

Gambar 3.1. Arsitektur Umum Deteksi Wajah dan Menghitung Manusia

Universitas Sumatera Utara


32

3.1.1. Resize Citra


Resize adalah proses mengubah dimensi citra digital sehingga semua citra digital yang
memiliki dimensi >= 1200x800 akan di ubah menjadi citra digital yang berdimensi
1200x800. Tujuan Resize ini adalah untuk menambah akurasi mendeteksi manusia.

3.1.2. Membaca Nilai Piksel Citra


Pada citra input pada umumnya adalah citra warna 24-bit (true color) nilai pikselnya
terdiri dari 3 byte yaitu nilai Red Green dan Blue (RGB) terdapat dalam data bitmap
berbentuk biner. Untuk membaca nilai RGB-nya, dilakukan dengan membaca data
bitmap yang panjangnya 3 byte, masing-masing byte menyatakan komponen R, G, dan
B. Setiap byte data merepresentasikan 8 bit jadi pada citra warna ada 3 byte x 8 bit =
24 bit kandungan warna. Citra warna 24 bit dapat dilihat seperti pada Gambar 3.2.

Gambar 3.2. Citra Wajah Manusia

Pada citra wajah manusia Gambar 3.2 di atas, tiap pikselnya mengandung 24-
bit kandungan warna atau 8-bit untuk masing-masing warna dasar (R, G, dan B),
dengan selang nilai warna antara 0 (00000000) sampai 255 (11111111) untuk tiap
warna. Sebagai contoh data bitmap citra warna di atas adalah seperti pada Gambar 3.3.

Universitas Sumatera Utara


33

<Header> Piksel 1 Piksel 2


<data bitmap>
1111000010110100111101111100001101011010010011011011
01101011010011110001100100001011111011111000
100101001111011111110001
1001000010010100100000011111000010110110111100011100
Piksel n
01001000010010110001

Gambar 3.3. Contoh Nilai Piksel Citra Warna

Pada contoh citra Gambar 3.3 di atas, data pertama adalah header yang berisi
informasi nama file, jenis format dan dimensi citra. Nilai piksel (0,0) adalah
111100001011010011110111. Nilai RGB dihitung sebagai berikut:
Nilai R = 111100001011010011110111 mod 100000000 = 11110111 = 247
Nilai G = (111100001011010011110111 and 1111111100000000)/100000000
= 1011 0100= 180 (desimal)
Nilai B= (111100001011010011110111 and
111111110000000000000000) / 10000000000000000
= 1111 0000 = 240 (desimal)
Sehingga diperoleh nilai piksel (0,0) 11110000 11110000 11111111:
R= 11110111 = 247 (desimal)
G= 10110100 = 180 (desimal)
B= 10010000 = 240 (desimal)

Dalam analisa ini jumlah piksel yang dihitung sebanyak 25 piksel saja dan
untuk mendapatkan nilai RGB piksel selanjutnya dilakukan sama seperti cara di atas
dan selanjutnya nilai RGB semua nilai piksel pada citra dimasukkan ke dalam matriks
seperti pada Tabel 3.1.

Universitas Sumatera Utara


34

Tabel 3.1. Matriks Nilai RGB Citra Warna


R G B R G B R G B R G B R G B
247,180,240 230,185,245 252,170,233 241,180,228 240,180,220
240,170,220 232,180,240 248,165,225 240,180,230 238,185,200
200,180,200 220,180,200 202,150,200 240,200,200 200,190,200
240,190,200 210,180,200 200,100,200 200,170,200 200,150,200
200,140,200 200,170,245 192,100,200 200,200,200 210,120,120

3.1.3. Menghitung Nilai Grayscale Citra

Matriks citra warna pada Tabel 3.1 di atas ditransformasikan menjadi citra grayscale
dengan menghitung rata-rata warna Red, Green dan Blue menggunakan persamaan
2.11. Sebagai contoh menghitung nilai grayscale piksel (0,0) dengan nilai komponen
RGB (241,180,144) adalah:
247+180+240
f(0,0) = ( )= 667/3 = 222
3
230+185+245
f(0,1) = ( )= 660/3 = 220
3
252+170+233
f(0,2) = ( )= 655/3 = 218
3
241+180+228
f(0,3) = ( )= 649/3 = 216
3
240+180+220
f(0,4) = ( )= 640/3 = 213
3

Untuk menghitung nilai grayscale piksel selanjutnya dilakukan sama seperti


cara di atas. Setelah semua nilai grayscale dihitung dan dimasukkan ke dalam matriks
nilai grayscale seperti pada Gambar 3.4.

222 220 218 216 213


200 214 202 212 189
200 120 201 200 210
209 180 202 189 180
200 189 185 188 185
Gambar 3.4. Matriks Nilai Grayscale

Universitas Sumatera Utara


35

3.1.4. Fitur Haar

Dalam metode viola-jones, pendeteksian objek dilakukan berdasarkan pada nilai fitur.
Penggunan fitur dilakukan karena pemrosesan fitur berlangsung lebih cepat
dibandingkan pemrosesan citra per piksel. Pencarian objek wajah manusia dilakukan
dengan mencari fitur-fitur yang memiliki tingkat pembeda yang tinggi. Hal ini
dilakukan dengan mengevaluasi setiap fitur terhadap data latih dengan menggunakan
nilai dari fitur tersebut. Pada penelitian ini penulis menggunakan parameter
FaceHaarCascade.xml yang dikhususkan untuk pelacakan bagian wajah manusia
dengan posisi kemiringan 00 – 150 dari objek yang ingin dideteksi. Fitur yang
memiliki batas terbesar antara manusia dan bukan manusia dianggap sebagai fitur
terbaik. Sebagai contoh, misalnya kita melakukan pencarian wajah manusia dalam
citra. Salah satu daerah wajah manusia adalah daerah mata dan pipi. Pada umumnya
daerah mata akan berwarna lebih gelap sedangkan daerah pipi akan berwarna lebih
terang seperti pada Gambar 3.5.

Gambar 3.5. Pencarian Fitur Haar

Perhitungan nilai haar mengikuti aturan sebagai berikut :


𝐹𝐻𝑎𝑎𝑟=Σ𝑅𝑏𝑙𝑎𝑐𝑘− Σ𝑅𝑤ℎ𝑖𝑡𝑒 (3.1)
Perhitungan nilai dari fitur dilakukan dengan mengurangkan nilai piksel pada area
hitam dengan piksel pada area putih. Jika nilai perbedaannya itu di atas nilai ambang
(threshold), maka dapat dikatakan bahwa fitur itu ada. Untuk menentukan ada atau
tidaknya ratusan fitur haar pada sebuah citra digunakan sebuah teknik yang disebut
dengan citra integral (integral image).

Universitas Sumatera Utara


36

3.1.5. Citra Integral

Citra integral adalah representasi tengah untuk citra dan terdiri dari jumlah nilai
keabu-abuan dari citra N dengan tinggi y dan lebar x dimana nilai tiap pikselnya
merupakan akumulatif dari nilai piksel atas dan kirinya. Salah satu contoh seperti
Gambar 3.6.

Gambar 3.6. Contoh Perhitungan Citra Integral

Misalkan nilai abu-abu dalam kotak haar tersebut seperti Tabel 3.2.

Tabel 3.2. Nilai Grayscale Citra Masukkan


222 220 218
200 214 202
200 120 201

Perhitungan citra integral dari nilai abu-abu dalam Tabel 3.2 dapat dilihat pada Tabel
3.3.

Tabel 3.3. Perhitungan Citra Integral


222 222+220 222+220+218
222+200 222+220+200+214 222+220+218+200+214+202
222+200+200 222+220+200+214+200+120 222+220+218+200+214+202+200+120+201

Maka diperoleh hasil perhitungan citra integralnya seperti pada tabel 3.4.

Tabel 3.4. Hasil Citra Integral


222 442 660
422 856 1276
622 1176 1797

Universitas Sumatera Utara


37

Nilai fitur = |(total piksel hitam) – (total piksel putih)|


= |{[(222+442+660+622+1176+1797) – (422+856+1276)]
= | 4919 – 2554|
= 2365
Nilai fitur yang diperoleh merupakan nilai perbedaan antara kotak putih dan hitam
yang biasa disebut dengan threshold. Nilai threshold ini digunakan sebagai parameter
klasifikasi objek yang terdeteksi sebagai manusia (wajah) atau bukan.

3.1.6. Cascade of Classifier

Cascade of Classifier merupakan suatu metode pengklasifikasian bertingkat dimana


masukan dari setiap tingkatan merupakan keluaran dari tingkat sebelumnya seperti
tampak pada Gambar 2.5. Cascade of classifier dirancang sedemikian rupa untuk
meningkatkan tingkat pendeteksian dan mengurangi jumlah positif yang palsu. Setiap
tingkatan classifier merupakan representasi hasil dari algoritma boosting dimana
setiap tingkat classifier memiliki sejumlah classifier yang lemah. Setiap classifier
yang lemah memberikan aturan pasti mengenai haar like feature yang digunakan
yakni jenis, ukuran, lokasi, nilai ambang (treshold) yang terbaik untuk setiap fitur,
serta nilai batasan setiap fitur tersebut.
Pada klasifikasi fitur (tingkat) pertama, tiap subcitra akan diklasifikasikan
menggunakan satu fitur. Jika hasil nilai fitur dari filter tidak memenuhi kriteria yang
diinginkan maka hasil ditolak. Pada klasifikasi ini akan disisakan kira-kira 50%
subcitra untuk diklasifikasi di tahap kedua. Subcitra yang lolos dari tingkat pertama
akan diklasifikasikan lagi pada tahap kedua dimana pada tahap kedua jumlah fitur
yang digunakan lebih banyak. Semakin bertambah tingkat klasifikasi maka fitur yang
digunakan semakin banyak. Jumlah subcitra yang lolos dari klasifikasi pun akan
berkurang hingga mencapai 2%. Subcitra yang berhasil melewati semua tingkat
klasifikasi akan dinyatakan sebagai manusia (objek yang dideteksi). Salah satu contoh
dari hasil filer pada proses cascade of classifier dapat dilihat pada Gambar 3.7.

Universitas Sumatera Utara


38

Gambar 3.7. Hasil Deteksi Wajah


3.2. Data

Data yang digunakan dalam penelitian ini adalah file citra digital. Faktor-faktor teknis
pada data berupa file citra yang akan diolah adalah sebagai berikut:
a. Pencahayaan
b. Jarak pengambilan gambar
c. Kualitas gambar
d. Dimensi file

Dalam penelitian ini, penulis menggunakan file citra dengan faktor yang
bervariasi guna mendapatkan file citra yang paling optimal bagi algoritma Viola-Jones.

3.3. Perancangan Sistem

Pada tahap perancangan sistem akan dilakukan perancangan dari sistem pendeteksian
wajah manusia antarmuka sistem yang akan dibangun.

3.3.1. Flowchart

Proses Pendeteksian Citra Wajah Manusia dengan metode Viola-Jones menggunakan


OpenCV dapat dilihat seperti pada Gambar 3.8.

Universitas Sumatera Utara


39

Mulai Input Citra Resize Citra

Baca piksel citra

Konversikan nilai RGB citra  Grayscale

Siapkan sub image

Pengklasifikasian Run Deteksi manusia


FaceHaarCascade.xml

Melewati seluruh tingkatan


Sliding sub image (Cascadeclassifier) ?

Tidak
Ya
Tidak
Jumlah=Jumlah+1

Sub image akhir ?


Buat segi empat pada sub image

Ya
Tidak
Turunkan scala
Capai skala minimum (Citra integral)?
citra masukan

Ya
Tidak
Segi empat > 1 ?

Ya

Merge

Jumlah manusia

Selesai

Gambar 3.8. Proses Pendeteksian Citra Manusia

Universitas Sumatera Utara


40

Berdasarkan Gambar 3.8, proses deteksi manusia dimulai saat penginputan


citra dimensi 1200x800 dalam format RGB (true color). Pemrosesan awal berupa
pengubahan format true color menjadi grayscale. Proses peninjauan (scanning)
menggunakan pergeseran windows (sliding windows) yang mulai dari kiri atas sampai
dengan kanan bawah. Proses penskalaan bertujuan untuk mendeteksi obyek dengan
berbagai ukuran. Proses scan dilanjutkan dengan penurunan ukuran citra masukan
sesuai dengan skala yang ditentukan. Proses deteksi akan berakhir jika ukuran citra
kurang dari ukuran sub image. Jika terdapat keberadaan manusia dilakukan penandaan
wajah berupa kotak.
Proses pengenalan adalah sebagai berikut:
1. Input citra digital manusia berformat *.jpg.
2. Kemudian dilakukan proses pemrosesan awal yang meliputi, normalisasi
ukuran citra serta konversi citra RGB ke grayscale.
3. Kemudian dilakukan proses deteksi dengan metode Viola Jones sehingga
didapatkan klasifikasi dari gambar tersebut.
4. Proses pengenalan wajah manusia dengan menghitung jarak antara fitur yang
ada dalam data dan fitur objek yang baru. Jarak yang didapat di cari yang
terkecil untuk identifikasi.
5. Jika pada citra terdeteksi adanya objek manusia, maka hitung counter akhir.

3.3.2. Pemrosesan Awal

Pada proses deteksi wajah manusia sekaligus langsung dilakukan pemrosesan awal
saat citra manusia dalam frame terdeteksi. Hal ini dilakukan untuk membuat software
yang realtime dan lebih efisien. Adapun proses awal yang dilakukan adalah sebagai
berikut:
1. Proses pendeteksian adanya citra manusia dalam gambar dengan detektor
manusia OpenCV dengan menggunakan sebuah metoda Viola-Jones.
2. Resizing, citra manusia yang diperoleh diseragamkan sehingga memiliki
ukuran 1200 x 800 piksel.
3. Citra manusia diubah kedalam grayscale sebelum dilakukan klasifikasi
(Cascade classifier).
4. Segmentasi, pemisahan citra latar dengan citra manusia.

Universitas Sumatera Utara


41

3.4. Rancangan Antarmuka

Dalam membangun Aplikasi Pendeteksi Wajah Manusia untuk Menghitung Jumlah


Manusia Menggunakan Metode Viola-Jones perlu adanya perancangan antar muka
yang berfungsi sebagai perantara sistem dengan pengguna (user interface). Dalam
perancangan interface diharapkan dapat tercipta kemudahan bagi pengguna (user
friendly) dalam mengoperasikan sistem ini. Rancangan tampilan yang akan bangun
adalah:
1. Merancang Menu Utama yang berfungsi sebagai tempat untuk menampilkan
Judul Tugas Akhir, gambar latar serta sub menu aplikasi.
2. Merancang program pengenalan manusia.
3. Merancang tampilan About, yang terdiri dari :
a. Tampilan judul tugas akhir
b. Tampilan profil penulis serta foto.
c. Tampilan logo sebagai identitas perguruan tinggi.
d. Tombol berfungsi sebagai tombol untuk keluar.
4. Merancang tampilan Help, yang terdiri dari :
1. Tampilan judul tugas akhir
2. Tampilan penjelasan singkat tentang aplikasi serta cara kerja sistem.
3. Tombol berfungsi sebagai tombol untuk keluar.

3.4.1. Rancangan Menu Utama

Rancangan Menu Utama merupakan tampilan yang muncul setelah pengguna


melakukan login. Pada rancangan ini terdapat judul aplikasi, gambar latar serta sub
menu antara lain Pengenalan, Help, About serta Keluar. Rancangan Menu Utama
terlihat seperti pada Gambar 3.9.

Universitas Sumatera Utara


42

Pengenalan Help About Exit

Dengan Load File

Dengan Capture Webcam

Aplikasi Pendeteksi Manusia untuk Menghitung Jumlah Manusia


Menggunakan Metode Viola-Jones

GAMBAR LATAR

Gambar 3.9. Rancangan Menu Utama

Keterangan :
Pada halaman menu utama yang terdapat gambar latar dan terdapat tampilan sub menu
pilihan aplikasi yang dapat diakses setelah pengguna berhasil melakukan otoritas
pengguna sub Menu pada menu Utama terdiri dari menu Pengenalan, Help, About
serta tombol Exit, yang berfungsi sebagai berikut:
1. Menu Pengenalan berfungsi untuk melakukan pengenalan manusia.
2. Menu Help berfungsi untuk menampilkan halaman bantuan.
3. Menu About berfungsi untuk menampilkan halaman keterangan.
4. Menu Exit berfungsi untuk keluar dari halaman menu utama.

3.4.2. Rancangan Pengenalan Dengan Load File

Rancangan Pengenalan berfungsi untuk melakukan pengenalan dan menghitung


jumlah manusia pada citra yang di-load dimana setiap objek akan diberi kotak sebagai
tanda objek telah dikenali. Rancangan Pengenalan dapat dilihat seperti pada Gambar
3.10.

Universitas Sumatera Utara


43

Nama File xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1

Size xxxxxxxxx 2 Dimensi citra xxxxxxxxx 3


Jumlah Manusia xxxxxxxxxxxxxxxxxxxxxxxxx 4 Grayscale Citra

Load Deteksi Clear Exit 10


5 6 7 8
Xxxx
Citra
Xxxx
Xxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx 9 Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx 8 Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxx
ProgressBar xxxxxxxxxxxxxxxxxxxxxx 11 Xxxx
xxxx
Gambar 3.10. Rancangan Pengenalan dengan Load File
Keterangan:
1. Label : berfungsi untuk menampilkan nama file citra yang di-load
2. Label : berfungsi untuk menampilkan ukuran file citra yang di-load
3. Label : berfungsi untuk menampilkan ukuran citra sesudah resize.
4. Label : berfungsi untuk menampilkan jumlah manusia yang terdeteksi.
5. Button : berfungsi untuk menampilkan citra manusia pada layar
6. Button : berfungsi untuk mengenali dan menghitung jumlah manusia
yang ada pada citra yang di-load
7. Button : berfungsi untuk membersihkan tampilan data hasil pengenalan
8. Button : berfungsi untuk menutup form
9. PictureBox : berfungsi untuk tempat menampilkan citra yang di-load
10. ListBox : berfungsi untuk tempat menampilkan nilai grayscale citra
yang di-load.
11. ProgressBar: berfungsi untuk menampilkan progress pengenalan citra.

3.4.3. Rancangan Pengenalan Dengan Capture Webcam


Rancangan Pengenalan Dengan Capture Webcam berfungsi untuk melakukan
pengenalan dan menghitung jumlah manusia pada citra yang di-capture webcam

Universitas Sumatera Utara


44

dimana setiap objek akan diberi kotak sebagai tanda objek telah dikenali. Rancangan
Pengenalan Dengan Capture Webcam dapat dilihat seperti pada Gambar 3.11.

Jumlah Manusia xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2

Start Capture Deteksi Clear Exit

3 4 5 6 7

Citra Streaming Webcam Grayscale Citra Citra Capture Webcam

Citra 8 Xxxx Citra 9


Xxxxxxxxxxxxxxxxxxxxxx Xxxx Xxxxxxxxxxxxxxxxxxxxxx 8
xxxxxxxxxxxxxxxxxxxxxx Xxxx xxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxx Xxxx xxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxx Xxxx xxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxx Xxxx xxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxx Xxxx xxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxx xxxx xxxxxxxxxxxxxxxxxxxxxx

ProgressBar xxxxxxxxxxxxxxxxxxxxxx 10

Gambar 3.11 Rancangan Pengenalan Dengan Capture Webcam


Keterangan:
1. Label : berfungsi untuk menampilkan jumlah manusia yang terdeteksi
serta waktu proses.
2. Button (Start) : berfungsi untuk mengaktifkan webcam (streaming video)
3. Button (Capture) : berfungsi untuk mengambil frame citra
4. Button (Deteksi) : berfungsi untuk mengenali dan menghitung jumlah manusia
yang ada pada citra yang di-capture
5. Button : berfungsi untuk membersihkan tampilan data hasil pengenalan
6. Button : berfungsi untuk menutup form
7. PictureBox : berfungsi untuk tempat menampilkan citra yang di-Streaming
webcam.
8. PictureBox : berfungsi untuk tempat menampilkan citra yang di-capture
webcam.
9. ListBox : berfungsi untuk tempat menampilkan nilai grayscale citra
yang di-capture.

Universitas Sumatera Utara


45

10. ProgressBar: berfungsi untuk menampilkan progress pengenalan citra.

3.4.4. Rancangan Help

Rancangan Help adalah rancangan sederhana yang terdiri dari objek Label-label serta
gambar. Tampilan ini dirancang untuk menampilkan informasi tentang persiapan awal
mengenai perangkat keras yang digunakan serta tata cara pengoperasian aplikasi yang
dijelaskan tahap demi tahap. Untuk lebih jelasnya rancangan Help dapat dilihat pada
Gambar 3.12.

APLIKASI PENDETEKSI WAJAH MANUSIA UNTUK MENGHITUNG


JUMLAH MANUSIA MENGGUNAKAN METODE VIOLA-JONES

Pengoperasian Sistem
XXXXXXXXXXXXX
XXXXXXXXXXXXX

Gambar 3.12. Rancangan Help

3.4.5. Rancangan About

Rancangan About adalah tampilan sederhana yang hanya memiliki satu tombol yaitu
tombol Quit. Rancangan ini berfungsi untuk menampilkan informasi tentang profil
penulis. Profil penulis meliputi biodata singkat penulis serta data-data akademik
berupa nama mahasiswa, Nomor Induk Mahasiswa. Untuk lebih jelasnya rancangan
About dapat dilihat pada Gambar 3.13.

APLIKASI PENDETEKSI WAJAH MANUSIA UNTUK


MENGHITUNG JUMLAH MANUSIA MENGGUNAKAN METODE
VIOLA-JONES

Logo
Kampus

Nama Penulis
NIM

Gambar 3.13. Rancangan About

Universitas Sumatera Utara


46

3.4.6. Rancangan Pengujian

Rancangan Hasil Pengujian Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung


Jumlah Manusia Menggunakan Metode Viola-Jones dapat dilihat pada Tabel 3.5.

Tabel 3.5. Rancangan Hasil Pengujian Deteksi Wajah Manusia dengan Load
Image

No Nama File Jumlah Jumlah Size Akurasi Error(%) Koreksi


manusia manusia (%) Visual
Real terdeteksi
1 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
2 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
3 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
4 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
5 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
6 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
7 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
8 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
9 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
10 xxxxxxxxxxxxxx xxx xxx xxx xx xx xx
Rata-rata xx xx xx

Keterangan:
Akurasi : (Jumlah Manusia Terdeteksi / Jumlah Manusia Real) x 100%
Error : Abs (Jumlah Manusia Real - Jumlah Manusia Terdeteksi)/Jumlah
Manusia Real x 100 %
Koreksi Visual : Jumlah bukan wajah manusia terdeteksi dalam tanda kotak

Universitas Sumatera Utara


47

Tabel 3.6. Rancangan Hasil Pengujian Deteksi Wajah Manusia dengan Capture
Webcam

No. Jumlah Jumlah Akurasi Error Koreksi


Manusia Manusia (%) (%) Visual
Real Terdeteksi
1. xxx xxx xx xx xx
2. xxx xxx xx xx xx
3. xxx xxx xx xx xx
4. xxx xxx xx xx xx
5. xxx xxx xx xx xx
6. xxx xxx xx xx xx
7. xxx xxx xx xx xx
8. xxx xxx xx xx xx
9. xxx xxx xx xx xx
10. xxx xxx xx xx xx
Rata-rata xx xx xx

Keterangan:
Akurasi : (Jumlah Manusia Terdeteksi / Jumlah Manusia Real) x 100%
Error : Abs (Jumlah Manusia Real - Jumlah Manusia Terdeteksi)/Jumlah
Manusia Real x 100 %
Koreksi Visual : Jumlah bukan wajah manusia terdeteksi dalam tanda kotak

Universitas Sumatera Utara


BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1.Implementasi Sistem

Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung Jumlah Manusia


Menggunakan Metode Viola-Jones adalah tampilan hasil rancangan dari penulisan
kode program dimulai dari program Menu Utama, Pengenalan, Help, About serta Exit.

4.1.1. Spesifikasi Perangkat Keras dan Lunak


Spesifikasi perangkat keras dan lunak yang di gunakan untuk membangun sistem ini
adalah sebagai berikut:
1. Processor Intel®CoreTM i3-2350M CPU @ 2.30 GHz.
2. Kapasitas harddisk 500GB
3. Memori RAM yang di gunakan 2.00 GB.
4. Sistem operasi yang di gunakan adalah Microsoft Windows 7 Ultimate.
5. Progam yang di gunakan : Microsoft Visual Studio 2012 Professional.
6. Library yang di gunakan : OpenCV 2.4.9.0

4.1.2. Tampilan Menu Utama

Tampilan Menu Utama berisi gambar latar serta tampilan menu. Tampilan Menu
terdiri dari menu Pengenalan, Help, About serta Exit yang dapat dilihat seperti pada
Gambar 4.1.

Universitas Sumatera Utara


49

Gambar 4.1 Tampilan Menu Utama

4.1.3. Tampilan Pengenalan Load File

Tampilan hasil Pengenalan berfungsi untuk melakukan deteksi wajah dengan inputan
file citra yang berformat JPG dengan ukuran 95.79 KB. Tampilan Pengenalan dapat
dilihat pada Gambar 4.2.

Gambar 4.2. Tampilan Pengenalan Load File

Pada Gambar 4.2 diatas terlihat hasil deteksi wajah dengan nama file tes.jpg yang
berukuran 95.79 KB. Gambar berisi dengan 32 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 30 wajah manusia dengan lama waktu deteksi 0.5 Detik. Jadi
akurasinya = (30/32) x 100 = 93%, error = (32-30)/32 x 100 = 6 % serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Universitas Sumatera Utara


50

4.1.4. Tampilan Pengenalan Capture Webcam

Tampilan hasil Pengenalan berfungsi untuk melakukan deteksi wajah dengan inputan
capture webcam yang berformat JPG dengan ukuran 26 KB. Tampilan Pengenalan
dapat dilihat pada Gambar 4.3

Gambar 4.3. Tampilan Pengenalan Capture Webcam

4.1.5. Tampilan Help

Tampilan Help berfungsi untuk menampilkan keterangan tentang cara pengoperasian


Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung Jumlah Manusia
Menggunakan Metode Viola-Jones.

4.1.6. Tampilan About

Tampilan About berfungsi untuk menampilkan keterangan tentang penulis skripsi


Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung Jumlah Manusia
Menggunakan Metode Viola-Jones.

4.2. Pengujian Sistem

Pengujian sistem adalah pengumpulan data hasil deteksi wajah menggunakan metode
Viola-Jones. Tampilan Hasil Pengujian adalah sebagai berikut:

4.2.1. Tampilan Hasil Pengujian Load File

Tampilan Hasil Pengujian Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung


Jumlah Manusia Menggunakan Metode Viola-Jones dapat dilihat sebagai berikut:

Universitas Sumatera Utara


51

Percobaan 1.

Gambar 4.4. Tampilan Percobaan 1

Pada Gambar 4.4 diatas terlihat hasil deteksi wajah dengan nama file Sun-1.jpg yang
berukuran 1312.34 KB. Gambar berisi dengan 58 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 64 wajah manusia dengan lama waktu deteksi 2.3 Detik. Jadi
akurasinya = (58/64) x 100 = 90%, error = (64-58)/64 x 100 = 10 % serta koreksi
visual (posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 16 buah.

Percobaan 2.

Gambar 4.5. Tampilan Percobaan 2

Universitas Sumatera Utara


52

Pada Gambar 4.5 diatas terlihat hasil deteksi wajah dengan nama file Sun-2.jpg yang
berukuran 1678.22 KB. Gambar berisi dengan 88 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 90 wajah manusia dengan lama waktu deteksi 2.4 Detik. Jadi
akurasinya (88/90) x 100 = 97%, error = (88-90)/88 x 100 = 2 % serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 19 buah.

Percobaan 3.

Gambar 4.6. Tampilan Percobaan 3

Pada Gambar 4.6 diatas terlihat hasil deteksi wajah dengan nama file Sun-3.jpg yang
berukuran 7413.97 KB. Gambar berisi dengan 79 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 75 wajah manusia dengan lama waktu deteksi 1.3 Detik. Jadi
akurasinya (75/79) x 100 = 94%, error = (79-75)/79 x 100 = 5 % serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 13 buah.

Universitas Sumatera Utara


53

Percobaan 4.

Gambar 4.7. Tampilan Percobaan 4

Pada Gambar 4.7 diatas terlihat hasil deteksi wajah dengan nama file Sun-4.jpg yang
berukuran 59.17 KB. Gambar berisi dengan 34 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 29 wajah manusia dengan lama waktu deteksi 0.3 Detik. Jadi
akurasinya (29/34) x 100 = 85%, error = (34-29)/34 x 100 = 14 % serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 1 buah.

Percobaan 5.

Gambar 4.8. Tampilan Percobaan 5

Universitas Sumatera Utara


54

Pada Gambar 4.8 diatas terlihat hasil deteksi wajah dengan nama file Sun-5.jpg yang
berukuran 69 KB. Gambar berisi dengan 50 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 37 wajah manusia dengan lama waktu deteksi 0.6 Detik. Jadi akurasinya
(37/50) x 100 = 74%, error = (50-37)/50 x 100 = 26 % serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Percobaan 6.

Gambar 4.9. Tampilan Percobaan 6

Pada Gambar 4.9 diatas terlihat hasil deteksi wajah dengan nama file 6.jpg yang
berukuran 517.72 KB. Gambar berisi dengan 437 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 319 wajah manusia dengan lama waktu deteksi 3.4 Detik. Jadi
akurasinya (319/437) x 100 = 72%, error = (437-319)/437 x 100 = 27 % serta koreksi
visual (posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 10 buah.

Universitas Sumatera Utara


55

Percobaan 7.

Gambar 4.10. Tampilan Percobaan 7


Pada Gambar 4.10 diatas terlihat hasil deteksi wajah dengan nama file 9.jpg yang
berukuran 2461.78 KB. Gambar berisi dengan 95wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 80 wajah manusia dengan lama waktu deteksi 2.3 Detik. Jadi
akurasinya (80/95) x 100 = 84%, error = (95-80)/95 x 100 = 15% serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 8 buah.

Percobaan 8.

Gambar 4.11. Tampilan Percobaan 8

Universitas Sumatera Utara


56

Pada Gambar 4.11 diatas terlihat hasil deteksi wajah dengan nama file Sun-8.jpg yang
berukuran 153.35 KB. Gambar berisi dengan 51 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 39 wajah manusia dengan lama waktu deteksi 0.9 Detik. Jadi
akurasinya (39/51) x 100 = 76%, error = (51-39)/51 x 100 = 23 % serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 2 buah.

Percobaan 9.

Gambar 4.12. Tampilan Percobaan 9

Pada Gambar 4.12 diatas terlihat hasil deteksi wajah dengan nama file Sun-9.jpg yang
berukuran 66.33 KB. Gambar berisi dengan 43 wajah manusia, hasil yang terdeteksi
oleh aplikasi ada 36 wajah manusia dengan lama waktu deteksi 0.5 Detik. Jadi
akurasinya (36/43) x 100 = 83%, error = (43-36)/43 x 100 = 16% serta koreksi visual
(posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 2 buah.

Universitas Sumatera Utara


57

Percobaan 10.

Gambar 4.13. Tampilan Percobaan 10

Pada Gambar 4.13 diatas terlihat hasil deteksi wajah dengan nama file Sun-10.jpg
yang berukuran 63.5 KB. Gambar berisi dengan 28 wajah manusia, hasil yang
terdeteksi oleh aplikasi ada 30 wajah manusia dengan lama waktu deteksi 0.4 Detik.
Jadi akurasinya (30/28) x 100 = 93%, error = (28-30)/28 x 100 = 7% serta koreksi
visual (posisi kotak yang salah yang ditunjuk dengan panah warna kuning) = 2 buah.

Selanjutnya hasil dari 10 percobaan dimasukkan pada tabel 4.1.


Tabel 4.1. Tampilan Hasil Pengujian Deteksi Wajah Manusia

No. Nama File Jumlah Jumlah Size Akurasi Error(%) Koreksi


manusia manusia (KB) Visual
Real terdeteksi
1 Sun-1.jpg 58 64 1313 90 10 16
2 Sun-2.jpg 88 90 1679 97 2 19

3 Sun-3.jpg 79 75 7414 94 5 13

4 Sun-4.jpg 34 29 59.17 85 14 1

5 Sun-5.jpg 50 37 69 74 26 0

6 6.jpg 437 319 517.72 72 27 10

Universitas Sumatera Utara


58

Tabel 4.2. Tampilan Hasil Pengujian Deteksi Manusia (Lanjutan)


No. Nama File Jumlah Jumlah Size Akurasi Error Koreksi
Manusia Manusia (KB) (%) (%) Visual
Real Terdeteksi
7 9.jpg 95 80 2461.78 84 15 8

8 Sun-8.jpg 51 39 153.35 76 23 2

9 Sun-9.jpg 43 36 66.33 83 16 2

10 Sun-10.jpg 28 30 63.5 93 7 2

Rata-rata 84.8 14.5 7.3

Dari Tabel hasil pengujian di atas menggunakan Load File aplikasi dapat mendeteksi
wajah manusia dengan rata-rata akurasi 84.8%, error 14.5%, dan Koreksi Visual
7.3%.

4.2.2. Tampilan Hasil Pengujian Capture Webcam


Tampilan Hasil Pengujian Aplikasi Pendeteksi Wajah Manusia Untuk Menghitung
Jumlah Manusia Menggunakan Metode Viola-Jones dapat dilihat sebagai berikut:

Percobaan 1.

Gambar 4.14. Tampilan Percobaan 1


Pada Gambar 4.14 diatas berisi dengan 2 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 2 wajah manusia dengan lama waktu deteksi 0.3 Detik. Jadi akurasinya

Universitas Sumatera Utara


59

(2/2) x 100 = 100%, error = (0-0)/0 x 100 = 0% serta koreksi visual (posisi kotak yang
salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Percobaan 2.

Gambar 4.15. Tampilan Percobaan 2


Pada Gambar 4.15 diatas berisi dengan 3 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 4 wajah manusia dengan lama waktu deteksi 0.3 Detik. Jadi akurasinya
(3/4) x 100 = 75%, error = (4-3)/4 x 100 = 25% serta koreksi visual (posisi kotak yang
salah yang ditunjuk dengan panah warna kuning) = 1 buah.

Percobaan 3.

Gambar 4.16. Tampilan Percobaan 3


Pada Gambar 4.16 diatas berisi dengan 1 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 4 wajah manusia dengan lama waktu deteksi 0.2 Detik. Jadi akurasinya
(1/1) x 100 = 100%, error = (1-1)/1 x 100 = 0% serta koreksi visual (posisi kotak yang
salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Universitas Sumatera Utara


60

Percobaan 4.

Gambar 4.17. Tampilan Percobaan 4


Pada Gambar 4.17 diatas berisi dengan 15 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 14 wajah manusia dengan lama waktu deteksi 2.1 Detik. Jadi akurasinya
(14/15) x 100 = 93%, error = (15-14)/15 x 100 = 6% serta koreksi visual (posisi kotak
yang salah yang ditunjuk dengan panah warna kuning) = 4 buah.

Percobaan 5.

Gambar 4.18. Tampilan Percobaan 5


Pada Gambar 4.18 diatas berisi dengan 12 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 10 wajah manusia dengan lama waktu deteksi 1.5 Detik. Jadi akurasinya
(10/12) x 100 = 83%, error = (12-10)/12 x 100 = 16% serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 3 buah.

Universitas Sumatera Utara


61

Percobaan 6.

Gambar 4.19. Tampilan Percobaan 6


Pada Gambar 4.19 diatas berisi dengan 38 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 29 wajah manusia dengan lama waktu deteksi 1.8 Detik. Jadi akurasinya
(29/38) x 100 = 76%, error = (38-29)/38 x 100 = 23% serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 3 buah.

Percobaan 7.

Gambar 4.20. Tampilan Percobaan 7


Pada Gambar 4.20 diatas berisi dengan 10 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 11 wajah manusia dengan lama waktu deteksi 1.1 Detik. Jadi akurasinya
(10/11) x 100 = 90%, error = (10-11)/10 x 100 = 10% serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 2 buah.

Universitas Sumatera Utara


62

Percobaan 8.

Gambar 4.21. Tampilan Percobaan 8


Pada Gambar 4.21 diatas berisi dengan 8 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 5 wajah manusia dengan lama waktu deteksi 0.2 Detik. Jadi akurasinya
(5/8) x 100 = 62%, error = (8-5)/8 x 100 = 37% serta koreksi visual (posisi kotak yang
salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Percobaan 9.

Gambar 4.22. Tampilan Percobaan 9


Pada Gambar 4.22 diatas berisi dengan 17 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 14 wajah manusia dengan lama waktu deteksi 0.6 Detik. Jadi akurasinya
(14/17) x 100 = 82%, error = (17-14)/17 x 100 = 17% serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Universitas Sumatera Utara


63

Percobaan 10.

Gambar 4.23. Tampilan Percobaan 10


Pada Gambar 4.23 diatas berisi dengan 19 wajah manusia, hasil yang terdeteksi oleh
aplikasi ada 13 wajah manusia dengan lama waktu deteksi 0.5 Detik. Jadi akurasinya
(13/19) x 100 = 68%, error = (19-13)/19 x 100 = 31% serta koreksi visual (posisi
kotak yang salah yang ditunjuk dengan panah warna kuning) = 0 buah.

Selanjutnya hasil dari 10 percobaan dimasukkan pada tabel 4.2.


Tabel 4.3. Hasil Pengujian Deteksi Wajah Manusia Capture Webcam
No. Jumlah Jumlah Akurasi (%) Error (%) Koreksi Visual
Manusia Real Manusia
Terdeteksi
1. 2 2 100 0 0
2. 3 4 75 25 1
3. 1 1 100 0 0
4. 15 14 93 6 4
5. 12 10 83 16 3
6. 38 29 76 23 3
7. 10 11 90 10 2
8. 8 5 62 37 0
9. 17 14 82 17 0
10. 19 13 68 31 0
Rata-rata 82.9 16.5 1.3
Dari Tabel hasil pengujian di atas menggunakan Capture Webcam aplikasi dapat
mendeteksi wajah manusia dengan rata-rata akurasi 82.9%, error 16.5%, dan Koreksi
Visual 1.3%.

Universitas Sumatera Utara


BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah merancang dan mengaplikasikan perangkat lunak Mendeteksi Wajah dan


Menghitung Jumlah Manusia Menggunakan Metode Viola-Jones, maka diperoleh
hasil pengujian adalah sebagai berikut:

1. Aplikasi dapat melakukan deteksi wajah manusia pada file citra digital dan
capture.
2. Metode Viola-Jones sangat cocok digunakan untuk melakukan pendeteksian
objek karena memiliki akurasi pendeteksian yang baik dan waktu akurasi yang
cepat.
3. Aplikasi ini dapat mendeteksi wajah manusia menggunakan Load File dengan
rata-rata akurasi 84.8%, error 14.5%, dan Koreksi Visual 7.3%. Dengan waktu
pendeteksian sekitar 0.3 detik sampai dengan 4 detik. Tergantung dimensi dari
file citra. Jika semakin besar dimensi maka waktu pendeteksian semakin lama.
4. Aplikasi ini dapat mendeteksi wajah manusia menggunakan Capture Webcam
dengan rata-rata akurasi 82.9%, error 16.5%, dan koreksi visual 1.3%. Dengan
waktu pendeteksian sekitar 0.2 detik sampai dengan 2 detik.

5.2 Saran

Adapun saran-saran yang untuk penelitian maupun pengembangan berikutnya adalah:


1. Membandingkan hasil deteksi dengan menggunakan metode lainnya antara
lain metode jaringan saraf tiruan maupun genetika.
2. Melakukan deteksi wajah dengan tingkat pencahayaan minimal atau kondisi
noise.

Universitas Sumatera Utara


65

DAFTAR PUSTAKA

Al-Fatta, H. 2009. Rekayasa Sistem Pengenalan Wajah. Yogyakarta: Penerbit


ANDI.

Andik. 2009. Image Processing menggunakan Delphi.


https://andyq3lectra.wordpress.com/2009/11/30/image-processing-
menggunakan-delphi-1a/. (22 Juni 2015).

Bradski, G. & Kaehler, A.2008. Learning OpenCV, First Edition. Published by


O’Reilly Media, Inc., 1005 Gravenste in Highway North, Sebastopol,
CA 95472.

Dwiprasetyo, J, Hariadi, M. 2012. Pengenalan Wajah Dan Komputer Vision.


Seminar Nasional Teknologi Informasi & Komunikasi Terapan 2012.
Semantik 2012 Semarang, 23 Juni 2012.

Irianto, K. D. 2010. Pendeteksi Gerak Berbasis Kamera Menggunakan Open CV


Pada Ruangan. Jurnal Ilmiah KomuniTi,Vol. 2, No. 1, Juni 2010.
Universitas Muhammadiyah Surakarta.

Kumaseh, M. R., Latumakulita, L. & Nainggolan, N. 2011. Segmentasi Citra


Digital Ikan Menggunakan Metode Thresholding. Jurnal Program Studi
Matematika FMIPA Universitas Sam Ratulangi. Manado.

Lienhart, R dan Maydt, J. 2002. An Extended Set of Haar-Like Features for Rapid.
IEEE ICIP (1):900-903.

Putra, D. 2010. Pengolahan Citra Digital.Yogyakarta. Penerbit: ANDI.

Rachmad, A. 2008. Pengolahan Citra Digital Menggunakan Teknik Filtering


Adaptive Noise Removal Pada Gambar Bernoise. Jurnal ISBN : 978-
979-3980-15-7 Yogyakarta, 22 November 2008.

Robin, 2007, Sistem Pengolahan Citra dan Deteksi wajah pada Sistem Pengenalan
Wajah, Erlangga, Jakarta.

Robin, 2015. Utechzone Machine Vision Prize (Online)


http://robinhsieh.com/?p=156 (22 Juni 2015).

Santi, R. C. N, 2011. Mengubah Citra Berwarna Menjadi GrayScale dan Citra


biner. Jurnal Teknologi Informasi DINAMIK Volume 16, No.1, Januari
2011. Fakultas Teknologi Informasi, Universitas Stikubank Semarang.

Universitas Sumatera Utara


66

Santoso H. & Harjoko A, .2013. Haar Cascade Classifier dan Algoritma Adaboost
Untuk Deteksi Banyak Wajah Dalam Ruang Kelas. Jurnal Teknologi
Vol. 6 No. 2 tahun 2013.

Sianturi, J. 2014. Sistem Pendeteksian Manusia untuk Keamanan Ruangan


Menggunakan Viola-Jones. Jurnal Program Studi Teknologi Informasi
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatra
Utara. Medan.

Setiawan, I. 2014. Aplikasi Security Camera Untuk Mendeteksi Wajah


Menggunakan Opencv. Jurnal Program Studi Teknologi Informasi
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatra
Utara. Medan.

.
Sutoyo. T. 2009. Teori Pengolahan citra digital, Yogyakarta. Penerbit: ANDI.

Triatmoko, A. H. , Pramono, S. H. & Dachlan, H. S. 2014. Penggunaan Metode Viola-


Jones dan Algoritma Eigen Eyes dalam Sistem Kehadiran Pegawai.
Jurnal EECCIS Vol. 8, No. 1, Juni 2014.

Viola, M. J. P., 2001.Rapid object detection using a boosted cascade of simple


feature, Accepted Conference on Computer Vision and Pattern
Recognition.

Viola, P dan Jones, M. 2004. Robust Real-Time Detection. International Journal


of Computer Vision 57(2):137-154

Universitas Sumatera Utara

Anda mungkin juga menyukai