Drishti Edge models

Detection weights used by Drishti Edge, an open-source, on-site AI safety monitor for factories: PPE compliance (hard hat, safety vest) and early fire & smoke warning on ordinary CCTV cameras. Built by team Latent Forge (Anviksara) for PS-273 of the Odisha Seva First Innovation Challenge (OSFIC) 2026.

Drishti downloads these files automatically on first run (pinned to the v0.1.0 revision). You don't need to fetch them by hand.

File Detects Base Training data
ppe.pt helmet, no_helmet, vest, no_vest (+ gloves, boots, goggles, their absence, person, forklift) YOLO26n (COCO) Construction-PPE, 800 train / 200 val images
fire_smoke.pt smoke, fire YOLO26n (COCO) D-Fire, 15,499 train / 1,722 val images

Results

Fire / smoke (fire_smoke.pt). D-Fire's official splits contain near-duplicate frames of the same fixed cameras: 55% of its test images have a near-identical frame in the training set (checked with a perceptual hash, training/check_leakage.py). We report the leak-free subset as the honest number.

Test set Images mAP50 all smoke fire
D-Fire official test 4,302 0.756 0.821 0.690
D-Fire test, leak-free subset 1,157 0.725 0.828 0.621

Best-F1 confidence on the leak-free subset: smoke 0.29, fire 0.27 (Drishti uses 0.28).

PPE (ppe.pt). Construction-PPE has no separate test split; these are validation numbers (200 images).

Class mAP50 Best-F1 confidence
helmet 0.837 0.46
vest 0.883 0.41
no_helmet 0.649 0.34
no_vest 0.691 0.41
person 0.948 0.43

Neither run overfitted (validation losses fell or stayed flat to the last epoch). Numbers on our own factory footage will be added in later versions.

How Drishti uses them

The raw detector is one stage. Drishti's rule engine matches PPE to each tracked person (a helmet on the table or a vest in the hand doesn't count), only judges a missing helmet or vest when pose keypoints show the head or shoulders are visible, requires a violation to persist before alerting, and filters fire look-alikes (lamps, orange clothing, posters) with a motion check. See the main repo for details.

Limitations

  • Not a certified fire alarm. These models give an early visual warning that supplements, and never replaces, certified smoke and heat detectors.
  • D-Fire is mostly outdoor and wildfire imagery. Thin indoor smoke against bright walls is detected less reliably than thick plumes.
  • Construction-PPE is small and comes from construction sites. Pale or blurry helmets, small or distant people, and unusual vest colours are weaker cases.
  • Fire recall is lower than smoke recall (about 0.55–0.57 on the leak-free test near the chosen threshold); Drishti relies on persistence over several seconds.

Training

YOLO26n fine-tuned with Ultralytics 8.4.202 and PyTorch 2.14.1 (CUDA 12.6) on a GTX 1650 (4 GB), 640 px, batch 6. PPE: 50 epochs (0.5 h). Fire/smoke: 30 epochs (5.4 h). Reproduce with uv run training/train.py in the main repo.

Files

File SHA-256
ppe.pt 9f792364a4695b1de06126c271b6d26832e57cdde4f7371e3b01133ad222608d
fire_smoke.pt 5df2b62872211fe9afc6c0f25ec99f94c579c22814d7589719eef35ec60433db

Licence and credits

Weights: AGPL-3.0, as they are trained with Ultralytics (AGPL-3.0).

Training data:

  • Construction-PPE, Ultralytics, CC BY 4.0.
  • D-Fire: P. V. A. B. de Venâncio, A. C. Lisboa, A. V. Barbosa, "An automatic fire detection system based on deep convolutional neural networks for low-power, resource-constrained devices", Neural Computing and Applications, 2022. CC0.
Downloads last month
65
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support