📦 模型下載https://pub-478929a98a5c440cb22c2241c0bde314.r2.dev/vehicle_seg/best.pt

🚗 vehicle_seg — YOLO26n 偵測評估報告

cvat2 #23 · 5-class (car/truck/bus/motorcycle/bicycle) · polygon seg → bbox · 2026-06-24

0.460
val mAP@50
0.320
val mAP@50-95
0.615
test mAP@50
5
類別
2.38M
參數
⚠️ 結論先講:整體 val mAP@50 = 0.460 偏低,主要瓶頸是漏框(recall 不足)非誤報——即使 conf 拉到 0.05,val recall 上限也只到 0.599。bicycle 基本失敗(AP 0.142)。不建議直接上 production,定位為 baseline / PoC,改善方向見文末。

1. 資料集

splitimagesbbox密度/img
train23,725217,1709.2
val2,23939,23017.5
test27361—(小,主評估靠 val)

per-class GT (val):car 22900, truck 1965, bus 1415, motorcycle 10578, bicycle 2372。
SAM3 subset 16 task 按比例分入 train/val(13/3);Test 內 3 個 500-frame 未標 task(5835/36/37)已排除。

2. Hyperparams

項目
base weightyolo26n.pt (YOLO26n, 2.38M params)
訓練 imgsz / 推論 imgsz640 / 640
epochs / patience100 / 30(跑滿 100)
batch / device64 / 單卡 RTX5090
optimizerauto → MuSGD (lr0 0.01)
augmosaic(close@10) + fliplr 0.5(YOLO det 標準)
shape→bboxpolygon 外接框 + rectangle,5-class

3. Per-class 結果

val(2239 img)
類別AP@50AP@50-95PR
car0.6910.5050.7540.633
truck0.4400.3220.6290.392
bus0.6740.5370.8100.610
motorcycle0.3540.1680.6090.316
bicycle0.1420.0680.4940.117
test(27 img,樣本小僅供參考)
類別AP@50AP@50-95PR
car0.8400.5990.8180.751
truck0.5930.4550.5100.429
bus0.7420.4710.7950.557
motorcycle0.7390.3900.6570.629
bicycle0.1610.0310.3060.333

car/bus 尚可(AP50 ~0.68),truck/motorcycle 中等、bicycle 崩(R 0.12)

training curves

4. 誤報 / 漏報分析(det SOP)

4.1 P@固定recall + FP 絕對數(場域 KPI)

recall 上限只有 0.599:掃遍所有 conf 都達不到 R≥0.90。最低 conf=0.05 時 R=0.599 / P=0.387 / FP=37274 / FN=15731。~40% 的車輛根本沒被偵測到(漏框),這是首要瓶頸。

4.2 conf 掃描(P↔R↔FP 取捨)

confPRTPFPFN
0.050.3870.599234993727415731
0.150.6650.519203721025418858
0.250.7970.46818369468020861
0.350.8760.42416640235022590
0.500.9390.3611416592525065
0.700.9720.2811103032428200

精度可靠拉 conf 換到(conf 0.5 → P 0.94),但代價是 recall 掉到 0.36。場域用建議 conf≈0.25(P 0.80 / R 0.47 / FP 4680,藍底列)。

4.3 FP 按類別拆解(conf 0.05)

類別FP 數GT 數
car2062022900
truck16541965
bus6951415
motorcycle1177310578
bicycle25322372

car/motorcycle 的 FP 最多(各 ~2万/1.2万)——與密集街景小目標、實例重疊有關。

4.4 train vs val gap(過擬合判斷)

train mAP@50 = 0.664 / val mAP@50 = 0.460 / gap = 0.204
gap > 0.15 有中度過擬合,但 train 本身也只 0.664(沒把訓練集背起來)→ 屬「欠擬合 + 中度過擬合混合」:模型容量/資料品質雙重受限,單純加資料邊際有限

4.5 類間混淆 + PR 曲線

confusion matrix PR curve

5. 根因 + 改善建議

  1. 小目標漏框(首要):motorcycle/bicycle 在街景遠景像素少,640 解析度抓不到 → 改 imgsz 1280 重訓最可能救 recall(代價訓練/推論慢 2-4×)。
  2. bicycle 近乎失敗(AP 0.14):2372 GT 但 R 0.12,疑似標註稀疏/與 motorcycle 混淆 → 查 confusion matrix + 補標 / 加權。
  3. 標註品質:polygon→bbox 對密集重疊車流外接框可能不準;GT 若漏標會同時壓低 P(真檢被當 FP)與 R 上限 → 抽樣人工 audit。
  4. SAM3 半自動標:16 task 混入 train/val,品質待驗 → 可做「含/不含 SAM3」A/B。
  5. 中度過擬合 → close_mosaic 提早 / 加 mixup / 或更大 backbone(26s/26m)。
下一步建議:先跑一版 imgsz 1280 對照(同資料同 backbone,純比尺度),若 recall 明顯回升再考慮 backbone 升級與 bicycle 補標。本版 best.pt 保留為 640 baseline。

YOLO26n · 訓練 2.36h · 100 epoch · RTX5090 單卡 · 報告自動生成 2026-06-24