見出し画像

【Python】YOLOv8で物体追跡する手順

この記事では、YOLOv8 で検出した物体を追跡する方法を学びます。


<概要>

はじめに

この記事では、YOLOv8 で検出した物体を追跡する方法を学びます。

YOLOv8 とは?

YOLO(You Only Look Once)は、リアルタイム物体検出アルゴリズムです。

フリー素材に YOLOv8 を適用

単一のニューラルネットワークを使用して高速かつ効率的に物体を検出します。一度の推論で画像全体をスキャンし、物体の位置とクラスを同時に特定します。このアルゴリズムは、高速性と正確性のバランスに優れており、自動運転、監視システム、人物追跡など、リアルタイム性が重要なタスクに特に適しています。

中でも、「v8」は2023年1月にリリースされた最新モデルであり、従来よりも高速かつ精度が向上しております。

出典:YOLOv8

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

YOLOv8 のライセンスは、「GNU Affero General Public License v3.0」であり、 ライセンス・著作権・出典を開示するなどの条件をクリアすることで、商用でも無料で利用することが可能です。オープンソースで提供されていることが人気の理由の一つでもあります。
YOLOv8 ライセンス

YOLOv8 で物体追跡するとは?

物体検出技術である YOLOv8 に、「BoT-SORT」や「ByteTrack」といった物体追跡技術を合わせて使用します。

YOLOv8で物体追跡

物体追跡を行うことで、検出された物体に「id」が付与され、物体が移動しても同じ「id」が振られることで、物体を追跡することができます。「BoT-SORT」、「ByteTrack」はともに高精度なモデルであり、上記動画のように物体の一部が隠れていても追跡することが可能です。

  • 「BoT-SORT」、「ByteTrack」 の精度

出典:BoT-SORT

「BoT-SORT」、「ByteTrack」はどちらもMITライセンスで提供されているオープンソースです。
BoT-SORT ライセンスByteTrack ライセンス

この記事で学べること

  • YOLOv8 で物体検出する方法

  • YOLOv8 で物体追跡する方法

  • 物体の追跡結果を利用する方法

実務活用例

  • セキュリティ
    異常な行動や侵入者を検出・追跡し、セキュリティリスクを低減する

  • 在庫管理
    商品の種類や量を検出・追跡することで在庫管理を効率化する

  • スポーツ解析
    サッカー、バスケットボール、テニスなどの競技において、ボールやプレイヤーを追跡し、戦術の分析やプレイヤーのパフォーマンス向上に役立てる

*注意

この記事の YOLOv8 の基本的な操作方法に関する説明部分は、以下の記事でも同等の説明をしております。両方をご購入される場合は、予めご留意下さい。
【Python】YOLOv8の使い方解説+リアルタイムの物体検出を利用したサンプルアプリの実装手順

タイトル画の出典
Stable Diffusion により生成したものを加工


<実装準備>

環境

この記事では、以下のような開発環境、ツールを使用します。

開発環境
Google Colaboratery

ツール
Python(バージョン3.7以上)
ultralytics

環境構築
この記事は、「Google Colaboratory」上で「GPU」を使用します。
(慣れている方は、本章は読み飛ばしていただいて構いません。)

それでは構築していきます。

(1) 「Google Colaboratory」にアクセスし、Googleアカウントでログインします。(もしもGoogleアカウントをお持ちでない場合は、作成します。)

(2) 「ノートブックを新規作成」をクリックします。

(3) 左上のファイル名(「Untitled.ipynb」)をクリックし、任意のファイル名に変更しておきます。(著者は「Yolo_track.ipynb」としました)

(4) 「GPU」を使用する設定をします。
「ランタイム」→「ランタイムのタイプを変更」を選択します。

(5) 表示された「ノートブックの設定」画面上で、「ハードウェア アクセラレータ」を「GPU」に変更します。

(6) 「保存」ボタンをクリックします。

ここから先は

12,977字 / 24画像

¥ 1,000

この記事が気に入ったらサポートをしてみませんか?