1

Shape Context (MatLab) を実装しようとしていました。回転不変性を達成しようとしていました。

シェイプ コンテキストの一般的なアプローチは、特定のイメージ内の関心点の各セット間の距離と角度を計算することです。次に、これらの計算値が特定の範囲に収まるかどうかに基づいて、ヒストグラムにビン分けします。これは、標準イメージとテスト イメージの両方に対して行います。2 つの異なる画像を一致させるには、これからカイ 2 乗関数を使用して、2 つの異なるヒストグラム内の可能な点の各ペア間の「コスト」を推定します。最後に、ハンガリアン アルゴリズムなどの最適化手法を使用して、ポイントの最適な割り当てを見つけてから、総コストを合計します。これは、一致が良好なほど低くなります。

私はいくつかのウェブサイトと論文をチェックしましたが、上記のアプローチを回転不変にするためには、接線ベクトルを x 軸として使用して、ポイントの各ペア間の各角度を計算する必要があると言っています。(つまり、http: //www.cs.berkeley.edu/~malik/papers/BMP-shape.pdf 513 ページ)

これは正確にはどういう意味ですか?誰も明確に説明していないようです。また、点の各ペアのどれから接線ベクトルを取得しますか? 2 つの平均をとりますか?

他の数人は、勾配 (Matlab で簡単に見つけることができます) を使用し、これを接点の代わりに使用できると提案しましたが、これを使用して合理的なコスト スコアを計算するようには見えません。グラデーションでこれを行うことは可能ですか?

4

2 に答える 2

1

この支配的な方向に対してグラデーションが機能する必要がありますか?

その向きに関してビンを注文するとはどういう意味ですか?私はもともと、ビンの正方行列を作成する予定でした。2つの指定された点の間の半径が行列の列を決定し、2つの指定された点の間の計算された角度が行を決定します。

洞察力をありがとうございます。

于 2012-11-25T19:21:11.460 に答える
0

(ある程度) 回転の不変性を達成する 1 つの方法は、画像記述子を計算するたびに、それらの方向 (ビンの順序付け) が (ほぼ) 同じであることを確認することです。それを達成するために、各記述子を抽出し、その方向に関してビンを順序付けする時点で支配的な方向を選択します。このようにして、それらの順序が同じであることを知っている異なる記述子のビン間を比較できます: それらの局所的な優勢な方向に関して。
私の個人的な経験から (これはそれほど多くはありません)、これらの方法は実際よりも紙の上で見た方が良いように見えます。

于 2012-11-25T19:00:46.327 に答える