Vision Analysis
Back to Leaderboard

YOLOX-Tiny

yolox

one-stage detector with CSPDarknet backbone

Parameters5.1M
GFLOPs7.7
Input Size640px
Best mAP35.5%
LicenseApache-2.0

Architecture

Type

one-stage

Backbone

CSPDarknet

Neck

PAFPN

Head

Decoupled

Benchmark Results

Performance on COCO val2017 across different hardware configurations

HardwareRuntimeDatasetCredit / sourcemAP@50-95FPSLatencyGPU allocation
NVIDIA Jetson Orin Nano Super 8GBONNX Runtime FP32mini500 (500 images)35.5%31.431.8ms-
NVIDIA Jetson Orin Nano Super 8GBPyTorch FP32mini500 (500 images)35.5%20.349.2ms37 MB
NVIDIA Jetson Orin Nano Super 8GBTensorRT FP16mini500 (500 images)35.5%51.619.4ms-
NVIDIA Jetson Orin Nano Super 8GBTensorRT FP32mini500 (500 images)35.5%43.623.0ms-
NVIDIA RTX 5070 TiONNX Runtime FP32mini500 (500 images)35.5%76.213.1ms-
NVIDIA RTX 5070 TiPyTorch FP32mini500 (500 images)35.5%61.616.2ms37 MB
NVIDIA RTX 5070 TiTensorRT FP16mini500 (500 images)35.4%97.710.2ms-
NVIDIA RTX 5070 TiTensorRT FP32mini500 (500 images)33.9%87.211.5ms-
Raspberry Pi 5ncnn FP32mini500 (500 images)34.0%18.454.3ms-
Raspberry Pi 5ONNX Runtime FP32mini500 (500 images)34.3%9.4106.7ms-
Raspberry Pi 5PyTorch FP32mini500 (500 images)35.1%5.5183.5ms-
Raspberry Pi 5 + Hailo-8HailoRT INT8mini500 (500 images)33.5%195.65.1ms-

Speed Breakdown(NVIDIA Jetson Orin Nano Super 8GB)

7.7ms
31.3ms
10.2ms
Preprocess
Inference
Postprocess (NMS)

Usage with LibreYOLO

from libreyolo import LibreYOLO

# Load model (auto-downloads from HuggingFace if not found locally)
model = LibreYOLO("LibreYOLOXt.pt")

# Run inference
result = model("image.jpg", conf=0.25, iou=0.45)

# Process results
print(f"Found {len(result)} objects")
print(result.boxes.xyxy)   # bounding boxes (N, 4)
print(result.boxes.conf)   # confidence scores (N,)
print(result.boxes.cls)    # class IDs (N,)
anchor-freenmsPaper: 32.8% mAP

Run any model with one line

LibreYOLO has the best catalogue of state-of-the-art detectors, all behind one MIT-licensed Python API.

from libreyolo import LibreYOLO, SAMPLE_IMAGE

# LibreYOLO has the best catalogue of state-of-the-art models.
model = LibreYOLO("LibreRFDETRl.pt")           # RF-DETR-L (transformer flagship)
results = model(SAMPLE_IMAGE, save=True)        # run inference, save the annotated image

# Swap in any other model, same one-line API (weights auto-download):
#   LibreYOLO("LibreYOLO9c.pt")      # YOLO9-C
#   LibreYOLO("LibreYOLOXx.pt")      # YOLOX-X
#   LibreYOLO("LibreDFINEx.pt")      # D-FINE-X
#   LibreYOLO("LibreRTDETRr50.pt")   # RT-DETR-R50