粒子フィルタとは

パーティクルフィルタ、あるいは逐次モンテカルロフィルタとも呼ばれる。 ここでは、人や車両など物体の位置追跡(トラッキング)を例に挙げて、粒子フィルターを紹介する。

  • この場合パーティクルは、画像の点の集合である。物体のあるあたりの座標に集中して発生する。
  • 粒子フィルタとは多数のパーティクルを用いて,前状態からの予測と現在の観測情報から現 在の状態を推定する手法である。
  • 「予測」「観測」「対象推定」の操作を毎時点ごとに繰り返すことによって物体の追跡を行う。
  • パーティクルフィルタを用いた物体追跡では,一つの物体ごとにフィルタと呼ばれるパーティクルの集合を一つ与えることによって追跡を行う。
  • パーティクルフィルタでは物体が存在すると考えられる部分の尤度と重みを大きくすることで物体が存在すると考えられる付近にパーティクルが集中するようになる。

2次元空間(平面)上での追跡モデル

時刻t でのi 番目のパーティクルの位置ベクトルをxit=(xit,yit) で表す。カッコ内は、(x,y)座標系での位置を表わす変数である。 また,時刻t でのi 番目のパーティクルの尤度と重みをそれぞれΠit、witで表し,パーティクルの数をN とする。

  • 位置ベクトルの推移式
    xit=xit-1+vt-1+ηt
  • 速度vtの推定
    Vt-1=P(t-1) - P(t-2)
    vtは時刻tでの物体速度で,対象推定によって得られた物体中心位置から式を用いて求める。ここでPtは時刻t での物体中心位置を表す。ηtは誤差ベクトルであり、N(0,σ)に従う白色ガウス過程。

観測

観測によって、物体の位置が画像上で認識されるが、その尤度(どのあたりにいるかを表わす指数)が計算できる。具体的には、入力画像と背景画像の明度の差分値を尤度πitとして用いる。 次々に変わる入力画像の物体は、広がりがある物体の明度で表わされ、ノイズもあるので、差分値を用いて尤もらしい中心位置Ptを推定することになる。

画像座標を(u,v)としてこの上の点Pg=(u,v)を、(x,y)座標上の点P=(x,y)に変換する座標変換行列をRとすれば、次式が成立する。

p(t)=R pg(t)

で表わされる。

背景画像の明度値B(u,v)と入力画像の明度値Gi(u,v)の差を用いて、尤度を表わす。 尤度は、

πit=SQRT{(B(u,v)-Gi(u,v))^2}

尤度から重みを決定する。重みwit は,以下のようにパーティクルの数Nで合計して1になるように正規化したものを用いる。

Wit = πit/(Σ Πit) Σは、i=1~Nの合計

中心位置推定

重み付き平均により,時刻t での物体中心位置Pt を推定する。

Pt=Σ witxit Σは、i=1~Nの合計

参考


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-10-28 (木) 14:56:00 (2768d)