以前行った、
位相限定相関(POC)で求めたピーク値を探し出せば、移動量が求められるのですが、

画像は整数の値しかとらない格子なので、サブピクセルのレベルで移動していた場合詳細は求められません。

スズメレンダラー・クマ将棋の開発日記さんの記事ではSinc関数に当てはめて求める方法が記載してあります。

ちなみに、Sinc関数とは以下のような関数です


調べてみたところ、最急降下法などで関数のフィッティングを行い厳密な値を求めていきます。



・・・ですが、

私のような凡人にはちょいと難しかったので、もっと簡単な方法を探してました。
x方向だけで考えると移動量dは、




と表すことができます。ここで、
・R(0)はピーク値(位相限定相関画像の値)
・R(-1)はピーク値の一つ前の座標の相関値
・R(1)はピーク値の一つ先の座標の相関値

です。

このパラボラフィッティングを使えば、Sinc関数よりは精度は落ちますが楽にサブピクセル精度で移動量を算出できます。


また、等角直線フィッティングもあるそうですが、
1次関数でのフィッティングであるため、パラボラフィッティングの2次関数の方が精度はよいと考えられます。


Related Entries
Comments
Post a comment
Contributor
Comment
Trackbacks URL
URL
Permalink
Trackbacks
FC2カウンター
プロフィール

詠み人知らず

Author:詠み人知らず
プログラム好きな名もなき凡人がお送りしています。(得意とは言っていない
最近の興味はPython、C#、Matlab(Octave)、画像処理、AR(拡張現実)、統計などなど・・・

気分で思いついたことを書くため話題に一貫性がないかもしれません。

カレンダー
03 | 2017/04 | 05
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 - - - - - -
最新記事
タグクラウドとサーチ

カテゴリ
最新コメント
最新トラックバック
月別アーカイブ