Tutorial Deteksi Wajah Dengan Javascript

Tutorial Deteksi Wajah Dengan Javascript – Hallo sobat kopi coding, pada tutorial kali ini kita akan mempelajari bagaimana cara membuat aplikasi web untuk mendeteksi wajah dengan javascript secara realtime.

Face recognition atau pengenalan wajah adalah sebuah teknologi yang mampu mengidentifikasi atau memverifikasi wajah seseorang dari gambar digital atau video.
Dalam tutorial ini kita akan mendeteksi wajah real time melalui webcam menggunakan AI. AI ini sangat cepat sehingga kita dapat menggambar secara real time berbagai wajah dan ekspresi setiap orang dalam video tanpa banyak overhead kinerja. Kita akan menggunakan Face API JS Library yang dibangun di atas TensorFlow untuk mendeteksi wajah. Pada akhir video ini, Anda akan memiliki deteksi wajah real-time yang berfungsi penuh di situs Anda yang dapat digunakan dengan kamera web atau webcam apa pun.
Konsep dari tutorial ini sebagai berikut :
  • Streaming webcam melalui HTML
  • Menggunakan Face API untuk mendeteksi wajah secara real time
  • Menggambar pola wajah secara real time
  • Mengidentifikasi emosi melalui ekspresi wajah secara real time
Yuk langsung saja kita eksekusi tutorial kali ini…

PERSIAPAN :

Ada beberapa tools yang harus dipersiapkan sebelum melakukan tutorial kali ini, berikut adalah tools yang digunakan:
  • Visual Studio Code
  • Live Server (Extension VSCode)
  • Face Api Library

STRUKTUR DIREKTORI PROJECT :

Folder project
|– models (folder)
|—— face_expression_model-shard1
|—— face_expression_model-weights_manifest.json
|—— face_landmark_68_model-shard1
|—— face_landmark_68_model-weights_manifest.json
|—— face_landmark_68_tiny_model-shard1
|—— face_landmark_68_tiny_model-weights_manifest.json
|—— face_recognition_model-shard1
|—— face_recognition_model-shard2
|—— face_recognition_model-weights_manifest.json
|—— tiny_face_detector_model-shard1
|—— tiny_face_detector_model-weights_manifest.json
|—face-api.min.js
|—index.html
|—script.js

LANGKAH 1 : MENAMBAHKAN MODEL KEDALAM FOLDER MODELS

Download file model berikut dan ekstrak kedalam folder models.
models.zip

LANGKAH 2 : MENAMBAHKAN FILE FACE API KEDALAM FOLDER PROJECT

Download file face-api.min.js berikut dan pindahkan kedalam folder project
face-api.min.js

LANGKAH 3 : MEMBUAT FILE INDEX.HTML

Buat file index.html di dalam folder project lalu masukkan code dibawah ini dan simpan.

FILE INDEX.HTML

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge" />
  7. <title>Deteksi Wajah - Kopi Coding</title>
  8. <script defer src="face-api.min.js"></script>
  9. <script defer src="script.js"></script>
  10. <style>
  11. body {
  12. margin: 0;
  13. padding: 0;
  14. width: 100vw;
  15. height: 100vh;
  16. display: flex;
  17. justify-content: center;
  18. align-items: center;
  19. }
  20. canvas {
  21. position: absolute;
  22. }
  23. </style>
  24. </head>
  25. <body>
  26. <video id="video" width="720" height="560" autoplay muted></video>
  27. </body>
  28. </html>

LANGKAH 3 : MEMBUAT FILE SCRIPT.JS

Buat file script.js di dalam folder project lalu masukkan code dibawah ini dan simpan.

FILE SCRIPT.JS

  1. const video = document.getElementById('video')
  2. Promise.all([
  3. faceapi.nets.tinyFaceDetector.loadFromUri('/models'),
  4. faceapi.nets.faceLandmark68Net.loadFromUri('/models'),
  5. faceapi.nets.faceRecognitionNet.loadFromUri('/models'),
  6. faceapi.nets.faceExpressionNet.loadFromUri('/models')
  7. ]).then(startVideo)
  8. function startVideo() {
  9. navigator.getUserMedia(
  10. { video: {} },
  11. stream => video.srcObject = stream,
  12. err => console.error(err)
  13. )
  14. }
  15. video.addEventListener('play'() => {
  16. const canvas = faceapi.createCanvasFromMedia(video)
  17. document.body.append(canvas)
  18. const displaySize = { width: video.width, height: video.height }
  19. faceapi.matchDimensions(canvas, displaySize)
  20. setInterval(async () => {
  21. const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceLandmarks().withFaceExpressions()
  22. const resizedDetections = faceapi.resizeResults(detections, displaySize)
  23. canvas.getContext('2d').clearRect(00, canvas.width, canvas.height)
  24. faceapi.draw.drawDetections(canvas, resizedDetections)
  25. faceapi.draw.drawFaceLandmarks(canvas, resizedDetections)
  26. faceapi.draw.drawFaceExpressions(canvas, resizedDetections)
  27. }100)
  28. })

LANGKAH 4 : MENJALANKAN APLIKASI WEB DENGAN LIVE SERVER

Untuk menjalankan aplikasi web dengan Live Server dengan cara klik kanan pada file index.html lalu pilih Open With Live Server


HASIL :

Secara otomatis Live Server akan membuka aplikasi browser serta menampilkan web dengan URL http://127.0.0.1:5500/index.html





Sekian tutorial cara membuat aplikasi web untuk deteksi wajah dengan javascript, semoga bermanfaat..

Happy Coding
Sumber : webdevsimplified.com

0 Response to "Tutorial Deteksi Wajah Dengan Javascript"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel