7

私はオプティカルフローに取り組んでおり、ここでの講義ノートとインターネット上のいくつかのサンプルに基づいて、このPythonコードを作成しました。

すべてのコードとサンプル画像もあります。約4〜5ピクセルの小さな変位の場合、計算されるベクトルの方向は問題ないように見えますが、ベクトルの大きさが小さすぎます(そのため、プロットする前にu、vに3を掛ける必要がありました)。

これは、アルゴリズムの制限によるものですか、それともコードのエラーによるものですか?上で共有された講義ノートはまた、動きが小さい必要があると述べています「u、vは1ピクセル未満です」、おそらくそれが理由です。この制限の理由は何ですか?

4

2 に答える 2

3

@belisariusは、「LKは一次近似を使用するため、(u、v)は理想的には<< 1である必要があります。そうでない場合は、高次の項が動作を支配し、乾杯します。」

于 2011-10-04T23:02:00.297 に答える
0

オプティカルフロー制約方程式(OFCE、リファレンスのスライド5)からの標準的な結論は、「モーションはピクセル未満である必要があり、高次の項はあなたを殺す」というものです。技術的には真実ですが、実際には、より大きな平均化ウィンドウを使用してこれを克服できます。これには、スライドで提案されているように、正気の統計、つまり純粋な最小二乗平均ではないことが必要です。同様に高速な計算、およびはるかに優れた結果は、Tikhonov正則化によって達成できます。これには、チューニング値(Tikhonov定数)を設定する必要があります。これは、グローバル定数として実行することも、画像内のローカル情報(Shi-Tomasiの信頼度、別名構造テンソル行列式など)に合わせて調整することもできます。

これは、より大きな動きに対処するためのマルチスケールアプローチの必要性に取って代わるものではないことに注意してください。それは、単一のスケールが処理できる範囲を少し拡張する可能性があります。

実装、視覚化、およびコードは、PythonではなくMatlabにありますが、ここではチュートリアル形式で利用できます。

于 2016-12-10T08:41:54.010 に答える