13.1.17. 資料集編輯器

訓練自訂分類器要從一個已標註的資料集開始——每一種模型應辨識之物件的數百張影像,由將要執行該模型的相機所擷取,並依每個類別一個資料夾的方式分類。資料集編輯器就是 IDE 用來建構此資料集的擷取工作流程。

Tools → Dataset Editor → New Dataset 會要求指定一個用來建構資料集的資料夾——並警告非空資料夾的內容將被刪除——然後完成設定:一個檔案瀏覽窗格停靠在主視窗的左側,且一個擷取指令碼(dataset_capture_script.py)會在編輯器中開啟。該指令碼是一個單純的擷取迴圈,而且是設計來供您編輯的——請套用與部署後應用程式將使用的相同鏡頭校正、裁切或濾鏡,使模型在它實際會看到的影像上進行訓練。Open Dataset 可在稍後重新開啟既有的資料集資料夾,而 Close Dataset 則會讓視窗回復正常。

13.1.17.1. 擷取

當資料集開啟時,視窗左緣的工具列上會加入兩個按鈕,位於執行控制項下方。New Class FolderCtrl+Shift+N)會建立一個類別——模型應學習的每個類別各一個,並以其標籤命名。在擷取指令碼執行且已選取某個類別資料夾的情況下,Capture DataCtrl+Shift+S)會將目前的影格緩衝區影像儲存到該類別中,而檔案瀏覽器下方的預覽窗格則會在每次擷取落入時顯示該影像。

擷取的節奏是:選取一個類別、將相機對準該類別的一個範例、擷取;移動物件、改變角度、距離、背景與光線,再次擷取——資料集中的變化正是換來模型穩健性的關鍵。對每個類別重複此操作,若應用程式需要知道「什麼都沒有」的情況,也包含一個由不含任何目標物之場景組成的背景類別。

13.1.17.2. 匯出與訓練

Export 子選單會將完成的資料集送往訓練。Export Dataset to Zip File 會將其打包成一個檔名以類別為前綴的封存檔——這是每個訓練服務與框架都接受的中性格式。對於 Edge Impulse,IDE 提供了直接整合:從同一個子選單登入 Edge Impulse 帳戶,Upload to Edge Impulse Project 便會將資料集直接推送到專案中(對於無法使用電子郵件與密碼登入的帳戶,也有以 API 金鑰上傳的方式)。在那裡訓練、匯出模型,當開發板有需要時,NPU 轉換器 會讓它變得可供相機使用。

請參閱

機器學習章節 說明這個資料集所要餵入的訓練工作流程。