aa develop

開発と成長

ofxCvのexample-flowについて調べる

openFrameworksのofxCvアドオンを使って,オプティカルフローで何かを作りたいと思う.そのために,まずofxCvに付属するサンプルexample-flowを分析する.

f:id:aa_debdeb:20160714104450p:plain

オプティカルフローには,二種類のアルゴリズムがある.

  • 画像ピラミッドを利用したLucas-Kanade法(LK法)
  • Gunnar Farnelback法

調べたところ,OpenCVには,calcOpticalFlowLKという関数もあるようだが,calcOpticalFlowPyrLKとの違いは不明.

以下は,example-flowのGUIで操作できるパラメータに関する解説.

パラメータ名 解説
lkMaxLevel LK法のパラメータ.画像ピラミッドの最大レベル数.
lkMaxFeatures LK法のパラメータ.最大特徴点数.
lkQualityLevel LK法のパラメータ.特徴点の最低クオリティレベル.
lkMinDistance LK法のパラメータ.特徴点間の最低距離.
lkWinSize LK法のパラメータ.各ピラミッドレベルにおける探索窓のサイズ.
Use Farneback Farneback法を用いるか(true),画像ピラミッド法を用いるか(false).
fbPyrScale Farneback法のパラメータ.画像ピラミッドを作るためのスケール.
fbIterations Farneback法のパラメータ.画像ピラミッドの各レベルにおけるアルゴリズムの反復数.
fbPolyN Farneback法のパラメータ.各ピクセルにおける多項式展開を求めるために利用されるピクセル近傍領域のサイズ.
fbPolySigma Farneback法のパラメータ.多項式展開の基底として利用される導関数を滑らかにするためのガウス分布標準偏差
fbUseGaussian Farneback法のパラメータ.オプティカルフロー推定のために,同サイズのボックスフィルタの代わりに,winSize × winSizeサイズのガウシアンフィルタを利用するか.
winSize Farneback法のパラメータ.平均化窓サイズ.

参考

オプティカルフロー推定の原理 [Computer Vision Advent Calendar 2012] LucasKanade法の導出及び特徴について - 巨人の肩の上に立つ鳥は何を見るのか モーション解析と物体追跡 — opencv 2.2 documentation OpenCV: Feature Detection Media Art II 2013 第6回:openFrameworks Addonを使う 2 - ofxOpenCV と ofxCv 【oFセミナーメモ5】映像解析 - Over&Out その後