2026-06-02 · 5090-2 · DINOv3 ViT-S RoI HD 1280×720 · cvat #20「拿杯架」· 照 safety_rope 邏輯
test acc/F1/AP 全 1.000 看似完美,但不可信:train/val/test 全來自同一場域(DAVIDMAC 同一支相機、同一個人、同背景)。split 雖按 task 切,仍是同 domain → model 輕鬆背起來。這個 100% 不代表能在真實工廠/不同人身上認出「有沒有拿杯子」。
要真正可用,必須收不同場域 / 不同人 / 不同相機角度的資料再重訓,並在「沒看過的場域」上評估。本版僅用於把整條 pipeline(錄製→cvat #20→訓練→部署)跑通驗證。
person YOLO26s@1280 偵測每個人 → 框外擴 (top 0.2 / side 1.0 / bottom 1.5) → RoI Align (DINOv3 ViT-S patch tokens, HD 1280×720) → 2-cls head:holding_cup_tray = 拿杯子(correct) / 沒拿(wrong) backbone: vit_small_patch16_dinov3 (LVD-1689M SSL) 訓練 imgsz: 1280×720 / 推論 imgsz: 1280×720 · batch 8 · epochs 30 · jitter+外擴 aug
| split | correct(拿) | wrong(沒拿) |
|---|---|---|
| Train | 463 | 520 |
| Validation | 62 | 59 |
| Test | 64 | 50 |
18 task / 1281 frame,全程 DAVIDMAC 單一相機錄製(ppe-demo 錄製面板新增「拿杯架 #20」目標收的)。class 平衡良好,但場域單一是泛化的硬傷。
標準誤報分析要「按場景拆 FP」「比 train/test gap 判泛化」。本版只有單一場景、train 與 test 同 domain → train≈1.0 且 test≈1.0,正是「背了訓練集」的訊號(不是真的學會)。場景拆分無從做起。
結論:模型對「這個飯店/辦公場景、這個人」有效,但對泛化零保證。下一步必須補多場域資料。
已上 ppe-demo 兩台 model key cup_holder(即時 RTSP + CVAT 管理頁皆可選)。純 PoC 觀察用,不接任何告警。