物体検出でお馴染みのYOLOシリーズの最新版「YOLOv8」について、動かしながら試していきます。

YOLOv8は2023年1月に公開された最新バージョンであり、速度と精度の面で限界を押し広げています。

Google colabを使用して簡単に最新の物体検出モデルを実装することができますので、ぜひ最後までご覧ください。

これまでの投稿はこちら
第1回:YOLOv8を試してみる 〜導入からデモまで〜
第2回:推論の引数と座標とスコアの出力
第3回:YOLOv8でセグメンテーションを試してみる
第4回:YOLOv8における推論結果と座標について
第5回:マスク着用をリアルタイムに判定 〜オープンソースデータセットの学習と評価〜
第6回:物体検出のためのデータ収集
第7回:物体検出のためのアノテーション

今回の内容

・YOLOv8の概要

・Google colabを使用してYOLOv8の導入

・物体検出の実装

・セグメンテーションの実装

YOLOv8とは

YOLOv8は2023年1月に公開された最新バージョンであり、既存のオブジェクト検出器を上回り、速度と精度の面で限界を押し広げています。

物体検出だけでなく、セグメンテーションタスクや画像分類タスクでも利用することができます。

引用:https://github.com/ultralytics/ultralytics

YOLOv8のベンチマーク結果は以下となっています。

物体検出モデル

引用:https://github.com/ultralytics/ultralytics

セグメンテーションモデル

引用:https://github.com/ultralytics/ultralytics

なお、YOLOv8のライセンスは「GNU General Public License v3.0」となっています。

YOLOv8の導入

早速YOLOv8を使って動かしていきましょう。

ここからはGoogle colabを使用して実装していきます。

まずはGPUを使用できるように設定をします。

「ランタイムのタイプを変更」→「ハードウェアアクセラレータ」をGPUに変更

GPUの設定が終わったら、Googleドライブをマウントします。

from google.colab import drive
drive.mount('/content/drive')
%cd ./drive/MyDrive

公式よりcloneしてきます。

!git clone https://github.com/ultralytics/ultralytics
%cd ultralytics

次に必要なライブラリをインポートします。

ここではpipでインストールすることにします。

!pip install -r requirements.txt

以上で準備完了です。

YOLOv8を使えるようになりました。

物体検出の実装

まずは物体検出の実装を紹介します。

サンプル画像として用意されている「bus.jpg」を使用します。

from ultralytics import YOLO
model = YOLO("yolov8x.pt") 
results = model("bus.jpg",save=True) 

実行すると「ultralytics/runs/detect/predict」のフォルダ内に結果が保存されます。

中身を確認してみると、高精度で検出できていることがわかります。

セグメンテーションの実装

次にセグメンテーションの実装を紹介します。

まずはセグメンテーション用の学習済みモデルをダウンロードします。

model = YOLO("yolov8n-seg.pt") 

「task=’segment’」とすることで、物体検出と同様に推論することができます。

results = model('bus.jpg',save=True,task='segment')

実行すると「ultralytics/runs/segment/predict」のフォルダ内に結果が保存されます。

任意の動画で試してみる

動画でも試してみましょう。

「bus.jpg」がある場所に動画を保存して、同様に推論デモを実行します。

results = model('sample.mp4',save=True,task='segment')

任意の動画で推論デモを簡単に実行することができました。

まとめ

最後までご覧いただきありがとうございました。

2023年1月に公開された物体検出でお馴染みのYOLOシリーズの最新バージョンである「YOLOv8」について、動かしながら試してみました。

精度・推論速度ともに向上しており、非常に使いやすいものになっています。

物体検出の活用の幅がさらに広がりそうですね。

コメントを残す