Skip to content

v0.1 – Prototype

Latest

Choose a tag to compare

@Armi1014 Armi1014 released this 07 Nov 17:07
· 3 commits to main since this release
3f98f69

v0.1 – Prototype

First prototype of a simple YOLOv8-based object detection tool.

This version is intentionally minimal: one script (detect.py), one batch helper (start.bat), and a tiny requirements.txt. It’s meant as a clean starting point, not a polished product.


✨ What’s in this release

  • 🔍 Real-time object detection

    • Runs YOLOv8 on:
      • webcam (--source 0, 1, …)
      • image files
      • video files
      • generic video/stream URLs (RTSP/HTTP, etc.)
  • 🧠 YOLOv8 integration

    • Uses Ultralytics YOLO (yolov8n.pt by default)
    • Supports custom .pt models via --model
  • 📊 Visual overlays

    • Bounding boxes and class labels (from YOLO)
    • Per-class object counts in the top-left corner
    • FPS overlay (inference FPS) at the bottom of the frame
  • 💾 Saving output (optional)

    • --save to write annotated images/videos
    • --out to control output path
    • --fps to control output video FPS (for streams/videos)
  • 🖥️ CLI-focused design

    • --conf, --imgsz, --device, --show, --verbose for fine-grained control
    • start.bat for quick webcam testing on Windows
  • ⚡ Fast startup

    • OpenCV, Ultralytics, and NumPy are imported lazily to avoid long initial load times.

📦 Requirements

  • Python: 3.8 – 3.12

  • Install dependencies:

    pip install -r requirements.txt
    

🚀 Quick start

Webcam (default camera 0):

python detect.py --source 0 --show

or on Windows:

start.bat

Image file:

python detect.py --source path/to/image.jpg --show --save

Video file:

python detect.py --source path/to/video.mp4 --show --save --fps 30

⚠️ Known limitations (v0.1)

This is a prototype, so expect rough edges:

  • No tracking / IDs between frames yet (pure per-frame detection).
  • No config file or presets; everything is CLI-driven.
  • No automatic GPU/CPU diagnostics beyond basic logging.
  • No tests, no packaging, just a single script.

If you try this and it breaks, that’s expected at v0.1 – Prototype.
Open an issue with your OS, Python version, command used, and console output.