Program ini menggunakan model YOLO untuk mendeteksi dan melacak pelanggan yang duduk di meja di dalam kafe. Setiap meja didefinisikan sebagai area polygon, dan sistem akan mencatat waktu yang dihabiskan pelanggan di meja tertentu. Jika pelanggan hanya lewat tanpa duduk minimal 5 detik, maka mereka tidak akan dihitung sebagai pelanggan yang duduk.
- Deteksi Person: Hanya mendeteksi objek manusia dengan YOLO.
- Pelacakan ID Pelanggan: Menggunakan ID unik untuk setiap pelanggan yang terdeteksi.
- Area Meja dalam Bentuk Polygon: Meja tidak lagi berbentuk kotak, melainkan didefinisikan dengan koordinat polygon.
- Pencatatan Durasi Duduk: Sistem hanya mencatat pelanggan yang duduk minimal 5 detik.
- Penyimpanan Log: Data pelanggan yang duduk dan waktu duduknya disimpan dalam file CSV.
- Python 3.x
- OpenCV
- torch
- numpy
- ultralytics (YOLO)
- Clone repositori ini:
git clone https://github.com/username/repository.git cd repository - Install dependensi yang diperlukan:
pip install -r requirements.txt
- Jalankan program:
python trackCafeBotSort.py
Meja didefinisikan sebagai polygon dengan empat titik koordinat, contoh:
"Meja 1": np.array([(600, 650), (800, 650), (750, 750), (550, 750)])Setiap polygon akan divisualisasikan dengan warna tertentu pada tampilan video.
- Program membaca video dan menjalankan YOLO untuk mendeteksi orang.
- Setiap orang diberi ID unik dan dilacak saat berpindah.
- Jika orang berada dalam area meja selama minimal 5 detik, sistem mencatat waktu mereka di CSV.
- Data yang ditampilkan di layar:
- ID pelanggan
- Waktu yang dihabiskan di meja
- Status apakah pelanggan duduk atau hanya lewat
- Jika pelanggan meninggalkan meja sebelum 5 detik, mereka tidak dicatat.
Ikuti saya untuk update lebih lanjut:
- Instagram: @ademaulana_
- TikTok: @ademaulana_4
Proyek ini menggunakan lisensi MIT. Silakan gunakan dan modifikasi sesuai kebutuhan Anda.