VietSpeedYOLO — R420/R421 residential zone detector
YOLOv8 model for detecting Vietnam residential-zone traffic signs: R420 (Bắt đầu khu dân cư) and R421 (Hết khu dân cư). Trained on NghiMe/vietspeedyolo (Hugging Face dataset).
This release uses the YOLOv8s + offline augmentation checkpoint, which correctly distinguishes R420 (start of zone) from R421 (end of zone, red diagonal line).
Classes
| ID | Label | Sign | Description |
|---|---|---|---|
| 0 | khu_dan_cu | R420 | Start of residential area |
| 1 | ngoai_dan_cu | R421 | End of residential area |
Usage
Ultralytics YOLO CLI
# From local weights (after downloading from this repo)
yolo detect predict model=NghiMe/vietspeedyolo source=image.jpg save
Python
from ultralytics import YOLO
# Load from Hugging Face (requires huggingface_hub)
model = YOLO("NghiMe/vietspeedyolo")
# Or load from local path after downloading
# model = YOLO("path/to/best.pt")
results = model.predict("image.jpg", conf=0.25)
for r in results:
boxes = r.boxes.xyxy.cpu().numpy() # [x1, y1, x2, y2]
classes = r.boxes.cls.cpu().numpy() # 0 = khu_dan_cu, 1 = ngoai_dan_cu
Download and run locally
# Download best.pt from this repo's Files, then:
yolo detect predict model=best.pt source=path/to/images
Training
- Base: YOLOv8s (small)
- Data: 2-class YOLO dataset with offline augmentation (flip+color, rotate90+noise), see dataset card
- Image size: 640
License
MIT.
Links
- Dataset: NghiMe/vietspeedyolo on Hugging Face
- Code: nghimestudio/vietspeedyolo on GitHub