コンピュータビジョンにおけるオプティカルフローの威力をご覧ください。オプティカルフローがどのように動きを推定し、ビデオ解析を強化し、AIのイノベーションを推進するのかをご覧ください。
オプティカルフロー(Optical Flow)とは、(カメラのような)観察者とシーンとの間の相対的な動きによって引き起こされる、ビジュアルシーン内のオブジェクト、表面、エッジの見かけ上の動きのパターンを記述する。オプティカルフローはコンピュータビジョン(CV)の基本的な概念であり、ビデオシーケンスの連続するフレーム間の個々のピクセルや特徴の動きを推定するために使用される。この技術は、シーンのダイナミクスに関する貴重な情報を提供し、生物学的な視覚システムが動きを知覚するのと同様に、機械が動きを理解することを可能にする。ビデオデータを分析する様々な人工知能(AI)や機械学習(ML)アプリケーションにおいて、重要な要素となっている。
オプティカルフロー計算の核となる考え方は「明るさの不変性」の仮定であり、これは、物体上の特定の点に対応するピクセルの強度は、それが画像平面を横切って移動するにつれて、短い時間間隔にわたって一定に保たれる(または予測可能に変化する)という仮定である。アルゴリズムは、各ピクセルまたは特定の注目点の動きベクトルを計算するために、あるフレームから次のフレームへとこれらの強度パターンを追跡する。
オプティカルフローを計算する一般的な技術には、以下のようなものがある:
オプティカルフローを関連するタスクと区別することは重要だ:
オプティカルフローは、映像から動きを理解する必要がある多くのアプリケーションにとって極めて重要である:
OpenCVのようなライブラリは、古典的なオプティカル・フロー・アルゴリズムの実装を提供している(OpenCV Optical Flow Tutorials)。ディープラーニングのアプローチでは PyTorchや TensorFlowのようなプラットフォームで利用可能な事前学習済みモデルを活用することが多い。 Hugging Face.これらのモデルのトレーニングには、FlyingThings3Dや Sintelデータセットのような、グランドトゥルースのフロー情報を持つ大規模なビデオデータセットが必要です。Ultralytics HUBのようなプラットフォームは、オプティカルフロー推定よりも検出やセグメンテーションのようなタスクに重点を置いていますが、データセットやモデルのトレーニングワークフローの管理に役立ちます。