metadata
tags:
- element_type:detect
- model:onnxruntime
- subnet:winner
- object:fire
- object:smoke
- object:fire extinguisher
manako:
source: winner_fetch
manifest_element_name: manak0/Detect-fire
winner_repo_id: meaculpitt/ScoreVision-Fire
winner_revision: 71ae3d3e59ced8b330eea5e95710318175bb1342
note: E=0.11785877 (map50=0.600000, size_mb=5.090839)
ScoreVision-Fire — meaculpitt v2.1
SN44 fire-detection miner for the manak0/Detect-fire element.
Pipeline
- Architecture: yolo26n
- Resolution: 1408×768 input → letterbox → 960×960
- Preprocessing:
cv2.dnn.blobFromImage(fused C++ resize+normalize+transpose) - Inference: single-pass FP16 ONNX, NMS baked in
- Output shape:
[1, 300, 6](xyxy, conf, cls) - Latency: ~35 ms p95 on RTX 4090 (fits the 50 ms gate)
Classes (validator GT order, NOT the published class_names.txt order)
- 0: fire
- 1: smoke
- 2: fire extinguisher
Verified by audit of alfred8995/fire001 (scores 1.00) and navierstocks/fire (scores 0.96): both use [fire, smoke, fire_extinguisher] and the validator's GT order matches. Our model was trained with [fire, fire_ext, smoke]; miner.py applies cls_remap=[0,2,1] to translate model output to validator index.
Training
- 22,796 training images (validator-synth + Simuletic + D-Fire + z5atr, SHA1 deduped)
- 2,532 validation images (random 90/10 split, seed=42)
- 100 epochs, yolo26n, imgsz=960, batch=8, AdamW lr0=0.001 cos_lr
- CCTV augmentation chain (cctv_aug_patch)
Benchmarks
- Broader merged val mAP50: 0.785
- Validator-distribution synth val mAP50: 0.640 (+24.7 pts above 0.393 baseline)
- Per-class on synth val: fire=0.523, fire_extinguisher=0.647, smoke=0.749