Skip to content

Repository files navigation

Real-Time Detection App (RTD App)

A desktop GUI application for running real-time object detection on your screen. Supports YOLO and rf-detr models. Perfect for quickly testing performance on browser media and other on-screen content. You can then download only the images or videos where the model performed poorly for further training.

demo.mp4

📑 Table of Contents

✨ Features

  • Real-time screen capture — Monitor any display and detect objects from captured screenshots
  • Multiple detection backends — Ultralytics, LibreYOLO, RF-DETR
  • Detection history — Review and export past detections
  • YOLO format export — Export detections in YOLO annotation format for training
  • Custom class names — Load class names from YAML, JSON, Python, or TXT files
  • Cross-platform — Windows, Linux, macOS (untested)

📥 Installation

⚡ Quick Install (pip)

You probably have already installed packages related to the models (backends). Then just install the app without those packages.

pip install "git+https://github.com/st22nestrel/rtd-app.git"

# Run the app
rtd-app

If not, you can install packages for all supported backend

pip install "rtd-app[all] @ git+https://github.com/st22nestrel/rtd-app.git"
👉 more install options

Choosing Backends

Detection backends are optional — install only what you need:

# Single backend
pip install "rtd-app[ultralytics] @ git+https://github.com/st22nestrel/rtd-app.git"
pip install "rtd-app[libreyolo] @ git+https://github.com/st22nestrel/rtd-app.git"
pip install "rtd-app[rfdetr] @ git+https://github.com/st22nestrel/rtd-app.git"

# Multiple backends
pip install "rtd-app[ultralytics,rfdetr] @ git+https://github.com/st22nestrel/rtd-app.git"

Using pipx (Isolated Install)

This keeps rtd-app isolated from other Python packages:

pipx install "rtd-app[ultralytics] @ git+https://github.com/st22nestrel/rtd-app.git"
rtd-app

Development Install

Installs additional packages for running tests:

git clone https://github.com/st22nestrel/rtd-app.git
cd rtd-app
pip install -e ".[all,dev]"
rtd-app

🔧 Clone and Run

Clone the repository and run directly—ideal if you want to modify the code:

git clone https://github.com/st22nestrel/rtd_app.git
cd rtd_app
pip install -r requirements.txt
python main.py

📋 Requirements

  • Python 3.10+

🧩 Core Dependencies

Package Purpose
mss Fast cross-platform screen capture
dearpygui GPU-accelerated GUI framework
ultralytics YOLO model inference
libreyolo alternative YOLO model inference (supports fever models)
rf-detr rf-detr model inference
supervision Detection visualization

📚 Documentation

🚀 Performance Benchmarks

Hardware Resolution Backend FPS
RTX 3060ti (desktop) 1920x1080 Ultralytics (YOLOv8n) ~4
RTX A500 (laptop) 1920x1080 Ultralytics (YOLOv8n) 2-4

FPS varies based on model size, screen resolution, and detection complexity.

📄 License & Attributions

This project is licensed under AGPL-3.0 License.

Tip

As I do not mind using the frontend code as foundation for comercial apps (if you wished to do so), I am releasing this app also under MIT license in a separate branch here https://github.com/st22nestrel/rtd-app/tree/main-mit, without dependencies that require it to be licensed under AGPL-3.0 (the documentation mught still mention those dependecies, but they will be missing). Therefore this version will have less features (stripped ultralytics backend etc.), and might not recieve updates as frequently.

This project uses several open-source components:

🙏 Acknowledgements

This project would not be possible without these excellent open-source libraries:

This project was highly vibecoded with assistance from AI tools.

About

Real-Time Detection App - Run object detection models on your screen in real-time

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages