資料集準備

現代目標偵測、實例分割和旋轉框偵測

選擇包含 data.yaml 的資料集根目錄;旋轉框頁面也允許輸入 YAML 路徑。YAML 中指定訓練集、驗證集和類別對映。圖片與標籤須一一對應,類別編號從 0 開始且與類別表一致。

dataset/
  data.yaml
  images/train/
  images/val/
  labels/train/
  labels/val/
任務 每個目標一行的標籤內容
普通偵測 類別編號 中心x 中心y 寬 高
實例分割 類別編號 x1 y1 x2 y2 …,目標輪廓多邊形
旋轉框偵測 類別編號 x1 y1 x2 y2 x3 y3 x4 y4,四個角點

座標歸一化至 0~1。旋轉框角點按順時針或逆時針排列;普通五列框、原始 DOTA 標籤及自相交四邊形不能直接用作該頁面的 OBB 標籤。軟體會預檢查 OBB 標籤並報告檔案及行號。

現代分類

按類別組織訓練/驗證圖片,類別名稱使用對應子資料夾名稱。推薦顯式保留 train/類別名 與 val/類別名,由分類引擎按其資料規則讀取。此頁面不是經典分類 TXT 清單匯入入口。

classification/
  train/OK/...
  train/NG/...
  val/OK/...
  val/NG/...

分類結果目錄生成在資料集同級的“資料集名_runs”,避免訓練結果被誤識別成類別。不要把以前生成的結果目錄混進類別目錄。

經典目標偵測:一個 COCO 資料夾

預設選擇 COCO 模式,選擇資料集根目錄並點選“檢查資料集”。軟體識別訓練圖片、COCO JSON、類別及可選的獨立驗證集。常見結構如下:

coco/
  images/train/...
  images/val/...             # 可選
  annotations/train.json
  annotations/val.json      # 可選

沒有獨立驗證集時,全部訓練圖片用於訓練,不自動劃分,也不計算 mAP。OK 背景圖片允許沒有目標框;保留圖片記錄,annotations 中不必為它偽造框,也不需要新建一個“OK 目標”類別。軟體會保留這些負樣本。

類別對映以訓練標註為基準;訓練與驗證類別名稱須一致。軟體生成實驗內的標註副本與類別清單,不修改原始 COCO 檔案。

經典分類:一個分類資料夾

優先讀取 train_list.txt、val_list.txt 和 Label.txt;沒有清單時識別 train/類別名、val/類別名。保留已有訓練/驗證劃分,不自動重新劃分。類別編號須連續,驗證類別不能超出訓練類別。

如果已經有其他命名結構,先使用“檢查資料集”,以軟體識別的訓練數量、驗證數量及類別為準。不要透過手動偽造類別編號來跳過檢查。

異常偵測:OK 圖片與獨立校準

訓練目錄只放 OK 圖片。可以選擇獨立 OK 校準目錄;留空時按檔案內容去重後留出約 20% 做校準,至少需要 3 張不同 OK 圖。訓練特徵庫不使用校準圖片;內容重複的訓練圖和校準圖會被拒絕。

這條自動留出規則僅適用於異常偵測,不能套用到經典 COCO 偵測。