Skip to main content

AI-powered image annotation tool for Google Colab

Project description

DriverFlow — Intelligent Image Annotation Tool

A cloud-ready annotation tool powered by GroundingDINO for zero-shot object detection. Runs entirely in Google Colab — no local setup required.

Features

  • Zero-shot detection — detect any objects using natural language prompts
  • Interactive UI — upload images, adjust thresholds, preview results in real-time
  • YOLO export — download annotations as a ZIP with annotations.txt + classes.txt
  • Cloudflare Tunnel — optional persistent public URL with no account required

Quick Start (Google Colab)

!pip install driverflow

from driverflow import DriverFlow
DriverFlow().start()               # Colab proxy URL
# DriverFlow().start(tunnel=True)  # persistent public URL via Cloudflare

start() handles everything: installing GroundingDINO, downloading model weights, installing dependencies, and launching the web UI.

Usage

  1. Upload an image — drag and drop or click to browse
  2. Enter a text prompt — describe objects to detect, e.g. car . person . traffic light
  3. Adjust thresholds (optional)
    • Box Threshold (default 0.35) — higher = only more confident detections
    • Text Threshold (default 0.25) — higher = stricter text-alignment matching
  4. Click Detect — returns an annotated image and a summary table
  5. Download — export as YOLO format ZIP

YOLO Export Format

annotations.txt — one detection per line:

<class_id> <cx> <cy> <w> <h>

All coordinates are normalized (0–1). class_id is 0-based, sorted alphabetically.

classes.txt — one class name per line, alphabetically sorted.

API

The tool runs a local FastAPI server with two endpoints:

POST /api/detect

Multipart form: image (file), text_prompt (str), box_threshold (float), text_threshold (float).

Returns JSON with detections, class_counts, annotated_image_b64, image_width, image_height.

POST /api/download_yolo

JSON body: detections, image_width, image_height.

Returns a ZIP file with annotations.txt and classes.txt.

Troubleshooting

Slow first run — GroundingDINO (~400 MB) and model weights are downloaded on first start(). Subsequent runs in the same Colab session are fast.

Low confidence / missing detections — lower the thresholds (e.g. 0.25 → 0.15) or use more specific prompts like red car instead of car.

Colab proxy expires — use tunnel=True for a persistent Cloudflare URL.

Model

GroundingDINO SwinT-OGC — Vision Transformer + BERT text encoder, ~400 MB checkpoint. Licensed under Apache 2.0 by IDEA-Research.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

driverflow-0.2.1.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

driverflow-0.2.1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file driverflow-0.2.1.tar.gz.

File metadata

  • Download URL: driverflow-0.2.1.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for driverflow-0.2.1.tar.gz
Algorithm Hash digest
SHA256 74d0f919ba8d0ff989d7b83fa5dacd153473ad0aa67e37d96764479f57403cfa
MD5 7c2fb1254318527cc29dc1fa9d0520aa
BLAKE2b-256 17c29e6d75adfaaca6862c9e36eb4b2711dace901a59a97b3c73648f2553a367

See more details on using hashes here.

Provenance

The following attestation bundles were made for driverflow-0.2.1.tar.gz:

Publisher: publish.yml on chirumer/DriverFlow

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file driverflow-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: driverflow-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for driverflow-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2551611c290567ed14fc22f77272bb557ed00563ca52be5134a61526cf93e04
MD5 419c43e77cb3499436dcb79d4a374107
BLAKE2b-256 41c3f1d258c7b0697bae2a7377a0b6967e13ae8b0b05ad52cb80292ff3719eeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for driverflow-0.2.1-py3-none-any.whl:

Publisher: publish.yml on chirumer/DriverFlow

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page