scorevision: push artifact
Browse files
README.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
tags:
|
| 4 |
+
- turbovision
|
| 5 |
+
- bittensor
|
| 6 |
+
- subnet-44
|
| 7 |
+
- object-detection
|
| 8 |
+
- yolov11
|
| 9 |
+
- petrol-station
|
| 10 |
+
---
|
| 11 |
+
|
| 12 |
+
# Turbovision Petrol Station Detection Miner
|
| 13 |
+
|
| 14 |
+
YOLOv11s ONNX FP16 model with built-in NMS, fine-tuned on SAM3 pseudo-ground-truth
|
| 15 |
+
for petrol-station object detection on Bittensor Subnet 44 (TurboVision).
|
| 16 |
+
Uses horizontal-flip TTA with per-class hard NMS merge for higher recall.
|
| 17 |
+
|
| 18 |
+
## Classes
|
| 19 |
+
|
| 20 |
+
| cls_id | label |
|
| 21 |
+
|---|---|
|
| 22 |
+
| 0 | petrol hose |
|
| 23 |
+
| 1 | petrol pump |
|
| 24 |
+
| 2 | price board |
|
| 25 |
+
| 3 | roof canopy |
|
| 26 |
+
|
| 27 |
+
## Model details
|
| 28 |
+
|
| 29 |
+
- Base: `yolo11s.pt` (Ultralytics) fine-tuned on 243 petrol challenge images
|
| 30 |
+
labelled by SAM3 at `output_prob_thresh=0.5` (matching the validator's pseudo-GT
|
| 31 |
+
pipeline).
|
| 32 |
+
- Export: ONNX opset 13, FP16, NMS baked in, static imgsz=1280.
|
| 33 |
+
- Size: 18.4 MB (<30 MB limit).
|
| 34 |
+
- Inference: horizontal-flip TTA with per-class hard NMS merge (iou=0.45).
|
| 35 |
+
- Per-class confidence thresholds (tuned by greedy grid search on 100 fresh
|
| 36 |
+
challenges vs real SAM3 pseudo-GT):
|
| 37 |
+
- petrol hose: 0.43
|
| 38 |
+
- petrol pump: 0.63
|
| 39 |
+
- price board: 0.37
|
| 40 |
+
- roof canopy: 0.41
|
| 41 |
+
- Latency p95 on RTX 4090: ~2.1 s for a 30-frame batch (~70 ms/frame with TTA).
|
| 42 |
+
|
| 43 |
+
## Target element
|
| 44 |
+
|
| 45 |
+
`manak0/Detect-petrol-station-1-0`
|
| 46 |
+
|
| 47 |
+
## Real-validator-simulated evaluation (100 fresh challenges, SAM3 GT @ 0.5)
|
| 48 |
+
|
| 49 |
+
Scoring follows the validator's exact `_evaluate_detection_metrics_at_threshold`
|
| 50 |
+
pipeline: global TP/FP aggregation across classes and images, IoU=0.5 matching,
|
| 51 |
+
`false_positive = max(0, 1 - FPs_per_image / 10)`, composite = 0.65·mAP50 + 0.35·FP.
|
| 52 |
+
|
| 53 |
+
| miner | n | our_comp | live_comp | mAP50 | FP |
|
| 54 |
+
|---|---:|---:|---:|---:|---:|
|
| 55 |
+
| **ours (yolo11s SAM3 v1, per-class conf)** | 100 | **0.7401** | — | 0.6512 | 0.906 |
|
| 56 |
+
| aitask1024 / Detect-petrol-stati | 83 | 0.4543 | 0.5408 | 0.34 | ~0.66 |
|
| 57 |
+
| SuperBitDev / petrol2 | 47 | 0.4459 | 0.5578 | 0.33 | ~0.65 |
|
| 58 |
+
| tensorminer / ScoreVision-22 | 23 | 0.4287 | 0.5338 | 0.29 | ~0.64 |
|
| 59 |
+
| SuperBitDev / petrol1 | 27 | 0.4097 | 0.4801 | 0.30 | ~0.62 |
|
| 60 |
+
|
| 61 |
+
Per-class AP (ours, per-class conf): hose=0.60, pump=0.71, price board=0.60, roof canopy=0.69.
|
| 62 |
+
|
| 63 |
+
## Tiebreak notes
|
| 64 |
+
|
| 65 |
+
- Validator uses `winner-take-all` per element.
|
| 66 |
+
- Tiebreak among similarly-scoring miners favours the earliest `last_commit_block`,
|
| 67 |
+
so commit once (when the model is finalised) and leave it in place.
|