YOLOX-Pylon-S

A YOLOX-S detector extended with one additional class β€” traffic cones (traffic_cone) β€” on top of the 80 COCO classes, for 81 classes total. The adaptation is trained so the original COCO capabilities are kept, not traded away: on this checkpoint the retained COCO score actually lands above the official YOLOX-S baseline, while the added cone class scores higher than every one of the 80 original classes.

Cones are the public demo class. The same adaptation recipe adds arbitrary custom classes (defects, parts, PPE, and similar) to a proven detector without losing what it already knows.

Part of the YOLOX-Pylon family: S Β· M Β· L Β· X (in training).

Built by Empirisch Tech GmbH (Vienna, Austria) under the Chaperone AI brand β€” see About Empirisch Tech below.

Results

Evaluated on COCO val2017 plus a held-out traffic-cone split, 81 classes in a single pass, 640Γ—640 input, IoU 0.50:0.95 unless noted.

Metric Value
mAP 50:95 (81 classes) 42.0
mAP 50:95, original 80 COCO classes only 41.6
AP50 / AP75 60.2 / 45.8
AP small / medium / large 24.5 / 46.1 / 53.5
AR@100 56.3
traffic_cone AP / AR 74.5 / 77.7
Inference (forward + NMS, batch 1, fp16) 1.72 ms

Two things worth noting:

  • Retention is better than free. The official YOLOX-S baseline is 40.5 mAP on COCO. After adding the cone class, this checkpoint scores 41.6 on the same 80 classes β€” 1.1 points above the base it started from (a side effect of the additional training schedule).
  • The added class is the best class. At 74.5 AP, traffic_cone outscores all 80 original classes on this checkpoint β€” the next best are stop sign (71.8), giraffe (69.5), and bear (69.3).
Full per-class AP (81 classes)
class AP class AP class AP
person 55.632 bicycle 30.285 car 51.554
motorcycle 44.826 airplane 65.935 bus 69.032
train 61.938 truck 46.615 boat 26.122
traffic light 38.914 fire hydrant 69.017 stop sign 71.756
parking meter 47.091 bench 29.711 bird 35.062
cat 62.883 dog 58.504 horse 59.151
sheep 49.890 cow 54.719 elephant 65.400
bear 69.281 zebra 66.671 giraffe 69.549
backpack 17.542 umbrella 39.401 handbag 13.586
tie 30.176 suitcase 41.589 frisbee 62.697
skis 24.562 snowboard 32.899 sports ball 46.214
kite 44.614 baseball bat 28.172 baseball glove 38.296
skateboard 50.527 surfboard 36.032 tennis racket 45.279
bottle 38.133 wine glass 33.070 cup 39.283
fork 33.245 knife 16.844 spoon 15.319
bowl 42.512 banana 25.952 apple 18.219
sandwich 30.984 orange 29.727 broccoli 22.596
carrot 23.408 hot dog 32.177 pizza 52.505
donut 47.748 cake 39.168 chair 32.042
couch 44.568 potted plant 27.697 bed 42.693
dining table 30.536 toilet 65.092 tv 56.373
laptop 60.517 mouse 59.313 remote 23.742
keyboard 50.499 cell phone 33.708 microwave 53.325
oven 33.296 toaster 39.092 sink 39.782
refrigerator 54.511 book 13.306 clock 49.399
vase 36.430 scissors 28.823 teddy bear 44.074
hair drier 1.065 toothbrush 18.352 traffic_cone 74.516

Comparison with other detectors

Small-tier detectors, published COCO val2017 figures from the official YOLOX and Ultralytics model tables.

Model COCO mAP 50:95 Params Custom classes License
yolox-pylon-s (this model) 41.6 kept + traffic_cone 74.5 9.0M yours added, COCO kept Apache-2.0
YOLOX-S (base) 40.5 9.0M COCO only Apache-2.0
YOLO11s 47.0 9.4M COCO only AGPL-3.0 / commercial
YOLO26s 48.6 9.5M COCO only AGPL-3.0 / commercial

How to read this honestly: the newest Ultralytics releases post higher raw COCO scores β€” several years of architecture progress at similar parameter counts. This model optimizes for a different job: extending a commercially permissive base with new classes while retaining its original capabilities. The relevant scores are the retention delta (+1.1 over its own baseline) and the added-class AP (74.5), not the raw COCO leaderboard. The Apache-2.0 license also means the weights can be deployed commercially without a per-deployment license or an obligation to open-source derivative work, which AGPL-3.0 models require.

Larger siblings for scale (same recipe, same eval protocol):

Family member mAP (81 cls) COCO kept Cone AP Inference
yolox-pylon-s 42.0 41.6 74.5 1.7 ms
yolox-pylon-m 47.2 46.8 77.5 2.6 ms
yolox-pylon-l 48.9 48.5 78.6 3.7 ms
yolox-pylon-x in training β€” β€” β€”

Usage

The checkpoint loads with the official YOLOX codebase. The only change from stock YOLOX-S is num_classes = 81, with traffic_cone as class index 80.

import torch
from yolox.exp import get_exp
from yolox.utils import postprocess

# stock yolox-s exp, patched to 81 classes
exp = get_exp(exp_name="yolox-s")
exp.num_classes = 81

model = exp.get_model()
ckpt = torch.load("yolox-pylon-s.pth", map_location="cpu")
model.load_state_dict(ckpt["model"])
model.eval().cuda()

# img: float32 tensor [1, 3, 640, 640], preprocessed YOLOX-style
with torch.no_grad():
    outputs = model(img)
outputs = postprocess(outputs, num_classes=81, conf_thre=0.25, nms_thre=0.45)

COCO_CLASSES = [...]                        # standard 80-class list
CLASSES = COCO_CLASSES + ["traffic_cone"]   # index 80

Or with the repo's demo tool:

git clone https://github.com/Megvii-BaseDetection/YOLOX && cd YOLOX
python tools/demo.py image \
    -f exps/default/yolox_s.py \
    -c yolox-pylon-s.pth \
    --path your_image.jpg --conf 0.25 --nms 0.45 --tsize 640 --device gpu
# patch exps/default/yolox_s.py with self.num_classes = 81 first

Training

  • Base: YOLOX-S (9.0M params), initialized from COCO-pretrained weights
  • Data: COCO train2017 plus a labeled traffic-cone dataset, trained jointly so the original 80 classes stay in the mix during adaptation
  • Eval: COCO val2017 plus a held-out cone split, single 81-class evaluation pass
  • Input: 640Γ—640

Intended use and limitations

Intended for roadside and infrastructure perception where traffic cones matter (work zones, lane closures, autonomous driving research) and as a template for class-extension on YOLOX. The model detects boxes for 81 classes; it does not segment, track, or estimate distance. Accuracy on small objects (24.5 AP) follows the usual small-model pattern β€” if small or distant cones dominate your footage, prefer yolox-pylon-m or yolox-pylon-l. As with any detector, validate on your own cameras before production use.

About Empirisch Tech

YOLOX-Pylon is built by Empirisch Tech GmbH, a Vienna-based AI company, under its Chaperone AI brand. The company runs one recipe across three domains β€” adapt a proven foundation model to a specific domain, keep what the base already knows, and ship the checkpoint together with the data it was trained on:

  • Language β€” Thinking-LQ-1.0 (84% MedQA, within 4 points of GPT-4o at ~20GB) and Coder-LQ-1.0
  • Physics β€” Chaperone-Flow-1.0 (Poseidon-B extended to new CFD regimes, 1.8% wake error) and Palace-LoRA (electromagnetics solver configs)
  • Vision β€” the YOLOX-Pylon family and a road-scene anomaly segmentation pipeline

The models power the company's production platforms, including NumericalAI (GPU physics simulation) and Simvera (industrial perception trained in simulation, deployed on real cameras). Everything is self-hosted in the company's own Vienna datacenter β€” no third-party model APIs. Empirisch Tech is a member of the NVIDIA Inception and Microsoft for Startups programs, and its open checkpoints have passed 30,000 downloads on Hugging Face.

Custom builds: the cone class took one adaptation run. For your own classes, cameras, or datasets, reach out via chaperoneai.com/contact.

License

Apache-2.0, matching the YOLOX base.

Citation

@article{yolox2021,
  title={YOLOX: Exceeding YOLO Series in 2021},
  author={Ge, Zheng and Liu, Songtao and Wang, Feng and Li, Zeming and Sun, Jian},
  journal={arXiv preprint arXiv:2107.08430},
  year={2021}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Dataset used to train empirischtech/yolox-pylon-s

Paper for empirischtech/yolox-pylon-s