• Tidak ada hasil yang ditemukan

Aplikasi Pendeteksian Wajah Manusia untuk Menghitung Jumlah Manusia Menggunakan Metode Viola-Jones

N/A
N/A
Protected

Academic year: 2016

Membagikan "Aplikasi Pendeteksian Wajah Manusia untuk Menghitung Jumlah Manusia Menggunakan Metode Viola-Jones"

Copied!
81
0
0

Teks penuh

(1)

SKRIPSI

MUHAMMAD SANTANA

091402097

PROGRAM STUDI TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

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

(3)

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,

(4)

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

(5)

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.

(6)

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,

(7)

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%.

(8)

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

(9)

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

(10)

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

(11)

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

(12)

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 digunakandalam 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

(13)

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

(14)

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,

(15)

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%.

(16)

PENDAHULUAN

1.1Latar 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

(17)

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.2Rumusan 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.3Batasan 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

(18)

1.4Tujuan 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.5Manfaat 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.6Metodologi 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

(19)

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

(20)

LANDASAN TEORI

2.1. Sistem Biometrika

2.1.1. Pengertian Sistem Biometrika

(21)

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):

(22)

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.

(23)

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-rectanglefeature

c. Tipe four-rectanglefeature

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.

(24)

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’ ≤ yi(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:

Hj (x) = { , � � <�

, � � (2.3)

Keterangan :

Hj(x) = adalah klasifikasi lemah pj = adalah parity ke j qj = adalah threshold ke j

(25)

Langkah-langkah untuk mendapatkan sebuah classifier kuat dinyatakan dalam suatu

Menormalkan bobot sehingga wt adalah distribusi probabilitas

Wt,I  �,

∑ =� ��,

(2.4)

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�− (2.6)

Dimana

β

t

=

є�

−є�

(2.7)

Didapatkan sebuah Classifier kuat yaitu

Hj (x) = { ,∑ ∝�ℎ� ≥ ∑ ∝�

(26)

True True True

….

False False False

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

Sub Image Object

Non Object

(27)

(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)

(28)

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

(29)

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/keyboardcontrol, scrollbar) 10.Image Labelling (line, conic, polygon, test drawing)

2.4. Pengolahan Citra

2.4.1. Definisi Pengolahan Citra Digital

(30)

7

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 :

f(x,y)=[

� , � , � , −

� , � , −

� − , � − , � − , −

] (2.10)

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.

(31)

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)

(32)

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)

(33)

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

Basis Pengetahuan

Gambar 2.11. Langkah-langkah pengolahan citra digital (Sutoyo, 2009)

Secara umum, langkah-langkah pengolahan citra digital sebagai berikut : 1) Akuisi citra

(34)

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

(35)

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.

(36)

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) =

, + , + ,

(37)

Berikut gambar contoh proses perhitungan konversi citra RGB menjadi grayscale.

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).

(38)

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:

g(x,y) ={ � � � , ≥ �

� � � , < �} (2.12)

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.

(39)

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 :

, =

{

+ √� {� , − � } � � � , >

− √� {� , − � } � � � , <

(2.22)

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

(40)

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).

(41)

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:

� = − − �

= (2.23)

dimana :

μ = nilai rata-rata, yang dapat dihitung dengan rumus sebagai berikut :

� = −

= (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.

(42)

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)

(43)

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.

(44)

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

Viola-Jones Akurasi pendeteksian yang diperoleh mencapai 86,88%. Posisi objek juga sangat berpengaruh terhadap keakuratan pendeteksian. Posisi objek yang terbaik adalah saat objek berada di depan kamera atau

(45)

Tabel 2.2. Penelitian Terdahulu (Lanjutan) pada kondisi di atas terdeteksi dengan baik. deteksi objek wajah, hal ini dapat diminimalisir dengan cara meningkatkan

(46)

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

Gambar 3.1. Arsitektur Umum Deteksi Wajah dan Menghitung Manusia

Input File Citra Resize Citra

Grayscale

Fitur Haar

Citra Integral

Cascade of Classifier

Wajah manusia/Bukan

Hitung Jumlah Wajah Manusia

Pra-process

Viola-Jones

(47)

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

(48)

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.

<Header> <data bitmap>

1111000010110100111101111100001101011010010011011011 01101011010011110001100100001011111011111000

100101001111011111110001

1001000010010100100000011111000010110110111100011100 01001000010010110001

Piksel 1 Piksel 2

(49)

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:

f(0,0) = + + = 667/3 = 222

f(0,1) = + + = 660/3 = 220

f(0,2) = + + = 655/3 = 218

f(0,3) = + + = 649/3 = 216

f(0,4) = + + = 640/3 = 213

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

(50)

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)

(51)

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

(52)

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.

(53)

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

(54)

Gambar 3.8. Proses Pendeteksian Citra Manusia

Mulai

Konversikan nilai RGB citra  Grayscale

Selesai

Buat segi empat pada sub image Sub image akhir ?

Capai skala minimum (Citra integral)?

(55)

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).

(56)

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

(57)

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.

Aplikasi Pendeteksi Manusia untuk Menghitung Jumlah Manusia Menggunakan Metode Viola-Jones

Help About Exit

Pengenalan

GAMBAR LATAR

Dengan Load File

Gambar

Gambar 2.14. Proses Pemisahan, (a) Gambar Asli, (b) Hasil Segmentasi
Tabel 2.2. Penelitian Terdahulu (Lanjutan)
Gambar 3.1. Arsitektur Umum Deteksi Wajah dan Menghitung Manusia
Gambar 3.2. Citra Wajah Manusia
+7

Referensi

Dokumen terkait

Kelompok Kerja 1 Unit Layanan Pengadaan Kantor Pusat Direktorat Jenderal Bea dan Cukai Tahun Anggaran 2016 akan melaksanakan Pemilihan Langsung dengan pascakualifikasi untuk

Berdasarkan Uji t yang telah dilakukan, maka hipotesis 2 yang menyatakan bahwa terdapat pengaruh parsial yang signifikan antara Penanaman Modal Asing (PMA) terhadap

Pada aplikasi lain, sering digunakan untuk daya kumparan dari satu atau lebih relay, yang memungkinkan tegangan yang lebih tinggi atau arus yang lebih kuat, dikontrol

[r]

Belajar Kelompok dilakukan pada saat pembelajaran kelompok, ada beberapa peserta didik yang mengalami kesulitan yang sama, sehingga bisa dilakukan bimbingan

Sebelum dilakukan proses pelapisan krom, logam ditreatmen atau dilakukan pengerjaan polishing ( amril, selep, polish ) yang mana tujuan dari pekerjaan itu

Bagian pembukuan mencocokan berkas-berkas tersebut de, ngan surat pesanan yang diterimanya kemudian mencatat dalam buku jurnal dan kartu hutang*. Serkas-berkas

Intervensi yang paling utama dalam diagnosa Ketidakefektifan perfusi jaringan perifer adalah tindakan Konservatif yaitu non pembedahan dengan memberikan traksi yaitu