Berdasarkan spesifikasi produk hasil fase pertama, dicarilah beberapa konsep produk yang dapat memenuhi persyaratan-persyaratan dalam spesifikasi tersebut. Konsep produk tersebut merupakan s…Full description
EKSTRAKSI FITUR DAN PENGENALAN CITRA WAJAHFull description
IT, sistem informasi, sistem reservasi, metode semantik,
Full description
metode dan proses perancangan arsitektur, methods and designing architecture processDeskripsi lengkap
Penyusunan dan Penulisan Laporan Tugas AkhirFull description
Deskripsi lengkap
Deskripsi lengkap
PERANCANGAN DAN IMPLEMENTASI SISTEM ABSENSI PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE
Diajukan Untuk Memenuhi Syarat Kelulusan Mata Kuliah Tugas Akhir
Disusun oleh : Ahmad Khairul Anwar NIM : 1364001
PROGRAM STUDI TEKNIK ELEKTRO STRATA I SEKOLAH TINGGI TEKNOLOGI JAWA BARAT BANDUNG 2017
LEMBAR PENGESAHAN
JUDUL
: PERANCANGAN DAN IMPLEMENTASI SISTEM
ABSENSI PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE NAMA
: AHMAD KHAIRUL ANWAR
NIM
: 1364001
Laporan Tugas Akhir ini ini telah kami baca dan dapat diterima untuk di presentasikan di Program Studi Teknik Elektro Sekolah Tinggi Teknologi Jawa Barat
Menyetujui,
Asdianur Hadi, MT. Pembimbing II
Ajeng Mayang KS, MT. Pembimbing I Mengetahui,
Riki Ridwan Margana, MT. Ketua STT Jabar
Ajeng Mayang KS, MT. Ketua Program Studi Teknik Elektro
ABSTRAK Pengenalan wajah adalah teknologi komputer untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah[1]. Mesin absensi kartu Amano GX500 banyak memiliki kekurangan. Seperti sistem penggajian perminggu yang harus dilakukan dengan menyalin jam-jam masuk dari kartu dan mengolahnya didalam microsoft excel hal ini tentu memakan waktu lama dan rawan human error. Berdasarkan masalah tersebut penulis melaksanakan penelitian yang bertujuan untuk merancang dan membuat sistem absensi berbasis pengenalan wajah menggunakan metode eigenface sebagai pengganti sistem absensi kartu. Penelitian diawali dengan pengumpulan referensi yang berkaitan dengan sistem absensi pengenalan wajah, kemudian berdasarkan referensi tersebut dibuat aplikasi deteksi dan pengenalan wajah untuk menguji akurasi dari sistem. Setelah itu sistem absensi berbasis pengenalan wajah kemudian dibuat untuk diuji di CV. Karya Mitra Utama sebagai pengganti sistem absensi berbasis kartu. Hasil dari pengujian berupa Persentase nilai akurasi sistem adalah 97,22%. Dimana keluaran aplikasi berupa nilai gaji karyawan dalam format Hal ini menandakan bahwa aplikasi dapat digunakan sebagai aplikasi sistem absensi sekaligus dapat mempercepat proses pengolahan data absensi karyawan. Kata Kunci : Pengenalan Wajah, Eigenface, Deteksi Wajah, Kairos
ABSTRACT Face recognition is a computer technology for determining face location, face size, face detection and background image abandonment, then identifying face image[1]. Attendance card machine Amano GX500 has many problem and shortcomings. Like a weekly payroll system that needs to be done by copying the incoming hours of the card and processing it in microsoft excel it certainly takes a long time and prone to human error. Based on these problems the authors carry out research that aims to design and make an attendance system with face recognition based using eigenface method as substitute card attendance system. The research begins with collection of references related to the face recognition system, then based on these references author made face detection and recognition application to test the accuracy of the system. After that applications face recognition based system then made to be tested in CV. Karya Mitra Utama as a replacement for card-based attendance system. The result of the test is percentage of system accuracy value at 97.22%. Where the application output have form of employee salary value in xlsx format. This indicates that the application can be used as system application attendance as well as to accelerate process employee attendace data. Key word : Face Recognition, Eigenface, Face Detection, Kairos
MOTTO DAN PERSEMBAHAN
ِ ِ ِ ﺐ ﺼ ﻧ ﺎ ﻓ ﺖ ﻏ ﺮ ـ ﻓ ا ذ ﺈ ﻓ o ا ﺮ ﺴ ﻳ ﺮ ﺴ ﻌ ﻟ ا ﻊ ﻣ ن ْ ْ َ ْ َ َ َ َ ْ َ َ ًْ ُ ْ ُ َ َ إ Sesungguhnya, sesudah kesulitan itu ada kemudahan. Maka apabila kamu telah selesai (dari sesuatu urusan), kerjakanlah dengan sungguh-sungguh (urusan) yang lain," – (QS.94: 6 - 7)
ﺼ ِْﱪ ﺑِﺎﻟo ن اﻹﻧْ َﺴﺎ َن ﻟَِﻔﻲ ُﺧ ْﺴ ٍﺮ ِإ ِﺼ ِ ﺎﳊ ِ ِﺬﻳﻦ آﻣﻨُﻮا وﻋإِﻻ اﻟ ِ اﺻ ْﻮا ﻮ ـ ﺗ و ﻖ ﺎﳊ ﺑ ا ﻮ اﺻ ﻮ ـ ﺗ و ﺎت اﻟ ا ﻮ ﻠ ﻤ ْ ُ َ َ ََ َ َ َ َ َ َ َْ َ َ َ Sesungguhnya manusia itu benar-benar berada dalam kerugian kecuali orang-orang yang beriman dan mengerjakan amal shaleh, dan nasehat menasehati, supaya mentaati kebenaran, dan nasehat menasehati, supaya menetapi kesabaran." – (QS.103: 2 - 3)
Kupersembahkan skripsi ini untuk orang tua, adik serta kakak tercinta
ii
KATA PENGANTAR Puji syukur penulis panjatkan kepada Allah SWT atas limpahan berkat dan rahmat-Nya, maka penulis dapat menyelesaikan penyusunan laporan tugas akhir “Perancangan dan Implementasi Sistem Absensi Pengenalan Wajah menggunakan Metode Eigenface”. Penulis menyadari bahwa tanpa bantuan dan bimbingan dari berbagai pihak, sangat sulit bagi penulis untuk menyelesaikan skripsi ini. Oleh karena itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1.
Allah SWT. sebagai Dzat yang maha segalanya yang telah membimbing, membantu dan memberikan petunjuk.
2.
Orangtua, kakak dan adik tercinta yang memberi dukungan selama menyusun laporan tugas akhir.
3.
Bapak Riki Ridwan Margana, MT., selaku ketua STT Jabar.
4.
Ibu Ajeng Mayang KS, MT., sebagai kaprodi teknik elektro STT Jabar, dosen penguji serta dosen pembimbing.
5.
Bapak Asdianur Hadi, MT. dan Bapak Iwan Juandi, MT., selaku dosen pembimbing dan dosen penguji.
6.
Seluruh staff di CV. Karya Mitra Utama atas bantuannya
7.
Seluruh staff di STT Jabar yang telah banyak membantu memberikan saran dan masukan dalam pengerjaan tugas akhir.
8.
Indra, Riandi dan seluruh teman-teman mahasiswa STT Jabar yang memberikan dukungan dan semangat dalam penyusunan laporan ini.
9.
Semua pihak yang tidak dapat disebutkan satu per satu yang telah banyak membantu dalam penyusunan laporan ini.
Akhir kata, penulis berharap Allah SWT berkenan membalas setiap kebaikan semua pihak yang telah membantu. Semoga skripsi ini dapat membawa manfaat untuk pengembangan ilmu kedepannya. Bandung, 16 September 2017
Penulis
DAFTAR ISI
Halaman LEMBAR PENGESAHAN ABSTRAK KATA PENGANTAR LEMBAR PERSEMBAHAN DAFTAR ISI ............................................................................................ i DAFTAR TABEL ................................................................................... iv DAFTAR GAMBAR ............................................................................... v DAFTAR SINGKATAN ......................................................................... ix DAFTAR ISTILAH ............................................................................... x DAFTAR LAMPIRAN ........................................................................... xi BAB I PENDAHULUAN 1.1.
Latar Belakang .............................................................................. I-1
1.2.
Perumusan Masalah ...................................................................... I-2
1.3.
Pembatasan Masalah ..................................................................... I-2
1.4.
Tujuan ........................................................................................... I-3
1.5.
Kegunaan ...................................................................................... I-3
Perhitungan Nilai Eigenface Untuk Training ..................... II-7
Gambar 2.8
Perhitungan Nilai Eigenface Untuk Testface ..................... II-8
Gambar 2.9
Proses Identifikasi Dengan Input Image Testface .............. II-8
Gambar 2.10 Feature Point Detection ...................................................... II-9 Gambar 2.11 Sistem Kerja Kairos ............................................................ II-9 Gambar 2.12 Verifikasi Wajah ................................................................. II-10 Gambar 2.13 Citra Wajah Yang Diuji dan Hasil Yang Masih Berupa Skrip ....................................................................... II-11 Gambar 3.1
Desain Unduh Data ............................................................. III-8
Gambar 3.10 Rekap Data Karyawan Dalam Format File xlsx ................. III-8 Gambar 3.11 Desain Lihat Data Absen Karyawan .................................. III-9 Gambar 3.12 Flowchart Latih .................................................................. III-10
v
Gambar 3.13 Desain Fitur Latih ............................................................... III-11 Gambar 3.14 Entity Relationship Diagram ............................................... III-11 Gambar 4.1
Tidak Terdeteksi ................................................................. IV-5
Gambar 4.7
Terlalu Banyak Wajah ........................................................ IV-5
Gambar 4.8
Gambar Format Tabel Hasil Pengujian ............................... IV-6
Gambar 4.9
Tidak Ada Koneksi Internet ............................................... IV-7
Gambar 4.10 Pengenalan Wajah Pada Implementasi Sistem ................... IV-7 Gambar 4.11 Latih Wajah Pada Implementasi Sistem ............................. IV-8 Gambar 4.12 Gambar Format Tabel Hasil Pengujian ............................... IV-9 Gambar 5.1
Data Karyawan Dalam Format File Xlsx ........................... V-12
vi
DAFTAR ISTILAH
ISTILAH Citra
PENGERTIAN : Gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses sampling.
Gambar
: Sesuatu yang dapat mewakilkan suatu objek nyatanya serta memiliki karakter warna maupun bentuk yang sesuai dengan aslinya
Sistem Absensi
: Sistem yang berisi informasi lengkap mengenai kehadiran dan ketidakhadiran seorang karyawan
Identifier
: Tanda pengenal atau identitas dari seseorang
Xlsx
: Sebuah ekstensi file untuk program microsoft excel, microsoft excel sendiri merupakan sebuah program untuk mengolah angka
2 Dimensi : bentuk dari benda yang memiliki panjang dan lebar. (2D) Istilah ini biasanya digunakan dalam bidang seni, animasi, komputer dan matematika. Video
: Teknologi untuk menangkap, merekam, memproses, mentransmisikan dan menata ulang gambar bergerak. Biasanya menggunakan film seluloid, sinyal elektronik, atau media digital
Machine Learning
: Disebut juga pembelajaran mesin adalah proses komputer untuk belajar dari data
Ekspresi
: Ungkapan perasaan manusia.
Blok Diagram
: Diagram dari sebuah sistem , di mana bagian utama atau fungsi yang diwakili oleh blok dihubungkan dengan garis, yang menunjukkan hubungan dari blok.
Desain
: Perencanaan dalam pembuatan sebuah Program
Webcam
: Periferal berupa kamera yang dikendalikan oleh sebuah komputer atau oleh jaringan komputer.
Basis Web
: Setiap program yang diakses melalui koneksi jaringan menggunakan HTTP
vii
DAFTAR SINGKATAN
SINGKATAN
PENGERTIAN
XLSX
: Extensible Stylesheet Language
PHP
: Personal Home Page, Hypertext Preprocessor
SQL
: Structured Query Language
PCA
: Principle Component Analysis
API
: Application Programming Interface
HTML
: HyperText Markup Language
ID
: Identifier
PC
: Personal Computer
DBMS
: Database Management System
KTP
: Kartu Tanda Penduduk
viii
DAFTAR LAMPIRAN
1
Profil Perusahaan
2 API Kairos 3 Kode Sumber Program 4 Dokumentasi 5 Jurnal 6 Biodata
ix
BAB I PENDAHULUAN
1.1
Latar Belakang Pengenalan wajah adalah teknologi komputer untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah[1]. Pengenalan wajah melibatkan banyak variabel, misalnya citra sumber, citra hasil pengolahan citra, citra hasil ekstraksi dan data profil seseorang[1]. Dibutuhkan juga alat pengindera berupa sensor kamera dan metode untuk menentukan apakah citra yang ditangkap oleh webcam tergolong wajah manusia atau bukan, sekaligus untuk menentukan informasi profil yang sesuai dengan citra wajah yang dimaksud. Pengenalan wajah telah dikembangkan untuk banyak aplikasi keamanan,
aplikasi
absensi
dan
aplikasi
pendataan
penduduk[1].
Penggunaan wajah sebagai identifier mempunyai banyak manfaat, terutama kepraktisannya karena memerlukan sebuah gambar untuk identifikasi[1]. CV. Karya Mitra Utama merupakan salah satu perusahaan yang bergerak pada bidang perindustrian seperti machining, electroplating, heat treatment, supplier, consultant management dan general trading. Sebagai perusahaan yang cukup besar dan memiliki banyak karyawan, pada sistem absensi CV. Karya Mitra Utama masih menggunakan mesin absensi kartu. Mesin mesin absensi kartu tersebut yang bernama amano GX500 masih berjalan sampai saat ini, namun alat tersebut memiliki banyak kekurangan, Seperti sistem penggajian perminggu yang harus dilakukan dengan menyalin jam-jam masuk dari kartu dan mengolahya didalam microsoft excel hal ini tentu memakan waktu yang lumayan lama dan rawan human error. Selain banyak karyawan yang terpaksa menunggu pada setiap hari gajian, seringkali gaji yang didapatkan tidak sesuai dengan jam bekerja karyawan. Maka solusi dari permasalahan tersebut adalah dengan melaksanakan penelitian yang bertujuan untuk menghasilkan sistem absensi yang lebih baik dan handal, sistem absensi yang akan dibuat adalah sistem absensi
I-1
I-2
pengenalan wajah yang menggunakan metode feature-based dan pustaka perangkat lunak kairos. Selain membuat sistem absensi wajah penelitian ini juga bertujuan menguji seberapa akurat sistem pengenalan wajah yang menggunakan metode feature-based dan pustaka perangkat lunak kairos, serta menguji sistem pengolahan data yang akan dibuat menggunakan bahasa pemograman PHP dan database MySQL, sehingga output yang diberikan oleh aplikasi berupa file microsoft excel (xlsx) untuk keperluan pembuatan laporan dan struk gaji.
1.2
Perumusan Masalah Berdasarkan latar belakang maka didapatkan perumusan masalah, yaitu: 1. Bagaimana membuat aplikasi pengenalan wajah sebagai identifikasi untuk sistem absensi dan menggantikan absensi berbasis kartu. 2. Bagaimana membuat sistem absensi pengenalan wajah menggunakan menggunakan metode eigenface, bahasa pemograman PHP, database MySQL dan pustaka perangkat lunak kairos. 3. Bagaimana mementukan nilai akurasi sistem pengenalan wajah yang dibuat menggunakan
metode
eigenface,
serta bagaimana aplikasi
dapat
mempercepat proses pengolahan data absensi karyawan
1.3
Pembatasan Masalah Berikut beberapa pembatasan masalah pada sistem absensi pengenalan wajah menggunakan metode eigenface, yaitu : 1. Aplikasi sistem absensi berbasis pengenalan wajah dibuat untuk menggantikan sistem absensi kartu. 2. Aplikasi dibuat menggunakan metode eigenface, bahasa pemograman PHP, sistem manajemen database MySQL dan pustaka perangkat lunak kairos. 3. Aplikasi dibuat untuk menguji seberapa besar nilai akurasi pengenalan wajah metode eigenface, serta untuk mempercepat proses pengolahan data absensi karyawan.
I-3
1.4
Tujuan Tujuan
dalam
pembuatan
sistem
absensi
pengenalan
wajah
menggunakan metode eigenface adalah: 1. Membuat sistem absensi berbasis pengenalan wajah sebagai pengganti sistem absensi berbasis kartu. 2. Merancang dan membuat aplikasi sistem absensi berbasis pengenalan wajah menggunakan metode eigenface, bahasa pemograman PHP, sistem manajemen database MySQL dan pustaka perangkat lunak kairos 3. Melaksanakan pengujian untuk mengetahui seberapa besar nilai akurasi sistem absensi berbasis pengenalan wajah dan membuat sistem aplikasi yang dapat mempercepat proses pengolahan data absensi karyawan.
1.5
Kegunaan Dengan dilaksanakannya penelitian ini diharapkan sistem absensi pengenalan wajah dapat menjadi sistem absensi pengganti yang lebih baik dari mesin kartu.
1.6
Sistematika Penulisan Sistematika penulisan ini membagi penyajian tulisan menjadi enam bab, masing-masing bab meliputi; BAB I PENDAHULUAN Membahas latar belakang, perumusan masalah, pembatasan masalah, tujuan, kegunaan serta sistematika penulisan laporan. BAB II LANDASAN TEORI Berisi referensi, materi maupun teori dasar mengenai pengolahan citra, pengenalan wajah, deteksi wajah, metode eigenface, pustaka perangkat lunak kairos dan hal lainya yang menyangkut dengan penelitian yang akan dilaksanakan BAB III METODOLOGI PENELITIAN Membahas metode yang digunakan pada penelitian seperti alur penelitian, analisa aplikasi, analisa pembuatan aplikasi, rancangan database. Pada bab ini juga akan dibahas perangkat keras maupun
I-4
perangkat lunak yang dibutuhkan serta metode pengujian dan implementasi aplikasi BAB IV PENGUMPULAN DAN PENGOLAHAN DATA Membahas metode yang digunakan dalam melaksanakan pengumpulan dan pengolahan data untuk pengujian akurasi maupun implementasi aplikasi BAB V ANALISIS DAN PEMBAHASAN Berisi analisis dan pembahasan dari hasil penelitian dari pengujian akurasi seperti pengujian aplikasi pengenalan wajah pada citra wajah dan bukan wajah. Pada bab ini juga terdapat analisis dan pembahasan dari implementasi aplikasi yang hasil akhirnya berupa gaji mingguan karyawan. BAB VI PENUTUP Membahas
kesimpulan
dari
hasil
penelitian,
saran
untuk
meningkatkan akurasi dan kecepatan aplikasi serta saran pengembangan aplikasi ini selanjutnya.
BAB II LANDASAN TEORI
2.1
Visi Komputer Visi komputer (Computer Vision) merupakan ilmu yang mempelajari tentang bagaimana komputer dapat mengamati dan mengobservasi suatu benda tertentu. Hal ini bertujuan untuk meniru visualisasi yang dapat dilakukan oleh manusia sehingga dapat dilakukan oleh komputer, yang dalam aplikasinya dapat dilakukan pemrosesan lebih lanjut[9]. Visi komputer terbagi menjadi 2 bidang ilmu, yaitu : 1.
Pengolahan Citra Pengolahan Citra (image Processing) merupakan salah satu ilmu yang mempelajari tentang teknik perbaikan kualitas citra yang kurang baik menjadi citra yang lebih baik dan diterima sebagi citra yang mudah dikenali[3].
2.
Pengenalan pola Pengenalan pola (Pattern recognition) merupakan pengidentifikasian objek berdasarkan proses pengelompokkan data numerik dan simbolik (termasuk citra), yang dilakukan secara otomatis oleh komputer[3] . Pola adalah suatu bentuk dimana masing-masing pola memiliki ciricirinya. Ciri-ciri tersebut digunakan utuk membedakan suatu pola dengan pola yang lainnya. Ciri yang baik adalah ciri yang memiliki daya pembeda yang
tinggi, sehingga
pengelompokkan pola berdasarkan ciri yang
dimiliki dapat dilakukan dengan keakuratan yang tinggi[6].
2.2
Citra Data atau informasi tidak hanya disajikan dalam bentuk teks saja, akan tetapi dapat berupa sebuah gambar (citra), audio (bunyi, suara, musik), dan video. Macam-macam data atau informasi tersebut sering disebut multimedia. Citra sendiri adalah gambar pada bidang dwiwarna (dua dimensi), ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwiwarna. Sumber
II-1
II-2
cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat optik, misalnya mata pada manusia, kamera, pemindai (scanner) dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam[3]. Citra merupakan salah satu komponen multimedia yang memiliki peranan penting sebagai informasi visual. Citra memiliki karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya dengan informasi[1]. Pengolahan citra secara digital dimulai pada awal tahun 1921, yaitu pertama kalinya sebuah foto berhasil di transmisikan secara digital melalui kabel laut dari kota New York ke kota London dengan memakan waktu kurang dari 3 jam yang biasanya pengiriman suatu foto saat itu membutuhkan waktu sekitar satu minggu. Selanjutnya pada tahun 1960 tercatat perkembangan pesat dikarenakan munculnya teknologi komputer yang sanggup memenuhi suatu kecepatan proses dan kapasitas memori yang dibutuhkan oleh berbagai algoritma pengolahan citra[3].
2.3
Sistem Deteksi Wajah Deteksi wajah merupakan salah satu teknologi biometrik, yang digunakan oleh perangkat lunak untuk mendektesi keberadaan wajah manusia sekaligus menghiraukan objek lain seperti pohon, bangunan dan tubuh manusia dalam sebuah citra[1]. Proses pendeteksian wajah adalah proses mensegmentasi area wajah dengan latar belakang dari suatu masukan citra. Proses ini bekerja dengan cara memeriksa citra yang dimasukan, apakah memiliki citra wajah atau tidak, jika memiliki citra wajah, maka akan dilakukan pemisahan dengan cara memotong citra wajah dari latar belakang citra yang dimasukan[10]. Untuk masukan berbentuk video, proses yang dilakukan adalah proses face tracking. Secara umum, proses face tracking dan proses pendeteksian wajah mempunyai fungsi yang sama. Perbedaannya terletak pada proses pendeteksiannya saja, jika pada masukan berbentuk citra, sistem berjalan offline sehingga dapat menggunakan proses pendeteksian wajah, sedangkan pada masukan video, sistem berjalan secara online atau real-time yang
II-3
membutuhkan pendeteksian secara langsung maka proses yang digunakan adalah proses face tracking[11]. Proses face tracking dapat dilihat pada gambar 2.1.
Gambar 2.1.
Proses Face Tracking
Dalam deteksi wajah ada empat istilah yang sering dipakai antara lain[9]: 1. True positive
= Wajah terdeteksi benar sebagai wajah
2. True Negative = Wajah terdeteksi benar sebagai bukan wajah 3. False positive = Wajah tidak terdeteksi sebagai wajah 4. False negative = Bukan wajah terdeteksi wajah
2.4
Sistem Pengenalan Wajah Pengenalan wajah adalah teknologi biometrik untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah[1]. Prinsip dasar dari pengenalan wajah adalah dengan mengutip informasi unik wajah tersebut, kemudian di-encode dan dibandingkan dengan hasil decode yang sebelumnya dilakukan[7]. Sistem pengenalan wajah digunakan untuk membangunan identitas. dengan tujuan utama yaitu mengidentifikasi sebuah wajah dalam citra dan mencocokannya dengan citra yang ada di dalam database[1]. Secara umum cara kerjanya adalah dengan mengkonversikan foto, sketsa, dan citra video menjadi
serangkaian
angka
kemudian
membandingkannya
dengan
rangkaian angka lain yang mewakili wajah-wajah yang sudah dikenal[2].
II-4
Secara umum, meskipun didasari dengan metode-metode yang berbeda proses pengenalan wajah terdiri dari dua proses utama yaitu, proses pelatihan citra dan proses pengenalan citra. Kedua proses ini memiliki tahapan-tahapan yang hampir sama, perbedaannya terletak pada hasil ekstraksi fiturnya[10]. Untuk lebih jelasnya, pada Gambar 2.2 ditunjukan diagram blok sistem pelatihan dan pengenalan citra wajah secara umum.
(a)
(b) Gambar 2.2.
Proses Tahapan (a) Pelatihan Wajah (b) Pengenalan Wajah[10]
Pertama akan ditentukan lokasi wajah pada citra atau video (deteksi wajah), selanjutnya citra bukan wajah akan dibuang atau diabaikan, kemudian fitur pada wajah di ekstraksi menjadi vektor, langkah selanjutnya untuk pelatihan wajah vektor fitur akan disimpan, sedangkan untuk pengenalan wajah vektor fitur akan dicocokan dengan fitur yang ada dalam database. Secara umum, teknik dan metode dalam pengenalan wajah dapat dikelompokan
ke
dalam
tiga
pendekatan
berdasarkan
data
yang
dibutuhkannya[1], yaitu: 1. Pendekatan holistik. Pada pendekatan holistik, seluruh bagian atau ciriciri global wajah digunakan sebagai data masukan untuk pengenalan wajah. Contoh: eigenface, fisherface, nearest feature line (NFL), dan support vector machine (SVM).
II-5
2. Pendekatan feature-based. Pada pendekatan feature-based, wajah terbagi berdasarkan ciri-ciri lokal wajah seperti hidung, mulut, mata, dan lainnya yang kemudian digunakan sebagai data masukan. Contoh : Hidden Markov Model, Kairos dan Dynamic Link Architecture.
2.5
Algoritma Eigenface Kata eigenface sebenarnya berasal dari bahasa Jerman “eigenwert” dimana “eigen” artinya karakteristik dan “wert” artinya nilai[5]. Eigenface sendiri merupakan salah satu algoritma pengenalan pola wajah yang berdasarkan pada Principle Component Analysis (PCA). Dalam metode eigenface, decoding dilakukan dengan menghitung eigenvector
kemudian
direpresentasikan dalam sebuah matriks yang
berukuran besar. Eigenvector juga dinyatakan sebagai karakteristik wajah oleh karena itu metode ini disebut dengan eigenface[5]. Untuk menghasilkan eigenface, sekumpulan besar citra digital dari wajah manusia diambil pada kondisi pencahayaan yang sama, dinormalisasi dan kemudian diolah pada resolusi yang sama (misalnya m x n), dan kemudian diperlakukan sebagai vektor dimensi mn di mana komponennya diambil dari nilai dari pikselnya[1]. Flowchat dari algoritma eigenface dapat dilihat pada gambar 2.3.
Gambar 2.3. Flowchart Algoritma Eigenface[1]
II-6
Adapun algoritma selengkapnya adalah sebagai berikut: 1.
Penyusunan Flat Vector Langkah pertama adalah menyusun seluruh training image rnenjadi 1 matriks tunggal. Misalkan citra berukuran H × W piksel dan jumlahnya N buah, maka flatvector yang dihasilkan berdimensi N × (H × W). Selanjutnya representasikan semua matriks training menjadi matriks dengan bentuk N × 1 atau matriks linier. Untuk lebih jelasnya dapat dilihat pada gambar 2.4.
Gambar 2.4. Skema Matriks Wajah
Sebagai contoh untuk training image yang didalamnya terdapat 2 citra wajah dengan ukuran 3 × 3 piksel maka eigenvector akan memiliki ukuran 2 × 9 ( 2 × 3 × 3 ). dua buah citra wajah yang telah diubah menjadi matriks, kemudian diubah kedalam bentuk rataan flatvector. Untuk lebih jelasnya dapat dilihat pada gambar 2.5.
Gambar 2.5. Penyusunan Flatvector[1]
2.
Penghitungan Rataan FlatVector Dari flatvector yang diperoleh, jumlahkan seluruh barisnnya sehingga memperoleh matriks berukuran 1 x (H x W). Setelah itu mastriks tersebut dibagi dengan jumlah image N untuk mendapatkan rataan flatvector. Nilai flatvector citra akan digunakan untuk menghitung nilai eigenface citra wajah (training image). Untuk lebih jelasnya dapat dilihat pada gambar 2.6
II-7
Gambar 2.6. Penentuan Rataan Flatvector[1]
3.
Tentukan nilai eigenface Dengan menggunakan rataan flatvector citra yang telah didapatkan, nilai eigenface untuk matriks flatvector yang sudah disusun tersebut dapat dihitung nilai eigenface-nya. Caranya dengan mengurangi barisbaris pada matriks flatvector dengan rataan flatvector. Jika didapatkan nilai dibawah nol, maka nilainya diganti dengan nol. Untuk lebih jelasnya dapat dilihat pada gambar 2.7
Gambar 2.7. Perhitungan Nilai Eigenface Untuk Training[1]
4.
Proses Identifikasi Untuk mengenali citra tes (testface), langkah identifikasinya adalah menghitung nilai eigenface untuk matriks testface dengan cara sebelumnya untuk menentukan nilai eigenface dan flatvector citranya[7]. Untuk lebih jelasnya dapat dilihat pada gambar 2.8.
II-8
Gambar 2.8. Perhitungan Nilai Eigenface Untuk Testface[7]
Setelah nilai eigenface untuk testface diperoleh maka proses identifikasi dapat diliakukan dengan menentukan jarak terpendek antara eigenface dan eigenvector training image. Pertama tentukan nilai absolut dari pengurangan baris pada matriks eigenface training image dengan eigenface dari testface, kemudian jumlahkan elemen-elemen penyusun vector yang dihasilkan dari pengurangan tadi untuk menghasilkan jarak indeks, lakukan untuk semua baris kemudian, cari nilai yang terkecil. Untuk lebih jelasnya dapat dilihat pada gambar 2.9.
Gambar 2.9.
Proses Identifikasi Dengan Input Image Testface[1]
II-9
Dari hasil perhitungan, diperoleh jarak citra face 2 memiliki nilai yang terkecil yaitu satu, maka hasil identifikasi menyimpulkan bahwa testface lebih mirip dengan face dua dari pada face satu.
2.6
Algoritma Kairos Kairos adalah perusahaan yang bergerak pada bidang kecerdasan buatan khususnya pengenalan wajah. melalui visi komputer (computer vision) dan pembelajaran mesin (machine learning), kairos dapat mengenal wajah dari video, foto maupun dunia nyata (realtime)[11]. Dengan nama yang sama produknya yaitu kairos adalah salah satu pustaka perangkat lunak yang dikhususkan untuk deteksi wajah, menggunakan metode featured-based. Kairos dapat membaca atau mengenali emosi, identitas serta demografi dari citra atau citra masukan hanya dengan beberapa baris kode[11].
2.6.1
Sistem Kerja Kairos Kairos feature point detection menggunakan 49 titik unik pada
wajah
manusia
untuk
mengumpulkan
data
didalamnya emosi, ekspresi, umur dan jenis kelamin
[11]
termasuk . feature
point detection kairos dapat dilihat pada gambar 2.10.
Gambar 2.10. Feature Point Detection[3]
Sistem kerja kairos hampir sama dengan pustaka perangkat lunak lainnya. Untuk lebih jelasnya dapat dilihat pada gambar 2.11. MENGAMBIL CITRA
MENEMUKAN WAJAH
MENENTUKAN TITIK UNIK PADA WAJAH
KLASIFIKASI FITUR
Gambar 2.11. Sistem Kerja Kairos
HASIL
II-10
Setelah citra diambil oleh kamera, kairos akan mencari wajah dan menentukan feature point detection pada citra, kemudian kairos mengklasifikasikan
fitur
(deteksi
wajah,
pengenalan
wajah,
verifikasi wajah, dan lain-lain), setelah itu kairos memberikan hasil data berupa deteksi wajah atau pengenalan wajah tergantung fitur kairos mana yang digunakan[3].
2.6.2
Fitur Kairos Selain deteksi wajah dan pengenalan wajah, pustaka perangkat lunak kairos memiliki beberapa fitur utama yaitu: A. Deteksi wajah Setelah citra diambil oleh kamera, kairos akan mencari wajah dan menentukan feature point detection pada citra. setelah dianalisa dengan fitur deteksi wajah kairos akan memberikan hasil berupa titik unik dari wajah, identitas serta demografi dari wajah. B. Pengenalan wajah Pengenalan wajah kairos terbagi menjadi dua yaitu pelatihan wajah dan pengenalan wajah kedua-duanya memiliki sistem kerja yang hampir sama dengan deteksi wajah. Hanya saja setelah hasil berupa titik unik dari wajah ditentukan. Pada pelatihan wajah, citra wajah tersebut disimpan ke database, sedangkan pada pengenalan wajah, citra wajah tersebut dicocokan dengan wajah yang ada pada database. C. Verifikasi wajah Sistem kerja verifikasi wajah hampir sama dengan deteksi wajah, hanya saja verifikasi wajah memerlukan dua buah citra wajah yang nantinya setelah hasil berupa titik unik dari wajah ditentukan, kedua wajah tersebut akan dicocokan, intinya apakah wajah didalam dua foto ini sama atau tidak. Sebagai contoh dapat dilihat pada gambar 2.12. Hasilnya berupa kedua orang pada citra wajah gambar 2.12 adalah orang yang sama.
II-11
Gambar 2.12. Verifikasi Wajah[11]
D. Deteksi ekspresi dan demografi Setiap wajah yang dideteksi oleh kairos melalui fitur deteksi wajah dan pengenalan wajah, setelah titik unik pada wajah ditentukan, terdapat keluaran tambahan berupa ekspresi dan juga demografi. Untuk lebih jelasnya, dapat dilihat citra wajah yang diuji serta hasilnya pada gambar 2.13.
(a)
(b)
Gambar 2.13. (a) Citra Wajah Yang Diuji (b) Hasil Yang Masih Berupa Skrip[11]
Penjelasan secara detail hasil pengenalan wajah kairos dapat dilihat pada tabel 2.1. Tabel 2.1. Hasil Deteksi Pengenalan Wajah Kairos Faktor
Asia (Asian) : 0.97943 Amerika (Hispanic) : 0.00189 Kulit Hitam (Black) : 0.00024 Kulit Putih (White) : 0
Tahun Rentang umur 26 - 35 Skala 0 s/d 1, maleConfidence = Laki - laki, femaleConfidence = Perempuan, Nilai tertinggi adalah kemungkinan terbesar jenis kelamin yang dimiliki citra wajah Skala 0 s/d 1, Semakin tinggi nilai, semakin tinggi kemungkinan ras atau suku milik citra wajah
Keterangan Terpisah = Apart, Menutup = Together Berkacamata = Yes, Tidak berkacamata = No Skala 0 s/d 100, Semakin tinggi nilai, semakin tinggi kemungkinan emosi yang sedang ditunjukan pada citra wajah
Perbandingan Kairos dengan OpenCV Dari banyak pustaka perangkat lunak yang ada kairos memiliki banyak kelebihan. kelebihan kairos dibandingkan dengan pustaka perangkat lunak lain sebagai contoh OpenCV selengkapnya dapat dilihat pada tabel 2.1. Tabel 2.2. Perbandingan Kairos dan OpenCV Metode
Kairos
OpenCV
Deteksi Wajah Pengenalan Wajah Emosi
-
Demografi
-
Multi-Deteksi Wajah SDK API sumber: https://www.kairos.com/blog/face-recognition-kairos-vs-opencv
Memiliki lebih dari 2500 algoritma yang dioptimalkan untuk segala hal mulai dari deteksi wajah hingga pelacakan objek[9], fitur pengenalan dan deteksi wajah pada OpenCV ternyata terbatas, selain itu penggunaannya yang terbilang kompleks sulit untuk mengitegrasikan OpenCV dengan Hypertext Preprocessor (PHP). Berbeda dengan kairos, kairos memiliki banyak fitur pada deteksi maupun pengenalan wajah, API milik kairos yang bersifat easy-to-use dan gratis sangat mudah diitegrasikan dengan PHP. API (Application Programming Interface) sendiri
II-13
adalah kumpulan fungsi atau kumpulan kode program yang berfungsi mengkomunikasikan sebuah program dengan kernel dari sebuah sistem operasi[11].
2.7
Hypertext Preprocessor (PHP) PHP
adalah
sebuah
bahasa
pemograman
umum
yang
digunakan untuk pembuatan aplikasi berbasis web yang bisa ditanamkan pada HTML[2]. Pada awalnya PHP merupakan singkatan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995[12]. Pada tahun 1997-1998, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat dan mengubah singkatan PHP dari Personal Home Page ke Hypertext Preprocessor[12]. PHP harus ditulis di antara tag . Setiap satu statement (perintah) harus diakhiri dengan titik-koma(;). PHP adalah bahasa pemograman yang case sensitive untuk nama identifiernya (variable, konstanta, fungsi dan lain-lain) contoh: $nama ≠ $Nama ≠ $NAMA[12]. Dari banyaknya bahasa pemograman yang ada PHP memiliki banyak kelebihan dibandingkan dengan bahasa pemograman lain. Beberapa kelebihan tersebut antara lain : 1. PHP bersifat open source yang berarti dapat digunakan oleh siapa saja secara gratis. 2. Program yang dibuat dengan PHP bisa dijalankan oleh semua sistem operasi karena PHP berjalan secara web based yag artinya semua sistem operasi bahkan HP yang mempunyai web browser dapat menjalankan PHP[2]. 3. Aplikasi PHP lebih cepat dibandingkan dengan ASP maupun Java[2]. 4. Mendukung banyak paket database seperti MySQL, Oracle, PostgrSQL, dan lain-lain.
II-14
5. Bahasa pemrograman PHP tidak memerlukan Kompilasi dalam penggunaannya. 6. Banyak web server yang mendukung PHP seperti Apache, Lighttpd, dan IIS[2].. 7. Pengembangan
aplikasi
PHP
mudah
karena
banyak
dokumentasi, referensi dan developer yang membantu dalam pengembangannya. 8. Banyak bertebaran aplikasi dan program PHP yang gratis dan siap pakai seperti wordpress dan prestashop[2].. Selain memiliki kelebihan, PHP juga memiliki kekurangan. Namun dibandingkan dengan kelebihan yang dimilikinya, PHP hanya memiliki kekurangan yang sedikit. kekurangan tersebut antara lain : 1. Tidak bisa memisahkan antara tampilan dengan logik dengan baik (dapat diperbaiki dengan menggunakan template)[2]. 2. PHP tidak di encoding, sehingga dapat dibaca semua orang (php dapat di encoding menggunakan software seperti IonCube atau menggunkan tool dari Zend)[11]. 3. PHP memiliki kelemahan keamanan. Programmer harus jeli dan
berhati-hati
dalam
melakukan
pemrograman
dan
Konfigurasi PHP[2].
2.8
My Structured Query Language (MySQL) MySQL merupakan sistem manajemen database (Database management System) SQL (Structured Query Language) yang open-source, multithread, multi-user, dengan sekitar 6 juta instalasi
di
seluruh
dunia[9].
MySQL
memiliki
beberapa
keistimewaan, antara lain : 1.
Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi[9].
II-15
2. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis[9]. 3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik[9]. 4. Performance
tuning,
MySQL
memiliki
kecepatan
yang
menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu[9]. 5. MySQL memiliki ragam tipe data, seperti signed atau unsigned integer, float, double, char, text, date, timestamp, dan lain-lain[2]. 6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query) [2]. 7. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi[9]. Namun terhitung sejak PHP versi 5.5, MySQL tidak lagi disarankan penggunaannya dan berstatus deprecated, yang berarti akan dihapus pada PHP versi berikutnya. Sebagai gantinya programmer disarankan mulai beralih menggunakan MySQLi[12]. Secara garis besar, tidak ada perbedaan besar antara MySQL dengan MySQLi. Nama-nama fungsi dalam MySQLi sebagian besar mirip dengan apa yang ada pada MYSQL, karena MySQLi sendiri merupakan pengembangan dari MySQL, i sendiri dalam MySQLi adalah improved yang artinya pengembangan, MySQLi dikembangkan mulai dari MySQL versi 4.1.3[12]. Kelebihan MySQLi dibandingkan MySQL antara lain: 1. Mendukung OOP (Object Oriented Programming). 2. Mendukung Prepared Statements. 3. Mendukung Multiple Statements. 4. Kemampuan debugging yang lebih baik.
BAB III METODOLOGI PENELITIAN
Gambar 3.1 Flowchart Penelitian
Penelitian diawali dengan pengumpulan referensi (studi literatur) yang berkaitan dengan sistem absensi pengenalan wajah, kemudian berdasarkan referensi tersebut dibuat aplikasi deteksi dan pengenalan wajah yang dibuat untuk menguji akurasi dari sistem absensi yang akan dibuat, setelah pengujian aplikasi selesai dilaksanakan sistem absensi berbasis pengenalan wajah kemudian dibuat untuk akhirnya diimplementasikan di CV. Karya Mitra Utama.
III-1
III-2
3.1
Analisa Pembuatan Aplikasi Deteksi Wajah dan Pengenalan Wajah Aplikai deteksi wajah dan pegenalan wajah dibuat hanya untuk menguji akurasi dari pustaka perangkat kairos, secara umum terdapat tiga bagian utama yaitu bagian masukan (input), proses (process), dan keluaran (output). blok diagram sistem dapat dilihat pada Gambar 3.2.
Gambar 3.2 Blok Diagram Sistem
Dapat dilihat pada blok diagram sistem, masukan berasal dari kamera, gambar dari kamera tersebut kemudian di unggah, selanjutnya kemudian diproses oleh aplikasi dan hasil dari keluaran dari proses berupa peryataan dari sistem seperti tidak terdeteksi, terdeteksi dan dikenali.
3.2
Desain Aplikasi Deteksi Wajah dan Pengenalan Wajah Desain dari aplikasi deteksi dan pengenalan wajah sangat sederhana dan hanya memiliki satu halaman, dimana pada halaman ini citra wajah diambil melalui webcam dan selanjutnya citra wajah diunggah, setelah diproses hasil akan diperlihatkan pada bagian terbawah aplikasi. selengkapnya dapat dilihat pada gambar 3.3.
(a) pengambilan gambar
III-3
(b) upload gambar Gambar 3.3 Desain Aplikasi Deteksi Dan Pengenalan Wajah
3.3
Analisa Pembuatan Aplikasi Absensi Berbasis Pengenalan Wajah Pada perancangan aplikasi absensi berbasis pengenalan wajah, secara umum terdapat tiga bagian utama yaitu bagian masukan (input), proses (process), dan keluaran (output). blok diagram sistem dapat dilihat pada gambar 3.4.
Gambar 3.4 Blok Diagram Sistem
Dapat dilihat pada blok diagram sistem, masukan berasal dari kamera dan form input, selanjutnya masukan akan diproses oleh aplikasi, hasil dari keluaran dari proses merupakan data absensi
III-4
karyawan yang sudah berupa lihat data (tabel) dan unduh data (excel). Gambaran lengkapnya dapat dilihat pada gambar 3.5.
Gambar 3.5 Sitemap Aplikasi
Aplikasi sendiri terbagi menjadi dua halaman, dimana pengaturan, pengunduhan data serta fitur latih terdapat pada halaman admin dan fitur absen wajah dan absen pilih nama berada pada halaman absen. Adapun penjelasan selengkapnya yaitu: A. Pengaturan Pengaturan merupakan bagian masukan dan inti dari aplikasi, karena variabel yang di masukan pada pengaturan secara langsung akan mempengaruhi jumlah gaji. Jam masuk dan jam keluar masukannya berupa angka, merepresentasikan jam masuk dan jam keluar kantor. Sedangkan gaji, lembur dan terlambat per jam, masukannya berupa angka, merepresentasikan jumlah uang yang diterima karyawan jika masuk hari ini atau lembur dan potongan jumlah uang jika terlambat. B. Unduh data Unduh data merupakan bagian keluaran dimana rekap data karyawan yang sudah melaksanakan absensi dapat diunduh dalam format microsoft excel (xlsx).
III-5
C. Lihat data Lihat data merupakan bagian keluaran dimana rekap data karyawan yang sudah melaksanakan absensi dapat dilihat dalam bentuk tabel. D. Fitur Latih Fitur latih merupakan bagian masukan dimana fitur latih digunakan
untuk
mengambil
citra
wajah
karyawan
yang
selanjutnya citra wajah tersebut digunakan untuk absensi. E. Fitur Absen (Wajah) Fitur absen (wajah) merupakan bagian masukkan dimana fitur absen ini berbasis pengenalan wajah, karyawan hanya perlu menghadapkan wajah ke kamera untuk melaksanakan absensi. F. Fitur Absen (Pilih Nama) Fitur absen (pilih nama) merupakan bagian masukan dimana fitur absen ini berbasis pilih nama, yang hanya digunakan bila terjadi masalah pada wajah seperti wajah karyawan yang tidak terbaca dikarenakan perubahan bentuk wajah yang signifikan hasil dari kecelakaan.
3.4
Desain Aplikasi Absensi Berbasis Pengenalan Wajah Seperti yang telah disebutkan pada poin 3.2 aplikasi memiliki dua halaman, dimana halaman absen adalah halaman utama dan halaman admin adalah halaman pengaturan.
3.4.1 Halaman Absen Pada halaman absen terdapat frame pengambilan citra wajah yang secara otomatis akan mengambil citra, jika pada frame terdeteksi sebuah wajah, citra yang terambil bersama dengan tahun-bulan-tanggal-jam-menit-detik saat itu kemudian di proses oleh sistem untuk disimpan didatabase. Keluaran yang dihasilkan adalah kondisi absen karyawan berupa datang, pulang dan sudah
III-6
absen hari ini atau error message (pesan kesalahan) berupa tidak ada koneksi internet, wajah tidak ditemukan, wajah tidak terdaftar. Selengkapnya dapat dilihat pada gambar 3.6.
Gambar 3.6 Flowchart Absensi
III-7
Sistem kerja absen pilih nama hampir sama dengan pengenalan
wajah,
perbedaannya
hanya
terletak
pada
masukannya, absen pilih nama masukannya berupa nama karyawan yang sudah terdaftar. Untuk desain halaman absen dapat dilihat pada gambar 3.7.
Gambar 3.7 Desain Halaman Absen
3.4.2 Halaman Admin Halaman admin terbagi dalam empat menu utama, pada halaman ini terdapat pengaturan (jam masuk, jam keluar, besaran uang gaji, uang lembur, dan potongan terlambat), unduh data (excel), lihat data (tabel) dan fitur latih citra wajah. Adapun desain selengkapnya sebagai berikut: A. Pengaturan Masuk dan pulang diisi dengan jam masuk dan jam pulang kantor dengan rentang waktu 00.00 - 23.00, untuk gaji per jam, lembur per jam dan terlambat per jam diisi dengan angka (nominal uang). desain pengaturan dapat dilihat pada gambar 3.8.
Gambar 3.8 Desain Pengaturan
III-8
B. Unduh Data Rentang data yang dapat diunduh adalah pertahun, dimana rentang tanggal dari 01 - 31, untuk bulan 01 - 12, dan tahun sampai dengan 2025. Desain unduh data dapat dilihat pada gambar 3.9.
Gambar 3.9 Desain Unduh Data
Setelah rentang data tanggal, bulan, tahun dimasukan, kemudian tombol unduh di klik maka rekap data absensi karyawan dengan rentang waktu tersebut akan terunduh. Contoh rekap data absensi karyawan dalam format microsoft excel (xlsx) dapat dilihat pada gambar 3.10.
Gambar 3.10 Rekap Data Karyawan Dalam Format File xlsx
III-9
C. Lihat Data Seluruh data absensi karyawan dapat dilihat disini. Kolom gaji pada tabel lihat data ini berasal dari perhitungan gaji CV. Karya Mitra Utama dengan perhitungan sebagai berikut: Gaji Perjam (GPJ) : (Jam Keluar - Jam Masuk) × Nominal Gaji Per Jam Terlambat Perjam (TPJ) : (Jam Masuk Karyawan - Jam Masuk) × Nominal Terlambat Per Jam Lembur Perjam (LPJ) : (Jam Pulang Karyawan - Jam Pulang) × Nominal Lembur Per Jam Gaji Perhari : GPJ + LPJ + TPJ
Sedangkan untuk desain lihat data dapat dilihat pada gambar 3.11.
Gambar 3.11 Desain Lihat Data Absen Karyawan
Dapat dilihat pada gambar 3.11 data yang diperlihatkan 10 data, show digunakan unutk melihat jumlah data per-page, search digunakan untuk mencari data, Showing 1 to 10 of 30 entries berarti memperlihatkan data dari nomor 1 hingga 10 dari 30 data yang ada dan previous 1 2 3 next merupakan navigasi page ke-berapa yang sedang dilihat.
III-10
D. Fitur Latih Pada fitur latih terdapat frame untuk mengambil citra wajah, dimana ID karyawan, nama karyawan, dan citra wajahnya disimpan ke dalam database, tanpa adanya proses latih
karyawan
tidak
bisa
melaksanakan
absensi.
Selengkapnya dapat dilihat pada gambar 3.12.
Gambar 3.12 Flowchart Latih
Keluaran yang dihasilkan adalah kondisi data karyawan berupa jika data karyawan belum ada maka, data karyawan akan ditambahkan dan jika data karyawan sudah ada maka citra latih akan ditambahkan ke data karyawan tersebut. Desain fitur latih dapat dilihat pada gambar 3.13.
III-11
Gambar 3.13 Desain Fitur Latih
Selain kondisi data karyawan, keluaran dapat juga berupa error message atau pesan kesalahan berupa tidak ada koneksi internet, wajah tidak ditemukan dan terlalu banyak wajah.
3.5
Rancangan Database Pada database aplikasi terdapat tiga buat tabel yaitu tabel absensi, tabel karyawan, tabel pengaturan yang berfungi untuk menyimpan data. Gambaran lengkapnya dapat dilihat pada Entity Relationship Diagram (ERD) gambar 3.14.
Gambar 3.14 Entity Relationship Diagram
Tabel pertama adalah t_absensi berfungsi untuk menyimpan data karyawan yang absen (absensi), tabel kedua adalah t_karyawan yang berfungisi untuk menyimpan data karyawan dan yang terakhir t_pengaturan berfungsi untuk menyimpan data pengaturan absensi.
3.6
Perangkat Keras Perangkat keras yang digunakan untuk pengujian aplikasi adalah laptop toshiba satelite L645 sebagai PC (Personal Computer), dan tiga
III-12
buah kamera masing-masing, digital PC camera CMET-W002, chicony 2.0 USB camera (webcam laptop), logitech c270. Personal Computer (PC) atau komputer personal adalah laptop yang
akan
digunakan
untuk
membuat
aplikasi,
pemrosesan
pendeteksian wajah serta pengolahan data. spesifikasi dari laptop yang akan digunakan adalah sebagai berikut: 1. Jenis Laptop
: Toshiba Satelite L645
2. Sistem Operasi : Windows 7 64 Bit 3. Prosesor
: Intel Core i3 m 350
4. Memori
: 2GB DDR2
5.
: 13.3 inchi (Resolusi 1366 x 768)
LCD
Sedangkan kamera digunakan untuk mengambil citra wajah, yang mana pada uji coba aplikasi akan menggunakan tiga buah kamera. sedangkan untuk absensi menggunakan chicony 2.0 USB camera (webcam laptop). Spesifikasi masing-masing adalah sebagai berikut: Tabel 3.1. Spesifikasi Masing-masing Kamera
Perangkat Lunak Perangkat lunak yang akan digunakan dalam membuat aplikasi adalah bahasa pemograman PHP, database management system (DBMS) MySQL dan pustaka perangkat lunak kairos.
3.8
Pengujian Aplikasi Pengujian aplikasi dilakukan dengan berbagai percobaan untuk membuktikan sistem ini bekerja sesuai dengan tujuan perancangan dan juga sesuai dengan yang diharapkan. Pengujian aplikasi yang dilaksanakan berupa pengujian fitur pendektesian dan pengenalan wajah, pengujian ini dilasanakan
III-13
menggunakan aplikasi deteksi dan pengenalan wajah melalui beberapa proses pengolahan citra untuk dapat mengenali citra yang ada dalam database sesuai dengan tujuan perancangan. Pengujian yang akan dilakukan adalah: 1. Citra wajah dan citra bukan wajah. 2. Citra wajah terdaftar dan tidak terdaftar. 3. Citra wajah identik sama. 4. Citra wajah menggunakan aksesoris. 5. Pengenalan multi citra wajah. Sedangkan untuk ketentuan pengujian adalah sebagai berikut: 1. Wajah menghadap kamera dengan jarak ± 45 cm, dengan kemiringan maksimal 15 derajat kekiri dan kekanan. 2. Pencahayaan saat penyimpanan dan pengenalan wajah dalam kondisi cukup, tidak kurang dan juga tidak berlebih. 3. Hasil yang dicatat berupa hasil pengujian (terdeteksi atau tidak) dan kecepatan pendeteksian, khusus untuk pengujian aplikasi waktu serta tanggal juga dicatat. 4. Citra latih yang digunakan sebanyak 6 citra untuk setiap orang. Penggunaan 6 citra latih didasari oleh kemampuan pengenalan wajah kairos akan bekerja maksimal jika menggunakan 6 – 8 citra latih dan minimal menggunakan 1 citra latih[11]. 5. Bandwith internet yang digunakan dalam pengujian sebesar 30Mbps 3.9
Implementasi Aplikasi Selain pengujian fitur pengenalan dan pendeteksian wajah. Implementasi aplikasi absensi berbasis pengenalan wajah akan dilaksanakan setelahnya, dimana lima karyawan akan melaksanakan absensi menggunakan aplikasi absensi berbasis pengenalan wajah selama satu minggu kerja(6 hari).
BAB IV PENGUMPULAN DAN PENGOLAHAN DATA
4.1
Pengumpulan Data Setelah mengumpulkan referensi baik dari buku, maupun sumbersumber informasi yang berhubungan dengan sistem absensi pengenalan wajah (perangkat keras maupun perangkat lunak) yang akan dibuat. Kemudian dibuat aplikasi deteksi dan pengenalan wajah yang digunakan untuk menguji uji akurasi aplikasi. Ketentuan pengumpulan pengujian akurasi aplikasi adalah sebagai berikut: 1. Citra wajah dan bukan wajah Pengumpulan data untuk pengujian citra wajah dan citra bukan
wajah
menggunakan
tiga
buah
citra
wajah
dan
menggunakan tiga buah citra bukan wajah, kesemua citra tidak melalui proses latih. 2. Citra wajah terdaftar dan tidak terdaftar Pengumpulan data untuk pengujian citra wajah terdaftar dan tidak terdaftar menggunakan tiga buah citra wajah yang telah melalui proses latih dan tiga buah citra wajah yang tidak melalui proses latih. 3. Citra wajah identik sama. Pengumpulan data untuk pengujian citra wajah identik sama menggunakan dua buah citra wajah yang telah melalui proses latih dan dua buah citra wajah yang tidak melalui proses latih. 4. Citra wajah menggunakan aksesoris. Pengumpulan data untuk pengujian citra wajah aksesoris, dimana citra yang telah melalui proses latih, kemudian pada proses pengenalan wajah, citra tersebut menggunakan aksesoris berupa masker, helm, topi dan kacamata. 5. Pengenalan multi citra wajah
IV-1
IV-2
Pengumpulan data untuk pengujian pendeteksian multi wajah menggunakan tiga buah citra wajah yang telah melalui proses latih, kemudian ketiga buah citra wajah tersebut melaksanakan proses pengenalan wajah secara bersamaan. Setelah pengujian akurasi deteksi dan pengenalan wajah dilaksanakan, Aplikasi absensi berbasis pengenalan wajah kemudian dibuat yang untuk selanjutnya diimplementasikan di CV. Karya Mitra Utama dimana, lima karyawan akan melaksanakan absensi menggunakan aplikasi absensi berbasis pengenalan wajah selama satu minggu kerja (6 hari).
4.2
Pengolahan Data Pengolahan data secara garis besar terbagi dua yaitu pengolahan data hasil dari uji akurasi aplikasi. Dimana hasil dari uji akurasi akan menentukan dan bagaimana implementasi dari pengolahan data yang selanjutnya yaitu pengolahan aplikasi absensi berbasis pengenalan wajah.
4.2.1 Pengolahan Data Uji Akurasi Aplikasi Pengolahan data untuk uji akurasi aplikasi secara garis besar terbagi menjadi dua bagian yaitu pengenalan wajah dan latih wajah. \ Pada proses pengenalan wajah citra diunggah dan kemudian diproses dengan keluaran hasil sukses berupa terdeteksi dan dikenali serta hasil salah berupa tidak terdeteksi (tidak ada citra wajah pada gambar). Seluruh bentuk keluaran masih berupa skrip, namun terdapat indikator pada bagian-bagian tertentu untuk mengetahui hasilnya. Untuk terdeteksi artinya ada wajah pada citra namun sistem tidak mengenali wajah tersebut. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.1.
IV-3
Gambar 4.1. Terdeteksi
Dapat dilihat pada gambar 4.1 Indikator yang menunjukan terdeteksi wajah pada citra terdapat pada bagian “status”,”failure” yang artinya pengenalan proses gagal dan “message”,“no match found” yang tidak ada wajah yang cocok. Sedangkan dikenali berarti ada wajah dalam aplikasi dan pemilik wajah dikenali oleh sistem. Indikator yang menunjukan wajah dikenali ada bagian “status”,”succes” yang artinya proses pengenalan wajah sukses. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.2.
Gambar 4.2. Dikenali
Dapat dilihat gambar 4.2. pada bagian “subject_id”, “faisal2” artinya wajah dikenali sebagai subject_id faisal2. Subject_id merupakan nomor unik yang diberikan pada setiap wajah sebagai pembeda dengan wajah lainnya. Singkatnya subject_id pada aplikasi sama fungsinya dengan plat nomor pada mobil atau nomor KTP pada KTP. Bagian candidates merupakan kanditat subject_id lainnya yang mungkin cocok dengan citra wajah dan bagian confidence merupakan
IV-4
nilai keyakinan sistem terhadap wajah yang dikenali, semakin besar nilai maka sistem semakin yakin dengan rentang dari 0 hingga 1. Tidak terdeteksi artinya tidak ada wajah pada citra. Indikator yang menunjukan citra wajah tidak terdeteksi ada pada bagian no faces found in the image yang artinya tidak ada wajah pada gambar. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.3.
Gambar 4.3. Tidak Terdeteksi
Setelah citra diuji, hasil pengujian tersebut dicatat dalam format tabel seperti digambarkan pada gambar 4.4.
Citra
Tipe Kamera Chicony 2.0 CMET-W002 C270
Deteksi Waktu
Hasil
Gambar 4.4. Gambar Format Tabel Hasil Pengujian
Pada proses latih wajah citra diunggah bersama dengan subject_id dari wajah kemudian diproses dengan keluaran hasil benar berupa terdeteksi dan citra akan langsung dimasukan ke database serta hasil salah berupa tidak terdeteksi (tidak ada citra wajah pada gambar) dan terlalu banyak citra wajah pada gambar. Seluruh bentuk keluaran masih berupa skrip, namun terdapat indikator pada bagian-bagian tertentu untuk mengetahui hasilnya. Citra wajah yang terdeteksi pada proses latih wajah dimasukan ke database bersama dengan subject_id yang mewakilinya. Indikator yang menunjukan wajah terdeteksi dan proses latih wajah berhasil ada pada bagian “status”,”succes” yang artinya proses pelatihan wajah sukses. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.5.
IV-5
Gambar 4.5. Terdeteksi
Dapat dilihat pada gambar 4.5 pada proses latih wajah pada bagian subject_id terdapat “hamdan4” yang artinya wajah pada gambar 4.5 diberi subject_id hamdan4. Tidak terdeteksi pada latih wajah sama dengan proses pengenalan wajah. Sehingga Indikator yang meunjukan juga sama yaitu pada bagian “message”, “no faces found in the image” yang artinya tidak ada wajah pada gambar. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.6.
Gambar 4.6. Tidak Terdeteksi
Pelatihan wajah hanya dapat dilakukan untuk satu orang perproses. Sehingga jika terdeteksi lebih dari satu citra wajah, seluruh citra wajah tersebut tidak dimasukan ke database. Indikator yang menunjukan terlalu banyak wajah pada gambar ada pada bagian “message”,”to many face found in the image” yang artinya terlalu banyak wajah pada gambar. Keluaran dari proses aplikasi dapat dilihat pada gambar 4.7.
IV-6
Gambar 4.7. Terlalu Banyak Wajah
Setelah citra diuji, hasil pengujian tersebut dicatat dalam format tabel. Seperti yang telah dijelaskan pada bab 3 bahwa citra latih yang digunakan adalah enam buah, yang artinya dua untuk setiap kamera seperti digambarkan pada gambar 4.8.
Tipe Kamera Foto
Latih Waktu
Latih Waktu
Chicony 2.0 CMET-W002 C270
Gambar 4.8. Gambar Format Tabel Hasil Pengujian
Wajah tidak temukan dan terlalu banyak wajah pada satu gambar merupakan error message atau pesan kesalahan yang berarti proses pengenalan, deteksi atau latih mengalami kendala sehingga tidak dapat memberikan hasil yang diinginkan. Dapat dilihat pada gambar 4.3, gambar 4.6 dan gambar 4.7 bahwa setiap pesan kesalahan diawali dengan “errors” dilanjutkan dengan pesan kesalahan dan kode kesalahannya. Selain dari pesan kesalahan yang telah isebukan ada beberapa pesan kesalahan lain yang terdapat pada aplikasi. Kesalahan tersebut merupakan kesalahan yang jarang terjadi seperti pemeliharan server (maintenance server), terdapat karakter khusus pada id, nama id terlalu panjang, dan lain-lain. Selengkapnya dapat dilihat pada tabel 4.1 Tabel 4.1
Kairos Error Message
No
Kode Kesalahan
Pesan Kesalahan
1
1000
invalid characters found in parameters
2
1004
file name is too long
Keterangan Terdapat karakter yang dilarang pada subject_id (contoh : /.,!@#$%^&, dll) Nama yang diberikan pada
IV-7
3
3001
4
5000
API temporarily unavailable an invalid image was sent must be jpg or png format no faces found in the image face that was detected is corrupt and cannot be processed
subject_id terlalu panjang API sedang mengalami pemeliharan server (maintenance server) Gambar yang dikirim harus berformat PNG atau JPG
Tidak terdapat wajah pada gambar Wajah yang terdeteksi setelah 6 5005 diteliti kembali ternyata bukan wajah Terlalu banyak wajah pada 7 5010 too many faces in image gambar (latih wajah) Sumber : https://www.kairos.com/docs/api/error-codes, selengkapnya dapat dilihat 5
5002
pada lampiran
Lain halnya dengan masalah koneksi internet, pada kasus tidak ada koneksi internet atau koneksi internet terlalu kecil aplikasi tidak akan memberikan hasil apapun (sukses maupun pesan kesalahan). Sehingga indikator yang menunjukan koneksi internet tidak ada atau koneksi internet terlalu kecil adalah kosong. seperti diperlihatkan gambar 4.9.
Gambar 4.9. Tidak Ada Koneksi Internet
4.2.2 Pengolahan Data Implementasi Aplikasi Sistem Absensi Berbasis Pengenalan Wajah Sama seperti uji akurasi pengolahan data pada implementasi aplikasi sistem absensi berbasis pengenalan wajah secara garis besar terbagi menjadi dua bagian yaitu pengenalan wajah dan latih wajah. Pengolahan data pada bagian ini tidak serumit pada uji akurasi, karena keluaran tidak lagi berupa skrip, melainkan sudah berupa pesan yang mewakili hasil proses dari pengenalan maupun latih wajah aplikasi. Pada proses pengenalan wajah terdapat frame pengambilan citra wajah yang secara otomatis akan mengambil citra, jika pada frame terdeteksi sebuah wajah. Citra tersebut diunggah dan
IV-8
diproses dengan hasil keluaran berupa hasil sukses dan hasil gagal. Lebih jelasnya dapat dilihat pada gambar 4.10
Gambar 4.10. Pengenalan Wajah Pada Implementasi Sistem
Dapat dilihat pada gambar 4.10 bahwa keluaran yang diberikan yaitu “terjadi kesalahan koneksi internet bermasalah silakan
coba
kembali”. Keluaran selengkapnya dapat dilihat pada tabel 4.2. Tabel 4.2 Keluaran Pada Proses Pengenalan Wajah No 1 2 3
Keluaran Hasil Sukses Selamat datang (nama) Selamat pulang (nama) Anda sudah melaksanakan absen hari ini
Keluaran Hasil Gagal Tidak ada Koneksi Internet Wajah Tidak ditemukan Wajah Tidak Terdaftar
Pada gambar 4.10 juga terdapat “status” yang merupakan status proses penganalan wajah, dimana “ok” berarti aplikasi sudah siap presensi wajah bisa dilaksanakan, dan “harap tunggu” berarti aplikasi sedang memproses presensi wajah dan presenti tidak dapat dilakukan. Untuk pesan kesalahan (error message) selain dari yang terdapat pada tabel seperti maintenance server aplikasi memiliki pesan default yaitu “terjadi kesalahan silahkan coba kembali”. Proses latih tidak terlalu berbeda dengan proses pengenalan wajah, perbedaannya terletak pada pengambilan citra. Setelah ID dan nama karyawan dimasukan, wajah yang akan dilatih kemudian dihadapkan pada webcam dengan posisi yang pas terlebih dahulu selanjutnya tekan tombol ikon kamera pada frame untuk mengambil citra. Citra tersebut diunggah dan diproses dengan keluaran berupa hasil benar dan hasil. Lebih jelasnya dapat dilihat pada gambar 4.11
IV-9
Gambar 4.11. Latih Wajah Pada Implementasi Sistem
Dapat dilihat pada gambar 4.10 bahwa keluaran yang diberikan yaitu “terjadi kesalahan koneksi internet bermasalah silakan
coba
kembali”. Keluaran selengkapnya dapat dilihat pada tabel 4.3. Tabel 4.3 Keluaran Pada Proses Latih Wajah No 1 2
Keluaran Hasil Sukses Data karyawan berhasil ditambahkan Data latih berhasil ditambahkan
Keluaran Hasil Gagal Tidak ada Koneksi Internet Wajah Tidak ditemukan Terlalu Banyak Wajah dalam satu gambar
3
Untuk pesan kesalahan (error message) selain dari yang terdapat pada tabel seperti maintenance server aplikasi memiliki pesan default yaitu “terjadi kesalahan silahkan coba kembali”. Hasil implementasi tersebut kemudian dicatat dalam format tabel seperti digambarkan pada gambar 4.12. Latih (Waktu)
Pengenalan (Masuk)
Pengenalan (Pulang)
Tanggal
Waktu (Masuk)
Foto
Gambar 4.12. Gambar Format Tabel Hasil Pengujian
Dengan penjelasan sebagai berikut: 1.
Foto diisi dengan foto karyawan
2.
latih (waktu), lama waktu pelatihan wajah
Waktu (Pulang)
Gaji
IV-10
3.
pengenalan (masuk), lama waktu absen masuk kerja
4.
pengenalan (pulang), lama waktu absen pulang kerja
5.
tanggal, tanggal dilaksanaknnya absensi
6.
waktu (masuk), waktu/jam dilaksanakannya absensi masuk kerja
7.
waktu (pulang), waktu/jam dilaksanakannya absensi pulang kerja
8.
Gaji, gaji karyawan per tanggal ini
BAB V ANALISIS DAN PEMBAHASAN
5.1
Pengujian Akurasi Aplikasi Pada pengujian ini akan menjelaskan bagaimana proses pengujain akurasi aplikasi pengenalan wajah mulai dari proses latih sampai dengan proses pengenalan wajah. Pengujian akan dilakukan dengan berbagai percobaan untuk membuktikan sistem ini bekerja sesuai dengan tujuan perancangan dan sesuai dengan yang diharapkan. Berikut adalah beberapa pengujian yang akan dilakukan untuk mendapatkan data-data hasil pengujiannya antara lain: 1. Citra wajah dan bukan wajah. 2. Citra wajah terdaftar dan tidak terdaftar. 3. Citra wajah identik sama. 4. Citra wajah menggunakan aksesoris. 5. Pengenalan multi citra wajah.
5.1.1 Citra Wajah Dan Bukan Wajah Pengujian ini menggunakan tiga buah citra wajah dan tiga buah citra bukan wajah, kesemua citra tidak melalui proses latih. Sampel dari pengujian dapat dilihat pada tabel 5.1 Tabel 5.1 No
Sampel Citra Wajah dan Bukan Wajah Citra wajah
Citra bukan wajah
Faisal
Jalan
1
V-1
V-2
No
Citra wajah
Citra bukan wajah
Hamdan
Meja
Ian
Rerumputan
2
3
Sedangkan hasil dari pengujian dapat dilihat pada tabel 5.2. Tabel 5.2 No 1
2
3
4
5
6
Hasil Pengujian Citra Wajah dan Bukan Wajah
Nama Faisal
Hamdan
Ian
Jalan
Meja
Rerumputan
Tipe Kamera
Deteksi Waktu
Hasil
Chicony 2.0
8 detik
Terdeteksi
CMET-W002
22 detik
Terdeteksi
C270
5 detik
Terdeteksi
Chicony 2.0
14 detik
Terdeteksi
CMET-W002
12 detik
Terdeteksi
C270
6 detik
Terdeteksi
Chicony 2.0
12 detik
Terdeteksi
CMET-W002
13 detik
Terdeteksi
C270
7 detik
Terdeteksi
Chicony 2.0
10 detik
Tidak terdeteksi
CMET-W002
9 detik
Tidak terdeteksi
C270
7 detik
Tidak terdeteksi
Chicony 2.0
10 detik
Tidak terdeteksi
CMET-W002
11 detik
Tidak terdeteksi
C270
8 detik
Tidak terdeteksi
Chicony 2.0
11 detik
Tidak terdeteksi
CMET-W002 C270
8 detik 9 detik
Tidak terdeteksi Tidak terdeteksi
V-3
Dari hasil pengujian pengenalan citra wajah dan citra bukan wajah dapat dilihat hasilnya bahwa seluruh citra wajah (9 citra ) terdeteksi dan seluruh citra bukan wajah (9 citra) tidak terdeteksi. Waktu total yang digunakan selama pengujian untuk pengenalan wajah (18 citra) adalah 182 detik.
5.1.2 Citra Wajah Terdaftar Dan Tidak Terdaftar Pengujian ini menggunakan tiga buah citra wajah terdaftar atau sudah melalui proses latih wajah dan tiga buah citra wajah tidak terdaftar atau tidak melalui proses latih wajah. Sampel dari pengujian dapat dilihat pada tabel 5.3. Tabel 5.3 No
Sampel Citra Wajah Terdaftar dan Tidak Terdaftar Citra wajah terdaftar
Citra wajah tidak terdaftar
Faisal
Umar
Hamdan
Suryo
Ian
Vega
1
2
3
V-4
Hasil dari pengujian (latih wajah) dapat dilihat pada tabel 5.4. Tabel 5.4 No 1
Nama Faisal
2
Hamdan
3
Ian
Hasil Latih Citra Wajah Terdaftar Tipe Kamera
Latih Waktu
Latih Waktu
Chicony 2.0
9 detik
12 detik
CMET-W002
9 detik
13 detik
C270
4 detik
3 detik
Chicony 2.0
10 detik
12 detik
CMET-W002
9 detik
13 detik
C270
4 detik
3 detik
Chicony 2.0
15 detik
14 detik
CMET-W002
10 detik
9 detik
C270
4 detik
6 detik
Total waktu pengujian
159 detik
Sedangkan hasil dari pengujian (pengenalan wajah) dapat dilihat pada tabel 5.5. Tabel 5.5 No 1
2
3
4
5
6
Hasil Pengenalan Citra Wajah Terdaftar dan Tidak Terdaftar
Nama Faisal
Hamdan
Ian
Umar
Suryo
Vega
Tipe Kamera
Deteksi Waktu
Hasil
Chicony 2.0
9 detik
Dikenali
CMET-W002
10 detik
Dikenali
C270
3 detik
Dikenali
Chicony 2.0
10 detik
Dikenali
CMET-W002
10 detik
Dikenali
C270
4 detik
Dikenali
Chicony 2.0
14 detik
Dikenali
CMET-W002
13 detik
Dikenali
C270
5 detik
Dikenali
Chicony 2.0
13 detik
Terdeteksi
CMET-W002
11 detik
Terdeteksi
C270
4 detik
Terdeteksi
Chicony 2.0
13 detik
Tidak Terdeteksi
CMET-W002
10 detik
Terdeteksi
C270
4 detik
Terdeteksi
Chicony 2.0
14 detik
Terdeteksi
CMET-W002
12 detik
Terdeteksi
C270
5 detik
Terdeteksi
Total waktu pengujian
164 detik
V-5
Dari hasil pengujian pengenalan citra wajah terdaftar dan citra wajah tidak terdaftar dapat dilihat hasilnya bahwa semua citra wajah terdaftar (9 citra) dikenali sedangkan untuk citra tidak terdaftar, 8 citra terdeteksi dan 1 citra tidak terdeteksi. Waktu total yang digunakan selama pengujian (32 citra) adalah 323 detik (latih wajah 18 citra 159 detik, pengenalan wajah 18 citra 164 detik).
5.1.3 Citra Wajah Identik Sama Pengujian ini menggunakan dua buah citra wajah yang telah melalui proses latih dan dua buah citra wajah yang tidak melalui proses latih. Sampel dari pengujian dapat dilihat pada tabel 5.6. Tabel 5.6 No
Sampel Citra Wajah Identik Sama
Citra wajah terdaftar
Citra wajah tidak terdaftar
Fazila
Fatya
1
Hasil dari pengujian (latih wajah) dapat dilihat pada tabel 5.7. Tabel 5.7 No 1
2
Nama Fazila
Fatya
Hasil Latih Citra Wajah Identik Sama Latih Waktu
Latih Waktu
Chicony 2.0
Tipe Kamera
16 detik
17 detik
CMET-W002
10 detik
11 detik
C270
2 detik
3 detik
Chicony 2.0
15 detik
16 detik
CMET-W002
13 detik
12 detik
C270
2 detik
2 detik
Sedangkan hasil dari pengujian (pengenalan wajah) dapat dilihat pada tabel 5.8.
V-6
Tabel 5.8 No
Hasil Pengenalan Citra Wajah Identik Sama
Nama
1
Fatya
2
Fazila
Tipe Kamera
Deteksi Waktu
Hasil
Chicony 2.0
12 detik
Dikenali
CMET-W002
13 detik
Dikenali sebagai orang lain
C270
2 detik
Dikenali
Chicony 2.0
13 detik
Dikenali
CMET-W002
12 detik
Tidak Terdeteksi
C270
3 detik
Dikenali
Dari hasil pengujian pengenalan citra wajah identik sama dapat dilihat hasilnya bahwa 4 citra wajah dikenali, 1 citra wajah dikenali sebagai orang lain dan 1 citra tidak terdeteksi. Waktu total yang digunakan selama pengujian (18 citra) adalah 174 detik (latih wajah 12 citra 119 detik, pengenalan wajah 6 citra 55 detik).
5.1.4 Citra Wajah Menggunakan Aksesoris Pengujian ini menggunakan citra yang telah melalui proses latih,
kemudian
menggunakan
pada
proses
pengenalan
wajah,
aksesoris
berupa
masker, helm, topi
citra dan
kacamata. Sampel dari pengujian dapat dilihat pada tabel 5.9. Tabel 5.9 No
Sampel Citra Menggunakan Aksesoris
Citra latih wajah
Citra pengenalan wajah
Citra pengenalan wajah
Ahmad
Ahmad (Masker)
Ahmad (Topi)
Ahmad (Helm)
Ahmad (Kacamata)
1
2
V-7
Hasil dari pengujian (latih wajah) dapat dilihat pada tabel 5.10. Tabel 5.10 Hasil Latih Wajah Menggunakan Aksesoris No
Nama
1
Ahmad
Tipe Kamera Chicony 2.0 CMET-W002 C270
Latih Waktu 14 detik 13 detik 5 detik
Latih Waktu 10 detik 11 detik 6 detik
Sedangkan hasil dari pengujian (pengenalan wajah) dapat dilihat pada tabel 5.11. Tabel 5.11 Hasil Pengenalan Wajah Menggunakan Aksesoris No
Hasil Terdeteksi Tidak terdeteksi Dikenali Dikenali Tidak terdeteksi Dikenali Dikenali Dikenali Dikenali Tidak terdeteksi Tidak terdeteksi Tidak terdeteksi
Dari hasil pengujian pengenalan citra wajah menggunakan aksesoris dapat dilihat hasilnya bahwa 6 citra wajah dikenali, 1 citra wajah terdeteksi dan 5 citra wajah tidak terdeteksi. Waktu total yang digunakan selama pengujian (18 citra) adalah 137 detik (latih wajah 6 citra 59 detik, pengenalan wajah 12 citra 78 detik).
5.1.5 Pengenalan Multi Citra Wajah Pengujian ini menggunakan tiga buah citra wajah yang telah melalui proses latih, kemudian ketiga buah citra wajah tersebut melaksanakan proses pengenalan wajah secara bersamaan. Sampel dari pengujian dapat dilihat pada tabel 5.12.
V-8
Tabel 5.12 Sampel Pengenalan Multi Citra Wajah No
Citra wajah terdaftar
1
Ahmad
Riandi,
Indra
Citra yang akan diuji
2
Riandi, Ahmad dan Indra
Hasil dari pengujian (latih wajah) dapat dilihat pada tabel 5.13. Tabel 5.13 Hasil Latih Multi Citra Wajah No
Sedangkan hasil dari pengujian (pengenalan wajah) dapat dilihat pada tabel 5.14.
V-9
Tabel 5.14 Hasil Pengenalan Multi Citra Wajah No
Nama
Tipe Kamera
Riandi, Ahmad, Indra dalam 1 citra
1
Pengenalan Waktu
Chicony 2.0
7 detik
CMET-W002
11 detik
C270
12 detik
Hasil Riandi, Indra, Ahmad Terdeteksi Riandi, Indra, Ahmad Tidak Terdeteksi Riandi, Ahmad, Indra Dikenali
Dari hasil pengujian pengenalan multi citra wajah dapat dilihat hasilnya bahwa pada 2 citra seluruh wajah pada citra dikenali (Riandi, Ahmad dan Indra) dan 1 citra 2 wajah dikenali (Riandi, Indra), 1 wajah terdeteksi (Ahmad). Waktu total yang digunakan selama pengujian (21 citra) adalah 249 detik (latih wajah 18 citra 219 detik, pengenalan wajah 3 citra 30 detik).
5.2
Implementasi Aplikasi Sistem Absensi Berbasis Pengenalan Wajah Pengujian ini akan menjelaskan bagaimana proses implementasi aplikasi sistem absensi berbasis pengenalan wajah mulai dari proses latih hingga proses pengenalan wajah. Pengujian dilakukan untuk membuktikan sistem absensi bekerja sesuai dengan tujuan perancangan dan sesuai dengan yang diharapkan. Lima karyawan akan melaksanakan presensi menggunakan aplikasi absensi berbasis pengenalan wajah selama seminggu (6 hari). Sampel citra wajah karyawan dapat dilihat pada tabel 5.15 Tabel 5.15 Sampel Citra Wajah Karyawan No
Citra wajah
Citra wajah
Iman
Ahmad
1
V-10
No
Citra wajah
Citra wajah
Zamzam
Fajar
2
3
Dadi
Kelima karyawan tersebut kemudian melaksanakan pelatihan hingga terdapat 6 citra latih pada database untuk setiap orang. Waktu yang digunakan selama proses latih wajah dapat dilihat pada tabel 5.16. Tabel 5.16 Hasil Latih Karyawan Latih Waktu (Detik)
Nama Iman Ahmad Zamzam Fajar Dadi
1 10 9 7 9 12
2 9 12 9 11 6
3 14 8 12 6 14
4 3 4 5 6 10
5 22 8 15 11 9
6 13 10 12 13 9
Pengujian dilaksanakan dimulai tanggal 21 - 26 agustus 2017 dengan pengaturan jam kantor sesuai dengan jam kantor CV. Karya Mitra Utama yaitu pukul 08.00 – 16.00. Selengkapnya pengaturan dapat dilihat pada gambar 5.1.
V-11
Gambar 5.1
Pengaturan
Data hasil presensi langsung dapat dilihat dalam format tabel pada data presensi karyawan. Untuk lebih jelasnya dapat dilihat pada gambar 5.2
Gambar 5.2 Data Karyawan Dalam Format Tabel
Data kemudian diunduh melalui unduh data presensi karyawan dengan rentang waktu 21 – 26 Agustus 2017. Untuk lebih jelasnya dapat dilihat pada gambar 5.3.
Gambar 5.3 Unduh Data Presensi Karyawan
V-12
Setelah tombol unduh di klik akan muncul verfifikasi pengunduhan, kemudian data presensi karyawan dengan rentang waktu 21 – 26 Agustus 2017 akan terunduh. Verifikasi pengunduhan dapat dilihat pada gambar 5.4.
Gambar 5.4 Verifikasi Pengunduhan
Untuk membuka file secara langsung pilih open with, sedangkan untuk menyimpan file pilih save file. Untuk hasil data absensi karyawan dalam format microsoft excel (xlsx) dapat dilihat paga gambar 5.5.
Gambar 5.5 Data Karyawan Dalam Format File Xlsx
Dapat dilihat pada gambar 5.5 data karyawan yang diberikan oleh sistem sudah berupa id karyawan, nama karyawan, jam masuk, jam keluar dan gaji karyawan. Untuk hasil dari implementasi aplikasi sistem absensi berbasis pengenalan wajah berupa tanggal presensi, waktu pengenalan masuk, waktu pengenalan pulang, waktu atau jam masuk dan waktu atau jam pulang dapat dilihat pada tabel 5.17.
V-13
Tabel 5.17 Hasil Presensi Karyawan Nama
Iman
Ahmad
Zamzam
Fajar
Dadi
Pengenalan (Masuk) 9
Pengenalan (Pulang) 9
21/08/2017
Waktu (Masuk) 7:59:57
Waktu (Pulang) 16:56:54
9
40500
9
22/08/2017
7:41:39
17:06:03
43100
9
9
23/08/2017
7:31:29
17:11:08
44500
8
8
24/08/2017
7:25:23
17:14:11
45500
14
14
25/08/2017
7:13:11
17:12:09
45900
9
9
26/08/2017
7:07:05
17:15:12
46800
9
9
21/08/2017
7:51:49
17:00:58
41700
Tanggal
Gaji
24
9
22/08/2017
7:43:41
17:05:02
71000
9
9
23/08/2017
7:35:33
20:09:06
82600
24
8
24/08/2017
7:27:25
17:13:10
45200
9
14
25/08/2017
7:17:15
21:18:15
42800
7
9
26/08/2017
7:05:03
17:16:13
47100
6
9
21/08/2017
7:55:53
16:58:56
47300
7
9
22/08/2017
7:47:45
20:03:00
69300
6
9
23/08/2017
7:33:31
17:10:07
100100
8
8
24/08/2017
7:21:19
23:16:13
44200
9
14
25/08/2017
7:15:13
22:19:16
91900
7
9
26/08/2017
7:03:01
17:17:14
41100
7
9
21/08/2017
7:57:55
16:57:55
43700
8
9
22/08/2017
7:49:47
17:01:59
81800
9
9
23/08/2017
7:37:35
17:08:05
40800
8
8
24/08/2017
7:23:21
21:15:12
42000
8
14
25/08/2017
7:11:09
17:13:10
46200
7
9
26/08/2017
7:09:07
17:14:11
46500
7
9
21/08/2017
7:53:51
16:59:57
41400
9
9
22/08/2017
7:45:43
17:04:01
42500
9
9
23/08/2017
7:39:37
17:07:04
43400
9
8
24/08/2017
7:29:27
17:12:09
44800
8
14
25/08/2017
7:19:17
22:17:14
91300
9
9
26/08/2017
7:00:59
17:18:15
47700
Dapat dilihat pada tabel 5.17 pada kolom gaji merupakan gaji per hari. Gaji perhari tersebut kemudian dijumlahkan. Hasil akhir berupa gaji mingguan (21 – 26 Agustus 2017) untuk karyawan yang melaksanakan absensi dapat dilihat pada tabel 5.18
V-14
Tabel 5.18 Gaji Mingguan 21 – 26 Agustus 2017 No 1 2 3 4 5
Nama Iman Santina Ahmad Khairul Zamzam Anshori Fajar Buana Dadi
Dapat dilihat pada tabel 5.16 untuk hasil latih dan tabel 5.17 untuk hasil presensi waktu total yang digunakan selama pengujian (90 citra) adalah 869 detik (latih wajah 30 citra 298 detik, presensi 60 citra 571 detik).
5.3
Rekapitulasi Pengujian Aplikasi Setelah melaksanakan pengujian uji akurasi dan implementasi dilakukan rekapitulasi untuk mengetahui persentase akurasi dan rata-rata waktu pengujian dari aplikasi deteksi dan pengenalan wajah maupun aplikasi absensi. Selengkapnya dapat dilihat pada tabel 5.19. Tabel 5.19 Rekapitulasi Pengujian Hasil N o
Pengujian
1
Citra wajah dan citra bukan wajah.
2
Citra wajah terdaftar dan tidak terdaftar.
Proses
T T
Citra Total T D (detik)
Latih Pengen alan
9
9 0
Latih Pengen alan
1
8 9
Latih 3
4
Citra wajah identik sama.
Citra wajah menggunakan aksesoris (helm, kacamata, masker, topi)
Pengen alan
1
0 5
Latih Pengen alan
5
1 6
Waktu Total (detik)
-
-
18
182
18
159
18
164
12
119
6
55
6
59
12
78
Keterangan
9 citra wajah terdeteksi, 9 citra bukan wajah terdeteksi. Sukses : citra wajah terdeteksi, citra bukan wajah tidak terdeteksi 1 citra wajah tidak terdaftar tidak terdeteksi, 8 citra wajah tidak terdaftar terdeteksi dan 9 citra wajah terdaftar dikenali. Sukses : terdaftar dikenali, tidak terdaftar terdeteksi 1 citra wajah tidak terdeteksi, 1 citra wajah dikenali sebagai orang lain dan 4 citra wajah dikenali. Sukses : citra wajah dikenali 6 (3 masker, 1 topi, 1 helm) citra wajah tidak terdeteksi, 1 (helm) citra wajah terdeteksi dan 5 (3 kacamata, 2 topi, 1 helm) citra wajah dikenali. Sukses : citra wajah dikenali
V-15
Hasil N o
5
6
Pengujian
Pengenalan multi citra wajah. Implementasi Aplikasi Selama 1 minggu kerja (6 hari) TOTAL
Proses
T T
Citra Total T D (detik)
Latih Pengen alan
3
18
219
3
30
30
298
3 3
Latih
Waktu Total (detik)
Keterangan Dalam 1 citra terdapat 3 wajah. 3 wajah dikenali, 3 wajah terdeteksi, 3 wajah tidak terdeteksi. Sukses : (ketiga wajah dalam 1 citra dikenali) Setiap hasil gagal akan terus diulang hingga hasil sukses
Pengen alan
60
571
Latih
84
854
Pengenalan
117
1080
Catatan : TT = Tidak Terdeteksi, T = Terdeteksi, D = dikenali
Tabel 5.19 masih merupakan rekap data atau pengumpulan data yang didapat selama pengujian. Sehingga untuk mengetahui berapa jumlah sukses dan gagal dari setiap pengujian. Maka, diperlukan analisa lanjutan dengan cara mencocokan kolom hasil dengan indikator sukses yang ada pada kolom keterangan. Hasil dari analisa lanjutan tersebut dapat dilihat pada tabel 5.20. Tabel 5.20 Analisa Lanjutan No
Pengujian
Hasil s
g
n
1
Citra wajah dan citra bukan wajah
18
0
18
2
Citra wajah terdaftar dan tidak terdaftar
17
1
18
3
Citra wajah identik sama
4
2
6
4
Citra Wajah Aksesoris (Topi)
2
1
3
5
Citra Wajah Aksesoris (Masker)
0
3
3
6
Citra Wajah Aksesoris (Kacamata)
3
0
3
7
Citra Wajah Aksesoris (Helm)
2
1
3
8
Citra Multi Wajah
3
6
9
Catatan : s = Sukses, g = Gagal, n = Total Pengujian
V-16
Untuk menentukan persentase akurasi dilaksanakan perhitungan perpengujian dengan rumus perhitungan jumlah citra yang sukses( ) dibagi dengan jumlah seluruh citra yang diuji pada tiap pengujian( ) dikali 100%. Persentase akurasi tiap pengujian adalah sebagai berikut: 1. Citra wajah dan citra bukan wajah. = 18,
= 18 ,
× 100% =
× 100% = 100%
(1)
2. Citra wajah terdaftar dan tidak terdaftar. = 17,
= 18 ,
× 100% =
× 100% = 94,44%
(2)
3. Citra wajah identik sama. = 4,
= 6
× 100% = × 100% = 66,66%
,
(3)
4. Citra wajah menggunakan aksesoris. • Topi
:
= 2,
= 3 , × 100% = × 100% = 66,66% (4)
• Masker
:
= 0,
= 3 , × 100% = × 100% = 0%
• Kacamata :
= 3,
= 3 , × 100% = × 100% = 100% (6)
• Helm
= 1,
= 3 , × 100% = × 100% = 33,33% (7)
:
(5)
5. Pengenalan multi citra wajah. = 3,
= 9
× 100% = × 100% = 33,33%
,
(8)
Sedangkan persentase nilai akurasi sistem adalah jumlah persentase untuk pengujian citra wajah dan bukan wajah serta citra wajah terdaftar dan tidak terdaftar kemudian nilai tersebut dibagi dua[10]. Sehingga nilai akurasi sistem adalah: ,
= 97,22%
(9)
Sedangkan untuk menghitung waktu rata-rata yang dibutuhkan aplikasi pada proses latih wajah: # #
%$&!'# % ($ ) #
! "
%$ =
*
= 10,17 detik
(10)
Dan pada proses pengenalan: # 01 21
#
&!'# % ($ ) 01 21
! "
#
=
= 9,23 detik.
(11)
BAB VI KESIMPULAN DAN SARAN
6.1
Kesimpulan Setelah melaksanakan penelitian perancangan dan implementasi sistem absensi pengenalan wajah menggunakan metode eigenface di CV. Karya Mitra Utama bandung maka dapat disimpulkan sebagai berikut : 1.
Pembuatan sistem absensi berbasis pengenalan wajah diawali dengan pengumpulan referensi (studi literatur), selanjutnya membuat aplikasi deteksi dan pengenalan wajah yang digunakan untuk menguji akurasi sistem, setelah itu aplikasi sistem absensi berbasis pengenalan wajah dibuat untuk diuji di CV. Karya Mitra Utama sebagai pengganti sistem absensi berbasis kartu.
2.
Aplikasi dibuat berdasarkan hasil analisa aplikasi (blok diagram sistem), analisa desain aplikasi dan analisa rancangan database. Selain itu analisa perangkat keras dan lunak juga dibutuhkan supaya aplikasi dapat berjalan dengan semestinya.
3. Persentase nilai akurasi sistem adalah 97,22%. Keluaran aplikasi sendiri sudah berupa nilai gaji karyawan dalam format xlsx tidak seperti sistem absensi kartu yang masih berupa jam kerja karyawan yang perlu dimasukan dan diolah kembali di microsoft excel. Hal ini menandakan bahwa aplikasi sudah dapat digunakan sebagai aplikasi sistem absensi dan mempercepat proses pengolahan data absensi karyawan.
6.2
Saran Berdasarkan kesimpulan yang telah didapat, ada beberapa saran supaya akurasi dan kecepatan aplikasi meningkat yaitu: 1.
Kamera yang digunakan sebaiknya memiliki hasil gambar yang baik, menghasilkan ukuran gambar yang tidak terlalu besar dan memiliki lampu kedip (flash) atau inframerah sehingga dapat digunakan pada kondisi cahaya gelap.
IV-1
IV-2
2.
Bandwith internet disarankan diatas 10Mbps. Semakin besar bandwith internet semakin cepat pengunggahan citra ke server, semakin cepat pula hasil keluar.
Berdasarkan kesimpulan yang telah didapat juga, ada beberapa saran untuk pengembangan aplikasi ini selanjutnya yaitu: 1.
Meningkatkan akurasi pada membedakan wajah yang identik sama hingga diatas 90%. Salah satu cara yang dapat digunakan adalah menambahkan sistem deteksi dan pengenalan suara pada aplikasi.
2.
Mempercepat waktu proses pada aplikasi hingga dibawah 5 detik.
3.
Sistem pengenalan wajah dapat digunakan untuk pelaksanaan absensi lebih dari satu orang.
DAFTAR PUSTAKA 1.
Fatta, Hanif. “Rekayasa Sistem Pengenalan Wajah”. Andi, Yogyakarta, 2009.
2.
Solichin, Ahmad. "Pemograman Web PHP dan MySQL", Universitas Budi Luhur, Jakarta, 2012.
3.
Putra, Darma. "Pengolahan Citra Digital", Andi, Yogyakarta, 2010.
4.
Tri, Nyoman, dkk. "Perancangan dan Pengembangan Sistem Absensi Realtime Melalui Metode Pengenalan Wajah", Jurnal Sains dan Teknologi, Vol. 03, 2014.
5.
Mulyono, Tri, dkk. "Sistem Pengenalan Wajah dengan Metode Eigenface dan Jaringan Syaraf Tiruan (JST)", Jurnal Berkala Fisika, Vol. 15, 2012.
6.
Irawan, Beni, dkk. “Implementasi Pengenalan Wajah Dengan Metode Eigenface Pada Sistem Absensi”, Jurnal Coding, Vol. 03, 2015.
7.
Indra. "Sistem Pengenalan Wajah Dengan Metode Eigenface Untuk Absensi Pada PT. florindo lestari", Jurnal Seminar Nasional Teknologi Informasi & Komunikasi Terapan (Semantik), 2012.
8.
Singgalen, Rinaldo. "Sistem Pengenalan Wajah Untuk Identifikasi Akses Tempat Penyimpanan Barang", Skripsi, Jurusan Teknik Elektro, UNIKOM, 2016.
9.
Saputra, Tommy. "Implementasi Metode Viola Jones Sistem Absensi Siswa Berbasis Pendeteksi Wajah Studi Kasus di SMPN 3 Rangkasbitung". Skripsi, Jurusan Teknik Informatika, UNIKOM, 2016.
10. Gunawan, Krisna. "Perancangan Sistem Pengenalan Wajah Berbasis Algoritma Principal Component Analysis (PCA)". Skripsi, Jurusan Teknik Informatik, UNIKOM, 2013. 11. https://www.kairos.com, diakses pada 12/07/2017. 12. http://php.net, diakses pada 12/07/2017.
LAMPIRAN TUGAS AKHIR PERANCANGAN DAN IMPLEMENTASI SISTEM ABSENSI BERBASIS PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DI CV. KARYA MITRA UTAMA
LAMPIRAN 1 : PERUSAHAAN 1. PROFIL PERUSAHAAN 2. FASILITAS MESIN 3. PENGALAMAN KERJA 4. PERUSAHAAN PELANGGAN DAN PERUSAHAAN PENDUKUNG 5. SISTEM KETENAGAKERJAAN 6. PRODUK DAN MESIN 7. LOKASI PERUSAHAAN (DENAH & PETA)
PROFIL PERUSAHAAN 1.
Gambaran Umum CV. Karya Mitra Utama merupakan salah satu perusahaan yang bergerak pada bidang perindustrian seperti machining, electroplating, heat treatment, supplier, consultant management dan general trading yang beralamat di komplek lingkungan industri kecil blok A6 Bandung Telp./Fax. (022) 7808454.
Gambar 1
Logo CV. Karya Mitra Utama
Logo CV. Karya Mitra Utama memiliki latar belakang warna biru yang berarti percaya diri dan sebuah huruf "K" yang merupakan inisial karya mitra utama dengan perpaduan warna jingga dan putih dengan artian bersih, nyaman dan berkualitas.
2.
Sejarah Perusahaan Delevery, Quality dan Cost merupakan faktor utama sebuah perusahaan untuk dapat melangkah dan mempertahankan kelangsungan hidupnya. Jika suatu perusahaan dapat melakukan Delevery (pengiriman) yang tepat, Quality (kualitas) yang sesuai spesifikasi dan Cost (harga) kompetitif maka perusahaan itu akan terus maju dan keberadaannya sangat diperlukan oleh masyarakat pengguna.
Gambar 2
Gedung Kantor CV. Karya Mitra Utama
Kemajuan lndustri logam dan non logam di Indonesia saat ini sedang mengalami peningkatan yang sangat besar, kebutuhan dunia
industri
akan bahan baku ataupun kebutuhan konsumen akan produk jadi sangat tinggi. Hal ini adalah peluang bagi perusahaan untuk melakukan stategi yang tepat dan terarah. Untuk itu pada hari selasa tanggal 18 September 2002 merubah status dari perusahaan non PKP (Bukan Perusahaan Kena Pajak) menjadi PKP (Perusahaan Kena Pajak) akta notaris nomor 42 dengan nama CV. Karya Mitra Utama dan NPWP No.02.161.887.1421.000. Adapun bidang pekerjaan yang dilakukan sesuai dengan SIUP (surat izin usaha perdagangan) Nomor : 0209/10-12/PK/11/04.
3.
Visi dan Misi Perusahaan Dalam menjalakan bidang perindustriannya CV. Karya Mitra Utama memiliki visi untuk melayani pasar regional melalui produk yang berkualitas dan menciptakan kerjasama jangka panjang dengan para pelanggan. dengan misi menyediakan produk dan jasa yang berkualitas tinggi serta memenuhi kebutuhan pelanggan melalui program pemasaran yang terbaik.
FASILITAS MESIN Dalam menjalankan kegiatan perusahaan, kami didukung oleh mesinmesin dari produsen ternama yang mana mesinnya sudah sesuai dengan standar SNI, diantaranya dapat dilihat pada tabel fasilitas mesin. Tabel Fasilitas Mesin No
Jenis Mesin
Merk
Made in
Jumlah
1
Vertical Milling
MADA
Jepang
2 buah
2
Horizontal Milling
MADA
Jepang
3 buah
3
Lathe
Pinacho
Spanyol
3 buah
4
Lathe
Wasino
Jepang
2 buah
5
Lathe
Colchester
Inggris
2 buah
6
Shaping
Okamoto
Jepang
2 buah
7
Surface Grinding
Okamoto
Jepang
1 buah
8
Cylindrical Grinding
Okuma
Jepang
1 buah
9
Milling and Drilling
Pinacho
Spanyol
2 buah
10
Bench Drilling
West Lake
China
3 buah
11
Mesin Press
Okamoto
Jepang
7 buah
12
Mesin Bending
Mada
Jepang
1 buah
13
Mesin Potong
Mada
Jepang
2 buah
14
Mesin Las TIG
ESSAB
Belgia
1 buah
15
Mesin Las MIG
ESSAB
Belgia
1 buah
16
Bubut Turret
Weller
Jerman
5 buah
17
CNC 2A
EMCO
Austria
1 buah
18
CNC 3A
EMCO
Austria
1 buah
PENGALAMAN KERJA CV. Karya Mitra Utama telah memiliki banyak pengalaman dalam merancang dan membuat mesin-mesin untuk penggunaan khusus (special purpose machine) sesuai dengan kebutuhan dan permintaan konsumen. Pengalaman kerja CV. Karya Mitra Utama dapat dilihat pada pengalaman kerja. Tabel Pengalaman Kerja No Uraian Mesin Nama Perusahaan (Konsumen) Dies Rolling, Spare part cutter PT. Atlindo – Ciwastra Bandung 1 machine, Spare part drawing, dll. Pembuatan Casing Box telepon PT. Quasar Cipta Mandiri 2 Bandung Pisau mesin kupas kulit kayu PT. Pindad 3 diameter 26 mm pj 600 mm, pembuatan tool widia Casting product dia 3000 mm berat PT. Raffles Hill Jakarta 4 2,5 ton Spare part mesin-mesin produksi PT. Gunawan Teknik Bandung 5 Spare part mesin wire drawing PT. Ewindo Bandung 6 Pembuatan dies untuk perakitan PT. Omron Manufacture of 7 Indonesia Gear Dia, 400 x T 42 dari Bronch PT. Bara Multi Metalindo 8 Bandung Spare part water treatment PT. Tesala Putradharma 9 PT. Gantek Satria Jaya Bandung 10 Spare part mesin-mesin tekstil 11 Hook jaguard, Card Jaguard, Tali PT. Kusumah Teknik Bandung Hamess spare part untuk PT. Balai Pustaka Jakarta 12 Pembuatan packaging 13 Pembuatan ring, sill (spare part PT. Press Metal Bandung yamaha)
PERUSAHAAN PELANGGAN CV. Karya Mitra Utama memiliki banyak pelanggan, beberapa pelanggan CV. Karya Mitra Utama adalah perusahaan besar. Diantaranya dapat dilihat pada Tabel Pengalaman Kerja. Tabel Pengalaman Kerja No 1 2 3 4 5 6 7 8 9
Perusahaan Pokok PT. Altindo PT. Quasar Mandiri PT. PINDAD PT. Gunawan Teknik PT. Ewindo PT. Omron Manufacture of Indonesia PT. Tesala Putradharma PT. Gartek Satria Jaya PT. Bara Multi Metalindo
Bidang Usaha Wire Roll Elektronik Teknologi Mekanik Maintenance Mesin Produksi Wire Roll Elektronik Energi Sistem Produksi Spareparts Industri Spareparts Industri
PERUSAHAAN PENDUKUNG Dalam mengerjakan pekerjaan CV. Karya Mitra Utama didukung oleh perusahaan-perusahaan yang kompeten di bidangnya. Diantaranya dapat dilihat pada tabel perusahaan pendukung. Tabel Perusahaan Pendukung No Perusahaan Pendukung 1 PT. WIRA Engineering 2 3 4 5 6
Bidang Usaha Design & Programming Automation Machine Industry Teknologi Mekanik
MIDC (Metal Development Centre) Dinamika Elektro Plating Politeknik Negeri Bandung BLIB (Balai Latihan Industri Bandung) PUSLAKER IJM Bandung
Pelapisan Logam Pendidikan & Industri Manufaktur Industri Manufaktur Pelatihan & Industri Manufaktur
SISTEM KETENAGAKERJAAN Sistem ketenagakerjaan yang diterapkan di CV. Karya Mitra utama memiliki prosedur diantaranya:
1. Sistem Penerimaan Karyawan Penerimaan pengangkatan pegawai baru merupakan hak dan wewenang perusahaan yang didasarkan sesuai kebutuhan perusahaan dengan formasi yang ditetapkan secara transparan tanpa membedakan golongan, suku, agama, ras dan jenis kelamin. Setiap pelamar serendah-rendahnya berusia 18 tahun, setinggitingginya 46 tahun.
2. Klasifikasi Karyawan Karyawan CV. Karya Mitra Utama adalah karyawan yang bekerja sesuai dengan persyaratan yang telah ditentukan yaitu bekerja berdasarkan dengan peraturan jam kerja.
3. Jam Kerja Jam kerja karyawan CV. Karya Mitra Utama memiliki prosedur, dengan penerapan sebagai berikut: 1.
Hari kerja perusahaan disesuaikan dengan keperluan setiap unit kerja perusahaan yaitu 6 (enam) atau 7 (tujuh) hari dalam satu minggu.
2.
waktu kerja pada unit kerja perusahaan yang memberlakukan 6 (lima) hari kerja dalam satu minggu selama 8 (delapan) jam kerja dalam satu hari dan 48 (empat puluh delapan) jam kerja dalam satu minggu.
3.
Pegawai diberi waktu untuk beristirahat 1 jam setelah bekerja secara terus-menerus selama 4 (empat) jam kerja.
PRODUK 1. Produk Spare Part Mesin
2. Produk Mesin
PETA LOKASI CV. KARYA MITRA UTAMA
DENAH CV. KARYA MITRA UTAMA
LAMPIRAN TUGAS AKHIR PERANCANGAN DAN IMPLEMENTASI SISTEM ABSENSI BERBASIS PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DI CV. KARYA MITRA UTAMA
LAMPIRAN 2 : API KAIROS 1. BEST PRACTICE API KAIROS 2. DOCUMENTION API KAIROS (FACE RECOGNITION AND FACE DETECTION) 3. ERROR CODES API KAIROS
BEST PRACTICES We often get questions from our customers on how to make the most out of Kairos’ services. Based on our own experiences of building and developing apps with our technology, we’ve complied a list of practical tips on best practices. You can refer to these recommendations to improve the quality and accuracy of the data you capture. 1.
Technical Details
Dimension recommendations for optimum results.
2.
Pixel Requirements
There are two factors which affect the usability of an enrolled image: absolute face size in pixels and face size relative to the total size of the image. The above diagram and chart depict the minimum requirements for both. On average, the pixel width between a person’s eyes is half the distance of their head width. There is no minimum image dimension requirement for using Kairos however, we recommend enrolling photographs or capturing videos where there are at least 64 pixels between a subject's two eyes and the head to image width ratio is no less than 1:8. Under ideal circumstances, images/videos with at least 120 pixels between the eyes should be used. It is generally not necessary to use images/videos with more
than 400 pixels between the eyes, although this would not be detrimental to performance.
3.
Image Capture
Recommendations for positioning, expressions and focus.
4.
Positioning
Face the camera directly and position yourself so that your face fills the frame with 1-2 inch margins on each side. Try to avoid extreme angles and poses.
5.
Expressions
Maintain a neutral expression, remove any dark glasses or tinted lenses, and keep both eyes open.
6.
Lighting
For increased visibility, avoid bright backlighting and glare by taking your photographs under even light.
7.
Focus & Movement
Image focus and blur can have similar effects on performance as low resolution make sure your captured image is not blurry.
If the camera is having difficulty focusing, you might be too close or too far from the device.
8.
Face Enrollment
Recommendations for uploading reference images or videos.
9.
File Type
Image files can be BMP, JPG, or PNG. We currently do not support GIF. Video files can be AVI, FLV, MJPEG, MOV, MP4, MPEG, WEBM, or WMV - only accepted for Emotion analysis thru the API.
10.
Pro Tip
We recommend encoding your video with metadata that contains the video length, and using a frame rate between 20-25 fps. Image Rotation All images and videos should be rotated such that faces are generally upright without further adjustment. Confidence The accuracy of our APIs depend on the quality of the face template used as reference. For the face recognition, this means the quality of enrolled faces. For
the emotion and demographic analysis, this means how well the subject’s facial features are captured in the beginning frames of a video. For example, a video that starts off with the subject close to the camera and ends with the subject being far from the camera will return better results than a video that starts with the subject far from the camera and ends with the subject close to the camera. For the face recognition, to increase confidence in the system, we recommend enrolling 8-10 different images per user.
11.
Camera Setup
Placement, lighting, and distance recommendations.
12.
Camera Placement
Position camera so people's faces appear vertical in the image. Faces should be closest to the center of the scene. For best results, the camera should be placed in such a way that subjects will be looking directly at the camera. This will allow the measurement to be more accurate in relation to your stimuli.
13.
Lighting
Avoid pointing the camera at bright lights, the sun or any area with strong backlighting.
14.
Distance
The maximum distance Kairos could work at depends on the resolution of the camera and the lens used. For example, for accurate results, the captured images/videos should to have at least 64 pixels between a person’s eyes. If you plan to use Kairos for long distances, we recommend that you use a camera with a high megapixel value and/or zoom.
15.
Camera Positioning
Recommendations for mounted displays, kiosks, and devices.
16.
Display
For digital display use cases, the camera should be placed on top or just below the display. Typically, head height (5-6 feet off the ground) is the optimal height placement. The camera should be placed as close to the display’s center in the horizontal direction as possible - this is essential if your displays have stimuli, and you wish to measure people interacting with it. The key here is to avoid extreme angles.
KAIROS DOCUMENTATION FOR FACE DETECTION AND RECOGNITION
1. Overview Detect human faces in photos and images. We will return information on facial features as coordinates on the image. 2. Base URL api.kairos.com 3. Authentication Requests must be authenticated with your API key. This must be sent as an HTTP header: app_id:
"YOUR APP_ID"
app_key: "YOUR APP_KEY" You can create and manage your API Keys via your dashboard. It's free to sign-up and start testing. 4. Requests Requests return a JSON object with the header: Content-Type: application/json
5. POST /enroll Takes a photo, finds the faces within it, and stores the faces into a gallery you create. To enroll someone into a gallery, all you need to do is submit a JPG or PNG photo. You can submit the photo either as a publicly accessible URL, Base64 encoded photo or as a file upload. Next you need to choose an identifier for the person being enrolled. The identifier could be their name ("Bob"), something unique to your app ("ABC123xyz"), or anything meaningful for you. We call that identifier "subject_id". You also need to pick a name for the gallery we are storing your faces in. We`ve called this "gallery_name". If you had used that gallery name before, we will just add your new face to it, otherwise we will create a new gallery for you.
Finally, we have some advanced options available for your use. We have set these options to sensible defaults, but sometimes there is a need to override them and we have provided that facility for you. Tip: You can enroll multiple pictures of the same person (aka subject_id) to improve the matching accuracy. We find that 6-8 pictures is optimal, but it works fine with just 1. Required Parameters image
Publicly accessible URL, file upload or Base64 encoded photo.
subject_id
Defined by you. Is used as an identifier for the face.
gallery_name Defined by you. Is used to identify the gallery. Optional Parameters minHeadScale Defined by you. Is used to set the ratio of the smallest face we should look for in the photo. Accepts a value between .015 (1:64 scale) and .5 (1:2 scale). By default it is set at .015 (1:64 scale) if not specified. multiple_faces If set to true lets the API enroll every face found in your photo under the same subject_id.
6. POST /recognize Takes a photo, finds the faces within it, and tries to match them against the faces you have already enrolled into a gallery. To match someone to a face enrolled in your gallery, all you need to do is submit a JPG or PNG photo. You can submit the photo either as a publicly accessible URL, Base64 encoded photo or as a file upload. Next, specify which gallery we should search against for matches. This is the same name you used previously during the /enroll calls to create the gallery. We have the concept of a matching threshold, which by default is set at 60%. If the face you submit is 60% similar to one or more faces in your gallery we will return that as a list of potential candidates and how closely they match. If no one falls in that range we will return no matches. Depending on your usage, you may want to adjust the threshold lower or higher to return more or less potential candidates respectively.
Finally, we have some advanced options available for your use. We have set these options to sensible defaults, but sometimes there is a need to override them and we have provided that facility for you. Required Parameters image
Publicly accessible URL, file upload or Base64 encoded photo.
gallery_name Defined by you. Is used to identify the gallery. Optional Parameters minHeadScale Defined by you. Is used to set the ratio of the smallest face we should look for in the photo. Accepts a value between .015 (1:64 scale) and .5 (1:2 scale). By default it is set at .015 (1:64 scale) if not specified. threshold
Is
used
to
determine
a
valid
facial
match.
max_num_results Is the maximum number of potential matches that are returned. By default it is set to 10 if not supplied.
7. POST /detect Takes a photo and returns the facial features it finds. To detect faces, all you need to do is submit a JPG or PNG photo. You can submit the photo either as a publicly accessible URL or Base64 encoded. Finally, we have some advanced options available for your use. We have set these options to sensible defaults, but sometimes there is a need to override them and we have provided that facility for you. One additional thing to note is that the returned coordinates all begin at the top left of the photo. Required Parameters image Publicly accessible URL or Base64 encoded photo. Optional Parameters minHeadScale Defined by you. Is used to set the ratio of the smallest face we should look for in the photo. Accepts a value between .015 (1:64 scale) and .5 (1:2 scale). By default it is set at .015 (1:64 scale) if not specified. selector Is used to adjust the face detector. If not specified the default of FRONTAL is used. Note that these optional parameters are not reliable for face recognition, but may be useful for face detection uses.
KAIROS ERROR CODES There some error code from kairos : HTTP
Error
Text
200
1000
invalid characters found in parameters
200
1001
invalid content type header was sent
200
1002
required missing
200
1003
an invalid parameter was sent
200
1004
remote url or file name is too long
429
3000
you've exceeded the number of request you can send
502
3001
API temporarily unavailable
404
3002
an invalid endpoint was used
403
3003
200
5000
200
5001
parameter
invalid authentication parameters an invalid image was sent must be jpg or png format
Description Check that you do not have any special characters in your subject IDs and gallery names We did not find an HTTP header set to "content-type" "application/json" Check www.kairos.com/docs to make sure you are passing all the required parameters for your API call We found an invalid parameter in your request. Check www.kairos.com/docs to make sure you are passing all the correct parameters for your API call. The filename or URL was too long, please submit a shorter URL or filename. You have exceeded the number of API requests for the rate plan you are subscribed to. Check out our other plans at www.kairos.com/pricing. There has been a temporary issue with the API and we are unable to process your request. Please try your request again later. Check the request URL to make sure it is one of the valid URLs we accept. The app_id or app_key were not valid. We only accept images in JPG and PNG format currently.
We had an issue retrieving your an invalid image image from the URL that was URL was sent specified
HTTP
Error
200
5002
200
5003
200
5004
200
5005
200
5010
200
5011
200
5012
Text no faces found in the image subject ID was not found gallery name not found face that was detected is corrupt and cannot be processed
Description We weren't able to find any face in the image that was sent. The subject ID you specified was not found in the gallery The gallery name you specified was not found in our system Sometimes we detect what looks like a face in an image, but upon further inspection we discover it isn't a real face. When processing a verify request too many faces in an image with multiple faces was image sent. A request was made that is only enterprise only available when on a paid Enterprise feature level plan. A candidate match was not found no match found in the gallery
LAMPIRAN TUGAS AKHIR PERANCANGAN DAN IMPLEMENTASI SISTEM ABSENSI BERBASIS PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DI CV. KARYA MITRA UTAMA
LAMPIRAN 4 : DOKUMENTASI 1.
DAFTAR RELAWAN UJI AKURASI APLIKASI
2.
DAFTAR RELAWAN IMPLEMENTASI APLIKASI
3.
DOKUMENTASI PERANGKAT KERAS
4.
DOKUMENTASI PROGRAM
DAFTAR RELAWAN UJI AKURASI
FOTO
BIODATA Nama
: Ahmad Khairul Anwar
Jenis Kelamin : Laki-Laki Umur
: 22 Tahun
Pekerjaan
: Mahasiswa
Nama
: Hamdan Abdul Azis
Jenis Kelamin : Laki-Laki Umur
: 22 Tahun
Pekerjaan
: Mahasiswa
Nama
: Faisal
Jenis Kelamin : Laki-Laki Umur
: 22 Tahun
Pekerjaan
: Mahasiswa
FOTO
BIODATA Nama
: Ian Agasi
Jenis Kelamin : Laki-Laki Umur
: 21 Tahun
Pekerjaan
: Mahasiswa
Nama
: Indra Permana
Jenis Kelamin : Laki-Laki Umur
: 26 Tahun
Pekerjaan
: Mahasiswa
Nama
: Riandi Abdurahman
Jenis Kelamin : Laki-Laki Umur
: 23 Tahun
Pekerjaan
: Mahasiswa
FOTO
BIODATA Nama
: Vegawati
Jenis Kelamin : Perempuan Umur
: 22 Tahun
Pekerjaan
: Mahasiswa
Nama
: Suryo Utomo
Jenis Kelamin : Laki-Laki Umur
: 21 Tahun
Pekerjaan
: Mahasiswa
Nama
: Umar Muharam
Jenis Kelamin : Laki-Laki Umur
: 25 Tahun
Pekerjaan
: Mahasiswa
FOTO
BIODATA Nama
: Fatiya
Jenis Kelamin : Perempuan Umur
: 6 Tahun
Pekerjaan
:-
Nama
: Fazila
Jenis Kelamin : Perempuan Umur
: 6 Tahun
Pekerjaan
:-
DAFTAR RELAWAN IMPLEMENTASI APLIKASI
FOTO
BIODATA Nama
: Iman Santina
Jenis Kelamin : Laki-Laki Umur
: 29 Tahun
Pekerjaan
: Administrasi
Nama
: Ahmad Khairul Anwar
Jenis Kelamin : Laki-Laki Umur
: 22 Tahun
Pekerjaan
: Administrasi
Nama
: Zamzam Anshori
Jenis Kelamin : Laki-Laki Umur
: 22 Tahun
Pekerjaan
: Administrasi
FOTO
BIODATA Nama
: Fajar Buana Ceria
Jenis Kelamin : Laki-Laki Umur
: 30 Tahun
Pekerjaan
: Surveyor
Nama
: Dadi
Jenis Kelamin : Laki-Laki Umur
: 24 Tahun
Pekerjaan
: Surveyor
DOKUMENTASI PERANGKAT KERAS
DOKUMENTASI
NAMA KAMERA CMET-W002
KAMERA LOGITECH C270
KAMERA CHICONY 2.0 YANG TERDAPAT PADA LAPTOP TOSHIBA SATTELITE L645
LAPTOP TOSHIBA SATTELITE L645
DOKUMENTASI PROGRAM
DOKUMENTASI
KETERANGAN
MENU ABSEN
MENU LATIH
LIHAT DATA DALAM BENTUK TABEL
MENU PENGATURAN
MENU RANGE
DOKUMENTASI
KETERANGAN UNDUH
PENGAMBILAN GAMBAR APLIKASI UJI AKURASI
MENU APLIKASI UJI AKURASI
PERANCAGAN DAN IMPLEMENTASI SISTEM ABSENSI PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DI CV. KARYA MITRA UTAMA BANDUNG Ahmad Khairul Anwar1 Program Studi Teknik Elektro, Sekolah Tinggi Teknologi Jawa Barat
1
Abstrak CV. Karya Mitra Utama adalah perusahaan yang pada sistem absensinya masih menggunakan alat absensi kartu Amano GX500 yang banyak memiliki kekurangan. Seperti sistem penggajian perminggu yang harus dilakukan dengan menyalin jam-jam masuk dari kartu dan mengolahya didalam microsoft excel hal ini tentu memakan waktu yang lumayan lama dan rawan human error. Berdasarkan masalah tersebut penulis melaksanakan penelitian yang bertujuan untuk menghasilkan sistem absensi yang lebih baik dan handal berbasis pengenalan wajah menggunakan metode eigenface dan pustaka perangkat lunak kairos. Pengenalan wajah adalah teknologi komputer untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah[1]. Penelitian diawali dengan pengumpulan referensi yang berkaitan dengan sistem absensi pengenalan wajah, kemudian berdasarkan referensi tersebut dibuat aplikasi deteksi dan pengenalan wajah untuk menguji akurasi dari sistem. Setelah itu sistem absensi berbasis pengenalan wajah kemudian dibuat untuk diimplementasikan di CV. Karya Mitra Utama. Hasil dari pengujian berupa sistem dapat membedakan citra bukan wajah, citra wajah, citra wajah terdaftar dan citra wajah terdaftar dengan persentase diatas 90%. Hal ini mendakan bahwa sistem absensi sudah dapat digunakan. Kata Kunci : Deteksi Wajah, Eigenface, Pengenalan Wajah, Kairos 1
Pendahuluan Pengenalan wajah adalah teknologi komputer untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah[1]. Pengenalan wajah telah dikembangkan untuk banyak aplikasi keamanan, aplikasi absensi dan aplikasi pendataan penduduk. Penggunaan wajah sebagai identifier mempunyai banyak manfaat, terutama kepraktisannya karena memerlukan sebuah image untuk identifikasi[1].
1.1 Latar Belakang CV. Karya Mitra Utama merupakan salah satu perusahaan yang bergerak pada bidang perindustrian yang pada sistem absensinya masih menggunakan alat absensi kartu Amano GX500. Meski Amano GX500 masih berjalan sampai saat ini, namun alat tersebut memiliki banyak kekurangan, Seperti sistem penggajian perminggu yang harus
dilakukan dengan menyalin jamjam masuk dari kartu dan mengolahya didalam microsoft excel hal ini tentu memakan waktu yang lumayan lama dan rawan human error. Selain banyak karyawan yang terpaksa menunggu pada setiap hari gajian, seringkali gaji yang didapatkan tidak sesuai dengan jam bekerja karyawan. 1.2 Tujuan 1. Menguji seberapa akurat sistem pengenalan wajah yang menggunakan eigenface. 2. Mengimplementasikan aplikasi sistem pengenalan wajah di CV. Karya Mitra Utama. 3. Mempercepat dan mempermudah proses pengolahan data absensi karyawan. 1.3 Kegunaan Dengan dilaksanakannya penelitian ini diharapkan sistem absensi pengenalan wajah dapat menjadi sistem absensi pengganti yang lebih baik dari mesin kartu.
1
2 Landasan Teori 2.1 Eigenface Eigenface adalah kumpulan dari eigenvector yang digunakan untuk masalah computer vision [1] pada pengenalan wajah manusia . Algoritma eigenface secara keseluruhan cukup sederhana. Training image direpresentasikan dalam sebuah vektor flat (gabungan vektor) dan digabung bersama-sama menjadi sebuah matriks tunggal. Eigenfaces dari masing-masing citra kemudian diekstraksi dan disimpan dalam file temporary atau database. Test image yang masuk didefinisikan juga nilai eigenfacesnya dan dibandingkan dengan eigenfaces dari gambar dalam database atau file temporary[1]. Algoritma Eigenface dapat dilihat pada gambar 2. dibawah ini
deteksi wajah atau pengenalan wajah tergantung fitur kairos mana yang digunakan[4]. 2.3 PHP PHP merupakan singkatan dari Hypertext Preprocessor adalah sebuah bahasa pemograman umum yang digunakan untuk pembuatan aplikasi berbasis web yang bisa ditanamkan pada HTML[3]. 2.4 MySQL MySQL merupakan sistem manajemen database SQL (Structured Query Language) yang open-source dan dikembangkan, didistribusikan serta didukung oleh Oracle[1]. 3
Metodologi Penelitian Penelitian diawali dengan pengumpulan referensi (studi literatur) yang berkaitan dengan sistem absensi pengenalan wajah, kemudian berdasarkan referensi tersebut dibuat aplikasi deteksi dan pengenalan wajah yang dibuat untuk menguji akurasi dari sistem absensi yang akan dibuat, setelah pengujian aplikasi selesai dilaksanakan sistem absensi berbasis pengenalan wajah kemudian dibuat untuk akhirnya diimplementasikan di CV. Karya Mitra Utama.
Gambar 1. Flowchart Algoritma Eigenface[1]
2.2 Kairos Kairos adalah salah satu pustaka perangkat lunak yang dikhususkan untuk deteksi wajah, menggunakan metode featuredbased. Kairos dapat membaca atau mengenali emosi, identitas serta demografi dari citra atau citra masukan hanya dengan beberapa [4] baris kode . Setelah citra diambil oleh kamera, kairos akan mencari wajah dan menentukan feature point detection pada citra, kemudian kairos mengklasifikasi fitur (deteksi wajah, pengenalan wajah, verifikasi wajah, dan lainlain), setelah itu kairos memberikan hasil data berupa
Gambar 2. Flowchart Penelitian
3.1 Pembuatan Aplikasi Uji Akurasi Aplikai deteksi wajah dan pegenalan wajah dibuat untuk menguji akurasi dari pustaka
2
perangkat kairos, secara umum terdapat tiga bagian utama yaitu bagian masukan (input), proses (process), dan keluaran (output). blok diagram sistem dapat dilihat pada gambar 3.
Gambar 3.
Blok Diagram Sistem
Dapat dilihat pada blok diagram sistem, masukan berasal dari kamera, gambar dari kamera tersebut kemudian di unggah, selanjutnya kemudian diproses oleh aplikasi dan hasil dari keluaran dari proses berupa peryataan dari sistem seperti tidak terdeteksi, terdeteksi dan dikenali. 3.2 Pembuatan Aplikasi Sistem Absensi Berbasis Pengenalan Wajah Pada aplikasi sistem absensi berbasi pengenalan wajah, terdapat tiga bagian utama yaitu bagian masukan (input), proses (process), dan keluaran (output). blok diagram sistem dapat dilihat pada gambar 4.
Gambar 4.
Blok Diagram Sistem
Dapat dilihat pada blok diagram sistem, masukan berasal dari kamera dan form input, selanjutnya masukan akan diproses oleh aplikasi, hasil dari keluaran dari proses merupakan data absensi karyawan yang sudah berupa lihat data (tabel) dan unduh data (excel). Gambaran lengkapnya dapat dilihat pada gambar 5.
Gambar 5.
Blok Diagram Sistem
Pengambilan citra dilakukan menggunakan frame pengambil gambar pada aplikasi. Frame tersebut dapat dilihat pada gambar 6.
Gambar 6.
Frame pengambil gambar
Frame pada gambar 6 merupakan frame yang digunakan untuk mengambil pada proses latih yang mana frame pengambilan wajah untuk proses pengenalan wajah tidak jauh berbeda. 3.3 Pengujian Aplikasi Pengujian aplikasi dilaksanakan melalui beberapa proses pengolahan citra sesuai dengan tujuan perancangan. Pengujian yang akan dilakukan adalah: 1. Citra wajah dan citra bukan wajah. 2. Citra wajah terdaftar dan tidak terdaftar. 3. Citra wajah identik sama. 4. Citra wajah menggunakan aksesoris. 5. Pengenalan multi citra wajah. Implementasi dilaksanakan dengan cara lima karyawan absensi menggunakan aplikasi absensi berbasis pengenalan wajah selama satu minggu kerja (6 hari).
3
4
Helm (7) 5. Pengenalan multi citra wajah. (8)
Analisis dan Pembahasan Setelah pengujian dilaksanakan. Dilakukan analisa untuk mengetahui persentase dari setiap pengujian. Hasil dari analisa tersebut dapat dilihat pada tabel 1.
Sedangkan untuk menghitung waktu rata-rata yang dibutuhkan aplikasi pada proses latih wajah:
Tabel 1. Hasil analisa Hasil No
1
2
3 4
5
6
7 8
Pengujian Citra wajah dan citra bukan wajah Citra wajah terdaftar dan tidak terdaftar Citra wajah identik sama Citra Wajah Aksesoris (Topi) Citra Wajah Aksesoris (Masker) Citra Wajah Aksesoris (Kacamata) Citra Wajah Aksesoris (Helm) Citra Multi Wajah
s
g
n
18
0
18
Dan pada proses pengenalan: . 17
1
18
4
2
6
2
1
3
0
3
3
3
0
3
2
1
3
3
6
9
5
Dilaksanakan perhitungan per pengujian dengan rumus perhitungan jumlah citra yang sukses( ) dibagi dengan jumlah seluruh citra yang diuji pada tiap pengujian( ) dikali 100%. Persentase akurasi tiap pengujian adalah sebagai berikut: 1. Citra wajah dan citra bukan wajah. (1) 2. Citra wajah terdaftar dan tidak terdaftar. (2) 3. Citra wajah identik sama. (3) 4. Citra wajah menggunakan aksesoris. Topi (4)
Kesimpulan 1 Aplikasi dapat membedakan citra bukan wajah dan wajah dengan persentase 100%. aplikasi juga sudah dapat membedakan wajah terdaftar dan wajah tidak terdaftar dengan persentase 94,44%. Ini menandakan aplikasi bisa digunakan sebagai aplikasi sistem absensi. 2 Aplikasi sudah mampu membedakan citra wajah identik sama dan memiliki tingkat akurasi 66,66%. 3 Aplikasi mampu mengenali citra wajah berkacamata dengan tingkat akurasi 100%. Sistem juga mampu membaca citra wajah yang menggunakan helm dan memakai topi. Namun, Aplikasi tidak mampu mengenali citra wajah yang menggunakan masker
3.1 Daftar Pustaka 1. Fatta, Hanif. “Rekayasa Sistem Pengenalan Wajah”. Andi, Yogyakarta, 2009. 2. Solichin, Ahmad. "Pemograman Web PHP dan MySQL", Universitas Budi Luhur, Jakarta, 2012 3. http://php.net, diakses pada 12/07/2017. 4. https://www.kairos.com, diakses pada 12/07/2017. (
Masker
(5)
Kacamata
(6)
4
PERANCANGAN DAN IMPLEMENTASI SISTEM ABSENSI PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DI CV. KARYA MITRA UTAMA BANDUNG
Disusun oleh : Ahmad Khairul Anwar NIM : 1364001 PROGRAM STUDI TEKNIK ELEKTRO STRATA I SEKOLAH TINGGI TEKNOLOGI JAWA BARAT BANDUNG 2017
LATAR BELAKANG • CV. Karya Mitra Utama merupakan salah satu perusahaan yang bergerak pada bidang perindustrian yang pada sistem absensinya masih menggunakan alat absensi kartu Amano GX500. • Meski Amano GX500 masih berjalan sampai saat ini, namun alat tersebut memiliki banyak kekurangan. Seperti: - Faktor Human error - Gaji terlambat - Perawatan
TUJUAN DAN KEGUNAAN • •
• • •
• •
Tujuan Tujuan dalam pembuatan sistem absensi pengenalan wajah menggunakan metode eigenface adalah: Menguji seberapa akurat sistem pengenalan wajah yang dibuat menggunakan metode eigenface dan pustaka perangkat lunak kairos. Mengimplementasikan aplikaski sistem absensi berbasis pengenalan wajah di CV.Karya Mitra Utama. Mempercepat dan mempermudah proses pengolahan data absensi karyawan. Kegunaan Dengan dilaksanakannya penelitian ini diharapkan sistem absensi pengenalan wajah dapat menjadi sistem absensi pengganti yang lebih baik dari mesin kartu.
LANDASAN TEORI Citra Gambar pada bidang dwiwarna (dua dimensi) yang bila ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwiwarna. Deteksi Wajah
Deteksi wajah merupakan salah satu teknologi biometrik, yang digunakan oleh perangkat lunak untuk mendektesi keberadaan wajah manusia sekaligus menghiraukan objek lain seperti pohon, bangunan dan tubuh manusia dalam sebuah citra Pengenalan Wajah
Pengenalan wajah adalah teknologi biometrik untuk menentukan lokasi wajah, ukuran wajah, deteksi fitur wajah dan pengabaian citra latar, selanjutnya dilakukan identifikasi citra wajah. Prinsip dasar dari pengenalan wajah adalah dengan mengutip informasi unik wajah tersebut, kemudian di-encode dan dibandingkan dengan hasil decode yang sebelumnya dilakukan
LANDASAN TEORI Secara umum, teknik dan metode dalam pengenalan wajah berdasarkan data yang dibutuhkannya, yaitu: 1. Pendekatan holistik. Pada pendekatan holistik, seluruh bagian atau ciri-ciri global wajah digunakan sebagai data masukan untuk pengenalan wajah. Contoh: eigenface, fisherface, nearest feature line (NFL), dan support vector machine (SVM). 2. Pendekatan feature-based. Pada pendekatan feature-based, wajah terbagi berdasarkan ciri-ciri lokal wajah seperti hidung, mulut, mata, dan lainnya yang kemudian digunakan sebagai data masukan. Contoh : Hidden Markov Model, Kairos dan Dynamic Link Architecture.
A. Pendekatan feature – based (Kairos) B. Pendekatan holistik (Eigenface) (A)
(B)
LANDASAN TEORI Kairos Kairos adalah salah satu pustaka perangkat lunak yang dikhususkan untuk deteksi wajah, yang menggunakan metode featured-based dan eigenface.
Eigenface Eigenface, kumpulan dari eigenvector yang digunakan untuk masalah computer vision pada pengenalan wajah manusia. Sistem Kerja Eigenface MENGAMBIL CITRA
MENEMUKAN WAJAH
MENENTUKAN TITIK UNIK PADA WAJAH
Sistem Kerja Kairos
KLASIFIKASI FITUR
HASIL
LANDASAN TEORI PHP dan MySQLi PHP (Hypertext Preprocessor), sebuah bahasa pemograman umum yang digunakan untuk pembuatan aplikasi berbasis web yang bisa ditanamkan pada HTML MySQLi merupakan sistem manajemen database SQL (Structured Query Language) yang open-source dan dikembangkan, didistribusikan serta didukung oleh Oracle. Contoh aplikasi dari PHP dan MySQLi dapat dilihat pada gambar disamping
Script:
Hasil:
METODOLOGI PENELITIAN Penelitian diawali dengan pengumpulan referensi (studi literatur) yang berkaitan dengan sistem absensi pengenalan wajah, kemudian berdasarkan referensi tersebut dibuat aplikasi deteksi dan pengenalan wajah yang dibuat untuk menguji akurasi dari sistem absensi yang akan dibuat, setelah pengujian aplikasi selesai dilaksanakan sistem absensi berbasis pengenalan wajah kemudian dibuat untuk akhirnya diimplementasikan di CV. Karya Mitra Utama. Flowchart penelitian dapat dilihat disamping
METODOLOGI PENELITIAN PEMBUATAN APLIKASI SISTEM ABSENSI BERBASIS PENGENALAN WAJAH
A. Blok Diagram Aplikasi
B. Sitemap Aplikasi
METODOLOGI PENELITIAN Uji Akurasi Aplikasi Deteksi dan Pengenalan Wajah Pengujian yang akan dilakukan adalah: • Citra wajah dan citra bukan wajah. • Citra wajah terdaftar dan tidak terdaftar. • Citra wajah identik sama. • Citra wajah menggunakan aksesoris. • Pengenalan multi citra wajah. Implementasi Aplikasi Sistem Absensi Berbasi Pengenalan Wajah Implementasi dilaksanakan dengan cara lima karyawan melaksanakan absensi menggunakan aplikasi absensi berbasis pengenalan wajah selama satu minggu kerja (6 hari).
ANALISA DAN PEMBAHASAN TT = Tidak Terdeteksi T = Terdeteksi D = Dikenali
Wajah N o
Pengujian
1
Citra wajah dan citra bukan wajah.
2
Citra wajah terdaftar dan tidak terdaftar.
Proses
T T
Citra Total T D (detik)
Latih Pengen alan
9
9 0
Latih Pengen alan
1
8 9
Latih 3
4
5
6
Citra wajah identik sama.
Pengen alan
Citra wajah menggunakan aksesoris (helm, kacamata, masker, topi)
Latih
Pengenalan multi citra wajah.
Latih
Implementasi Aplikasi Selama 1 minggu kerja (6 hari)
Latih
TOTAL
Pengen alan
Pengen alan
1
5
0
0 5
1 6
1 8
Waktu Total (detik)
-
-
18
182
18
159
18
164
12
119
6
55
6
59
12
78
18
219
3
30
30
298
Keterangan
9 citra wajah terdeteksi, 9 citra bukan wajah terdeteksi. Sukses : citra wajah terdeteksi, citra bukan wajah tidak terdeteksi 1 citra wajah tidak terdaftar tidak terdeteksi, 8 citra wajah tidak terdaftar terdeteksi dan 9 citra wajah terdaftar dikenali. Sukses : terdaftar dikenali, tidak terdaftar terdeteksi 1 citra wajah tidak terdeteksi, 1 citra wajah dikenali sebagai orang lain dan 4 citra wajah dikenali. Sukses : citra wajah dikenali 6 (3 masker, 1 topi, 1 helm) citra wajah tidak terdeteksi, 1 (helm) citra wajah terdeteksi dan 5 (3 kacamata, 2 topi, 1 helm) citra wajah dikenali. Sukses : citra wajah dikenali Dalam 1 citra terdapat 3 wajah. 8 wajah (3 indra, 3 riandi, 2 ahmad) dikenali, 1 wajah (ahmad) terdeteksi. Sukses : (ketiga wajah dalam 1 citra dikenali) Setiap hasil gagal akan terus diulang hingga hasil sukses
Pengen alan
60
571
Latih
84
854
Pengenalan
117
1080
ANALISA DAN PEMBAHASAN
No 1 2 3 4
Pengujian Citra wajah dan citra bukan wajah Citra wajah terdaftar dan tidak terdaftar Citra wajah identik sama
Hasil 𝑠 = 18, 𝑛 = 18 a 𝑠 = 17, 𝑛 = 18 a a 𝑠 = 4, 𝑛 = 6 a 𝑠 = 2, 𝑛 = 3 a
KESIMPULAN • Aplikasi sudah dapat membedakan citra bukan wajah dan citra wajah dengan persentase akurasi 100%. Aplikasi juga sudah dapat membedakan citra wajah terdaftar dan citra wajah tidak terdaftar dengan persentase akurasi 94,44%. • Aplikasi sudah mampu membedakan citra wajah identik sama dan memiliki tingkat akurasi 66,66%. • Aplikasi mampu mengenali citra wajah berkacamata dengan tingkat akurasi 100%. Sistem juga mampu membaca citra wajah yang menggunakan helm dan memakai topi dengan syarat topi atau helm tidak menghalangi wajah. Namun, aplikasi tidak dapat mengenali citra wajah yang menggunakan masker dikarenakan mulut yang merupakan salah satu titik unik dari wajah terhalangi oleh masker. • Tingkat akurasi aplikasi dinilai sudah cukup, begitu juga dengan hasil implementasi yang memeuaskan menandakan bahwa aplikasi sudah dapat digunakan sebagai aplikasi sistem absensi.
TERIMA KASIH
AHMAD KHAIRUL ANWAR KOMPLEK BUMI LANGGENG CINUNUK, BANDUNG, JAWA BART C: 0895338983589 | [email protected]
PROFESSIONAL SUMMARY Works well under pressure and consistently meets deadlines and targets while delivering high quality work. Dedicated IT professional highly effective at maintaining and installing software and hardwaree for laptop and
BACHELOR OF SCIENCE Electrical Engineering Sekolah Tinggi Teknologi Jawa Barat Jl. Ciganitri | Current Electrical Systems Wireless Electronics Electronic Artificial intelligence (AI) Programming coursework coursew
SOFTWARE SKILL
desktop computers. Works well on team or individually Skilled in data collection, analysis and management. Skilled killed at technical leadership, communication and presentations.
SKILLS Advanced knowledge dge of hardware computer components Advanced knowledge of PHP, Mysql
INTEREST
and CSS Free Energy
FORMAL EDUCATION HIGH SCHOOL DIPLOMA Software Engineering SMK Bhakti Nusantara 666 Cileunyi Kulon, Cileunyi, Bandung, West Java 40622, Indonesia | 2013 Software Specification Course Software Engineering ering Course
Newest Software Problem Solving Artificial intelligence (AI) Gaming