2012年11月26日月曜日

OpenCV 2.4.3の新サンプル SimpleFlow.cppを試してみた


OpenCV 2.4.3のサンプルにsimleflowが存在していたので、ソースの中身を除いてみた。

Lucas Kanadeが1チャンネル(通常輝度信号)のみで処理をしているところ、3チャンネル使用している。

ファイルから画像を読み込み、フローを計算して入力画像に重ねて表示するプログラムを作成してみた。画像には、2.4.3のsamples\gpu\768x576.aviを使用している(人が道路を歩いている画像であるが、それほど品質はよくない)

第一印象は、計算が重い。最初PCがフリーズしたのかと思うくらい時間がかかった。

結果の画像を示す。




この画像輝度信号のみでoptical flowを求めると、動いていない場所に大量のベクトルが検出されるが、simple flowでは、動きのない部分にはベクトルは検出されない。

それでも、サンプルの結果には、道路の部分にもベクトルが生じている(これは元の画像に問題があるのではと思う)

APIの説明は、ここ。 元の論文へのリンクも掲載されており、2012年に発表された最新のものである。

以上

0 件のコメント:

コメントを投稿