コンテンツへスキップ

YOLOv8

概要

YOLOv8 は、リアルタイム物体検出器YOLO シリーズの最新版で、精度と速度の面で最先端の性能を提供します。YOLO の旧バージョンの進化をベースに、YOLOv8 は新機能と最適化を導入し、幅広いアプリケーションにおけるさまざまな物体検出タスクに理想的な選択肢を提供します。

Ultralytics YOLOv8



見るんだ: Ultralytics YOLOv8 モデル概要

主な特徴

  • 高度なバックボーンとネックアーキテクチャ: YOLOv8 は最先端のバックボーンとネックアーキテクチャを採用し、特徴抽出と物体検出のパフォーマンスを向上させています。
  • アンカーフリーのスプリットヘッドUltralytics : YOLOv8 は、アンカーフリーのスプリットヘッドUltralytics を採用しており、アンカーベースのアプローチと比較して、より高い精度と効率的な検出プロセスに貢献しています。
  • 最適化された精度と速度のトレードオフ:精度と速度の最適なバランスを維持することに重点を置き、YOLOv8 、さまざまな応用分野におけるリアルタイムの物体検出タスクに適している。
  • 様々な事前学習済みモデル: YOLOv8 は、様々なタスクやパフォーマンス要件に対応する様々な事前学習済みモデルを提供しており、特定のユースケースに適したモデルを簡単に見つけることができます。

サポートされるタスクとモード

YOLOv8 シリーズは、コンピュータビジョンにおける特定のタスクに特化した、多様なモデルを提供しています。これらのモデルは、物体検出から、インスタンスのセグメンテーション、ポーズ/キーポイント検出、指向性物体検出、分類などの複雑なタスクまで、さまざまな要件に対応するように設計されています。

YOLOv8 シリーズの各バリエーションは、それぞれのタスクに最適化されており、高い性能と精度を保証します。さらに、これらのモデルは、推論検証トレーニングエクスポートなど、さまざまな操作モードに対応しており、展開や開発のさまざまな段階での使用が容易になっています。

モデル ファイル名 タスク 推論 バリデーション トレーニング 輸出
YOLOv8 yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt 検出
YOLOv8-セグ yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt インスタンスのセグメンテーション
YOLOv8-ポーズ yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt ポーズ/キーポイント
YOLOv8-オッブ yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt 指向性検出
YOLOv8-cls(クルス yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt 分類

この表は、YOLOv8 モデルバリアントの概要を提供し、特定のタスクにおける適用可能性と、推論、検証、トレーニング、エクスポートなどのさまざまな動作モードとの互換性を強調しています。この表は、YOLOv8 シリーズの汎用性と堅牢性を示しており、コンピュータビジョンのさまざまなアプリケーションに適しています。

パフォーマンス指標

パフォーマンス

80の訓練済みクラスを含むCOCO上で訓練されたこれらのモデルの使用例については、Detection Docsを参照してください。

モデル サイズ
(ピクセル)
mAPval
50-95
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n 640 37.3 80.4 0.99 3.2 8.7
YOLOv8s 640 44.9 128.4 1.20 11.2 28.6
YOLOv8m 640 50.2 234.7 1.83 25.9 78.9
YOLOv8l 640 52.9 375.2 2.39 43.7 165.2
YOLOv8x 640 53.9 479.1 3.53 68.2 257.8

Open Image V7でトレーニングされたこれらのモデルの使用例については、Detection Docsを参照してください。

モデル サイズ
(ピクセル)
mAPval
50-95
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n 640 18.4 142.4 1.21 3.5 10.5
YOLOv8s 640 27.7 183.1 1.40 11.4 29.7
YOLOv8m 640 33.6 408.5 2.26 26.2 80.6
YOLOv8l 640 34.9 596.9 2.43 44.1 167.4
YOLOv8x 640 36.3 860.6 3.56 68.7 260.6

COCOで訓練されたこれらのモデルの使用例については、Segmentation Docsを参照してください。

モデル サイズ
(ピクセル)
mAPbox
50-95
mAPmask
50-95
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n-セグ 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-セグ 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-セグ 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-セグ 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-セグ 640 53.4 43.4 712.1 4.02 71.8 344.1

ImageNetで訓練されたこれらのモデルの使用例については、Classification Docsを参照してください。

モデル サイズ
(ピクセル)
acc
top1
acc
top5
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B) at 640
YOLOv8n-cls(クルス 224 69.0 88.3 12.9 0.31 2.7 4.3
YOLOv8s-cls(クルス 224 73.8 91.7 23.4 0.35 6.4 13.5
YOLOv8m-cls(クルス 224 76.8 93.5 85.4 0.62 17.0 42.7
YOLOv8l-cls(クルス 224 76.8 93.5 163.0 0.87 37.5 99.7
YOLOv8x-cls(クルス 224 79.0 94.6 232.0 1.01 57.4 154.8

COCOで訓練されたこれらのモデルの使用例については、Pose Estimation Docsを参照してください。

モデル サイズ
(ピクセル)
mAPpose
50-95
mAPpose
50
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n-ポーズ 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-ポーズ 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-ポーズ 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-ポーズ 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-ポーズ 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

DOTAv1で訓練されたこれらのモデルの使用例については、Oriented Detection Docsを参照のこと。

モデル サイズ
(ピクセル)
mAPtest
50
速度
CPUONNX
(ms
)
速度
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n-オッブ 1024 78.0 204.77 3.57 3.1 23.3
YOLOv8s-オッブ 1024 79.5 424.88 4.07 11.4 76.3
YOLOv8m-オッブ 1024 80.5 763.48 7.61 26.4 208.6
YOLOv8l-オッブ 1024 80.7 1278.42 11.83 44.5 433.8
YOLOv8x-オッブ 1024 81.36 1759.10 13.23 69.5 676.7

使用例

この例では、単純なYOLOv8 トレーニングと推論の例を提供します。これらのモードや他のモードに関する完全なドキュメントはPredict,Train,ValandExportdocs ページを参照してください。

以下の例は、YOLOv8 オブジェクト検出のためのDetectモデルであることに注意してください。その他のサポートされるタスクについては、SegmentClassifyOBBdocs、Posedocsを参照してください。

PyTorch じゅくれんした *.pt モデルおよび構成 *.yaml ファイルに渡すことができる。 YOLO() クラスを使用して、python にモデルのインスタンスを作成します:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO('yolov8n.pt')

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)

# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model('path/to/bus.jpg')

CLI コマンドでモデルを直接実行できる:

# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg

引用と謝辞

YOLOv8 モデル、またはこのリポジトリにある他のソフトウェアをあなたの研究で使用する場合は、以下のフォーマットで引用してください:

@software{yolov8_ultralytics,
  author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
  title = {Ultralytics YOLOv8},
  version = {8.0.0},
  year = {2023},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

DOIは保留中であり、利用可能になり次第、引用に追加されることにご注意ください。YOLOv8 モデルは、以下のライセンスで提供されます。 AGPL-3.0およびEnterpriseライセンスで提供されています。



作成日:2023-11-12 更新日:2024-04-17
作成者:glenn-jocher(12),Laughing-q(2),AyushExel(1),fcakyon(1)

コメント