物体検出にUltralytics YOLO11を使用する方法

アビラミ・ヴィナ

3分で読める

2024年11月29日

Ultralyticsの新モデルYOLO11が、様々な産業分野の様々なアプリケーションにおいて、より高い精度を達成するための物体検出にどのように使用できるかをご覧ください。

コンピュータ・ビジョンは人工知能(AI)の一分野であり、機械が視覚情報を解釈・理解することで、物体検出のような重要なタスクを可能にする。画像分類とは異なり、物体検出は画像内の物体を特定するだけでなく、その正確な位置も特定します。このため、自動運転車、リアルタイム・セキュリティ・システム、倉庫の自動化などのビジョンAIアプリケーションにとって重要なツールとなっている。

時が経つにつれ、物体検出技術はより進化し、より使いやすくなっている。Ultralyticsの年次ハイブリッドイベント、YOLO Vision 2024(YV24)で、大きな前進が発表され、Ultralytics YOLO11モデルが発表された。YOLO11は、YOLOv8と同じタスクをサポートしながら、精度とパフォーマンスを向上させ、以前のモデルのユーザーがシームレスに移行しやすくなっています。

図1.物体検出にUltralytics YOLO11モデルを使用した例。

この記事では、物体検出とは何か、他のコンピュータビジョンタスクとどう違うのかを説明し、実際のアプリケーションを探ります。また、YOLO11モデルをUltralytics Pythonパッケージと Ultralytics HUBプラットフォームで使用する方法を説明します。さっそく始めましょう!

物体検出とは?

物体検出は、画像内の物体を識別するだけでなく、コンピュータビジョンにおける中核的なタスクである。特定のオブジェクトが存在するかどうかだけを判断する画像分類とは異なり、オブジェクト検出は複数のオブジェクトを認識し、バウンディングボックスを使用してそれらの正確な位置を特定します。 

例えば、集合写真に写っている顔や、交通量の多い道路を走っている車、店頭に並んでいる商品などを識別し、位置を特定することができる。物体認識と位置特定を組み合わせることで、監視、群衆監視、自動在庫管理などのアプリケーションに特に役立ちます。

図2.YOLO11を使って顔を検出する。

オブジェクト検出がセマンティックセグメンテーションやインスタンスセグメンテーションのような他のタスクと異なるのは、その焦点と効率性である。 

セマンティック・セグメンテーションは、画像内のすべてのピクセルにラベル付けを行うが、 同じ種類の個々のオブジェクトを区別することはない(たとえば、写真内のすべての顔は 「顔」としてグループ化される)。インスタンス・セグメンテーションでは、同じクラスのオブジェクトであっても、各オブジェクトを分離し、その正確な形状を輪郭で示す。 

しかし物体検出は、物体の位置をマークしながら識別・分類することで、より合理的なアプローチを提供する。そのため、セキュリティ映像から顔を検出したり、自律走行車の障害物を特定するようなリアルタイムのタスクに最適である。

YOLO11と物体検出の応用

YOLO11の高度な物体検出機能は、さまざまな業界で役立っています。いくつかの例を見てみよう。

YOLO11をリテール分析に活用

YOLO11と物体検出は、在庫管理と棚の監視をより効率的かつ正確にすることで、小売分析を再定義しています。迅速かつ確実に物体を検出するこのモデルの能力は、小売業者が在庫レベルを追跡し、棚を整理し、在庫カウントのミスを減らすのに役立ちます。

例えば、YOLO11は店舗の棚にあるサングラスのような特定の商品を検知することができる。しかし、なぜ小売業者は棚を監視したいのだろうか?顧客が必要なものを確実に見つけられるようにするためには、棚の在庫と整理整頓を保つことが不可欠であり、それは売上に直接影響する。リアルタイムで棚を監視することで、小売業者は商品が少なくなったり、置き場がなくなったり、過密状態になったりしたときにすぐに気づくことができ、買い物体験を向上させる整理された魅力的な陳列を維持するのに役立ちます。

図3.YOLO11を使った棚の商品検出例。

スマートシティ・アプリケーションにおけるYOLO11

賑やかな都市が効率的に機能するためには、スムーズな交通の流れと安全な道路が不可欠です。実際、多くのスマートシティ・アプリケーションがYOLO11と統合できる。 

興味深いケースのひとつは、物体検出を使用して、走行中の車両のナンバープレートを識別することだ。そうすることで、YOLO11は、より迅速な料金徴収、より良い交通管理、より迅速な規制執行をサポートすることができる。 

図4.物体検出とYOLO11を使ってナンバープレートを検出。

道路を監視するビジョンAIシステムからの洞察は、交通違反や渋滞が大きな問題に発展する前に当局に警告することができる。YOLO11は歩行者や自転車も検知できるため、道路をより安全で効率的なものにすることができる。 

実のところ、YOLO11のビジュアル・データ処理能力は、都市のインフラを改善するための強力なツールとなっている。例えば、車両や歩行者の動きを分析することで、信号のタイミングを最適化することができる。また、子どもを検知してドライバーに減速を促すことで、スクールゾーンの安全性を高めることもできる。YOLO11があれば、都市は課題に積極的に対処し、誰にとってもより効率的な環境を作り出すことができる。

YOLO11によるリアルタイム映像検出:アクセシビリティの向上

リアルタイム物体検出とは、ライブ・ビデオ・フィード中の物体が現れたときに、それを識別・分類するシステムの能力のことです。YOLO11は、優れたリアルタイム性能のために設計されており、この機能のサポートに優れています。YOLO11のアプリケーションは、単にプロセスを合理化するだけではありません。

例えば、YOLO11は、物体をリアルタイムで識別することで、視覚障害者を支援することができる。検出された物体に基づいて音声説明が提供されるため、ユーザーはより自立して周囲をナビゲートできる。

視覚障害者が食料品を買うことを考えてみよう。適切な商品を選ぶのは難しいかもしれないが、YOLO11が手助けしてくれる。商品をカートに入れる際、YOLO11と統合されたシステムを使えば、バナナ、アボカド、牛乳パックなどの各商品を識別し、リアルタイムの音声説明を提供することができる。これにより、買い物客は自分の選択を確認し、必要なものがすべて揃っていることを確認することができる。日用品を認識することで、YOLO11は買い物をより簡単にすることができる。

図5.物体検出は、視覚障害者にとって世界をより利用しやすくするのに役立つ。

YOLO11によるオブジェクト検出のステップバイステップガイド 

さて、物体検出の基礎とその多様な用途について説明したところで、物体検出のようなタスクのためにUltralytics YOLO11モデルをどのように使い始めることができるのかに飛び込んでみよう。

YOLO11を使うには、Ultralytics PythonパッケージとUltralytics HUBの2つの方法がある。まずはPythonパッケージから、両方の方法を試してみよう。

YOLO11を使った推論の実行

推論とは、AIモデルが新しい未見のデータを分析し、トレーニング中に学習した内容に基づいて予測、情報の分類、洞察などを行うことである。物体検出に関しては、画像やビデオ内の特定の物体を識別して位置を特定し、その周囲にバウンディングボックスを描画し、モデルのトレーニングに基づいてラベル付けすることを意味する。

YOLO11オブジェクト検出モデルを使用して推論するには、まずUltralytics Pythonパッケージをpip、conda、またはDocker経由でインストールする必要があります。インストールで問題が発生した場合は、トラブルシューティングガイドで解決するためのヒントやコツを確認してください。インストールが完了したら、以下のコードを使用してYOLO11オブジェクト検出モデルをロードし、画像上で予測を行うことができます。

図6.YOLO11nを使って画像上で推論を実行する。

YOLO11カスタムモデルのトレーニング

YOLO11はまた、特定のユースケースにより適合させるためのカスタムトレーニングもサポートしています。モデルを微調整することで、プロジェクトに関連するオブジェクトを検出するように調整することができます。例えば、医療分野でコンピュータ・ビジョンを使用する場合、カスタム・トレーニングされたYOLO11モデルを使用して、MRIスキャンの腫瘍やX線写真の骨折など、医療画像の特定の異常を検出し、医師がより迅速で正確な診断を下せるようにすることができます。

以下のコード・スニペットは、物体検出のためにYOLO11モデルをロードしてトレーニングする方法を示しています。YAML設定ファイルや事前に訓練されたモデルから始め、重みを転送し、COCOのようなデータセットで訓練することで、より洗練された物体検出機能を得ることができます。

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.yaml")  # build a new model from YAML
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt")  # build from YAML and transfer weights

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

モデルをトレーニングした後、さまざまな環境に展開するために、トレーニングしたモデルをさまざまな形式でエクスポートすることもできます。

YOLO11 Ultralytics HUBでの物体検出

コードを使わない代替手段をお探しの方には、Ultralytics HUBが、YOLO11を含むYOLOモデルのトレーニングとデプロイのための使いやすいVision AIプラットフォームを提供します。

画像上でオブジェクト検出を実行するには、アカウントを作成し、「モデル」セクションに移動し、YOLO11オブジェクト検出モデルバリアントを選択するだけです。画像をアップロードすると、検出されたオブジェクトがプレビューセクションに表示されます。

図7.Ultralytics HUBで推論を実行する。

Pythonパッケージの柔軟性とHUBの使いやすさを組み合わせることで、YOLO11は、開発者にも企業にも、高度な物体検出技術の力を活用することを簡単にします。

要点

YOLO11は、高精度と多様性を兼ね備え、様々な業界のニーズに応える物体検出の新たな基準を打ち立てます。YOLO11は、リテール分析の強化からスマートシティのインフラ管理まで、数え切れないほどのアプリケーションにおいて、リアルタイムで信頼性の高いパフォーマンスを発揮するよう構築されています。

カスタムトレーニングのオプションや、Ultralytics HUBを通じた使いやすいインターフェイスにより、YOLO11をワークフローに統合することがかつてないほどシンプルになりました。コンピュータビジョンを探求する開発者であれ、AIでイノベーションを起こそうとする企業であれ、YOLO11は成功に必要なツールを提供します。

さらに詳しく知りたい方は、GitHubリポジトリをチェックし、私たちのコミュニティに参加してください。自動運転車や 農業用コンピュータビジョンにおけるAIアプリケーションについては、ソリューションページをご覧ください。🚀

AIの未来
を一緒に作りましょう!

機械学習の未来への旅を始めよう

無料で始める
クリップボードにコピーされたリンク