ビデオを使用してオブジェクトのモーショントラッキングを行う方法

computer-vision matlab opencv video-processing
ビデオを使用してオブジェクトのモーショントラッキングを行う方法

誰かが私をチュートリアルに誘導したり、6 DOFで移動するオブジェクトの動きを追跡する方法を教えてくれたりします。 動くおもちゃの車のビデオストリームを使用する予定です。 おもちゃの車の変位と回転角を計算します。 私はいくつかの研究論文に出くわしましたが、仕事に適したライブラリを見つけることができませんでした。

OpenCV、Matlab、またはその他の無料で入手可能なソフトウェアを使用してこれを行う方法はありますか?

ありがとうございました

  9  10


ベストアンサー

追跡は古典的なコンピュータービジョンの問題であり、コンピューターサイエンスではまだ研究が行われています。 http://en.wikipedia.orgのhttp://www.cvpapers.com/cvpr2010.html [受理された論文]のリストを確認することにより、この分野の最新技術をすぐに理解できます。 / wiki / CVPR [CVPR 2010](毎年恒例のコンピュータービジョン会議)で、トピックに関する公開中の作業がまだあることがわかります(リスト内で「追跡」という単語を検索してください)。

追跡問題のソリューションの標準処理パイプラインは次のように機能します。まず、画像を解析して、画像の関連するコーナーやその他の顕著な特徴をキャプチャする意味のある*記述子*を抽出します。 これらの記述子は、後で、各フレームで関心のある特定のオブジェクトの可能性のあるインスタンスを検出するように訓練された*オンライン分類子*に供給されます。 オブジェクトの記述子はアプリオリ(つまり、 オブジェクトがどのように見えるかの前の例から計算されますが、通常、システムが時間とともに見るものによってすべてのフレームで更新され、動的なオブジェクトの外観に適応する検出を行います。 最後に、(検出されたものから)各フレームの可能な候補のプールから選択するために、オブジェクトの位置や速度などのパラメーターは、逐次統計モデルを使用して前のフレームに対して*推定*されます。

優れた画像記述子に関する膨大なコンピュータービジョンの文献がありますが、最も人気のあるもののいくつかはhttp://en.wikipedia.org/wiki/Scale-invariant_feature_transform[SIFT]、http://en.wikipedia.org/wikiです。 / SURF [SURF]、またはhttp://en.wikipedia.org/wiki/Histogram_of_oriented_gradients[HOG]。 分類については、最も成功している2つの方法はhttp://en.wikipedia.org/wiki/Support_vector_machines [サポートベクターマシン]またはhttp://en.wikipedia.org/wiki/Ensemble_learning[classification ensembles](例: boostingまたはhttp://en.wikipedia.org/wiki/Random_forest[random forests])、および推定部分では、ほとんどの人がまだhttp://を使用していますen.wikipedia.org/wiki/Kalman_filter [カルマンフィルター](シーケンシャルhttp://en.wikipedia.org/wiki/Markov_model[Markovモデル]の一種)、http://en.wikipedia.org/wiki / Particle_filter [粒子フィルター]またはより一般的にはhttp://en.wikipedia.org/wiki/Kernel_density_estimation [密度推定モデル]。

あなたが説明した特定のケースは、自然な屋外シーンでの任意のカメラとオブジェクトの動きに関するより一般的で難しいオブジェクト追跡問題よりも少し簡単なので、設定ですぐに動作するコードをオンラインで見つけることができるかもしれませんが、疑わしい。 他の人が指摘したように(そして私の知る限り)、あらゆる種類のオブジェクト、背景、モーションスペースに対してすぐに動作する「すぐに使える」ライブラリはありません。 そうは言っても、おそらく上記の標準的な一般的なパイプラインの個々のコンポーネント(分類子、フィルター/機能のバンク、マルコフ推定モデル)のコードをオンラインで見つけることができます。

私の提案は、あなたが良いシステムを構築することに興味があるなら(すなわち 実際に機能するもの)、その後、http://en.wikipedia.org/wiki/CVPR [CVPR]、http:// enなどのトップコンピュータービジョン会議での最新の論文の著者のWebサイトを参照してください。 wikipedia.org/wiki/ICCV[ICCV]、http://en.wikipedia.org/wiki/European_Conference_on_Computer_Vision[ECCV]およびhttp://en.wikipedia.org/wiki/SIGGRAPH[SIGGRAPH]。 彼らはいくつかのビデオの例で最新の作品のコードをオンラインで持っている傾向があり、これは実際の設定でそれらのメソッドがどのように機能するかを理解するのに役立つかもしれません。

21


そのために使用する準備ができているプログラムがあるとは思わない…​ 少なくとも、いくつかのメソッドまたはライブラリを取得し、それほど簡単な数学を使用する必要はありません。 人々はそれについて論文を書いています!

これは最近読んだ論文です。

あなたが探しているものではないと思うなら、より多くのアイデアを得るために参考文献に行ってください;)

3


たぶんhttp://www.ces.clemson.edu/~stb/klt/[KLT Tracker](Kanade Lucas Tomasi)があなたを助けることができるでしょう。 検出されたポイントが画像間で移動した場所を示します。 OpenCVライブラリには、KLT Trackerのバージョンが含まれていますが、アフィン一貫性チェックはありません(KLTホームページが述べているように)。

3


既製のコードを試してみたい場合は、OpenCVに付属のサンプルファイルがあります。 OpenCV 2.1ではsamples / c / blobtrack.cppにあり、OpenCV 2.2ではsamples / c / blobtrack_sample.cppにあります。 どちらにも.exeファイルが付属しているため、Windowsを使用する場合に備えて、すぐにサンプルを試すことができます。 古いサイト、http://opencv.willowgarage.com/wiki/VideoSurveillance [OpenCV Video Surveillance / Blob Tracker Facility]があり、コードの動作を文書化しています。

blobtrack.cppのトラッカーは、3つの段階に分割されています(前のリンクからコピー)。

  1. 各ピクセルにラベルを付ける前景/背景弁別器
    前景または背景のいずれか。

  2. 隣接する「前景」ピクセルをブロブにグループ化するブロブ検出器、
    塗りつぶしスタイル。

  3. ID番号をBLOBに割り当て、そのBLOBを追跡するBLOBトラッカー
    モーションフレーム間。

blobtrack.cppは実際には各ステージにいくつかのメソッドを実装しているため、さまざまな組み合わせを試して、どれが最適かを確認できます。

最終段階では、実際に複数のオブジェクトを同時に追跡できます。 静的カメラで撮影された高速道路を移動する車両のビデオでテストしましたが、最良の方法で少し遅くてもかなりうまくいきます。

また、ビデオの背景が静的な場合、つまり、フレームごとに変化するのがおもちゃの車だけである場合は、「背景減算」と呼ばれる単純な手法を使用して、長い道のりを進むことができます。 しかし、それはオブジェクトの位置を特定することのみを目的としており、そのポーズを推定するのに役立つとは思いません。

注:OpenCV 2.2に付属するサンプルを動作させることができませんでした。 OpenCV 2.1に付属しているものは、私にとってはうまくいきました。

3


TLD(明らかにMatlab)をご覧ください。

_
TLDは、ビデオストリーム内の未知のオブジェクトを追跡するための、受賞歴のあるリアルタイムアルゴリズムです。 対象のオブジェクトは、単一のフレーム内の境界ボックスによって定義されます。 TLDは、同時にオブジェクトを追跡し、その外観を学習し、ビデオに表示されるたびに検出します。 その結果、通常は時間の経過とともに改善されるリアルタイムの追跡が行われます。
_

個人的に使用したことはありませんが、デモビデオは素晴らしいです。

2


これはあなたが探しているソフトウェアですhttp://www.cabrillo.edu/~dbrown/tracker/

この記事はあなたを鼓舞するのに役立つかもしれませんhttp://www.wired.com/wiredscience/2010/10/physics-of-angry-birds/

1


タイトルとURLをコピーしました