訓練強大且準確的目標偵測模型需要全面的資料集。本指南介紹了與 Ultralytics YOLO 模型相容的各種資料集格式,並深入了解其結構、用法以及如何在不同格式之間進行轉換。
支援的資料集格式Ultralytics YOLO 格式Ultralytics YOLO 格式是一種資料集配置格式,可讓您定義資料集根目錄、訓練/驗證/測試影像目錄或包含影像路徑的 *.txt 檔案的相對路徑以及類別名稱。這是一個例子: 檔案 data.yaml - # Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
- path: ../datasets/ai_test # dataset root dir
- train: images/train # train images (relative to 'path') 4 images
- val: images/val # val images (relative to 'path') 4 images
- test: # test images (optional)
- # Classes (ai_test classes)
- names:
- 0: person
- 1: bicycle
- 2: car
- ...
- 77: teddy bear
- 78: hair drier
- 79: toothbrush
複製代碼
此格式的標籤應匯出為 YOLO 格式,*.txt每個影像一個檔案。如果圖像中沒有對象,則不需要*.txt文件。該*.txt文件的格式應為每個物件一行class x_center y_center width height。框座標必須採用標準化 xywh格式(從 0 到 1)。如果您的方塊以像素為單位,則應將x_center和除以width影像寬度,並將y_center和height除以影像高度。類別編號應該從零開始索引(從 0 開始)。
NetYea 網頁設計 YoloV8 模型訓練
上圖對應的標籤檔案包含 2 個人(class 0)和一個領帶(class 27):
NetYea 網頁設計 YoloV8 模型訓練
使用 Ultralytics YOLO 格式時,請組織您的訓練和驗證圖像和標籤,如下例所示。
NetYea 網頁設計 YoloV8 模型訓練
NetYea 網頁設計 YoloV8 模型訓練
用法以下是如何使用這些格式來訓練模型: - import os
- from ultralytics import YOLO
- import multiprocessing
- os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
- if __name__ == '__main__':
- model = YOLO("yolov8n.pt")
- model.train(data="data.yaml",
- epochs=30,
- imgsz=640)
複製代碼
備註:要抓圖片模型座標,請參考這篇
文章出處: NetYea 網頁設計
參考文章
https://docs.ultralytics.com/datasets/detect/
|