Facerec Absensi
Updated 161 Days AgoPublic

SISTEM INFORMASI PRESENSI PEGAWAI UNIVERSITAS PERTAMINA

Adalah sistem absensi untuk pegawai Universitas Pertamina yang menggunakan teknologi pengenalan wajah (Face Recognition). Dibuat menggunakan framework Angular dan library face-api.js . Pegawai yang ingin absen bisa menghadapkan wajahnya ke arah kamera, lalu klik tombol untuk mendapatkan gambarnya. Sistem akan mencocokkan descriptor dari wajah yang terekam dengan descriptor yang ada di database, descriptor terdekat akan menghasilkan kecocokan data. Setelah itu, akan muncul pop up konfirmasi agar user dapat mengkonfirmasi apakah data sudah benar atau belum. Jika sudah benar, maka klik tombol “Ya” maka data akan dikirim ke system absensi SIAP siap.universitaspertamina.ac.id.

Akses project Facerec (Admin/Programmer)
Untuk mengakses aplikasi facerec, admin bisa membuka folder “D:\Angular\Fangular Dev”. Tekan Shift + klik kanan, lalu Open command window here. Setelah itu ketikkan “code .” untuk membuka folder projek via VSCode.

Setelah muncul jendela VSCode projek Facerec, klik menu “View -> Terminal” . Lalu ketikkan “ng serve” , perintah framework Angular untuk menjalankan projek.


Selanjutnya buka browser dan ketikkan link http://localhost:4200/ , port 4200 adalah port default saat menjalankan projek Angular.

Proses absensi:

  • Ketika pengguna klik tombol “Capture Me!”, maka library faceapi akan mendapatkan descriptor wajah yang terekam.
  • Selanjutnya, descriptor yang terekam akan dicocokkan dengan descriptor yang ada di server.
  • Nilai Deskriptor terdekat akan menghasilkan data user
  • Akan muncul pop up konfirmasi, user bisa mengkonfirmasi apakah data sudah valid atau belum
  • Jika data valid, user selanjutnya bisa klik tombol “ya” untuk melanjutkan proses absen ke SIAP
  • Jika data tidak valid, user selanjutnya bisa klik tombol “Tidak” untuk mengulangi pengambilan gambar wajah.

Kondisi Jika menekan tombol “Ya”


.
.
.

Upload User baru Facerec (Admin/Programmer)

  • Isi Form sesuai dengan kolomnya, NIP untuk Nomor Induk Pegawai, Nama untuk Nama pegawai baru yang ingin diinput. Pilih Foto untuk menambahkan Foto
  • Foto baru bisa dilakukan dengan 2 cara. Pertama, klik Choose File lalu pilih foto yang ada di local direktori. Kedua, klik tombol Toggle Webcam untuk menampilkan Webcam.
  • Jika semua field sudah terisi. Klik Add User untuk menambahkan data user baru.


.
.
.

Edit User Facerec (Admin/Programmer)
Halaman Edit disini digunakan hanya untuk menambah foto dari user yang sudah pernah diinput di halaman Register User baru.

  • Klik menu dropdown untuk memilih nama yang akan ditambahkan fotonya.
  • Foto baru bisa dilakukan dengan 2 cara. Pertama, klik Choose File lalu pilih foto yang ada di local direktori. Kedua, klik tombol Toggle Webcam untuk menampilkan Webcam.
  • Jika semua field sudah terisi. Klik Add Photo untuk menambahkan foto pada user yang dipilih.


.
.
.
Delete User Facerec (Admin/Programmer)
Karena menghapus user jarang dilakukan dan frekuensi penggunaannya sangat kecil, maka Halaman Delete User belum dibuat. Namun kita bisa menghapus user lewat Postman. Langkahnya Sebagai berikut:
Buka postman, buat Request Delete ke endpoint https://10.10.20.108:3500/luwak/wajah/(NIP)/delet, setelah itu klik Sent.

.
.
.

Rekap User Facerec (Admin/Programmer)
Halaman ini digunakan untuk melihat rekap data user yang telah melakukan pencocokan wajah. Terdapat kolom NIP, NAMA, Waktu, Distance, dan Foto saat pencocokkan.
Buka link http://localhost:4200/rekap untuk mengakses halaman rekap.


Admin dapat mengetahui seberapa akurat pencocokkan data. Aturan main yang mudah dipahami yaitu dengan melihat kolom Distance, jika Distance < 0.45 , maka dia akan menampilkan data user dengan distance terdekat dari hasil rekam.

Sebagai contoh : Dengan distance 0.4246793757543135, muncul NIP 219028, dan Nama Twin Edo Nugraha.
Admin dapat mengetahui valid atau tidaknya foto yang tertera, dengan data yang tertera.

Contoh lain: Dengan distance 0.5148472808229299, muncul NIP Tidak dikenali, Nama Tidak dikenali


Dikarenakan distance > 0.45, maka data yang muncul tidak dikenali.

Selanjutnya, dengan mengetahui bahwa deskriptor foto yang tertera belum ada kecocokan dengan data pegawai. Maka Admin dapat menambahkan foto tersebut ke dalam data yang valid. Caranya yaitu, klik kanan pada foto, save image as…


Atau klik kanan gambar, Open image in new tab, klik kanan gambar, Save image as…

Tentukan Lokasi direktori untuk menyimpan foto, contoh : D:\FaceRec foto\Tendik\Wakil Rektor 2\Dir. Sarpras TI\219028 - Twin Edo Nugraha.


Langkah selanjutnya, masuk ke Halaman Edit User, tambahkan foto baru pada data pegawai yang sesuai.
.
.
.
-Important Thing-

Catatan:
Library untuk pengenalan wajah : https://github.com/justadudewhohacks/face-api.js/
foto tendik : https://drive.google.com/open?id=0B3JoTzjA6HWZX0JieWs0R04yOVE
foto dosen : https://drive.google.com/drive/folders/0B3JoTzjA6HWZdjJONzV0c2hvRUk
Token siap absen buat facreg : eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuaXAiOiIyMTYxMDUifQ.ODt-9Ro-N05f0Mxmu8Wq5xQWNCPizoQpuI2jm-ex2hU
url server facerec : ../src/app/config/config.json
resource: https://phabricator.universitaspertamina.ac.id/source/Fangular.git
Langkah Cloning :

  1. Pilih lokasi direktori utk cloning project
  2. Open command window here, lalu ketikkan “ git clone https://phabricator.universitaspertamina.ac.id/source/Fangular.git
  3. Buka folder project pada text Editor, contoh VS Code
  4. Klik menu View, Terminal
  5. Ketikkan “NPM Install”, perintah ini digunakan untuk mendownload module module yang diperlukan project
  6. Setelah itu, jalankan project dengan perintah “Ng serve”

Requirement untuk menjalankan project Angular:

  1. Install Node.js , https://nodejs.org/en/download/
  2. Install Angular, https://cli.angular.io/
  3. Install Text Editor (VSCode, Atom, etc)

Build Project:

  1. Buka folder project pada text Editor, contoh VS Code
  2. Klik, menu View, Terminal
  3. Ketikkan “Ng build --prod”
  4. Direktori project yang telah di build berada pada folder /ProjectAnda/dist/

Last Author
tnugraha
Projects
None
Subscribers
None