4

Jason Hipp らによるアルゴリズムを実装しようとしています。より短く、より包括的なプレゼンテーションもあります。

彼らのアプローチの簡単な説明:

彼らはベクトル量子化をツールとして使用して、特定の画像の前景と背景を区別します。ただし、正方形の領域を特徴ベクトルとして使用してコードワードを生成する代わりに、円を使用します。これにより、計算の複雑さが軽減されると考えられます。述語ベクトルとして円を使用すると、マッチングの問題は線形パターン マッチング タスクに縮小され、空間的に不変なマッチングが可能になります。したがって、この方法は空間的に不変なベクトル量子化と呼ばれます。

したがって、基本的には、述語ベクトルが対話的に選択され、この述語ベクトルと現在の位置との相関関係について画像空間が徹底的に照会されます。

私の質問は次のとおりです。

  • アルゴリズム全体のどこでコードブックを生成しますか? そしてどうやって?

  • 生成するコードブックのパラメータを選択する方法がわかりません。最初に画像内のすべての可能な位置ですべての可能な円をサンプリングすると、計算量が非常に多くなります。生成されるクラスター/コードワードの数はどのように決定されますか?

  • サブリング同士をぐらぐらさせるのはなぜですか?

現在、私の実装には基本的に、述語ベクトルとして 1 つの半径を持つ 1 つの円が含まれています。これは、ネイティブの画像空間を行進し、述語ベクトルを、可能なすべての回転で現在のピクセルの周りの円と関連付けます。これは非常に遅いプロセスであり、アルゴリズムのメリットがわかりません。これがどのように機能するかがわからないため、ベクトル量子化に近いものは実装していません。

ヒントや考えをいただければ幸いです。残念ながら、メソッドの作成者は私の質問に回答しませんでした。

4

1 に答える 1

2

最初の 2 つの質問は、このアルゴリズムに固有のものではなく、任意のベクトル量子化アルゴリズムです。コードブックの生成を含め、ベクトル量子化の方法を比較的わかりやすい用語で説明している Web ページを次に示します: http://www.data-compression.com/vq.html

ぐらつきについて: このアルゴリズムの主な観察結果は、リングとしてベクトル化することによって、サーフェスがテッセレーションされない (完全に覆われている) ことです。たとえば、正方形を使用すると、サーフェスがテッセレートされます (完全に覆われます)。重なり合うリングは必ずしも画像を完全に覆うわけではありません。このため、リングの「間」にあるピクセルが見落とされ、一致に失敗する可能性があります。これを補うために、作成者はリングを前後に「揺らし」、最終的にすべてのピクセルが覆われるようにします。

于 2012-12-10T18:10:23.417 に答える