🔢 Object Counting & Tracking System
A real-time object counting application built with Python, YOLO, OpenCV, and Tkinter — combining persistent tracking with virtual line-crossing detection for accurate, automated counting.
Built on OpenCV, Tkinter, NumPy, PIL, and Ultralytics YOLO, the system runs on a dedicated background thread so the interface stays responsive during heavy detection. Objects are tracked with persistent IDs and counted only once as they cross a user-defined virtual line — delivering reliable, real-time IN/OUT statistics from any video source.
⚙️ How It Works
Modern Control Interface
A dual-panel GUI for loading models, selecting input sources, adjusting confidence, filtering classes, and drawing the counting line — with live video on the right.
Persistent Object Tracking
YOLO’s tracking model assigns a unique ID to every object, recognizing it across frames instead of re-detecting it each time.
Virtual Counting Line
Users draw a custom line on screen; the app tracks which side each object is on and detects valid crossing events.
Multithreaded Processing
Frame reading and detection run on a background thread, keeping the interface smooth and freeze-free during heavy computation.
📊 Live Counting Dashboard
🎥 Supported Input Sources
IP Camera (RTSP)
IP Camera (HTTP)
Prerecorded Video Files
Auto-Reconnect on Network Loss
🌍 Ideal Use Cases
🛒 Retail Foot Traffic Analysis
📦 Warehouse & Logistics Counting
🚗 Traffic & Vehicle Flow Monitoring
🚪 Entry / Exit Access Control
🏙️ Smart City Surveillance Analytics
🔬 Research & Development Projects
✅ Project Highlights
🚀 Conclusion
The Object Counting & Tracking System brings together deep learning detection, persistent multi-object tracking, geometric line-crossing analysis, and real-time video processing into one complete, intelligent counting solution — built for accuracy, flexibility, and smooth performance across any video source.


Reviews
There are no reviews yet.