finds.dev← search

// the find

roboflow/supervision

★ 43,924 · Python · MIT · updated Jun 2026

We write your reusable computer vision tools. 💜

supervision is a model-agnostic post-processing library for computer vision: it handles the plumbing between model output and useful artifacts — bounding boxes, masks, tracking, zone counting, dataset I/O, annotation rendering. Aimed at developers who already have a detection model and want to skip rewriting the same numpy glue for the fifth time.

The Detections class is a genuinely useful abstraction — it wraps xyxy, masks, confidence, class_id, and tracker_id into one numpy-backed object that composes cleanly across the whole library. Adapter coverage is wide (Ultralytics, Transformers, MMDetection, SAM, rf-detr) so you rarely need to write conversion code yourself. The InferenceSlicer for small-object detection via SAHI tiling is well-integrated and not something most users would bother building correctly on their own. Dataset utilities handle YOLO/COCO/Pascal VOC loading, splitting, merging, and saving in a way that's actually useful for ML pipeline work, not just demo code.

ByteTrack is the only built-in tracker — no BoT-SORT, StrongSORT, or anything with re-ID, which matters the moment your objects go behind occlusion for more than a few frames. The library ships a lot of annotator classes that are basically thin wrappers over OpenCV draw calls; the abstraction adds overhead without much composability. Heavy dependency on Roboflow's own ecosystem (Inference, rfdetr) in examples and docs creates friction if you're not in that stack. The compact mask format is interesting but under-documented — it's sitting next to the main detection code without enough explanation of when you'd actually want it over a standard binary mask.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →