Phase 5 audit · 2026-09-17
Market study
Compare edge-runnable computer vision models and commercial solutions for camera-agnostic compliance — smoking, PPE/gloves, fire/smoke, and safety — so a researcher can pick a path and prove it on site.
Live catalog: 105 entries (98 active) · 30 devices.
Scope
Violations
- Smoking / cigarette
- PPE (helmet, vest, gloves)
- Fire & smoke
- Health (handwash, hairnet)
- Fall & behavior
Mandate
- On-prem / edge inference (no cloud-only)
- Camera-agnostic RTSP/ONVIF ingest
- 1080p ingest · 15–30 FPS target
- 640×640 detector input (Coral ≤512px)
- Site benchmark before any SLA
How to use
Verdict
Phase 4 said no major OEM lists smoking and ranked Coram/Spot first. The Phase 5 audit found documented smoking/vaping modules (accuracy still unverified) and moved Lumeo to #1 for smoking+PPE POC.
Key findings
- General detection is solved; compliance is not. COCO backbones (YOLOv8/11, RT-DETR, RF-DETR) reach 37–54 mAP50-95 with fine-tuning. Pretrained PPE and fire/smoke weights exist. Smoking has no verified pretrained SOTA.
- Gloves are the PPE weak link. Verified floor: recall 0.555 (DarthRegicid). itsadityabaniya claims Gloves mAP50 ~0.69 (unverified). SH17 released 17-class weights. Bench all three before an SLA.
- Agnostic edge boxes beat camera OEM analytics for mixed RTSP. Hikvision, Dahua, Axis score low agnostic fit. Lumeo, Coram, Spot AI, and Jetson DIY score high.
- Hardware picks model size, not architecture. Orin Nano: YOLOv8n/s, ≤4 cameras. Orin NX: YOLOv8m, 4–12 cameras. RK3588: YOLOv8n real-time; YOLOv8m ~12 FPS. Coral: ≤512px input.
- NL/VLM is a supplement, not the default. Ambient, Coram Custom Detection, Spot Iris are experimental for cigarette compliance. Prefer deterministic pipelines (Lumeo smoking classifier, Dragonfruit vaping) until a side-by-side bench.
Method
Collect everything, then filter. Every accuracy and FPS claim is tagged. Phase 5 searched independently against the catalog, added nine missed solutions, and confirmed all seven eliminations.
Open-source 59 · commercial 46 · eliminated 7. Phase 4 started at 96 entries; the audit expanded the catalog to 105 (98 active).
Detection coverage
Verified + partial weights
Recall 0.555 verified floor
Lumeo / Dragonfruit — accuracy unverified
imnuman mAP50 0.872
Restaurant-specific datasets
Pose + heuristics; site calibration
| Path | PPE | Gloves | Smoking | Fire | Agnostic |
|---|---|---|---|---|---|
| YOLO11 DIY + fine-tune | ✓ | △ train | Train required | ✓ | High |
| DarthRegicid PPE | ✓ verified | 0.555 recall | ✗ | ✗ | High |
| Lumeo pipelines | ✓ documented | ✓ gloves page | Unverified | ✓ | High |
| Coram Point (Jul 2025) | Native PPE | Incl. gloves | Not documented | Partial | High |
| Dahua WizSense OEM | Generic PPE | Not broken out | ✗ | ✗ | Low |
| Scylla smoke module | ✗ | ✗ | ≠ cigarette | ✓ | High |
Decision flow
Choose the deployment path first, then the model.
ML / engineering team?
Yes — open-source DIY (YOLO11 + fine-tune).
No — commercial edge appliance (Lumeo / Coram / Spot).
Then constrain
Budget → RK3588 + YOLOv8n.
Smoking + PPE → Lumeo POC.
Enterprise SLA → Ipsotek VISuite.
OEM fleet → Dahua WizSense PPE. Mixed cameras → agnostic edge box.
| If #1 is… | Pick | Avoid |
|---|---|---|
| Lowest TCO | RK3588 + YOLOv8n | Ambient.ai, Ipsotek enterprise |
| Highest accuracy | RF-DETR or YOLO11 fine-tuned | Coral TPU, vendor_claim rows |
| Camera agnostic | Lumeo, Coram, Spot, Jetson DIY | Hikvision, Dahua, Verkada closed |
| Smoking compliance | Lumeo → Dragonfruit; DIY UiTM merge | OEM “smoke” modules; NL as default |
| Glove compliance | Triple OSS bench + Hexmon | Commercial PPE without a glove SLA |
| No ML team | Lumeo, Coram (PPE), Dragonfruit | DIY YOLO11, MMDetection |
| Factory multi-cam | Orin NX + DeepStream + YOLO11 | Orin Nano beyond 4 cameras |
Use-case shortlists
Phase 5 POC order. All require site validation and written detection rates.
Only top-tier vendors with documented smoking and glove pipelines. Accuracy still unverified — require written rates.
Native PPE including gloves (Coram Jul 2025). Smoking is not documented — do not use this path for cigarette compliance.
Triple glove bench; merge UiTM (1940) and fire-exit CCTV (8124) for smoking train. AGPL on Ultralytics — legal review for closed SaaS.
~53 FPS on budget ARM. YOLOv8m is marginal at ~12 FPS. Coral is cheaper but capped at 320–512px.
4–12 cameras at 15–30 FPS. Mature production stack. AGX Orin if you need 12+ streams.
Explicit gloves; industrial smoking+PPE pages. Added in the Phase 5 audit.
Agnostic edge box
Phase 4: Coram · Spot · Lumeo. Phase 5: Lumeo first for smoking+PPE.
| 1 | Lumeo Video Analytics Platform — Only top-tier pick with published smoking + glove pipelines |
| 2 | Coram Point AI NVR — Native PPE incl. gloves; smoking unconfirmed |
| 3 | Spot AI IVR + AI Agents — PPE/SOP strong; Iris NL for custom; smoking not documented |
| + | Dragonfruit AI Frontier — Vaping/smoking on safety suite (~$1k/site/yr) |
| + | FuweeVision Edge AI Algorithm Box — Industrial smoking+PPE edge boxes |
Open-source DIY
Added SH17 weights and a second glove baseline; smoking train set is a merge.
| 1 | Ultralytics YOLO11 — Default backbone — tooling and edge export |
| 2 | SH17 Dataset + YOLOv8/v9/v10 PPE Weights — 17-class PPE, released checkpoints |
| 3 | DarthRegicid1/YOLOv5_PPE-Detection — Bench both for gloves; 0.555 is not a ceiling |
| 4 | Cigarette Detection Dataset V2 (Roboflow/UiTM) — Merge 1940 + 8124-image smoking sets |
Commercial turnkey
Lumeo and Dragonfruit elevated; Staqu added for APAC.
| 1 | Lumeo Video Analytics Platform — No-code smoking + gloves |
| 2 | Dragonfruit AI Frontier — Vaping/smoking listed on safety suite |
| 3 | IntelliVision AI Video Analytics — OEM/enterprise PPE bundles |
| + | Staqu JARVIS AI Video Analytics — APAC manufacturing; explicit gloves |
Ten solution groups
Counts are live from the catalog. Open a group to browse entries.
General detection
18COCO backbones for custom fine-tune. None ship smoking or glove classes out of the box.
YOLO11 for new work. RF-DETR if Apache is required. YOLOv8 for the verified COCO baseline.
Open-vocab / VLM
3Text-prompt detection without a dedicated class. CCTV compliance accuracy is unvalidated.
Phase 5 experiment, not the production default. Pair with a fine-tuned YOLO for gloves and smoking.
PPE weights
13Pretrained PPE checkpoints. Glove recall is the weak class — bench three baselines before SLA.
Start at DarthRegicid. Bench itsadityabaniya and SH17. Add Hexmon NO-Gloves. Target ≥0.70 recall on site.
Smoking, fire & safety
9Fire/smoke has usable weights. Smoking has datasets and papers — no verified pretrained SOTA.
Fire: imnuman/fire-detection-yolo. Smoking: train YOLO11n on UiTM (1940) + fire-exit (8124).
Behavior & pose
5Fall, posture, and pose pipelines. Complementary to compliance detectors, not a substitute.
MediaPipe for light pose. YOLO Pose + heuristics when it shares the violation pipeline.
Runtimes & export
8Toolchains, not detectors. Pick after the model — TensorRT, RKNN, Hailo, OpenVINO, NCNN.
DeepStream on Jetson. RKNN on Rockchip. MMDeploy as the vendor-neutral export hub.
Camera OEM analytics
13Bundled camera/NVR analytics. Fast on a locked fleet, poor camera-agnostic fit.
Use only on a locked camera fleet. Dahua WizSense is the fastest PPE path — gloves still need a field check.
VMS platforms
10Analytics add-ons on existing VMS. Medium–high agnostic fit; PPE/smoking coverage varies.
Ipsotek for enterprise compliance. BriefCam when investigation matters. IntelliVision for OEM embed.
Edge appliances
19Turnkey boxes and NL/VLM platforms. Best path when you need mixed RTSP without an ML team.
Lumeo first for smoking+PPE POC. Coram/Spot for PPE/SOP. Dragonfruit / FuweeVision as smoking alternates.
Eliminated
7Cloud-only, EOL, or wrong workload. Phase 5 re-checked all seven — none reinstated.
See the appendix. Full records kept; nothing dropped silently.
Comparison highlights
Pick YOLO11 for new projects; RF-DETR if Apache is required. Edge appliances are the highest commercial .
| Backbone | COCO mAP | License | Verify |
|---|---|---|---|
| YOLO11 | 39.5 | AGPL | partial |
| YOLOv8 | 37.3 | AGPL | verified |
| RF-DETR | 48.4 | Apache | partial |
| D-FINE | 54.0 | Apache | partial |
| RT-DETRv2 | 46.5 | Apache | partial |
| Appliance | NL/VLM | Note |
|---|---|---|
| Lumeo | No | Smoking + gloves pages |
| Coram Point | Yes | Native PPE Jul 2025 |
| Spot AI IVR | Partial | PPE/SOP; smoking undocumented |
| Ambient Pulsar | Yes | NL events; unverified smoking |
| Scylla Asteria | No | Smoke ≠ cigarette |
Score: 5 = best in catalog · 3 = viable · 1 = poor fit. ML ops: 5 = low burden.
| Option | Cost | Accuracy | Agnostic | Latency | ML ops |
|---|---|---|---|---|---|
| YOLO11 + DeepStream | 5 | 5 | 5 | 5 | 1 |
| RF-DETR + MMDeploy | 5 | 5 | 5 | 4 | 2 |
| Lumeo | 2 | 4 | 5 | 3 | 4 |
| Coram Point | 2 | 3 | 5 | 4 | 5 |
| Spot AI IVR | 2 | 3 | 5 | 4 | 5 |
| RK3588 + YOLOv8n | 5 | 3 | 4 | 3 | 2 |
| Dahua WizSense | 4 | 3 | 1 | 5 | 5 |
Smoking & gloves
Still true: no verified mAP on hold-out CCTV. Phase 4 conflated unverified with non-existent. Lumeo, Dragonfruit, FuweeVision, Visionify, and XINHUO document smoking/vaping modules. Scylla smoke ≠ cigarette. Coram HALO environment smoke ≠ cigarette. DIY: YOLO11n on UiTM (1940) + fire-exit arxiv (8124).
POC: Lumeo → Dragonfruit → FuweeVision/Visionify. DIY: YOLO11n on UiTM + fire-exit. NL (Coram / Ambient / Spot Iris) is experimental.
DarthRegicid recall 0.555 is verified for that checkpoint only. itsadityabaniya Gloves mAP50 ~0.69 is unverified. SH17 includes Gloves with released weights; per-class metric TBD. Hexmon adds an explicit NO-Gloves class. Target ≥0.70 recall on your site. Commercial PPE often omits a glove-specific SLA.
Bench three OSS baselines plus Hexmon NO-Gloves. Do not treat 0.555 as a ceiling.
| Violation | Pretrained | Training | Data need |
|---|---|---|---|
| Helmet / vest | Yes | Recommended fine-tune | 200+ site images |
| Gloves | Partial (0.555 recall) | Required for SLA | 500+ labeled |
| Smoking | No verified | Required | 500–2000 (UiTM = 1940) |
| Fire / smoke | Yes (mAP50 0.872) | Optional | 100+ if scene mismatch |
Hardware tiers
Workload: 640×640 detector, 1080p ingest, 15–30 FPS per stream. Do not compare batch numbers to e2e without normalization. Published matrix: 30 devices.
| Device | YOLOv8n | YOLOv8s | YOLOv8m | Fit |
|---|---|---|---|---|
| Orin Nano 8GB | 72 | 48 | 58 (4 cam) | ≤4 cameras · kitchen pilot |
| Orin NX 16GB | 256 | 196 | 360 (12 cam) | 4–12 cameras · factory default |
| RK3588 SBC | 53 | 28 | ~12 | Budget ARM; m is not real-time |
| Coral Edge TPU | 60 @ 320px | — | — | Retrofit · accuracy trade-off |
| Hailo-8 | — | — | 8.15 e2e | RPi5 add-on; hw_only batch ≠ e2e |
| Intel NUC OpenVINO | 304 | — | — | x86 VMS analytics |
| Hi3519 / CV181x | 28 / 22 | — / 7 | — | On-camera OEM · budget IPC |
Orin Nano, RK3588, Coral
Orin Nano (tight) or Orin NX
Orin NX 16GB
dGPU NVR, NUC, Hailo multi-stream
Agnostic architecture
Any IP camera → edge box. Swap models without rewriting ingest.
Ingest
Any IP camera over RTSP/ONVIF. Decode with GStreamer or DeepStream.
MAL
Boot-time backend: TensorRT, RKNN, HailoRT, OpenVINO, NCNN. Versioned artifacts per class.
Violation engine
Per-class thresholds (gloves lower than helmet). Temporal confirm on smoking.
Alert / VMS
Normalize events. Hybrid: Coram/Spot webhooks while custom models train.
Counts are live. Phase 4 reported partial 61; the catalog now has more partial rows after audit additions.
- Verified 3 — Source cross-check matched. Safe to cite in procurement.
- Partial 70 — Cited from vendor or README; not re-run internally.
- Vendor claim 3 — Marketing metric. Do not treat as mAP.
- Unverified 29 — No public data. Require a vendor POC.
- — Mean average precision — standard object-detection accuracy on a labeled set.
- — Copyleft license on Ultralytics YOLO. Closed SaaS typically needs an enterprise license.
- — Real-Time Streaming Protocol — the usual IP-camera video feed.
- — Contracted performance target, e.g. recall on your cameras.
Risks and open items
| POC item | Acceptance |
|---|---|
| Internal e2e RTSP bench | Same 1080p workload; p50/p95 latency |
| Smoking POC (Lumeo / Dragonfruit) | Written detection rates on your cameras |
| Triple glove baseline | DarthRegicid · itsadityabaniya · SH17 — recall ≥ 0.70 |
| Vendor SLA | Demo on your glove and smoking scenes |
| License review | ~15 HF models marked “Not stated” |
| NL vs deterministic | Lumeo pipelines vs Coram/Ambient NL |
| Risk | Severity |
|---|---|
| Glove false negatives at distance | High |
| Smoking false positives (steam, shadows) | High |
| AGPL on YOLO11/v8 in closed SaaS | Medium |
| Vendor metric inflation | Medium |
| Coral/Hailo accuracy vs GPU | Medium |
| Ambarella CV72S — no public YOLO FPS | Medium |
Phase 5 audit
Added: Staqu JARVIS · FuweeVision · Visionify · XINHUO · TensorVok · Cogniac · SH17 YOLO weights · Smoking DAHD paper · Fire-exit CCTV set.
Phantoms: TaroPlay/Smoking GitHub 404. HF imnuman/fire-detection-yolo 401 — use GitHub as canonical.
Upgrades: Lumeo #1, Dragonfruit, SH17, FuweeVision. Downgrades: Coram/Spot for smoking, Ambient NL as default, DarthRegicid as sole glove floor.
Eliminated (7)
All seven re-verified. No reinstatements. Actuate “edge” is a camera filter plus VPN to cloud.
- AWS Panorama verified EOL 2026-05-31 — appliances fail after support ends
- Cloud Vision APIs (Google/AWS/Azure) unverified No local/on-prem inference; CCTV privacy path
- Calipsa Detect/Protect vendor claim Cloud-only processing — out of edge mandate
- Actuate AI Security partial AWS Fargate cloud analysis; “edge” is VPN-to-cloud
- Grounded SAM 2 partial Evidence snapshot — not multi-cam real-time
- Amazon Kinesis Video Streams Edge Agent unverified Ingest/record only — not turnkey local AI
- Mask/Hairnet/Handwash YOLOv8 (IEEE 2023) partial No released weights — paper-only reference