Face Recognition dengan ESP32-CAM dengan Tampilan Web

Admin  •  21 Oct 2025
Face Recognition dengan ESP32-CAM dengan Tampilan Web

Proyek ini merupakan implementasi sistem presensi otomatis berbasis pengenalan wajah (face recognition) menggunakan kamera ESP32-CAM yang terintegrasi dengan server Python (Flask) dan database MySQL/SQLite, serta menampilkan data kehadiran secara real-time melalui website monitoring.


🧩 Komponen yang Digunakan

Hardware

  • ESP32-CAM – Modul utama dengan kamera OV2640 untuk mendeteksi wajah.

  • DevBoard ESP32-CAM-MB – Untuk upload program melalui port USB.

  • Adaptor USB to TTL (opsional) – Alternatif jika tidak memakai devboard.

Software

  • Arduino IDE – Menulis dan mengunggah program ke ESP32-CAM.

  • Python (Flask + OpenCV) – Memproses gambar dan mengirim data ke database.

  • SQLite/MySQL – Menyimpan data absensi.

  • Website (PHP + Bootstrap) – Menampilkan data presensi secara real-time.


⚙️ Arsitektur Sistem

Sistem bekerja dengan alur berikut:

 
  1. ESP32-CAM menangkap citra wajah karyawan.

  2. Server Flask memproses data dan mencocokkannya dengan database.

  3. Jika cocok, data presensi tersimpan otomatis di database.

  4. Website menampilkan data absensi secara langsung.

  5. Admin dapat memantau, menambah, atau menghapus data pengguna.


🖥️ Implementasi

1. ESP32-CAM

ESP32-CAM diprogram menggunakan Arduino IDE untuk menangkap wajah dan mengirim hasil ke server.
Modul ini terkoneksi langsung ke Wi-Fi tanpa perangkat tambahan.

2. Server Python

Server dibuat dengan Flask dan OpenCV untuk memproses wajah dan menyimpan hasil ke database.

Contoh endpoint sederhana:

 
@app.route('/absensi', methods=['POST']) def absensi(): data = request.get_json() conn = sqlite3.connect('absensi.db') c = conn.cursor() c.execute("INSERT INTO absensi (nama, waktu) VALUES (?, ?)", (data['nama'], data['waktu'])) conn.commit() conn.close() return {"status": "success"}

3. Database

Database menyimpan:

  • Data pengguna: ID, nama, jabatan, foto.

  • Data absensi: ID, waktu, status.

4. Website Monitoring

Dashboard web menampilkan tabel data kehadiran lengkap dengan:

  • Nama dan jabatan karyawan.

  • Waktu absensi.

  • Tombol aksi (edit & hapus).


🗒️ Catatan

Untuk source code lengkap, file konfigurasi, dan panduan implementasi penuh proyek ini,
💬 silakan hubungi admin melalui kontak resmi proyek.


 


Bagikan artikel ini:
← Kembali ke Blog