カスタム データセットを使用して YOLOv8 モデルをトレーニングします (AutoDL コンピューティング パワー クラウド プラットフォームに基づいており、無料のソース コード、データセット、PYQT-GUI インターフェイスが含まれています)

目次

序文

1. AutoDL レンタル コンピューティング パワー クラウド サーバー

 2.1. AutoDL クラウド コンピューティング能力のインスタンスを作成する

2. データの準備

3. 環境整備

4. モデルのトレーニング

五、PYQT-GUIインターフェース(モデル予測)

6. 参考文献


序文

YOLOv8 は、Ultralytics によって開発された YOLO の最新バージョンです。これは、画像内の複数のオブジェクトを検出し、その位置をマークできるアンカーベースのオブジェクト検出アルゴリズムです。以前のバージョンと比較して、YOLOv8 は精度と速度が向上し、インスタンスのセグメント化タスクもサポートします。

YOLOv8 の利点は次のとおりです。

1. 高速: YOLOv8 は現在、最も高速なターゲット検出アルゴリズムの 1 つです。
2. 高精度: YOLOv8 は精度の点でも優れています。
3. 使いやすさ: YOLOv8 は使用と実装が簡単で、さまざまなアプリケーション シナリオに適しています。

1. AutoDL レンタル コンピューティング パワー クラウド サーバー

 2.1. AutoDL クラウド コンピューティング能力のインスタンスを作成する

まずはAutoDL公式サイト(AutoDL-Quality GPU Rental Platform-Rent GPU on AutoDL )に登録し、「コンピューティングパワーマーケット」でGPUを選択します。

現時点では、GPU バージョンの RTX3090を選択し、請求方法は従量課金制であるため、費用が節約されます。

 次に、GPU の数が 1 である「Basic Image」を選択し、下図の Pytorch イメージを選択します。ソース コード環境では後で Pytorch が必要になるため、「Create Now」をクリックして、正常に作成されるまでしばらく待ちます。

2. データの準備

ここには、データ セット、ソース コード、PYQT-GUI インターフェイス、トレーニング済みモデル ファイルなど、誰でも学習できる Baidu ネットワーク ディスク リンクがあります。

リンク: https://pan.baidu.com/s/1pkfC4hQPbWr2nYS7ic2fHw?pwd=1zxw 

抽出コード: 1zxw 

このプロジェクト コードを AutoDL に入れると、JupyterLab を使用してデータをアップロードできます。

Alibaba Cloud ディスクを使用してコードをアップロードすることもできます。

3. 環境整備

上記の AutoDL イメージを準備した後、JupyterLab を使用してターミナル インターフェイスに入り、YOLOv8-PyGUI-fire フォルダーに入り、次の手順に従ってインストールします。

sudo apt update

pip install ultralytics

次に、datasets-train/fire.yaml を開いて、データセット パス、カテゴリ、カテゴリ名などのパラメータを次のように変更します。

4. モデルのトレーニング

yolov8 のトレーニングはコードの形式で実行されます。以下は YOLOv8 に従って書き換えられたコード ケースです。

# train.py

from ultralytics import YOLO

# 加载模型
# model = YOLO('yolov8n.yaml')  # 从YAML创建一个新模型
model = YOLO('weights/yolov8s.pt')  # 加载预训练模型(推荐用于训练)
# model = YOLO('yolov8s.yaml').load('weights/yolov8s.pt')  # 从YAML构建并转移权重
# 训练模型
model.train(data="../datasets-train/fire.yaml",
            imgsz=640,     # 输入图像的大小为整数或 w,h
            epochs=100,    # 要训练的次数
            batch=64,      # 每批次的图像数量(AutoBatch 为 -1)
            device=0,      # 要运行的设备,即 cuda device=0 或 device=0,1,2,3 或 device=cpu
            workers=2,     # 用于数据加载的工作线程数(如果是 DDP,则为每个 RANK)
            resume=False)  # True的时候则从上一个检查点恢复训练

ターミナルを開き、ultralytics-YOLOv8 フォルダーに入り、ターミナルで次のコマンドを入力してトレーニングを開始します。

python train.py

五、PYQT-GUIインターフェース(モデル予測)

Ultralytics-YOLOv8/runs フォルダーをローカル フォルダーにダウンロードしてコピーし、ローカル環境で環境を構成した後、YOLOv8-PySide6-GUI ディレクトリの main.py を実行します。

操作の結果は次のようになります。 

GUIインターフェースはBステーションアップマスターのオープンソースインターフェースを流用しています。オリジナルバージョンにはカメラ機能がありません。後から修正してカメラ機能を追加しました。その他の機能は同じです。無料でダウンロードして体験してください。 !

6. 参考文献

参考ソースコード: YOLOv8-ultralytics

参照 GUI インターフェイス: GitHub - Jai-wei/YOLOv8-PySide6-GUI: YoloSide - YOLOv8 GUI By PySide6

参照データセット分類:ターゲット検出 --- データセット形式変換とトレーニングセットと検証セットの分割

参照モデルのトレーニング:トレーニング - Ultralytics YOLOv8 Docs

おすすめ

転載: blog.csdn.net/Little_Carter/article/details/131387425