aparsoft/yolo-streamlit-detection-tracking
Object detection and tracking algorithm implemented for Real-Time video streams and static images.
What it solves
This project provides a comprehensive web-based interface for real-time computer vision tasks. It simplifies the process of deploying and testing YOLO-based models for object detection, instance segmentation, pose estimation, and object tracking without requiring complex setup or custom code for different input sources.
How it works
Built with Streamlit, the application acts as a wrapper around the Ultralytics YOLO26 and YOLO World v2 models. It uses a modular service-based architecture to handle different inference modes:
- Image Inference: Processes uploaded images or defaults, applying the selected vision task.
- Video Inference: Handles streams from stored files, WebRTC-enabled webcams, RTSP streams, and YouTube URLs. It integrates ByteTrack and BoTSORT for object tracking and implements a frame-skipping mechanism to optimize performance on long videos.
- Open-Vocabulary Detection: Leverages YOLO World v2 to allow users to detect objects using natural language text prompts instead of fixed class labels.
Who it’s for
- Developers and Researchers: Those looking to quickly prototype and test vision models on various media types.
- AI Enthusiasts: Users who want to explore object detection and pose estimation through a GUI rather than writing Python scripts.
- Deployment Testers: People needing a browser-native way to test webcam feeds and RTSP streams using YOLO models.
Highlights
- Multi-Task Support: Combines detection, segmentation, and pose estimation in one app.
- Open-Vocabulary Detection: Supports natural language prompts for flexible object searching.
- Couting & Tracking: Features both per-frame local and cumulative global object counting.
- Flexible Video Sources: Native browser webcam support via
streamlit-webrtc, RTSP, and YouTube integration. - Performance Tuning: Includes a frame-skip slider (1-8x) to accelerate video processing.
Related
- Project
- Project
- Project
- Project
- Project