作者:Jack OmniXRI, 2024/10/15
相信有在玩AI影像「物件偵測」的朋友對於YOLO(Yolo Only Look Once)一定不會陌生。從2015年第一版(v1)問世至今,在各路大神的努力之下,現在已發展到第十一版(v11),而其中 v4, v7, v9 正是中研院資訊所廖弘源所長及高徒王建堯博士所貢獻的。
目前最新的 YOLOv11 [1] [2] 就是由 Ultralytic 這家公司所提出的,它是基於該公司先前提出的 v8 版本進行改良而得的,並發表於今(2024)年9月底 YOLO Vision 2024 [3] 活動中。此次這個版本延續之前 v8 版本,一樣提供了「影像分類」、「物件偵測」(含正矩形和斜矩形外框)、影像分割、物件追蹤及姿態估測(人體骨架偵測)等模型,並支援多種推論框架,包括 Google TensorFlow, PyTorch, ONNX, Apple CoreML 及 Intel OpenVINO。
Intel OpenVINO 為了讓大家更快上手,馬上就在開源範例庫 Notebooks [4] 上給出 YOLOv11 物件偵測、姿態估測及影像分割等三個案例,還可支援 Google Colab ,讓大家不用在桌機、筆電上安裝 OpenVINO 也可體驗一把。
接下來我們就跟著源碼說明[5]來了解一下如何運行 【姿態估測】 範例「Convert and Optimize YOLOv11 keypoint detection model with OpenVINO™」及動作原理。完整源碼請參考[6],點擊連結即可進到 Google Colab 環境執行。
執行前建議可先點擊選單「檔案」─「在雲端硬碟中儲存複本」,複製一份到自己的雲端硬體,方便如果想修改測試時更為方便。接著點擊選單「編輯」─「清除所有輸出內容」,方便稍後觀察運行過程中產出的內容。最後點擊選單「執行階段」─「全部執行」即可看到所有運行結果。
原則上這個範例程式可分成五大段來看,如下所示。
- 原始 YOLOv11 推論結果
- 轉換到 OpenVINO IR推論結果
- 經過 NNCF 壓縮優化推論結果
- 使用基準測試工具進行比較
- 連續影片推論展示
這裡為方便大家學習,這裡已把完整源碼[6]步驟簡化為上述五大步驟,並將註解簡化成易懂的中文說明,新版完整範例及說明請參考下方連結。
完整Colab範例程式(點擊後可直接執行)