見出し画像

YOLO11を試してみた


概要

以下の画像はultralyticsが発表している精度と速度の比較表です。
精度は最近発表されたv9やv10とほぼ同等で、速度はv10並みのようです。

実施内容

Google Colab (Pro)のL4で実行しました。

インストール

ultralyticsライブラリのインストールは非常に簡単に行えます。

!pip install ultralytics

推論の実行

ultralyticsのインストールが完了すると、 yolo コマンドが使用可能になっており、オプションに実行したいタスクに合ったモデルと画像を指定することで各タスクの推論を実行できます。

!yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
  • model

    • 実行したいタスクに合ったモデルの重みファイルを指定する。初回は重みファイルが自動で実行環境上にダウンロードされる。

  • source

    • 入力データのパスを指定する。

Pythonコードを実装して推論する場合も、ultralyticsはしっかりクラス化されているのでシンプルなコードで推論できます。(学習もシンプルに書けます)

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")

# Perform object detection on an image
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
YOLO11nでバスの画像の検出結果

今回はYOLO11nとYOLO11xに下の画像を与え、その結果をYOLOv8やYOLOv9と見比べます。(バスの画像では、微妙な差異はあるもののほぼ同様の結果でした)
タスクは物体検出、インスタンスセグメンテーション、姿勢推定を試しました。

入力画像

野原の画像

物体検出

11n
v8n
11x
v9e
v8x

インスタンスセグメンテーション

11n
v8n
11x
v9e
v8x

姿勢推定

11n
v8n
11x
v8x

姿勢推定については人が大きく映るバスの画像も載せておきます。

11n
v8n
11x
v8x

まとめ

  • YOLO11を試してみました。

  • 個人的には最小のNサイズでも思っていた以上に検出できていると感じました。

  • YOLOでの姿勢推定は初めて試しましたが、インスタンスセグメンテーションや深度推定も組み合わせて遊べそうだなと感じました。

  • GPU使用量は最小モデルのNサイズが約400MB、最大モデルのXサイズが約800MBでした。

今回使用した画像の取得元

追記: 他の方の動画をご紹介

素晴らしい動画を見つけたのでご紹介です。
こちらのチャンネルの別動画も面白そうなのでぜひご覧ください。


いいなと思ったら応援しよう!