No description
| utils | ||
| yolo_weights | ||
| .envrc | ||
| .gitignore | ||
| bytetrack.yaml | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| main.py | ||
| metrics.py | ||
| README.md | ||
| requirements.txt | ||
| tracker.py | ||
People Counter with YOLOv8, ByteTrack, and Prometheus
This project implements a real-time people counting system based on object detection and tracking using YOLOv8 and ByteTrack. It supports RTSP input, in/out counting using a vertical line, and exposes Prometheus metrics for integration with monitoring systems.
🚀 Features
- 🎥 RTSP camera stream input
- 🧠 YOLOv8 person detection
- 🔁 ByteTrack object tracking
- ➕➖ In/Out counting via virtual vertical line
- 📊 Prometheus metrics at
http://localhost:9100/ - 🌐 Streamlit UI for live video and statistics
Start mediamtx
mediamtx
Stream webcam
ffmpeg \
-vaapi_device /dev/dri/renderD128 \
-y \
-f v4l2 \
-framerate 30 \
-video_size 1280x720 \
-input_format mjpeg \
-i /dev/video0 \
-vf 'format=nv12,hwupload' \
-c:v h264_vaapi \
-f rtsp \
rtsp://localhost:8554/cam
Run application
streamlit run streamlit_app.py