Aplikasi Computer Vision lengkap dengan 3 fitur utama - Sekarang lebih cepat 50-60%!
- Face Detection - Deteksi wajah real-time
- Hand Skeleton Detection - Deteksi kerangka tangan
- Face Recognition - Sistem pengenalan wajah lengkap
- β‘ Kamera terbuka 2-3 detik lebih cepat dengan DirectShow API
- π Loading indicators yang informatif
- π Real-time feedback saat memuat modul
- β¨ Frame langsung terang (no more dark frames)
- π― Buffer optimized untuk response lebih cepat
π Lihat detail: PANDUAN_OPTIMASI.md
- Mendeteksi wajah secara real-time menggunakan webcam
- Menampilkan persegi merah di sekitar wajah yang terdeteksi
- Menghitung jumlah wajah yang terdeteksi
- Mendeteksi tangan menggunakan MediaPipe
- Menampilkan landmark (titik-titik) kerangka tangan
- Dapat mendeteksi hingga 2 tangan secara bersamaan
Sistem pengenalan wajah dengan 3 tahap:
- Create Dataset: Mengambil 30 foto wajah untuk training
- Training Model: Melatih model dari dataset yang telah dibuat
- Recognition: Mengenali wajah secara real-time
- Python 3.8 atau lebih baru
- Webcam yang berfungsi
- Windows/Linux/MacOS
-
Clone atau Download Project
cd "d:\allin one pai app"
-
Install Dependencies
pip install -r requirements.txt
Library yang akan terinstall:
opencv-contrib-python
- Untuk computer visionmediapipe
- Untuk hand skeleton detectionnumpy
- Untuk operasi arrayPillow
- Untuk pemrosesan gambar
-
Verifikasi File Haar Cascade
Pastikan file
haarcascade_frontalface_default.xml
ada di folder project. Jika belum ada, download dari:https://raw.githubusercontent.com/opencv/opencv/4.x/data/haarcascades/haarcascade_frontalface_default.xml
python main.py
Setelah menjalankan aplikasi, Anda akan melihat menu:
================================================================
COMPUTER VISION APP
All-in-One Solution
================================================================
π MENU UTAMA:
1. Face Detection (Deteksi Wajah)
2. Hand Skeleton Detection (Deteksi Kerangka Tangan)
3. Face Recognition - Create Dataset (Buat Dataset Wajah)
4. Face Recognition - Training Model (Latih Model)
5. Face Recognition - Recognize Face (Kenali Wajah)
0. Keluar
----------------------------------------------------------------
- Pilih menu 3 (Create Dataset)
- Masukkan nama orang (contoh: "John")
- Masukkan ID unik (contoh: 1)
- Hadapkan wajah ke kamera
- Program akan mengambil 30 foto secara otomatis
- Gerakkan kepala ke berbagai arah untuk hasil lebih baik
- Pilih menu 4 (Training Model)
- Program akan membaca semua foto dari folder
dataset/
- Model akan dilatih dan disimpan sebagai
face-model.yml
- Tunggu hingga proses selesai (biasanya beberapa detik)
- Pilih menu 5 (Recognize Face)
- Hadapkan wajah ke kamera
- Jika wajah sudah dilatih, nama dan akurasi akan ditampilkan
- Tekan 'q' untuk keluar
- Pastikan pencahayaan cukup terang
- Jarak ideal dari kamera: 50-100 cm
- Tekan 'q' untuk kembali ke menu
- Ambil foto di berbagai sudut (depan, kiri, kanan, atas, bawah)
- Gunakan ekspresi wajah yang berbeda
- Pastikan pencahayaan konsisten
- Setiap orang harus memiliki ID unik
- Pastikan minimal ada 1 orang dalam dataset
- Semakin banyak foto, semakin akurat hasilnya
- Untuk menambah orang baru, ulangi Create Dataset dengan ID berbeda
- Confidence < 100 = Wajah dikenali β
- Confidence >= 100 = Wajah tidak dikenali β
- Semakin rendah confidence, semakin akurat pengenalan
d:\allin one pai app\
β
βββ main.py # File utama untuk menjalankan aplikasi
βββ face_detection.py # Modul Face Detection
βββ hand_skeleton.py # Modul Hand Skeleton Detection
βββ face_create_dataset.py # Modul untuk membuat dataset wajah
βββ face_training.py # Modul untuk training model
βββ face_recognition_module.py # Modul untuk recognition
β
βββ haarcascade_frontalface_default.xml # Model Haar Cascade
βββ requirements.txt # Daftar dependencies
βββ README.md # Dokumentasi ini
β
βββ dataset/ # Folder untuk menyimpan foto training
β βββ Person-1-1.jpg
β βββ Person-1-2.jpg
β βββ ...
β
βββ names_database.json # Database nama (dibuat otomatis)
βββ face-model.yml # Model terlatih (dibuat setelah training)
Solusi: Install OpenCV
pip install opencv-contrib-python
Solusi: Install MediaPipe
pip install mediapipe
Solusi:
- Pastikan webcam tidak sedang digunakan aplikasi lain
- Cek permission webcam di sistem operasi
- Coba restart komputer
Solusi: Download file dari link di atas dan letakkan di folder project
Solusi:
- Tambah lebih banyak foto (ulangi Create Dataset)
- Pastikan pencahayaan konsisten
- Ambil foto dari berbagai sudut
- Training ulang model
-
Buat Dataset untuk Orang 1
- Menu 3 β Nama: "Alice" β ID: 1 β Ambil 30 foto
-
Buat Dataset untuk Orang 2
- Menu 3 β Nama: "Bob" β ID: 2 β Ambil 30 foto
-
Buat Dataset untuk Orang 3
- Menu 3 β Nama: "Charlie" β ID: 3 β Ambil 30 foto
-
Training Model
- Menu 4 β Tunggu hingga selesai
-
Test Recognition
- Menu 5 β Coba hadapkan wajah Alice, Bob, atau Charlie
- Dataset Folder: Akan dibuat otomatis saat pertama kali membuat dataset
- Names Database: File JSON untuk menyimpan mapping ID β Nama
- Model File: File
.yml
hasil training, jangan dihapus jika ingin menggunakan recognition - ID Unik: Setiap orang harus memiliki ID yang berbeda
- Overwrite: Jika membuat dataset dengan ID yang sama, data lama akan ditambahkan (tidak ditimpa)
- OpenCV: Library computer vision untuk face detection dan recognition
- MediaPipe: Framework Google untuk hand landmark detection
- Haar Cascade: Algoritma untuk face detection
- LBPH Face Recognizer: Algoritma untuk face recognition
- Python: Bahasa pemrograman utama
Jika ada pertanyaan atau masalah:
- Cek troubleshooting di atas
- Pastikan semua dependencies terinstall dengan benar
- Pastikan webcam berfungsi dengan baik
Project ini dibuat untuk tujuan edukasi dan pembelajaran Computer Vision.
Selamat Menggunakan Computer Vision App! π
Dibuat dengan β€οΈ menggunakan Python, OpenCV, dan MediaPipe