Instructions to use sroot/lgd-chips-gen1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- ultralytics
How to use sroot/lgd-chips-gen1 with ultralytics:
# Couldn't find a valid YOLO version tag. # Replace XX with the correct version. from ultralytics import YOLOvXX model = YOLOvXX.from_pretrained("sroot/lgd-chips-gen1") source = 'http://images.cocodataset.org/val2017/000000039769.jpg' model.predict(source=source, save=True) - Notebooks
- Google Colab
- Kaggle
license: agpl-3.0
library_name: ultralytics
pipeline_tag: object-detection
base_model: Ultralytics/YOLO11
tags:
- object-detection
- ultralytics
- yolo11
- onnx
- onnxruntime
- casino-chips
- chip-detection
- casino
- live-game-defender
model-index:
- name: lgd-chips-gen1
results:
- task:
type: object-detection
dataset:
type: lgd-chip-gate-blackjack
name: LGD chip_test blackjack gate (private, never trained on)
metrics:
- type: recall
value: 0.91
name: Chip recall @50
- type: precision
value: 0.77
name: Precision
LGD Chips — Gen 1 · YOLO11s casino chip-colour detector (5 colours)
The first generation of the Live Game Defender (LGD) casino-chip detector: a YOLO11s object detector that finds gaming chips on the felt and classifies each by colour. Trained on point-labeled blackjack-table footage. Colours only — colour→denomination is per-casino configuration downstream.
Superseded by
lgd-chips-gen2(the current served model — a dual-felt blend covering both blackjack and Ultimate Texas Hold'em, with a different venue-matched palette). Gen 1 is published for provenance.
Generations
| Gen | Repo | Palette | Frozen-gate verdict | Status |
|---|---|---|---|---|
| 1 | lgd-chips-gen1 (this) | black / white / green / red / pink | blackjack gate: recall 0.91 / precision 0.77 | superseded |
| 2 | lgd-chips-gen2 | black / green / pink / purple / yellow | UTH gate: 0.80 / 0.85 / colour 0.97 | ✅ current |
Card detectors: lgd-cards-gen1 · lgd-cards-gen2 · lgd-cards-gen3.
Classes (5, in model.classes.json order)
chip_black chip_white chip_green chip_red chip_pink
Files
model.onnx— ONNX export (run withonnxruntime).model.classes.json— ordered class-name sidecar (index → colour).metrics.json— training config + evaluation.
Training
- Base: Ultralytics
yolo11s.pt(COCO-pretrained), 60 epochs,imgsz=640. - Data: point-labeled chips from our blackjack-table proof-of-concept footage (labeled by vision agents — chip colour is a small class set, so no external labeling service was used).
- Hardware: NVIDIA RTX 3060 (12 GB).
Metrics — frozen gate (never trained on)
| Gate | Recall | Precision |
|---|---|---|
chip_test (blackjack) |
0.91 | 0.77 |
⚠️ Not casino accuracy (rule of the project). Gate footage is our own PoC recordings. This generation also produced false
chip_blackboxes on printed felt markings (fixed in gen 2). Dataset-internalmAP@50(0.97) inmetrics.jsonis not real-world accuracy.
Usage
import json, onnxruntime as ort
sess = ort.InferenceSession("model.onnx", providers=["CPUExecutionProvider"])
colours = json.load(open("model.classes.json")) # index -> "chip_black", ...
# Detect boxes per colour, then count per class for stack/bet estimation.
License & provenance
AGPL-3.0, a fine-tune of Ultralytics YOLO11 (yolo11s.pt, AGPL-3.0) — these weights inherit
AGPL-3.0 and are not an original work of ours. Networked deployment triggers AGPL §13 (offer the
Corresponding Source). onnxruntime (MIT) keeps the inference code AGPL-free; the weights stay AGPL.
Built for Live Game Defender (LGD) — an on-prem AI integrity monitor for live casino table games. © 2026 TechTools s.r.o.