YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

Face Recognition Attendance System πŸŽ“

Sistem presensi otomatis menggunakan pengenalan wajah dengan algoritma LBPH (Local Binary Patterns Histograms).

πŸ“‹ Fitur

  • βœ… Registrasi wajah dengan multiple pose untuk akurasi tinggi
  • βœ… Presensi otomatis menggunakan webcam
  • βœ… Anti-duplicate (tidak bisa presensi 2x di hari yang sama)
  • βœ… Rekam presensi ke CSV
  • βœ… View data terdaftar dan rekap presensi
  • βœ… Cooldown system untuk mencegah double detection

πŸ”§ Instalasi

1. Clone Repository

git clone https://huggingface.co/[username]/face-attendance-system
cd face-attendance-system

2. Install Dependencies

pip install -r requirements.txt

Catatan Penting: Pastikan install opencv-contrib-python (bukan opencv-python biasa) karena module cv2.face hanya tersedia di contrib version.

3. Setup Webcam

Pastikan webcam/kamera laptop kamu berfungsi dengan baik.

πŸš€ Cara Menggunakan

1. Registrasi Wajah Baru

python register_face.py

Proses:

  • Masukkan nama dan NIM/NIP
  • Ikuti instruksi pose di layar (10 foto dengan berbagai pose)
  • Tekan SPASI untuk capture foto
  • Tekan Q untuk membatalkan

Tips untuk hasil terbaik:

  • Pastikan pencahayaan cukup
  • Wajah menghadap langsung ke kamera
  • Hindari backlight yang terlalu terang
  • Ikuti semua pose yang diminta

2. Jalankan Sistem Presensi

python attendance_system.py

Cara kerja:

  • Sistem akan otomatis mendeteksi wajah
  • Jika wajah dikenali dan confidence cukup, presensi otomatis tercatat
  • Data tersimpan di attendance.csv
  • Tekan Q untuk keluar

3. Lihat Data & Kelola

python view_data.py

Menu tersedia:

  1. Lihat data wajah terdaftar
  2. Lihat rekap presensi
  3. Hapus data orang tertentu
  4. Keluar

πŸ“ Struktur File

PRESENSEE-ML/
β”œβ”€β”€ dataset/                  # Folder foto wajah terdaftar
β”œβ”€β”€ register_face.py          # Script registrasi wajah
β”œβ”€β”€ attendance_system.py      # Script sistem presensi
β”œβ”€β”€ view_data.py             # Script kelola data
β”œβ”€β”€ face_data.pkl            # Data wajah tersimpan (pickle)
β”œβ”€β”€ lbph_model.yml           # Model LBPH terlatih
β”œβ”€β”€ attendance.csv           # Rekap presensi
└── requirements.txt         # Dependencies

βš™οΈ Konfigurasi

Kamu bisa adjust parameter di attendance_system.py:

# Threshold confidence LBPH (40-80, lower = lebih strict)
LBPH_CONFIDENCE_THRESHOLD = 45.0

# Cooldown antar deteksi (detik)
COOLDOWN_SECONDS = 5

# Frame skip untuk performa
FRAME_SKIP = 2

πŸ” Troubleshooting

Error: "OpenCV tidak memiliki modul cv2.face"

Solusi:

pip uninstall opencv-python
pip install opencv-contrib-python

Wajah tidak terdeteksi

Solusi:

  • Pastikan pencahayaan cukup
  • Coba atur jarak ke kamera (30-50 cm ideal)
  • Hindari wajah terlalu miring

Confidence terlalu tinggi (wajah tidak dikenali)

Solusi:

  • Registrasi ulang dengan foto lebih banyak
  • Kurangi nilai LBPH_CONFIDENCE_THRESHOLD
  • Pastikan kondisi pencahayaan saat registrasi dan presensi mirip

Kamera tidak terbuka

Solusi:

  • Pastikan tidak ada aplikasi lain yang menggunakan kamera
  • Coba ganti index kamera di cv2.VideoCapture(0) ke (1) atau (2)
  • Check permission kamera di system settings

πŸ“Š Format Data

attendance.csv

Nama,NIM/NIP,Tanggal,Waktu
John Doe,123456789,2024-12-04,08:30:15
Jane Smith,987654321,2024-12-04,08:31:22

face_data.pkl

Berisi dictionary dengan struktur:

  • id: ID unique person
  • nama: Nama lengkap
  • nim_nip: Nomor induk
  • images_gray: List gambar grayscale untuk training
  • images_color: List gambar color untuk display
  • num_photos: Jumlah foto

🀝 Kontribusi

Feel free untuk fork dan improve system ini! Some ideas:

  • Add GUI dengan Tkinter/PyQt
  • Web interface dengan Gradio/Streamlit
  • Multi-camera support
  • Export ke Excel
  • Dashboard statistik presensi
  • Integration dengan database

⚠️ Privacy & Security

PENTING:

  • Jangan upload face_data.pkl atau folder dataset/ ke repository public jika berisi data pribadi orang lain
  • Pastikan consent dari semua orang yang datanya direkam
  • Gunakan dengan bijak dan sesuai regulasi privasi yang berlaku

πŸ“ License

MIT License - Feel free to use for educational purposes

πŸ‘¨β€πŸ’» Author

Dibuat untuk memudahkan sistem presensi otomatis menggunakan computer vision.


Happy Coding! πŸš€

Jika ada pertanyaan atau issue, silakan buat issue di repository ini.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support