Skip to main content

swatah vision Python package

Project description

SwatahVision Cover

An open-source Vision AI stack for real-world applications

swatahVision is an open-source Vision AI stack that brings together models, runtimes, post-processing, tracking, and visualization into a clean, reusable Python package.

It’s built to make Vision AI practical: load a model, run inference, get structured outputs, visualize results, and ship pipelines faster — without reinventing glue-code every time.

Part of the VisionAI4Bhārat initiative.


What is swatahVision?

swatahVision provides a unified interface for:

  • Inference across multiple runtimes (e.g., ONNX Runtime, OpenVINO)
  • Vision tasks
    • Object Detection
    • Image Classification
    • (Extensible for OCR / segmentation / multimodal pipelines)
  • Post-processing adapters
    • YOLO-style decoders + NMS
    • SSD-style decoders
    • RetinaNet-style decoders
  • Tracking
    • Integrated ByteTrack support to assign stable tracker_id across frames
  • Visualization
    • Built-in drawing utilities for boxes, labels, and overlays
  • Video processing utilities
    • Frame generators and pipeline helpers

Features

  • Unified model wrapper: same API for different backends/runtimes
  • Structured outputs:
    • Detections: boxes, confidence, class_id, tracker_id (and more)
    • Classification: class_id, confidence, top-k
  • Production-friendly utilities: FPS monitor, video readers/writers, batching-ready patterns
  • Lightweight & composable: designed as a stack, not a monolith
  • Real world examples and analytics
  • ✅ **Built-in annotation utilities
  • ✅ **Minimal and clean API

Core Components

Model

sv.Model(model, engine, hardware)

Handles model loading and inference execution.

Image API

image = sv.Image.load_from_file(path)
sv.Image.show(image)

Post Processing

sv.Classification.from_mobilenet(...)
sv.Detections.from_ssd(...)

Annotation

  • Bounding boxes
  • Labels
  • Custom colors
  • Text positioning

Design Philosophy

  • Simplicity
  • Lightweight deployment
  • Fast prototyping
  • Developer-friendly workflows

Install

From source

git clone https://github.com/VisionAI4Bharat/swatahvision.git
cd swatahvision
pip install -e .

Quickstart

Load a model and run inference

import swatahvision as sv

model = sv.Model(
    model="path/to/model.onnx",
    engine=sv.Engine.ONNX,
    hardware=sv.Hardware.CPU
)

outputs = model(image, input_size=(640, 640))

Detection

Convert raw outputs to Detections

import swatahvision as sv

detections = sv.Detections.from_yolo(
    outputs,
    conf_threshold=0.3,
    nms_threshold=0.5,
    class_agnostic=False
)

print(len(detections))
print(detections.xyxy[:3])

Filter / slice detections

high_conf = detections[detections.confidence > 0.6]
persons = detections[detections.class_id == 0]

Draw boxes

import cv2
import swatahvision as sv

frame = cv2.imread("image.jpg")

annotated = sv.UI.draw_bboxes(
    image=frame.copy(),
    detections=detections,
    conf=0.3
)

cv2.imwrite("out.jpg", annotated)

License

This work is licensed under LGPL 3.0

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

swatahvision-26.3.0b1.tar.gz (88.1 kB view details)

Uploaded Source

Built Distribution

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

swatahvision-26.3.0b1-py3-none-any.whl (124.2 kB view details)

Uploaded Python 3

File details

Details for the file swatahvision-26.3.0b1.tar.gz.

File metadata

  • Download URL: swatahvision-26.3.0b1.tar.gz
  • Upload date:
  • Size: 88.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for swatahvision-26.3.0b1.tar.gz
Algorithm Hash digest
SHA256 1fe36c395e7fafe890847a321aea582113d06a668a0c07d62e491b9095fa9a11
MD5 8d579970b0da584b51c84b7c77182ff6
BLAKE2b-256 4089f0fd13cc69579ff40c618e3155f658979b6e98068e5f685cc473d78bcefb

See more details on using hashes here.

File details

Details for the file swatahvision-26.3.0b1-py3-none-any.whl.

File metadata

File hashes

Hashes for swatahvision-26.3.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 a1561ede16fb9a8fab8756fbac32346f8b4f9c5025caf7fc307e298ba0c79afb
MD5 ce08c87f85209d4022e758a85c05a06b
BLAKE2b-256 141212a646c82cbc09d21cad5f5822ac2654271059839f0cf01e4334b7436f69

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