Skip to main content

Vision, simplified. Run any computer vision model with one command.

Project description

pixo

pixo — vision, simplified.

pixo is a runtime layer for computer vision models that lets you run, chain, and manage them as one system on your own machine.

PyPI Python License

pip install pixo
pixo try

That's it. pixo try auto-picks a model for your hardware, finds a sample image, runs it, and opens a browser report. You go from pip install to a working result in under a minute.

Why pixo?

Running modern computer vision models locally is messy and fragile. pixo makes it safe, consistent, and easy to use multiple models without crashes, conflicts, or glue code.

Problem Without pixo With pixo
Sensitive data leaks to cloud Telemetry and version pings phone home --airgap blocks every outbound call — provably local
First run takes 10 minutes Read docs, pick model, find sample, type 4 commands pixo try — one command, model picked for your hardware
Laptop freezes mid-inference RAM/CPU maxed out, hard reboot Resource Guardian caps usage automatically
Job crashes at 80% Start over from zero Auto-checkpoint + resume from the last save
Dependency conflicts Packages break each other Isolated environments per model
Inconsistent outputs Every model outputs differently Standard results.json + COCO / CSV exports
Sharing a result is painful Zip + instructions + hope it opens pixo share → single self-contained HTML file

Quick start

pip install pixo

# See it work (60-second hero demo)
pixo try

# Browse models and check your hardware
pixo list
pixo doctor

# Run any model on your own file
pixo run yolov8 --input photo.jpg
pixo run yolov8 --input video.mp4

# Speed up with ONNX (~40% faster on CPU)
pixo optimize yolov8

Supported models

Every model carries a privacy badge — all nine bundled models run fully offline after weights are downloaded once.

Model Task Default size
yolov8 / yolov11 / yolov12 Object detection 5–7 MB
rtdetr Transformer detection 64 MB
grounding_dino Text-prompted detection 341 MB
florence2 Vision-language (caption, detect, OCR) 460 MB
depth_anything_v2 Depth estimation 99 MB
sam2 Segmentation 898 MB
samurai Video tracking + segmentation 898 MB
pixo run grounding_dino --input photo.jpg --prompt "red backpack, yellow hat"
pixo run florence2 --input photo.jpg --task caption
pixo run depth_anything_v2 --input photo.jpg

Key features

Local-first by design

pixo run yolov8 --input photo.jpg --airgap

Blocks all outbound network calls for the duration of the run — proves your data never left the machine. Combined with privacy badges on every model card, pixo is the only CV runtime built around "no bytes leave your laptop."

See where models disagree

pixo compare yolov8 yolov11 yolov12 --input photo.jpg

Runs multiple detection models on the same image and shows only where they disagree. Agreement / partial / unique detections visualized side-by-side in a shareable HTML report.

Shareable reports, no server

pixo share

Exports a run as a single self-contained .html file with images embedded. Attach it to a tweet, Slack, or email — anyone can open it in any browser.

Safe on any laptop

pixo run yolov8 --input video.mp4 --low-memory --background

Resource Guardian caps RAM, CPU, and GPU usage. --background drops priority so your laptop stays responsive while pixo runs.

Never lose progress

pixo run yolov8 --input long_video.mp4
# [Ctrl+C pauses, saves checkpoint]
pixo resume

Auto-saves every N frames. Ctrl+C pauses gracefully instead of killing the process.

Free cloud GPUs

pixo setup-cloud --kaggle
pixo run sam2 --input photo.jpg --backend kaggle

Route heavy models to free Kaggle or Colab GPU. 30 hours/week free on Kaggle.

Chain models

pixo pipe "grounding_dino -> sam2" --input photo.jpg --prompt "person"

Browser UIs (optional)

pip install pixo[demo]
pixo serve yolov8          # Gradio UI for one model

pip install pixo[web]
pixo ui                    # Full local dashboard

All commands

pixo try                   # Zero-setup hero demo
pixo list                  # List models with privacy badges
pixo info <model>          # Detailed model info
pixo pull <model>          # Pre-download a model
pixo run <model> -i <f>    # Run inference
pixo compare <m1> <m2> ... # Cross-model disagreement browser
pixo share [job_id]        # Export self-contained HTML report
pixo serve <model>         # Gradio browser UI
pixo ui                    # Full web dashboard
pixo pipe "m1 -> m2"       # Chain models
pixo doctor                # Check hardware
pixo optimize <model>      # ONNX conversion (~40% faster CPU)
pixo history               # Show past jobs
pixo resume [job_id]       # Resume a paused job
pixo view <job_id>         # Open a job's output folder
pixo setup-cloud           # Connect Kaggle / Colab
pixo cloud-status          # Cloud backend status
pixo rm <model>            # Remove a downloaded model
pixo upgrade               # Update pixo
pixo guide                 # In-terminal usage guide

Python SDK

import pixo

result = pixo.run("yolov8", input="photo.jpg")
print(result.objects, result.classes, result.time_seconds)

result = pixo.run("grounding_dino", input="photo.jpg", prompt="red car")
result = pixo.run("sam2", input="photo.jpg", backend="kaggle")

hw = pixo.doctor()
print(hw["ram_total_gb"], hw["has_gpu"])

Adding a model

pixo uses a plugin system. Each model is two files:

pixo/models/cards/your_model/
  modelcard.yaml   # Metadata, dependencies, hardware, privacy
  run.py           # Two functions: setup() and run()

Optional installs

pixo keeps the base install minimal. Pull only what you need:

pip install pixo[yolo]     # YOLO family (Ultralytics + OpenCV)
pip install pixo[onnx]     # ONNX Runtime for faster CPU
pip install pixo[vision]   # Grounding DINO / Florence-2 / SAM2
pip install pixo[cloud]    # Kaggle backend
pip install pixo[demo]     # Gradio for pixo serve
pip install pixo[web]      # FastAPI + uvicorn for pixo ui
pip install pixo[all]      # Everything

Development

git clone https://github.com/Janinduu/pixo.git
cd pixo
pip install -e .

Documentation

Detailed feature guides live in docs/:

License

MIT

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

pixo-0.3.1.tar.gz (72.7 kB view details)

Uploaded Source

Built Distribution

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

pixo-0.3.1-py3-none-any.whl (89.1 kB view details)

Uploaded Python 3

File details

Details for the file pixo-0.3.1.tar.gz.

File metadata

  • Download URL: pixo-0.3.1.tar.gz
  • Upload date:
  • Size: 72.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for pixo-0.3.1.tar.gz
Algorithm Hash digest
SHA256 6893692ed8fac0c91b10d4b0fd5e174cbabc0b9e311bc3accf03a627ffc54c58
MD5 d89bc1aa9b7687e251c06783c0e8c526
BLAKE2b-256 36e65a2b0fb6bafa33ead7941654f17f9477f550fcd39421450a53e89c0806cb

See more details on using hashes here.

File details

Details for the file pixo-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: pixo-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 89.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for pixo-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c2928a1ea42726daf964ed109b60b4ac95a5a3d2c8a5550374e35932fc6d5a13
MD5 d108f423a14fafb7f905a9ca7e11e516
BLAKE2b-256 3701cd7a21c6244a187f7e7498c88cf2b2b62238a7ede8de8008c2ca6ebaacc0

See more details on using hashes here.

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