geforcefan/dartscribe
Viewer • Updated • 5.34k • 89
How to use geforcefan/dartscribe with ultralytics:
# Couldn't find a valid YOLO version tag.
# Replace XX with the correct version.
from ultralytics import YOLOvXX
model = YOLOvXX.from_pretrained("geforcefan/dartscribe")
source = 'http://images.cocodataset.org/val2017/000000039769.jpg'
model.predict(source=source, save=True)The two networks of dartscribe. They find the bull and the crossings of a dartboard in a photo and tell where the 20 is. dartscribe uses them for auto calibration (RANSAC projection). Trained on geforcefan/dartscribe by Ercan Akyürek.
| file | network | input | output |
|---|---|---|---|
crossings.onnx |
YOLO11n detect | 1×3×960×960 | boxes, 5 classes: bull, double outer, double inner, treble outer, treble inner |
orientation.onnx |
YOLO11n classify | 1×3×512×512 | 20 classes: how many segments the 20 is turned from the top |
RGB, values divided by 255, NCHW, no NMS in the ONNX.
crossings.onnx takes the photo letterboxed to 960×960 (gray padding 114). Output 1×9×18900: box center in rows 0 and 1,
class scores in rows 4 to 8. The classes do not name the crossing, the board is symmetric. The projection has to come
from a fit over all crossings.orientation.onnx takes the board warped into a 512×512 square with the projection, board center in the middle, 1.6
double outer radii to the edge. Output 1×20: class k means the 20 is k segments clockwise from the top.Trained with tools/inference in the repository (Ultralytics, yolo11n.pt and yolo11n-cls.pt).