Downloads · 30 days
473
13% of all-time downloads
vivekvar/helmet-v5
helmet-v5 is a object detection model from vivekvar. Use it when you need objects located in an image. It is set up for ultralytics. The card lists the license as apache-2.0.
End-to-end pipeline for detecting motorcycle riders without helmets and reading their license plates from Andhra Pradesh RTGS CCTV feeds. Built to match / beat Videonetics commercial ANPR on the same footage.
Downloads · 30 days
473
13% of all-time downloads
All-time downloads
3.7K
Public
Repo size
8.7 GB
Likes
1
Trending 1
Click a slice to open those files.
.pt6.7 GB · 71%
From the Hugging Face model README
End-to-end pipeline for detecting motorcycle riders without helmets and reading their license plates from Andhra Pradesh RTGS CCTV feeds. Built to match / beat Videonetics commercial ANPR on the same footage.
| Component | File | Purpose |
|---|---|---|
| Motorcycle + person detector | models/yolo11l_cctv_ft.pt | YOLO11l fine-tuned on 627 pseudo-labeled CCTV frames. mAP50 = 0.979, mAP50-95 = 0.917 |
| Head helmet classifier | models/helmet_head_v2.pt | EfficientNet-B0 on driver head crops, 2-class. Val F1 = 0.864 |
| Plate detector | models/plate_yolo_l.pt, plate_yolo_ft.pt | YOLO11l stock + fine-tuned for Indian plate bboxes |
| Plate OCR | (TrOCR v1/v2/v3 on HF model repo — not bundled, train via tools/train_plate_ocr_v3.py) | |
| Pose model | yolo11l-pose.pt | Stock Ultralytics pose — localizes driver head keypoints |
tools/analyze_tripwire.py)helmet vs no_helmet (multi-frame voting, MIN_VOTES=2)postprocess_dedup.py — plate-string dedup + time-window dedup for no-plate eventstools/extract_ft_frames.py — clip-level train/val split, variance-filter corrupted HEVC framestools/autolabel_frames.py — YOLO11l + YOLO11x ensemble pseudo-labeling, cross-model NMS @ conf≥0.7tools/train_yolo_ft.py — 50 epochs, imgsz=1280, cosine LR, close_mosaic=10, patience=10tools/build_head_dataset.py — pose-extracted head crops, source-level split by eventIdtools/train_head_classifier.py — EfficientNet-B0 + PadResize, class-weighted CE, F1 early-stoptools/train_plate_ocr_v3.py — TrOCR fine-tune on Indian plate regex ^[A-Z]{2}\d{2}[A-Z]{1,3}\d{3,4}$ch284_20260421_120655 (15-min clip)Reference: Videonetics reported 77 no-helmet events. v5 matches after dedup.
Last trained 2026-04-22. YOLO reached mAP50=0.979 at ep50; head classifier early-stopped at ep7 (F1=0.864).
Not included: data/ (30GB raw RTGS videos — proprietary), TrOCR checkpoints (~7GB — train via tools/train_plate_ocr_v3.py).
Datasets: vivekvar/cctv-datasets.