CoolFace
Modelpublic

DeLxxx/metro-safety-yoloworld-v1

sourceHugging Faceupdated 15d agoView on Hugging Face
0likes62downloads
Model Card

Metro Safety YOLO-World

基於 YOLOv8s-World-v2 微調的五類物件偵測模型,用於智慧監控競賽原型:偵測刀刃、尖銳工具、人物、倒地者與大型行李。

偵測類別

ID類別說明
0blade廚刀、折刀、美工刀、劍類等裸露刀刃
1pointed object剪刀、螺絲起子、鑿子等尖銳工具
2person非倒地人物
3fallen person地面上的倒地/躺地人物
4large luggage經視覺尺寸篩選的大型行李箱

快速使用

安裝套件(Python 3.11):

bash
pip install ultralytics==8.4.150 huggingface_hub

從 Hugging Face 下載並偵測圖片:

python
from huggingface_hub import hf_hub_download
from ultralytics import YOLOWorld

weights = hf_hub_download(
    repo_id="DeLxxx/metro-safety-yoloworld-v1",
    filename="best.pt",
)
model = YOLOWorld(weights)

results = model.predict(
    source="image.jpg",
    imgsz=960,
    conf=0.25,
    device="cpu",  # NVIDIA GPU 可改為 0,需安裝 CUDA 版 PyTorch
    save=True,
)
for result in results:
    print(result.to_json())

若已下載 best.pt,直接使用 model = YOLOWorld("best.pt")。

影片推論(接續上方程式):

python
for result in model.predict(
    source="video.mp4",
    stream=True,
    imgsz=960,
    conf=0.25,
    device="cpu",
    save=True,
):
    print(result.to_json())

標註結果預設存於 runs/detect/ 下。保留模型已訓練的五類詞彙,不要呼叫 `set_classes()` 重設類別。 conf=0.25 是示範門檻,應按實際情境調整。

驗證結果

公開 validation:1,459 張圖片、2,460 個物件框。以下為 best.pt 的結果,尚未進行捷運場域測試。

類別PrecisionRecallmAP50mAP50–95
全部0.8040.6930.7440.496
blade0.8280.6310.7160.443
pointed object0.8010.4190.5370.403
person0.8460.7910.8610.674
fallen person0.9030.9470.9380.524
large luggage0.6420.6760.6700.437

訓練摘要

公開資料共 11,040 張,train/val/test 為 8,075/1,459/1,506。來源為 OD-WeaponDetection、Open Images V7 與 E-FPDS;部分人物框使用偽標註補齊。

設定:960 解析度、batch 4、AdamW、初始學習率 0.0002、freeze 10。RTX 4060 Ti 16GB 上訓練 31 epochs,最佳模型為 epoch 16;後續 15 epochs 未改善而提前停止。

限制與授權

本模型為競賽研究原型。小型/遮擋刀具與尖銳物仍有漏檢;倒地資料主要為室內演出;大型行李為視覺尺寸近似,可能混淆硬殼器材箱。偵測物體不代表攻擊意圖,倒地狀態也不等同跌倒事件,實際警報需時序與人工確認。

模型基於 Ultralytics YOLO-World。上游軟體與資料授權仍適用;E-FPDS 再利用授權及 OD 資料授權描述尚待確認,本頁不宣告額外的寬鬆權重授權。