个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证YOLOv8 traffic-violation detection across 23 classes with a spatial rule engine — upload a dashcam frame, get a structured violation report.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Live demo: ai-argus.netlify.app
Upload a road photo and Argus finds vehicles, pedestrians, traffic lights and 16 kinds of traffic signs with a custom-trained YOLOv8s model, then applies spatial rules to flag likely violations (for example, a vehicle next to a no-entry sign).
Note: the backend runs on a free Hugging Face Space (CPU) that sleeps when idle. The first request after a sleep takes about 30 seconds while it wakes up; after that a request takes about 3 seconds end to end.
YOLOv8s fine-tuned for 80 epochs (batch 16, 640 px) on a Colab GPU in 2.7 hours. Validation split, 1,470 images, 1,592 boxes:
| Metric | Value |
|---|---|
| mAP50 | 0.927 |
| mAP50-95 | 0.810 |
| Precision / Recall | 0.920 / 0.871 |
| Vehicles (car / truck / bus) mAP50 | 0.825 / 0.732 / 0.747 |
| Traffic signs mAP50 | 0.86 to 0.995 |
Inference: about 4 ms per image (model time) on an Apple M3 Pro GPU (MPS), about 87 ms on its CPU. The live demo runs on a free CPU Space, so expect about 3 seconds per request including the network round trip.
Limitations.
POST /api/detect on the FastAPI backend.backend/services/violation_rules.py) checks distances between detections: 8 sign rules, speed-zone notices and pedestrian proximity.netlify.toml sets NEXT_PUBLIC_API_URL)Requires Python 3.10+ and Node.js 18+. Download best.pt from the v1.0-model release to model/best.pt (the Docker setup needs it too), then:
python3 -m venv .venv && source .venv/bin/activate
pip install -r backend/requirements.txt
cd backend && python main.py # http://localhost:8080/docs
cd frontend && npm install && npm run dev # http://localhost:3000
Or docker compose up --build.
pip install ultralytics
python model/train.py --data model/data.yaml --epochs 80 --batch 16
Set path: in model/data.yaml to your dataset folder (YOLO format: images/ and labels/, each with train/ and val/). The dataset is not included in this repo. Best weights land in runs/traffic_violation/weights/best.pt; copy that to model/best.pt.
├── model/ # Training script and data config
├── backend/ # FastAPI app (detection, violation rules, annotator)
├── frontend/ # Next.js app (upload UI, results display)
├── docs/ # README images
└── docker-compose.yml