scorelens-dd1
Feingetunte Variante von dart-sense (Basismodell, Lizenz CC BY-NC 4.0) für FreeDarts/ScoreLens.
Training auf Modal (T4-GPU), Datensatz DeepDarts D1 (CC BY 4.0).
Nicht besser als die Baseline (siehe Metriken unten) — dieses Modell wird nicht in der App verwendet.
Trainingsdaten
| Datensatz | DeepDarts D1 |
| Bildgröße | 800px |
| Trainingsbilder | 1.000 |
| Validierungsbilder | 371 |
| Epochen | 20 |
| Freeze | 10 Layer |
Metriken (Validierung)
| Metrik | Baseline (dart-sense) | dd1 (feingetunt) |
|---|---|---|
| mAP50 | 0,9435 | 0,9580 |
| mAP50-95 | 0,8149 | 0,8051 |
| Precision | 0,9628 | 0,9630 |
| Recall | 0,9561 | 0,9576 |
| Tip Recall @10px | 0,8552 | 0,8489 |
| Tip Precision @10px | 0,8899 | 0,8810 |
Die für die App entscheidenden Tip-Metriken (Recall/Precision @10px) sind beim feingetunten Modell schlechter als bei der Baseline — daher nicht produktiv eingesetzt.
Harter Benchmark: Schrägsicht + Verderbung kombiniert
Dieselben 615 echten DeepDarts-Val-Bilder, aber jedes einzelne mit starker Schrägsicht (45–60°) und
Realitäts-Verderbung (dunkel, unscharf, verrauscht, JPEG, Schatten) zugleich — kein leichter Fall bleibt übrig.
Aufbau in tools/finetune/bench_hard.py, gemessen auf Modal (T4). Fairer Vergleich über alle Läufe hinweg,
weil identisch für jedes Modell gebaut.
| Kriterium | Wert |
|---|---|
| Spitzen gefunden / richtig @10px (conf 0,3) | 38.4 % / 63.7 % |
| dito @5px | 33.8 % / 56.0 % |
| Board erkannt (alle 4 Kalibrierpunkte) | 5.2 % |
| Wurf komplett richtig gezählt (Kalibrier-Schwelle 0,6) | 8.5 % |
| Darts im richtigen Feld | 10.9 % |
| Enge Spitzen (unter 24 px auseinander) | 17.7 % Recall |
| Drei Darts im Bild | 36.5 % Recall |
| Übersehene Darts / Fehlalarme (von 615 Bildern) | 68 / 9 |
Dateien
best.pt,last.pt— Checkpoints (Ultralytics-Format)results.csv— Trainingsverlauf je Epochemetrics.json— Baseline- vs. Ergebnis-Vergleich (Rohdaten für obige Tabelle)