SISTEM DETEKSI EMOSI MARAH PADA PENGEMUDI MOBIL BERBASIS ANDROID TUGAS AKHIR Disusun dalam rangak memenuhi salah satu persyaratan Untuk menyelesaikan program Strata-Departemen Informatika Universitas Hasanuddin Makassar Disusun Oleh : MUH. ARYA SURYA PRAYOGA D421 13 034 DEPARTEMEN TEKNIK INFORMATIKA UNIVERSITAS HASANUDDIN MAKASSAR 2020
ABSTRAK Pertumbuhan jumlah kendaraan setiap tahunnya menunjukkan tingginya angka kebutuhan manusia terhadap moda transportasi. Pertumbuhan ini juga diimbangi dengan meningkatnya jumlah kecelakaan khususnya pada moda transportasi darat di Indonesia. Salah satu penyebab utama kecelakaan lalu lintas adalah karena Pengemudi yang marah dan agresif dapat meningkatkan resiko kecelakaan pada jalan raya. Kondisi ini menyebabkan hilangnya konsentrasi dari pengemudi. Sistem deteksi emosi marah pada pengemudi ini dibuat dalam platform smartphone android yang dimiliki oleh hampir seluruh lapisan masyarakat, dapat membantu masyarakat dan pemerintah dalam memberikan peringatan langsung pada pengendara mobil saat mengemudi dalam keadaan marah. Metode yang digunakan adalah Haar- Cascade Classifier untuk mendeteksi wajah pengemudi. Setelah wajah terdeteksi, system akan memberikan face landmarking pada wajah. Selanjutnya digunakan algoritma HoG dan SVM yang digunakan untuk membandingan setiap action unit yang ada pada wajah untuk pengambilan keputusan wajah marah. Pembuatan sistem menggunakan Android Studio dengan bahasa pemrograman Java, dan juga penggunaan Affectiva SDK yang berfungsi untuk mengefisiensikan sistem secara keseluruhan. Berdasarkan pengujian terhadap 6 responden, hasil akurasi sistem merekognisi wajah marah pada pengemudi mencapai 84.83% pada siang hari. Kata Kunci: Rekognisi Emosi Marah, Android Studio, Haar-Cascade Classifier, Affectiva. iii
KATA PENGANTAR Assalamu'alaikum Warahmatullahi Wabarakatuh. Segala puji dan syukur kami panjatkan ke hadirat Allah S.W.T Tuhan Yang Maha Esa yang dengan limpahan rahmat dan hidayah-Nya sehingga kami dapat menyelesaikan Laporan Skripsi ini dengan judul "Sistem Deteksi Emosi Marah Pada Pengemudi Mobil Berbasis Android". Diselesaikan sebagai salah satu syarat untuk memperoleh gelar sarjana Program Strata Satu Departemen Teknik Informatika Fakultas Teknik Universitas Hasanuddin. Kami meyadari bahwa dalam penyusunan Laporan Skripsi ini, kami banyak mendapatkan sumbangan pikiran serta bimbingan baik moral maupun materil dari berbagai pihak. Sehingga pada kesempatan ini kami menyampaikan ucapan terima kasih sedalam-dalamnya kepada: Tuhan Yang Maha Esa atas semua berkat, karunia serta pertolongan-Nya yang tiada batas , yang telah diberikan kepada kami di setiap langkah dalam pembuatan program hingga penulisan laporan skripsi ini. Orang tua penulis Taufik Arief Iskandar dan Nurcahaya, Nenek tercinta Sunari dan Sarina, saudara penulis Puput dan Inez, serta keluarga yang senantiasa memberikan kekuatan, inspirasi, motivasi, bimbingan moral, materi, kepercayaan dan kasih sayang yang tidak terbatas kepada kami. Bapak Dr. Indrabayu, S.T., M.T., M.Bus.Sys., selaku dosen Pembimbing I, yang telah banyak memberi bimbingan, inspirasi, motivasi, dan masukan yang bermanfaat kepada kami semua. iv
Bapak A. Ais Prayogi Alimuddin ST., M.Eng., selaku dosen Pembimbing II, yang telah banyak memberi keyakinan, perhatian, bimbingan, motivasi, dan masukan yang bermanfaat kepada kami semua. Bapak Dr. Amil Ahmad Ilham, S.T., M.IT., Bapak Dr. Eng. Muhammad Niswar, S.T., M.IT., dan Ibu Elly Warni, S.T., M.T., selaku dosen penguji yang telah memberikan saran sehingga laporan skripsi ini menjadi lebih baik. Bapak Dr. Amil Ahmad Ilham, S.T., M.IT., sebagai Ketua Departemen Informatika Fakultas Teknik Universitas Hasanuddin. Staf Program Studi Teknik Informatika Universitas Hasanuddin. Teman-teman, kakak-kakak, adik-adik AIMP Family. Teman-teman Mahasiswa Departemen Teknik Informatika Universitas Hasanuddin. Para responden yang bersedia meluangkan waktunya untuk berpartisipasi sebagai bagian pentng dalam kesuksesan penelitian ini. Serta seluruh pihak yang tak sempat kami sebutkan satu persatu yang telah banyak meluangkan tenaga, waktu, dan pikiran selama penyusunan laporan skripsi ini. Akhirnya dengan segala kerendahan hati, penyusn menyadari masih banyak terjadi kekurangan dalam penyusunan Laporan Skripsi ini baik isi maupun cara 2013 v
penyajian. Oleh karena itu penyusun mengharapkan adanya saran dan kritik yang bersifat membangun demi kesempurnaan laporan ini. Penyusun berharap semoga Laporan Skripsi ini dapat meberikan manfaat bagi pembaca pada umumnya dan manfaat bagi penulis khususnya. Makassar, 30 Oktober 2020 Penyusun vi
DAFTAR ISI LEMBAR PENGESAHAN ... i LEMBAR PERNYATAAN KEASLIAN ... ii ABSTRAK ... iii KATA PENGANTAR ... iv DAFTAR ISI... vii DAFTAR GAMBAR... ix DAFTAR TABEL ... xi BAB I PENDAHULUAN ... 1 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 3 1.3 Tujuan Penelitian ... 3 1.4 Manfaat Penelitian ... 3 1.5 Batasan Masalah ... 4 1.6 Metode Penulisan ... 4 1.7 Sistematika Penulisan ... 5 BAB II TINJAUAN PUSTAKA... 6 2.1 Emosi ... 6 2.2 Emosi Marah ... 8 2.3 Deteksi ... 9 2.4 Citra Digital... 9 2.5 Pengolahan Citra ... 10 2.6 Haar-Cascade ... 11 2.7 Histogram of Oriented Gradiens ... 15 vii
2.8 Support Vector Machine Classifier... 18 2.9 Android ... 19 2.10 Android Studio ... 21 2.11 Android SDK ... 22 2.12 Affectiva SDK ... 22 2.13 Emotion Expression Modelling ... 23 BAB III METODOLOGI PENELITIAN ... 25 3.1 Tahapan Penelitian ... 25 3.2 Waktu dan Lokasi Penelitian ... 27 3.3 Instrumentasi Penelitian ... 27 3.4 Populasi dan Sampel Data... 27 3.5 Rancangan Sistem ... 28 3.6 Analisis Kerja Sistem... 44 BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ... 46 4.1 Gambaran Umum Sistem ... 46 4.2 Pengujian Sistem... 46 BAB V PENUTUP... 59 5.1 Kesimpulan ... 59 5.2 Saran... 59 DAFTAR PUSTAKA ... 60 ix
DAFTAR GAMBAR 2.1 Sudut Pengambilan Gambar ... 12 2.2 Haar-Like Features... 13 2.3 Ilustrasi Integral Image ... 14 2.4 Ilustrasi Hyperplane SVM ... 23 2.5 Action Unit Untuk Emosi Marah ... 24 3.1 Tahapan Penelitian ... 25 3.2 Flowchart Sistem Secara Umum ... 29 3.3 Frame RGB... 30 3.4 Ilustrasi Perubahan Citra menjadi Grayscale... 31 3.5 Ilustrasi fitur Haar-like... 32 3.6 Pemilihan Fitur Mata, Hitung dan Mulut ... 32 3.7 Hasil Deteksi & Face Landmarking ... 33 3.8 Ilustrasi Pemeriksaan Tiap Pixel... 35 3.9 Penjelasan tentang Arah pixel... 36 3.10 Ilustrasi Proses Konversi Gradient ... 36 3.11 Ilustrasi Gradient dari wajah ... 38 x
3.12 Ilustrasi Klasifikasi SVM... 39 3.13 Notifikasi saat marah terdeteksi ... 41 3.14 Subjek 1... 43 4.1 Jarak terdekat dari depan wajah ... 47 4.2 Jarak terdekat sudut 30º dari atas (a) dan bawah (b)... 49 4.3 Jarak terdekat sudut 30º dari kanan... 49 4.4 Jarak terjauh dari depan wajah... 50 4.5 Jarak terjauh sudut 30º dari bawah ... 51 4.6 Jarak terjauh sudut 30º dari kanan ... 52 4.7 Hasil deteksi emosi marah pada wajah 1 ... 53 4.8 Hasil deteksi emosi marah pada wajah 2 ... 53 4.9 Hasil deteksi emosi marah pada wajah 3 ... 54 4.10 Hasil deteksi emosi marah pada wajah 4 ... 55 4.11 Hasil deteksi emosi marah pada wajah 5 ... 56 4.12 Kesalahan deteksi emosi pada wajah ... 58 DAFTAR TABEL 3.1 Fitur Penentu Emosi Marah... 39 3.2 Data Pengujian Action Unit ... 42 4.1 Data Hasil Confusion Matrix tiap Video ... 57 4.2 hasil akurasi,presisi,specifity dan sensitivity dalam persen ... 57
BAB I PENDAHULUAN 1.1 Latar Belakang Emosi adalah perasaan intens yang ditujukan kepada seseorang atau sesuatu. Emosi adalah reaksi terhadap seseorang atau kejadian. Ekspresi atau mimik adalah salah satu bentuk komunikasi nonverbal yang merupakan hasil dari satu atau lebih gerakan atau posisi otot pada wajah serta dapat menyampaikan keadaan emosi dari seseorang kepada orang yang mengamatinya (Abidin & Harjoko, 2011). Ekspresi wajah mengungkapkan pikiran yang sedang melintas pada diri seseorang. Penelitian yang dilakukan oleh seorang psikolog bernama Mehrabian menyatakan bahwa ekspresi wajah menyumbang sebesar 55% dalam penyampaian pesan, sementara bahasa dan suara masing-masing menyumbang 7% dan 38%. Paul Ekman, seorang psikolog Amerika juga mendefinisikan enam kategori klasifikasi emosi yaitu senang, sedih, terkejut, marah, takut dan jijik. Kebanyakan sistem pengenal ekspresi wajah, mengklasifikasikan emosi ke dalam enam kategori universal tersebut (Kulkarni, Reddy, & Hariharan, 2009). Pengemudi yang marah dan agresif dapat meningkatkan resiko kecelakaan pada jalan raya. Sebuah survei yang dilakukan oleh Asosiasi Automobile di Amerika pada bulan Januari 1995 menunjukkan bahwa hampir 90% dari pengendara pernah mengalami "road rage" dalam jangka 12 bulan terakhir. Enam puluh persennya mengaku kehilangan kesabaran saat mengemudi (Furedi, 2006). Pengemudi agresif seringkali menyetir tanpa adanya sabuk pengaman dan 1
cenderung mabuk saat mengemudi (Gaille, t.t.). Setidaknya kurang lebih 1500 pria wanita dan anak-anak terluka atau terbunuh setiap tahunnya dikarenakan perilaku mengemudi yang agresif (Mizell, Joint, & Connell, 1997). Penelitan yang dilakukan oleh Rani pada tahun 2014 menggunakan metode Haar. untuk mendeteksi wajah pada video sequence, mereka menggunakan Local Normalization kemudian untuk ekstraksi fitur pada wajah menggunakan metode Haar. Penelitian ini memiliki tingkat akurasi hingga 82%. Penelitian ini belum bisa mendeteksi ekspresi pada wajah (Rani & Muneeswaran, 2014). Penelitian lain yang dilakukan Kotsia dkk. Untuk mendeteksi ekspresi pada wajah menggunakan metode Support Vector Machine tetapi user harus meletakkan grid secara manual pada frame pertama, yang selanjutnya akan di tracking otomatis (Kotsia & Pitas, 2005). Penelitian-Penelitian diatas menggunakan kamera khusus untuk merekam wajah. Oleh karena itu, pada penelitian ini akan dibuat sebuah sistem yang dapat merekognisi kemarahan dengan kamera smartphone yang lebih praktis dan juga terjangkau. Dalam pembuatan aplikasi ini menggunakan OS android dan Aplikasi penunjang utama yaitu Android Studio. Dimana android merupakan sistem operasi yang banyak ditanamkan pada smartphone serta open source, Dengan demikian dalam Tugas Akhir ini akan diangkat sebuah judul "Sistem Deteksi Emosi Marah Pada Pengemudi Mobil Berbasis Android". 2
1.2 Rumusan Masalah Berdasarkan latar belakang diatas, penulis merumuskan permasalah yaitu : 1. Bagaimana cara mendeteksi fitur pada wajah menggunakan kamera smartphone? 2. Bagaimana cara memanfaatkan fitur pada wajah untuk mendeteksi emosi marah? 1.3 Tujuan Penelitian Tujuan akhir dari penelitian ini yaitu : 1. Untuk mengetahui cara mendeteksi fitur pada wajah menggunakan kamera smartphone. 2. Untuk mengetahui cara memanfaatkan fitur pada wajah untuk mendeteksi emosi marah. 1.4 Manfaat penelitian Dengan dilakukkannya penelitian ini, diharapkan manfaat yang didapatkan antara lain : 1. Dari hasil penelitian ini, diharapkan dapat mendeteksi ekspresi marah pada pengemudi mobil. 2. Sebagai referensi penlitian-penelitan selanjutnya. 3. Sebagai referensi dalam pembuatan aplikasi asisten pribadi berbahasa Indonesia. 3
1.5 Batasan Masalah Yang menjadi batasan masalah dalam tugas akhir ini adalah : 1. Pengambilan video dilakukan pada kondisi cahaya yang terang. 2. Subjek penelitian tidak memiliki cacat pada wajah yang mengubah bentuk wajah (contoh : bibir sumbing) . 3. Tidak menggunakan aksesoris tambahan di wajah seperti penutup mata, masker, topi dan semacamnya. 4. Emosi yang dideteksi adalah emosi dengan ekspresi yang tergambar jelas di wajah pengguna. 1.6 Metode Penulisan Terdapat beberapa metode yang digunakan pada penelitian ini yaitu : 1. Metode Pengambilan Data Metode pengambilan data dilakukan dengan pengambilan video emosi wajah pada subjek secara langsung menggunakan kamera pada smartphone android. 2. Studi Literatur Studi literatur yaitu mengadakan studi dari buku, internet dan sumber bahan pustaka atau informasi lainnya yan terkait dengan materi yang dibahas dalam tulisan ini. 4
3. Diskusi dan konsultasi Melakukan Tanya jawab secara langsung kepada pembimbing dan kepada pihak-pihak professional yang ada berhubungan dengan tugas akhir ini. 1.7 Sistematika Penulisan Laporan Tugas Akhir ini dibagi dalam lima bab yang tersusun secara sistematis, yaitu : BAB I PENDAHULUAN Bab ini menguraikan secara singkat latar belakang penelitian, rumusan dan batasan masalah, tujuan dan kegunaan penelitian, dan sistematika penulisan. BAB II LANDASAN TEORI Bab ini akan membahas mengenai penjelasan-penjelasan umum mengenai teori-teori yang berkaitan seperti konsep dasar tentang sistem deteksi emosi marah pada pengemudi berbasis android dengan menggunakan kamera depan smartphone. BAB III METODOLOGI PENELITIAN Dalam bab ini membahas mengenai perancangan sistem deteksi emosi marah pada pengemudi berbasis android dengan menggunakan kamera depan smartphone dan konsep perancangannya. 5
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM Bab ini berisi contoh eksekusi program serta hasil dan pembahasan pengujian. BAB V PENUTUP Bab ini berisi tentang kesimpulan dan saran dari penelitian yang dilakukan. 6
BAB II TINJAUAN PUSTAKA 2.1 Emosi Emosi berasal dari bahasa Latin, yaitu emovere, yang berarti bergerak menjauh. Arti kata ini menyiratkan bahwa kecenderungan bertindak merupakan hal mutlak dalam emosi. Daniel Goleman (2002) mengatakan bahwa emosi merujuk pada suatu perasaan dan pikiran yang khas, suatu keadaan biologis dan psikologis dan serangkaian kecenderungan untuk bertindak. Emosi merupakan reaksi terhadap rangsangan dari luar dan dalam diri individu, sebagai contoh emosi gembira mendorong perubahan suasana hati seseorang, sehingga secara fisiologi terlihat tertawa, emosi sedih mendorong seseorang berperilaku menangis (Istiqomah, 2014). Chaplin (2002, dalam Safaria, 2009) merumuskan emosi sebagai suatu keadaan yang terangsang dari organisme mencakup perubahan-perubahan yang disadari, yang mendalam sifatnya, dan perubahan perilaku. Maramis (2009) dalam bukunya "Ilmu Kedokteran Jiwa" mendefinisikan emosi sebagai suatu keadaan yang kompleks yang berlangsung tidak lama yang mempunyai komponen pada badan dan pada jiwa individu tersebut. Emosi menurut Rakhmat (2001) menunjukkan perubahan organisme yang disertai oleh gejala-gejala kesadaran, keperilakuan dan proses fisiologis. Kesadaran apabila seseorang mengetahui makna situasi yang sedang terjadi. Jantung berdetak lebih cepat, kulit memberikan respon dengan mengeluarkan keringat dan napas terengah-engah termasuk dalam 7
proses fisiologis dan terakhir apabila orang tersebut melakukan suatu tindakan sebagai suatu akibat yang terjadi. Berdasarkan pengertian di atas maka dapat disimpulkan bahwa emosi adalah pengalaman sadar, kompleks dan meliputi unsur perasaan, yang mengikuti keadaan-keadaan psikologis dan mental yang muncul serta penyesuaian batiniah dan mengekspresikan dirinya dalam tingkah laku yang nampak (Istiqomah, 2014). 2.2 Emosi Marah Goleman menjelaskan bahwa pada prinsipnya emosi dasar manusia meliputi takut, marah, sedih dan senang. Sutanto (2012) menambahkan malu, rasa bersalah, dan cemas sebagai emosi dasar manusia. Emosi tersebut penting karena sangat berpengaruh tidak hanya pada perilaku saat ini namun juga perilaku dimasa mendatang, terutama emosi negatif. Sedangkan marah sendiri merupakan reaksi terhadap sesuatu hambatan yang menyebabkan gagalnya suatu usaha atau perbuatan. Marah yang timbul seringkali diiringi oleh berbagai ekspresi perilaku (Al Baqi, 2015). Banyak individu mulai dari dari anak, remaja bahkan orang dewasa sulit mengungkapkan secara lisan tentang marah yang dirasakan. Mereka mungkin sadar setiap kali mereka mengekspresikan marah dengan perilaku yang kurang bisa diterima secara sosial, namun mereka tidak mampu mencegahnya terjadi. Hal ini disebut sebagai emotionally illiterate atau kebutaan emosi yang diiringi dengan kurangnya kemampuan untuk 8
memahami perasaan dan kurang mampu memahami bagaimana mengekspresikan marah yang dapat diterima secara norma sosial (Duffy, 2012). Sehingga tidak jarang banyak kasus tawuran remaja hingga pembuhuhan sadis yang akarnya adalah kemarahan yang diekspresikan dengan kurang tepat (Al Baqi, 2015). 2.3 Deteksi Deteksi adalah suatu proses untuk memeriksa atau melakukan pemerikasaan terhadap sesuatu dengan mengunakan cara dan teknik tertentu. Deteksi dapat digunakan untuk berbagai masalah, misalnya dalam sistem pendeteksi suatu penyakit, dimana sistem mengidentifikasi masalah- masalah yang berhubungan dengan penyakit yang biasa disebut gejala. Tujuan dari deteksi adalah memecahkan suatu masalah dengan berbagai cara tergantung metode yang diterapkan sehingga menghasilkan sebuah solusi (Anonim, 2016). 2.4 Citra Digital Citra atau image adalah representasi spasial dari suatu objek yang sebenarnya dalam bidang dua dimensi yang biasanya ditulis dalam koordinat cartesian x-y, dan setiap koordinat merepresentasikan satu sinyal terkecil dari objek. Fungsi citra adalah model matematika yang sering digunakan untuk menganalisis dimana semua fungsi analisis digunakan untuk mempertimbangkan citra sebagai fungsi dengan 2 variabel. 9
Citra merupakan gambaran yang terekam oleh kamera atau oleh sensor. mengutarakan pengertian tentang citra yaitu : 1. Gambaran obyek yang dibuahkan oleh pantulan atau pembiasan sinar yang difokuskan oleh sebuah lensa atau sebuah cermin. 2. Gambaran rekaman suatu obyek (biasanya berupa gambaran pada foto) yang dibuat dengan cara optik, elektro-optik, optik mekanik atau elektronik. Pada umumnya gambar digunakan bila radiasi elektromagnetik yang dipancarkan atau dipantulkan dari suatu obyek tidak langsung direkam pada film. Sedangkan penginderaan jauh ialah ilmu dan seni untuk memperoleh informasi tentang obyek, daerah, atau gejala dengan jalan menganalisis data yang diperoleh dengan menggunakan alat tanpa kontak langsung terhadap obyek, daerah, atau gejala yang dikaji (Ardianto, 2014). 2.5 Pengolahan Citra Pengolahan citra (image Processing) merupakan suatu sistem dimana proses dilakukan dengan masukan berupa citra dan hasilnya juga berupa citra (Basuki, 2005). Pada awalnya pengolahan citra ini dilakukan untuk memperbaiki kualitas citra, namun dengan berkembangnya dunia komputasi yang ditandai dengan semakin meningkatnya kapasitas dan kecepatan proses komputer, serta dapat mengambil informasi dari suatu citra, maka image processing tidak dapat dilepaskan dengan bidang computer vision 10
Sesuai dengan perkembangan computer vision itu sendiri, pengolahan citra mempunyai dua tujuan utama yakni sebagai berikut. 1. Memperbaiki kualitas citra, dimana citra yang dihasilkan dapat menampilkan informasi secara jelas atau dengan kata lain manusia dapat melihat informasi yang diharapkan dengan menginterprestasikan citra yang ada. Dalam hal ini interprestasi terhadap informasi yang ada tetap dilakukan oleh manusia. 2. Mengekstrasi informasi ciri yang menonjol pada suatu citra dimana hasilnya adalah informasi citra dimana manusia mendapatkan informasi cirri dari citra secara numeric atau dengan kata lain computer melakukan interprestasi terhadap informasi yang ada pada citra melalui besaran-besaran data yang dapat dibedakan secara jelas (Ardianto, 2014). 2.6 Haar-Cascade Deteksi wajah adalah suatu algoritma yang digunakan untuk mengetahui apakah dalam suatu gambar terdapat komponen-komponen wajah manusia seperti dagu, mulut, hidung, dahi, alis, dan kedua mata dengan posisi dan jarak tertentu (Turiyanto et al.). Sehingga agar wajah dapat terdeteksi, harus dipastikan pada gambar tersebut terdapat komponen-komponen wajah manusia yang tampak secara jelas. Selain itu posisi dan jarak antar komponen tersebut juga harus sesuai. Meskipun seluruh komponen telah terdeteksi namun apabila posisinya tidak sesuai, maka tetap tidak akan 11
dianggap sebagai wajah. Misalnya, kedua mata harus berada di atas hidung, dan mulut berada di bawah hidung. Oleh karena itu diperlukan teknik pengambilan gambar pada wajah dengan sudut angle yang tepat untuk memastikan seluruh fitur wajah tampak dengan jelas. Gambar 2.1 Sudut pengambilan gambar: (a) kotak kuning: fitur wajah tampak jelas; (b) kotak merah fitur wajah tidak tampak jelas (dimodifikasi dari Tariq et al., 2014). Berdasarkan gambar 2.1, sudut pengambilan gambar yang aman digunakan adalah -30 sampai 30 derajat yang ditandai dengan kotak kuning. Sedangkan sudut pengambilan gambar -45 dan 45 derajat yang ditandai dengan kotak merah, menghasilkan gambar dengan fitur wajah yang tidak tampak jelas dimana hanya ada satu mata yang tampak dengan jelas. Sehingga kurang tepat digunakan untuk deteksi wajah. Haar like feature atau yang dikenal sebagai Haar Cascade Classifier merupkan rectangular (persegi) feature, yang memberikan indikasi secara 12
spesifik pada sebuah gambar atau image. Haar Cascade Classifier berasal dari gagasan Paul Viola dan Michael Jhon, karena itu dinamakan metode Viola & Jhon. Ide dari Haar like feature adalah mengenali obyek berdasarkan nilai sederhana dari fitur tetapi bukan merupakan nilai piksel dari image obyek tersebut. Metode ini memiliki kelebihan yaitu komputasi yang sangat cepat, karena hanya tergantung pada jumlah piksel dalam persegi bukan setiap nilai piksel dari sebuah image. Metode ini merupakan metode yang menggunakan statistikal model (classifier). Pendekatan untuk mendeteksi objek dalam gambar menggabungkan empat kunci utama yaitu Haar like feature, Integral Image, Adaboost learning dan Cascade Classifier (Muhammad, 2015). Gambar 2.2 Haar Like Features Haar Feature adalah fitur yang didasarkan pada Wavelet Haar. Wavelet Haar adalah gelombang tunggal bujur sangkar (satu interval tinggi dan satu interval rendah). Untuk dua dimensi, satu terang dan satu gelap. Selanjutnya 13
kombinasi-kombinasi kotak yang digunakan untuk pendeteksian objek visual yang lebih baik. Setiap Haar-like feature terdiri dari gabungan kotak kotak hitam dan putih. 𝑓 𝑥 = 𝑆𝑢𝑚𝐵𝑙𝑎𝑐𝑘 𝑟𝑒𝑐𝑡𝑎𝑛𝑔𝑙𝑒 -𝑆𝑢𝑚𝑊h𝑖𝑡𝑒 𝑟𝑒𝑐𝑡𝑎𝑛𝑔𝑙𝑒 Adanya fitur Haar ditentukan dengan cara mengurangi rata-rata piksel pada daerah gelap dari rata-rata piksel pada daerah terang. Jika nilai perbedaannya itu diatas nilai ambang atau treshold, maka dapat dikatakan bahwa fitur tersebut ada. Nilai dari Haar-like feature adalah perbedaan antara jumlah nilai-nilai piksel gray level dalam daerah kotak hitam dan daerah kotak putih. dimana untuk kotak pada Haar like feature dapat dihitung secara cepat menggunakan "integral image". Integral Image digunakan untuk menentukan ada atau tidaknya dari ratusan fitur Haar pada sebuah gambar dan pada skala yang berbeda secara efisien. Integral Image digunakan untuk menentukan ada atau tidaknya dari ratusan fitur Haar pada sebuah gambar dan pada skala yang berbeda secara efisien. Gambar 2.3 Intergral Image 14
Seperti yang ditunjukkan oleh gambar di atas setelah pengintegrasian, nilai pada lokasi piksel (x,y) berisi jumlah dari semua piksel di dalam daerah segiempat dari kiri atas sampai pada lokasi (x,y) atau daerah yang diarsir. Guna mendapatkan nilai rata-rata piksel pada area segiempat (daerah yang diarsir) ini dapat dilakukan hanya dengan membagi nilai pada (x,y) oleh area segiempat (Muhammad, 2015). 2.7 Histogram Of Oriented Gradiens Histogram Of Oriented Gradiens ini digunakan untuk mengekstraksi fitur pada obyek gambar dengan menggunakan obyek manusia. Berdasarkan langkahnya, proses awal pada metode HOG adalah mengkonversi citra RGB (Red, Green, Blue) menjadi grayscale, yang kemudian dilanjutkan dengan menghitung nilai gradien setiap piksel. Setelah mendapatkan nilai gradien, maka proses selanjutnya yaitu menentukan jumlah bin orientasi yang akan digunakan dalam pembuatan histogram. Proses ini disebut spatial orientation binning. Namun sebelumnya pada proses gradient compute gambar pelatihan dibagi menjadi beberapa cell dan dikelompokkan menjadi ukuran lebih besar yang dinamakan block. Proses ini dilakukan karena terdapat block yang saling tumpang tindih. Berbeda dengan proses pembuatan histogram citra yang menggunakan nilai - nilai intensitas piksel dari suatu citra atau bagian tertentu dari citra untuk pembuatan histogramnya, berikut adalah tahapan dalam Histogram Of Oriented Gradien (Dalal & Triggs, 2005) : 15
a) Konversi Citra atau Normalisasi Warna Citra true colour adalah representasi citra berwarna yang mrmiliki tiga komponen utama yaitu merah, hijau dan biru (RGB). Masing- masing komponen pada citra true colour mempunyai 256 kemungkinan nilai. Citra grayscale memiliki 28 (256) kemungkinan nilai pada pikselnya. Nilai tersebut dimulai dari nol untuk warna hitam dan 255 untuk warna putih. Konversi Citra true colour ke Grayscale mengubah nilai piksel yang semula mempunyai 3 nilai yaitu Red, Green, Blue menjadi satu nilai yaitu keabuan. Berikut persamaan yang digunakan untuk mendapatkan nilai keabuan : L = 0.144*R+0.587*G+0.299*B (1) Dimana : L : nilai keabuan pada piksel 0.144 : bobot untuk elemen warna merah (wR) 0.587 : bobot untuk elemen warna biru (wB) 0.299 : bobot untuk elemen warna hijau (wG) R : nilai intensitas elemen warna merah G : nilai intensitas elemen warna hijau B : nilai intensitas elemen warna biru NTSC (National Television System Committee) mendefinisan bobot untuk konversi citra true colour ke grayscale sebagai berikut : wR = 0.299, wB = 0.587, wG = 0.114. Data masukkan berupa citra true colour dan data keluaran berupa citra Grayscale. 16
b) Gradien Compute Setelah proses konversi citra yaitu mengubah gambar dalam bentuk grayscale langkah selanjutnya adalah menghitung nilai gradien setiap piksel dalam gambar. c) Spatial Orientation Binning Untuk membuat sebuah histogram dibutuhkan nilai gradien dan nilai tersebut didapat dari nilai tiap piksel dalam sebuah gambar. Gambar kemudian akan dibagi menjadi cells dengan ukuran yang telah ditentukan. Jadi tiap cells dalam gambar akan dibuat histogramnya untuk mengetahui nilai dalam tiap cells karena tiap cell mempunyai nilai yang berbeda. Dalam pembuatan histogramnya diperlukan adanya bin untuk mengetahui nilai gradiennya. Bin akan ditentukan sendiri oleh pengguna. Dalam penelitian sebelumnya bin yang digunakan adalah 4 bin orientation. d) Normalization Block Karena nilai gradien mempunyai nilai yang berbeda oleh karena itu diperlukan pengelompokkan cells menjadi lebih besar atau yang disebut dengan block. Block biasanya tumpang tindih karena setiap cells kontribusi nilai lebih dari sekali. Dalam normalisasi block ini terdapat dua geometri block utama yaitu block persegi panjang R-HOG dan melingkar C-HOG akan tetapi dalam penelitian ini yang akan digunakan adalah geometri R-HOG. Hasil akhir dalam normalisasi block ini yaitu fitur. Dalam proses ini, block yang tumpang tindih diselesaikan dengan 17
R-HOG. Sedangkan dalam block terdiri dari 2 x 2 cells, dalam detector windows terdapat 7 x 15 R-HOG dan menggunakan 4 bin orientasi sehingga diperoleh 1680 vektor dalam 1 detector windows. Jumlah vektor ini di dapat dari 2x2x7x15x4 dan vektor ini yang disebut sebagai fitur. e) Detector Windows Detector windows merupakan windows atau jendela berukuran 64 x 128 yang digunakan untuk jendela pendeteksian. Jendela pendeteksian ini terdiri dari 8 x 8 piksel dalam tiap cells. 2.8 Support Vector Machine (SVM) Classifier Support Vector Machine (SVM) merupakan metode learning machine yang bekerja atas prinsip Structural Risk Minimization (SRM) dengan tujuan menemukan hyperplane terbaik yang memisahkan dua buah class (kategori) pada input space. Prinsip dasar Support Vector Machine adalah linear classifier, dan sedang dikembangkan agar dapat bekerja pada non- linear. Untuk mengecek apakah dalam window tersebut terdapat objek yang akan dideteksi atau tidak, digunakan SVM Classifier untuk memisahkan human dan non-human atau dalam penelitian ini adalah pendeteksian objek. Pada SVM Classifier dan algoritma klasifikasi yang berusaha memisahkan sebuah hyperplan optimal (Cristianini & Shawe-Taylor, 2000). 18
Gambar 2.4 hyperplane SVM Gambar diatas menunjukkan ada beberapa pattern yang merupakan anggota dari dua buah class +1 dan -1. Problem klasifikasi dapat diterjemahkan dengan usaha menemukan garis (hyperlane) yang memisahkan kedua class tersebut. Feature HOG juga dipakai sebagai input dari learning SVM. Feature HOG dirubah kedalam feature vector dengan ukuran 4608x1. Ukuran feature vector dihasilkan dari perkalian dari ukuran block (2x2 cell), jumlah bin 9, dan banyaknya block yang terbentuk dari image dengan ukuran 128x64. Feature vector inilah yang dipakai sebagai input untuk proses learning SVM (Cristianini & Shawe-Taylor, 2000). 2.9 Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikasi. Android 19
menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka. Fitur-fitur yang terdapat pada perangkat smartphone berbasis Android (Salman and Puspita, 2017) antara lain: 1. Dalvik Virtual Machine, merupakan Java Runtime Environment yang telah dioptimasi untuk device atau perangkat dengan ukuran memori yang kecil. Fitur machine ini menjadikan aplikasi dapat dijalankan dengan baik pada perangkat berbasis Android. 2. Touch-screen atau layar sentuh. Fitur ini cukup fenomenal karena belum terdapat pada perangkat ponsel yang lama. Dengan menggunakan fitur ini maka proses navigasi menu menjadi lebih mudah karena pengguna hanya memilih dan menekan menu yang akan dijalankan tanpa perlu harus melakukan scroll ke atas-bawah atau samping kiri-kanan. 3. Multipage. User dapat menambahkan halaman baru pada layar sehingga tampilan ikon aplikasi pada layar semakin banyak. Hal ini berguna untuk semakin mempercepat akses ke berbagai aplikasi. 4. Bersifat terbuka (open source) sehingga user dapat mempelajari, membuat serta memodifikasi sesuai keinginan tanpa harus membayar. 5. Kualitas suara dan grafik yang bagus karena dalam sistem Android telah tersedia dengan standar suara dan video seperti MP3, AAC. 6. SQLite, sebagai database untuk media penyimpanan aplikasi - aplikasi smartphone. 20
7. Tersedianya berbagai macam library/services yang dapat langsung digunakan, seperti browser, GPS, kamera, Bluetooth, dan Wifi. 8. Miracast, sebuah bentuk protokol yang memperbolehkan perangkat baru semacam Nexus 4 untuk melakukan streaming audio dan video pada televisi yang mempunyai fitur Miracast. Fitur ini memiliki kemiripan dengan Airplay yang dimilki oleh sejumlah perangkat keluaran Apple. 9. Gesture Typing Keyboard. Sebenarnya fitur mirip dengan swipe keyboard yang sudah lama diperkenalkan, tetapi google menyempurnakannya dalam Android 4.2 dengan memberikan akurasi yang lebih baik dan respon yang lebih cepat. 2.10 Android Studio Android Studio adalah sebuah IDE untuk Android Development yang diperkenalkan google pada acara Google I/O 2013. Android Studio merupakan pengembangkan dari Eclipse IDE, dan dibuat berdasarkan IDE Java populer, yaitu IntelliJ IDEA. Android Studio merupakan IDE resmi untuk pengembangan aplikasi Android. Android Studio ini diumumkan pada tanggal 16 Mei 2013 pada Konferensi Google I/O oleh Produk Manajer Google, Ellie Powers. Android studio bersifat free dibawah Apache License 2.0. Android Studio awalnya dimulai dengan versi 0.1 pada bulan mei 2013, Kemudian dibuat versi beta 0.8 yang dirilis pada bulan juni 2014. Yang paling stabil dirilis pada bulan Desember 21
2014, dimulai dari versi 1.0. Berbasiskan JetBrainns' IntelliJ IDEA, Studio di desain khusus untuk Android Development . Ini sudah bisa di download untuk Windows, Mac OS X, dan Linux (Syaputra, 2017). 2.11 Android SDK Android SDK adalah tools API (Application Programming Interface) yang diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Android merupakan perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware dan aplikasi kunci yang di-release oleh google. Saat ini disediakan Android SDK (Software Development Kit) sebagai alat bantu dan API untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Sebagai platform aplikasi-netral, Android memberi user kesempatan untuk membuat aplikasi yang dibutuhkan yang bukan merupakan aplikasi bawaan Handphone/Smarthpone (Safaat H, 2012). 2.12 Affectiva SDK Facial expression recognition (FER) sistem yang digunakan pada penelitian ini dibuat menggunakan Affdex-SDK, yang dikembangkan oleh McDuff et al (2016). Affdex-SDK memungkinkan developer aplikasi mobile untuk membuat aplikasi yang dapat merekognisi emosi pada wajah seseorang. Affdex-SDK dipilih sebagai tool dalam penelitian ini karena kemudahan yang diberikan dan output sistem yang akurat (Affectiva, 2016). Tools ini subset 22
memungkinkan facial expression recognition secara real-time dan tanpa menggunakan koneksi internet. Sistem FER ini memiliki empat (4) komponen utama : 1) Deteksi wajah dan landmark detection, 2) Facial feature extraction, 3) Facial action classification and 4) Emotion expression modelling. In addition to the four components, Affdex-SDK also has a feature that allows real-time facial landmark tracking. 2.13 Emotion Expression Modelling Emosi wajah dan facial expression pada sistem, dikonstruksi dan dikodekan menggunakan EMFACS (Emotional Facial Action Coding System). EMFACS merupakan bagian dari FACS, yang hanya mengambilis part of FACS, yang hanya mempertimbangkan tindakan wajah terkait emosi. EMFACS bekerja dengan cara mencocokkan pola pada gambar wajah dengan model pengenalan pola yang disediakan oleh Affdex-SDK. Pola yang akan dicocokkan adalah Action Unit (AU) yang ada pada citra wajah. Action Unit adalah gerakan wajah fungsional yang independen yang diidentifikasi dan dikodekan dalam FACS. Setiap pergerakan wajah dapat digambarkan dalam istilah AU secara tunggal atau kombinasi menghasilkannya. Masing-masing AU memiliki nomor sebagai identitasnya. Emosi marah mempunyai kombinasi dalam EMFACS. Emosi marah terdiri dari kombinasi 4 Action Unit yaitu AU 04 (Brow Lowerer) + AU 05 (Upper Lid Raiser) + AU 07 (Lid Tightener) + AU 23 (Lip Tightener). 23
Gambar 2.5 Action Unit untuk emosi marah 24