Video Understanding
Video Understandingが時間的ダイナミクスを分析して動作を解釈する仕組みを解説します。高度なAIに向けて、Ultralytics YOLO26でリアルタイム追跡を実装する方法を学びます。
動画理解は、機械が時間の経過に伴う視覚データを認識、分析、解釈できるようにすることに焦点を当てた、コンピュータビジョン (CV)の高度な分野です。静的なスナップショットを個別に処理する標準的な画像認識とは異なり、動画理解ではフレームのシーケンスを分析して、時間的ダイナミクス、コンテキスト、因果関係を把握します。時間という「第4の次元」を処理することで、AIシステムは単純な物体識別を超えて、シーン内で展開される行動、イベント、ストーリーを理解できるようになります。この機能は、動的な現実世界の環境で安全かつ効果的にインタラクションできるインテリジェントシステムの構築に不可欠です。
動画分析の主要コンポーネント#
動画コンテンツを適切に解釈するには、モデルが2種類の主要な情報、つまり空間的特徴(フレーム内に何があるか)と時間的特徴(物事がどのように変化するか)を統合する必要があります。そのためには、複数のニューラルネットワーク戦略を組み合わせた複雑なアーキテクチャが必要になることがよくあります。
- 畳み込みニューラルネットワーク (CNN):これらのネットワークは通常、空間的なバックボーンとして機能し、個々のフレームから形状、テクスチャ、物体などの視覚的特徴を抽出します。
- リカレントニューラルネットワーク (RNN):長・短期記憶 (LSTM)ユニットなどのアーキテクチャは、CNNによって抽出された特徴のシーケンスを処理するために使用されます。これにより、モデルは過去のフレームを「記憶」し、将来の状態を予測できます。
- オプティカルフロー:多くのシステムでは、オプティカルフローアルゴリズムを利用してフレーム間のピクセルの動きベクトルを明示的に計算し、物体の外観に依存しない速度や方向に関する重要なデータを提供します。
- ビジョントランスフォーマー (ViT):最新のアプローチでは、異なるフレームや領域の重要度を重み付けするためにアテンションメカニズムを利用することが増えています。これにより、モデルは長時間の動画ストリーム内の重要なイベントに集中できます。
実世界での利用例#
時間的コンテキストを理解する能力により、さまざまな業界で高度な自動化への道が開かれています。
- 自動運転車:自動運転車は動画理解を使用して、歩行者や他の車両の軌道を予測します。動きのパターンを分析することで、システムは衝突の可能性を予測し、複雑な運転操作を実行できます。
- 行動認識:スポーツ分析やヘルスケアモニタリングでは、システムが、選手のゴールや患者の転倒など、特定の人間の活動を識別し、自動化されたインサイトやアラートを提供します。
- スマートリテール:店舗では、異常検知にこれらのシステムを活用して、盗難を特定したり、顧客の来店動線のパターンを分析してレイアウトを最適化したりしています。
- コンテンツモデレーション:大規模なメディアプラットフォームでは、動画理解を使用して不適切なコンテンツに自動的にフラグを付けたり、アップロードされた動画をトピック別に分類したりすることで、手動レビューの必要性を大幅に削減しています。
関連する概念との違い#
動画理解には幅広い機能が含まれますが、AI分野におけるいくつかの関連用語とは異なります。
- 動画理解と物体追跡の比較:追跡は、特定の車などのインスタンスがフレーム間を移動する際に、その固有の識別情報を維持することに重点を置きます。動画理解では、その車の行動を解釈し、「駐車している」や「速度超過している」などと認識します。
- 動画理解とポーズ推定の比較:ポーズ推定は、単一のフレームまたはシーケンス内における身体の関節の幾何学的な配置を検出します。動画理解では、このデータを使用して動きの意味を推測し、「手を振って挨拶している」などと解釈します。
- 動画理解とマルチモーダルAIの比較:動画理解が視覚的なシーケンスに焦点を当てるのに対し、マルチモーダルAIは動画を音声、テキスト、センサーデータと組み合わせて、より包括的な分析を行います。
Ultralytics YOLO26による動画分析の実装#
動画理解の基本的なステップは、時間的な連続性を確立するために物体を堅牢に検出・追跡することです。Ultralytics YOLO26モデルは、リアルタイム追跡で最先端の性能を提供し、より高度な行動分析の前段階として機能します。
次の例では、Python APIを使用して動画ソース上で物体追跡を実行する方法を示します。
from ultralytics import YOLO
# Load the official YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Track objects in a video file with persistence to maintain IDs
# 'show=True' visualizes the tracking in real-time
results = model.track(source="path/to/video.mp4", persist=True, show=True)課題と今後のトレンド#
大きな進歩が見られる一方で、高解像度動画ストリームには膨大な量のデータが含まれるため、動画理解は依然として計算コストが高いままです。3D畳み込みや時間的トランスフォーマーのFLOPSを計算することは、エッジAIデバイスにとって過大な負担になる可能性があります。これに対処するため、研究者はTemporal Shift Module (TSM)のような効率的なアーキテクチャを開発し、NVIDIA TensorRTのような最適化ツールを活用して、リアルタイム推論を実現しています。
今後は、モデルが音声の手がかり(例:サイレン)とテキストのコンテキストを統合して、より深い理解を実現する高度なマルチモーダル学習へと発展していきます。Ultralytics Platformのようなプラットフォームも、複雑な動画データセットのアノテーションと管理を効率化する方向に進化しており、特定の時間的タスク向けのカスタムモデルをより容易にトレーニングできるようにしています。









