1

OpenCV 2.3でSIFT検出器と抽出機能を使用しましたが、サブイメージで検出されたキーポイントの数が、イメージ全体のキーポイントの数と合計されていないことがわかりました。

具体的には、画像AでSIFT検出器を使用すると、検出器はN個のSIFTキーポイントを検出します。Aを4つのサブ領域A_1、A_2、A_3、A_4に分割し、それらの領域でそれぞれ検出器を実行すると、検出器はそれに応じてN_1、N_2、N_3、N_4SIFTキーポイントを検出します。驚いたことに、N_1 + N_2 + N_3 + N_4はNと等しくありません!

この現象はSIFTアルゴリズムに対して正しいですか?それとも、これはOpenCV 2.3の実装が不十分なためですか?

4

1 に答える 1

2

SIFT検出器は、画像に対して一連のガウスフィルターを使用します。これらのフィルターの結果は、画像サブ領域のエッジの近くでは同じではありません。重要なポイントの位置を見ると、ほとんどの変更されたポイントが画像サブリグの近くにあることがわかります。

さらに、SIFTアルゴリズムには、キーポイントの強度が最も強いキーポイントと比較され、弱い場合は破棄されるキーポイントの非最大抑制フェーズがあります。完全な画像ではグローバル最大値が使用されますが、領域ベースの使用では、各ポイントが正常なサブ領域の最大値でテストされるため、わずかな違いが生じます。

于 2011-10-28T08:15:31.293 に答える