• Tidak ada hasil yang ditemukan

TUGAS AKHIR DETEKSI WAJAH DENGAN METODE VIOLA JONES PADA OPENCV MENGGUNAKAN PEMROGRAMAN PYTHON

N/A
N/A
Protected

Academic year: 2021

Membagikan "TUGAS AKHIR DETEKSI WAJAH DENGAN METODE VIOLA JONES PADA OPENCV MENGGUNAKAN PEMROGRAMAN PYTHON"

Copied!
15
0
0

Teks penuh

(1)

TUGAS AKHIR

DETEKSI WAJAH DENGAN METODE VIOLA JONES

PADA OPENCV

MENGGUNAKAN PEMROGRAMAN PYTHON

Disusun untuk Memenuhi Tugas dan Syarat-syarat Guna Memperoleh Gelar Sarjana Strata Satu Jurusan Teknik Elektro Fakultas Teknik

Universitas Muhammadiyah Surakarta

Disusun Oleh: IMAM NURVIYANTO

D 400 080 019

JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

UNIVERSITAS MUHAMMADIYAH SURAKARTA

(2)
(3)
(4)

KATA PENGANTAR

Alhamdulillah, segala puji syukur penulis panjatkan kehadirat Allah SWT atas segala rahmat dan hidayah-Nya. Atas izin-Nya pula, maka penulis dapat menyelesaikan Tugas Akhir yang berjudul “Deteksi Wajah Dengan Metode

Viola Jones Pada OpenCV Menggunakan Pemrograman Python”.

Tugas Akhir ini dibuat untuk memenuhi persyaratan mendapatkan gelar Sarjana (S1) pada Jurusan Teknik Elektro Fakultas Teknik Universitas Muhammadiyah Surakarta (UMS)\.

Penulisan Tugas Akhir ini tidak akan terwujud tanpa adanya bantuan dari pihak lain\. Oleh karena itu, dalam kesempatan ini penulis menyampaikan rasa terima kasih yang sangat dalam kepada pihak-pihak yang telah membantu dan membimbing selama pelaksanaan dan penyelesaian Tugas Akhir ini, yaitu kepada: 1\. Ibu Ratnasari Nur R., S\.T., M\.T., selaku Dosen Pembimbing I yang telah

banyak memberikan pengarahan dan motivasi yang besar kepada penulis sehingga dapat menyelesaikan Tugas Akhir ini.

2. Bapak Dedi Ary Prasetya, S\.T., selaku Dosen Pembimbing II atas segala kesabaran dan waktu yang diluangkan untuk membimbing penulis dalam menyelesaikan Tugas Akhir ini.

(5)
(6)

MOTTO

“Dan (ingatlah) di waktu Tuhan kalian memperingatkan. Jika kalian bersyukur, 

niscaya   Aku   akan   menambah   nikmati­Ku   kepada   kalian;   dan   jika   kalian 

mengingkarinya, maka azab­Ku amat berat sekali".

(Al­Qur'an, Surat Ibrahim: 7)

"Dan bahwasanya seorang manusia tiada memperoleh selain dari apa yang telah 

diusahakannya".

(Al­Qur'an, Surat An­Najm: 39)

“Raihlah ilmu, dan untuk meraih ilmu belajarlah untuk tenang dan sabar".

(Khalifah ‘Umar)

“Berusahalah untuk tidak menjadi manusia yang berhasil tapi berusahalah menjadi 

manusia yang berguna".

(Albert Einstein)

“Tekad, tanggung jawab dan keseriusan akan mengubah derajat mereka dari nobody 

menjadi somebody”.

(an

onym)

(7)

PERSEMBAHAN

Maha Suci Allah, Tiada Tuhan Selain Allah, Tiada daya upaya dan tiada kekuatan kecuali dengan pertolongan Allah. Alhamdulillah, dengan Rahmat dan KemurahanMu ya Allah, akhirnya penulis bisa menyelesaikan Tugas Akhir ini. Tawa dan tangis, sedih dan gembira, kecewa dan bahagia, datang dan pergi, silih berganti, semuanya terangkum bab demi bab dalam empat tahun terakhir.

Tugas Akhir ini penulis persembahkan kepada:

1. Ayah dan Ibu tersayang, yang telah membesarkanku, mendidik dan mengajariku, bersabar atas sikapku dan banyak hal yang hanya Allah SWT yang bisa membalasnya. Semoga Allah SWT senantiasa melimpahkan Rahmat, Karunia dan HidayahNya kepada Ayah dan Ibuku tersayang.

2. Adik dan ponakanku tersayang, akhirnya aku lulus juga.

3. Rekan-rekan ”Purwoko, Ari, Dedy, Rizqianto, Nurruzzaman, Sandyarjo, Coco” dan semuanya yang belum kesebut. You’ll never walk alone, kisah kita tak akan pernah lekang oleh waktu.

4. Teman-teman Elektro angkatan 2008, kakak dan adik tingkat dimanapun kalian berada, tanggung jawab pada orang tua sudah kita penuhi, inilah awal dari segalanya, saatnya kita berkarya untuk orang-orang yang ada di sekitar kita. Bagi yang belum lulus, cepet nyusul ya, Semoga apa yang kita lakukan senantiasa diberkahi Allah SWT. AMIN

(8)

DAFTAR KONTRIBUSI

♽ Judul Tugas Akhir ini didapat setelah konsultasi dengan Bp. Dedi Ary Prasetya, S.T. Awalnya, penulis mengajukan bahwa ingin membuat aplikasi sederhana dengan menggunakan bahasa Python, namun beliau memberi saran kalau ingin membuat Tugas Akhir dengan bahasa Python, sebaiknya berhubungan dengan computer vision. Kemudian penulis mencari referensi di

internet dengan kata kunci “Python” dan “computer vision”. Muncullah

beberapa hasil antara lain yang berhubungan dengan: game, deteksi objek, dan pengenalan objek. Akhirnya, penulis mengerucutkan untuk memilih deteksi objek. Sudah banyak peneliti yang mengangkat tema ini, namun bahasa pemrograman yang mereka gunakan bukanlah Python, sehingga jelas perbedaan antara yang diangkat penulis dengan peneliti sebelumnya.

♽ Sistem deteksi wajah menggunakan Python ini tidak murni dari hasil pemikiran penulis sendiri, melainkan mereferensi dari beberapa sumber yang didapat dari internet. Kemudian penulis pelajari, analisis, dan modifikasi sendiri, sehingga jadilah sistem deteksi wajah yang berbeda dari sumbernya. ♽ Pendeteksian wajah ini membutuhkan librari Open Computer Vision

(OpenCV) sebagai pengolah citra, dan penulis menginstallnya sendiri di sistem operasi Slackware yang sudah di-bundle dengan bahasa pemrograman Python.

(9)
(10)

DAFTAR ISI

HALAMAN SAMPUL...i HALAMAN PERSETUJUAN...ii HALAMAN PENGESAHAN...iii KATA PENGANTAR...iv MOTTO...vi PERSEMBAHAN...vii DAFTAR KONTRIBUSI...viii DAFTAR ISI...x DAFTAR TABEL...xii DAFTAR GAMBAR...xiii ABSTRAKSI...xv BAB 1 PENDAHULUAN...1

1.1. Latar Belakang Masalah...1

1.2. Perumusan Masalah...2

1.3. Batasan Masalah...3

1.4. Tujuan Penelitian...3

1.5. Manfaat Penelitian...4

BAB 2 TINJAUAN PUSTAKA...5

2.1. Telaah Penelitian...5

2.2. Landasan Teori...7

BAB 3 METODE PENELITIAN...42

(11)

BAB 4 HASIL DAN PEMBAHASAN...50

4.1. Hasil dan Pembahasan Sistem Deteksi Wajah...50

4.2. Hasil dan Pembahasan Pengujian Sistem Deteksi Wajah...58

BAB 5 KESIMPULAN DAN SARAN...65

5.1. Kesimpulan...65

5.2. Saran...66

DAFTAR PUSTAKA...67

LAMPIRAN...68

(12)

DAFTAR TABEL

Tabel 2.1. Operator Bilangan...31

Tabel 2.2. Fungsi Bilangan...31

Tabel 2.3. Operator String...32

Tabel 2.4. Fungsi String...32

Tabel 2.5. Operator List...34

Tabel 2.6. Fungsi List...34

Tabel 2.7. Method Untuk Manipulasi List...35

Tabel 2.8. Operator Tuple...37

Tabel 2.9. Fungsi Tuple...37

Tabel 2.10. Operator Dictionary...38

Tabel 2.11. Fungsi Dictionary...39

Tabel 2.12. Method Dictionary...39

Tabel 3.1. Jadwal Pelaksaan Penelitian...42

(13)

DAFTAR GAMBAR

Gambar 2.1. Proses Akuisisi Citra ...7

Gambar 2.2. Proses Pengolahan Citra...8

Gambar 2.3. Proses Pengenalan Pola...11

Gambar 2.4. Proses Analisis Citra...11

Gambar 2.5. Macam-macam Fitur Haar...13

Gambar 2.6. Citra Integral...14

Gambar 2.7. Contoh Membuat Citra Integral...15

Gambar 2.8. Contoh Menghitung Citra Integral...15

Gambar 2.9. Perbandingan Perhitungan Nilai Fitur Haar...16

Gambar 2.10. Diagram Proses Cascade Classifier...18

Gambar 2.11. Fitur Haar Pertama Dalam Template...25

Gambar 2.12. Pohon Keputusan Dalam Template...25

Gambar 2.13. Fitur Haar Dalam Haarcascade_frontalface_alt.xml...26

Gambar 2.14. Stage 0 Pada Haarcascade_frontalface_alt.xml...26

Gambar 2.15. Stage 5 Pada Haarcascade_frontalface_alt.xml...27

Gambar 2.16. Boa Constructor V0.6.1...41

Gambar 3.1. Flowchart Penelitian...43

Gambar 3.2. Flowchart Viola Jones...46

Gambar 3.3. Flowchart Sistem Deteksi Wajah...46

Gambar 3.4. Perancangan Antarmuka Menu Utama...47

Gambar 3.5. Perancangan Antarmuka Deteksi Wajah...48

Gambar 4.1. Contoh Akuisisi Citra...50

Gambar 4.2. Contoh Grayscaling...51

Gambar 4.3. Contoh Resizing Untuk Memperkecil Citra...52

Gambar 4.4. Contoh Ekualisasi Histogram...53

Gambar 4.5. Contoh Scan Per-sub-window...53

Gambar 4.6. Contoh Resize Sub-window Menjadi 20x20...54

(14)

Gambar 4.7. Contoh Representasi Fitur Haar Pertama Dalam Template...54

Gambar 4.8. Seleksi Fitur Untuk Menyeleksi Sub-window...55

Gambar 4.9. Contoh Deskripsi Citra...56

Gambar 4.10. Contoh Pemberian Garis Pada Wajah...57

Gambar 4.11. Pengujian Berdasarkan Pencahayaan...58

Gambar 4.12. Pengujian Berdasarkan Jarak Wajah...59

Gambar 4.13. Pengujian Berdasarkan Kemiringan 0° (Frontal)...59

Gambar 4.14. Pengujian Berdasarkan Kemiringan...60

Gambar 4.15. Pengujian Berdasarkan Kemiringan...61

Gambar 4.16. Pengujian Berdasarkan Wajah Terhalang Objek Lain...61

Gambar 4.17. Pengujian Berdasarkan Wajah Terhalang Objek Lain...62

Gambar 4.18. Pengujian Berdasarkan Beberapa Wajah...63

Gambar 4.19. Pengujian Berdasarkan Objek Yang Menyerupai Wajah...63

(15)

ABSTRAKSI

Sistem pendeteksian dan pengenalan wajah semakin banyak. Walaupun semakin banyak, bukan berarti penelitian mengenai hal ini sudah selesai. Tuntutan akan efektifitas, baik kecepatan maupun tingkat keakuratan dalam sebuah sistem pendeteksian semakin diperhitungkan. Banyak dari beberapa sistem pendeteksian wajah menggunakan metode Viola Jones sebagai metode pendeteksi objek. Metode Viola Jones dikenal memiliki kecepatan dan keakuratan yang tinggi karena menggabungkan beberapa konsep (Haar Features, Integral Image,

AdaBoost, dan Cascade Classifier) menjadi sebuah metode utama untuk

mendeteksi objek.

Banyak dari sistem deteksi tersebut menggunakan C atau C++ sebagai bahasa pemrograman, dan OpenCV sebagai librari deteksi objek. Hal ini dikarenakan librari OpenCV menerapkan metode Viola Jones kedalam sistem librari deteksinya, sehingga memudahkan dalam pembuatan sistem.

Dalam Tugas Akhir ini, dibahas mengenai proses pendeteksian wajah dengan metode Viola Jones pada OpenCV, serta mengaplikasikannya kedalam sistem deteksi wajah sederhana dengan memanfaatkan OpenCV dan Python.

Python dipilih karena mempunyai struktur lebih sederhana dibanding

pemrograman lain. Setelah sistem selesai dibuat, dilakukan pengujian terhadap karakteristik wajah yang dapat dideteksi oleh sistem.

Setelah pengujian sistem, batasan jarak wajah yang dapat dideteksi antara ± 134 dan ± 21 cm dari kamera, batasan kecerahan antara ± 50 nilai mean maksimal gelap dan ± 200 nilai mean maksimal terang. Ketika dilakukan pengujian wajah manusia dalam keadaan frontal, sistem mampu mendeteksi dengan akurasi 100% dan waktu deteksi kurang dari 0.5 detik. Sedangkan ketika pengujian wajah manusia dalam keadaan non-frontal, kemiringan maksimal wajah yang dapat dideteksi sebesar ± 74°. Sistem dapat mendeteksi adanya beberapa wajah dalam suatu citra. Sistem juga dapat mendeteksi objek yang menyerupai wajah ketika objek tersebut memilki kontur yang sama dengan kontur wajah manusia (kontur wajah pada template), misalnya, wajah boneka dan topeng Hulk.

Kata Kunci: Deteksi Wajah, Viola Jones, Integral Image, Haar Features,

AdaBoost, Cascade Classifier, OpenCV, Python.

Referensi

Dokumen terkait

Selain itu dalam pengelolaan data masih menggunakan aplikasi web dari Direktorat Pendidikan Tinggi (Dikti), sehingga pengelolaan tidak sepenuhnya berada pada

Hal ini sejalan dengan Poincare (dalam Fischbein, 1987), mengatakan bahwa generalisasi yang dibangun secara induktif adalah salah satu kategori dasar intuisi. Dari

Ditinjau dari gender, kemampuan komunikasi matematis siswa kelas X SMA Negeri 6 Kediri berada pada kelompok sedang, tinggi, dan sangat tinggi setelah diajar

Berdasarkan hasil analisis data tersebut maka dapat disimpulkan bahwa hipotesis peneliti berbunyi “Terdapat perbedaan hasil belajar siswa melalui penggunaan model

mendapat pembelajaran matematika melalui pendekatan PMR lebih tinggi secara signifikan dibandingkan dengan siswa yang mendapat pembelajaran matematika melalui

Gambar 7.2 Siklus bilirubin darah, urobilinogen urine, dan stercobilinogen tinja pada keadaan normal. Bilirubin tak terkonjugasi 0,662 mg%, bilirubin terkonjugasi 0,352

Perbedaan dengan penelitian ini dengan penelitian yang akan disusun peneliti adalah penelitian ini lebih mengarah pada cara pola asuh orang tua pada anaknya yang

Manfaat penelitian ini dapat digunakan sebagai bahan referensi, bahan masukan Usaha Mikro Kecil dan Menengah (UMKM) dan pengetahuan bagi pemilik UMKM untuk