📸

YOLOv8 を学習させる手順

2024/12/19に公開

こんにちは!『麦ちゃーはん』です。

備忘録として、YOLOv8を学習させる手順をまとめておきます。

YOLOv5の学習方法を知りたい方は以下の記事をご覧ください。
https://zenn.dev/mugi_cha/articles/3976acbbc2273d

ライブラリをインストール

pip install ultralytics

これさえインストールしておけば、YOLOv8が使えます。

データセットのディレクトリ構造

以下は、学習用データセットのディレクトリ構造です。

dataset/
├── images/
│   ├── train/
│   │   ├── image1.jpg
│   │   ├── image2.jpg
│   │   └── ...
│   └──  val/
│      ├── image3.jpg
│       ├── image4.jpg
│       └── ...
├── labels/
│   ├── train/
│   │   ├── image1.txt
│   │   ├── image2.txt
│   │   └── ...
│   └── val/
│       ├── image3.txt
│       ├── image4.txt
│       └── ...
└── data.yaml  

yamlファイル

以下は、data.yamlファイルの内容です。自身のデータセットに合わせて書き換えてください。

# データセットのルートディレクトリ(全体の基準となるパス)
path: 〈datasetのパス〉

# トレーニングデータの画像が保存されているサブディレクトリ
train: images/train  

# 検証データの画像が保存されているサブディレクトリ
val: images/val  

# クラス数(検出するオブジェクトの種類の数)
nc: 3

# クラス名のリスト(検出対象のオブジェクト名を定義)
names: ['class1', 'class2','class3']  

Pythonファイル

# ultralyticsライブラリをインポート
from ultralytics import YOLO

# YOLOクラスのインスタンスを作成
# バージョンとモデルサイズを指定
model = YOLO("yolov8m.pt")

# trainメソッドを実行
model.train(data= <data.yamlのパス>, epochs=50, imgsz=640)

このコードを実行すれば学習できます。
この場合は、YOLOv8のmediumモデルを使用しています。

おわりに

今回は YOLOv8を学習させる手順についてまとめました。

YOLOv5の記事と同様に、箇条書きの形式になってしまいましたが、皆さまのお役に立てれば幸いです。

ここまでお読みいただき、心から感謝いたします。

Discussion