SIFTはコンピュータビジョンで最も広く知られているアルゴリズムの1つです。その中核的な目的は、オブジェクトのキーポイントを検出し、それらの記述子を生成し、画像間で同じオブジェクトをマッチングすることです。名前が示すように、SIFTはスケール不変のアルゴリズムであり、同じオブジェクトが画像のペアで異なるスケールで現れても、SIFTはそのキーポイントを正常に検出できます。さらに、SIFTは回転不変であり、回転したオブジェクトのマッチングも可能にします。
そのワークフローでは、SIFTはリサイズとガウシアンブラー変換を適用して元の画像の複数のバージョンを構築します。選択されたkとσ1の値を使用して、SIFTは異なる標準偏差でガウシアンスムージングを適用し、元の画像の複数のバージョンを構築します。これにより、オクターブと呼ばれる一連の画像が生成されます。次に、SIFTは結果の画像間のペアワイズ差分を計算します。これはガウシアンの差分(DoG)として知られています。
その後、アルゴリズムはDiを積み重ね、それらの中で局所的な極値を見つけようとします。Di(x, y)の各点について、SIFTはその26個の近傍を調べます。Di(x, y)がその26個の近傍点すべてより大きいか小さい場合、SIFTはそれを最大値または最小値としてマークします。異なるスケールの変動を考慮するために、幅と高さが2分の1に縮小された初期画像に対して同じプロセスが繰り返され、σ2 = 2σ1のようなσ値を持つ新しいオクターブが構築されます。
FAQ:SIFTアルゴリズムの中核的な目的は何ですか?
SIFTアルゴリズムの中核的な目的は、オブジェクトのキーポイントを検出し、それらの記述子を生成し、画像間で同じオブジェクトをマッチングすることです。
出典: Towards Data Science · 要約:HeadlinesBriefing