問題タブ [feature-descriptor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
907 参照

points - 2 組の 2D 点の間の対応を見つける

2 組の 2D ポイントがあります (下の画像を参照)。そして、これらのドット間の信頼性の高い対応を見つけたいと思います。

これらのドットは、異なる角度からの 2 つのカメラ画像から抽出された特徴点です。2 つの画像は、完全ではありませんが、比較的適切に修正されています。ただし、シーンの奥行きによって歪みやゆがみが生じたり、ポイントの数が同じでなかったり、外れ値があったりする可能性があります。

左面図 右図

1 つのアプローチとして、複数のドットを含むスライディング ウィンドウを使用して、ブロック マッチングを試すことができます。しかし、それはちょっと遅いかもしれません。この問題には比較的簡単な解決策が必要だと思います。

たとえば、この論文は同様の問題に取り組んでいる可能性があります。

0 投票する
0 に答える
178 参照

opencv - Visual Structure From Motion で独自の記述子と機能を使用する

こんにちは、プログラム Visual Structure From Motion を使用して 3 次元の構造を復元しています。ただし、記述子と機能は既に計算済みです。だから私は Visual Structure From Motion でそれらを使用したい.記述子に関する情報を含むファイルには次のパターンが必要であることを読みました:

[ヘッダー][位置データ][記述子データ][EOF]

[ヘッダー] = int[5] = {名前、バージョン、npoint、5、128}; name = ('S'+ ('I'<<8)+('F'<<16)+('T'<<24)); バージョン = ('V'+('4'<<8)+('.'<<16)+('0'<<24)); または ('V'+('5'<<8)+('.'<<16)+('0'<<24)) (色情報を含む場合) npoint = フィーチャの数。

[位置データ] は npoint x 5 float 行列で、各行は [x、y、色、スケール、向き] です。float を unsigned char[4] にキャストして色を書き込みます。スケールと方向は視覚化にのみ使用されるため、単純に 0 を書き込むことができます

  • VisualSFM はこれらの機能の一部しか使用しない可能性があるため、重要度の低い順に機能を並べ替えます。
  • VisualSFM は、特徴を縮尺の小さい順に並べ替えます。

[記述子データ] は npoint x 128 の unsigned char 行列です。機能記述子は 512 に正規化されていることに注意してください。

[EOF] int eof_marker = (0xff+('E'<<8)+('O'<<16)+('F'<<24));

このファイルの具体的な例を書いている人はいますか? このファイルは、アプリケーションによって自動的に生成されます。

0 投票する
3 に答える
999 参照

algorithm - 放射状セグメントの最近傍を見つける

まず、この質問の見た目に怖がらないでください ;)

私は Circular Blurred Shape Model と呼ばれる matlab で形状記述子を実装しようとしています。これの一部は、図 1d に見られるように、すべての放射状セグメントの最近傍のリストを取得することです)

私は MATLAB で単純明快な実装を行いましたが、アルゴリズムのステップ 5 と 6 で行き詰まっています。これは主に、定義に頭を悩ませることができないためです。

私にとって、これはカスケードソートのように聞こえます。最初に昇順の距離でソートし、次に昇順のインデックスでソートしますが、私が見つけた最近傍は論文によるものではありません。

円形 ぼやけた形状 モデル 説明 アルゴリズム

例として、セグメント b{4,1} について取得した最近傍を示します。これは、図 1d で「EX」とマークされているものです)

b{4,1} の最近傍の次のリストを取得します。b{3,2}, b{3,1}, b{3,8}, b{2,1}, b{2,8}

紙によると正しいのは次のとおりです。b{4,2}, b{4,8}, b{3,2}, b{3,1}, b{3,8}

しかし、私のポイントは実際にはユークリッド距離で測定された選択されたセグメントに最も近いセットです! 距離b{4,1} <=> b{2,1}が小さいb{4,1} <=> b{4,2}b{4,1} <=> b{4,8}...

ここに画像の説明を入力

そして、これが私の(醜い、しかし単純な)MATLABコードです:

論文全文はこちら

0 投票する
2 に答える
2283 参照

opencv - Opencv Feature Matching は、さまざまなサイズのトリミングされた画像やさまざまなソースから取得した画像に対して正しく一致しませんか?

2 つの画像を一致させようとしています。1 つはモバイル画面のスクリーン ショットで、テンプレート画像は任意のアプリ アイコンです。同じ画像から切り取ったソースとテンプレートを一致させると、完全に一致します。しかし、別のモバイル画面から切り取ったアプリ アイコンを使用すると、正しく一致していません。

画像マッチングのために、次のコードに取り組んでいます:

[別のソースから切り取った場合の間違った一致][1]

上記の結果は、あるモバイル スクリーン ショットのソースと別のスクリーン ショットのテンプレートを照合したときに得られます。

私はopencv3.0を使用しています

コードを変更したか、テンプレート マッチングまたはその他の手法を使用する必要があるかどうかを助けてください。

サンプル画像:

ソース画像

テンプレート

0 投票する
1 に答える
1383 参照

opencv - 歩行者検出トレーニング用の HOG 記述子

私の HOG 記述子が人体の正しいシルエットに勝てないのはなぜだろうか。私は次のようなパラメータを使用します

このディスカッションで示した 1 つのサンプルのように、正しいシルエットがない理由をプロットすると。2枚の画像を添付します。カラー画像は私の豚の記述子で、灰色は上記のリンクのものです。

上記の説明の画像に示されているように、正しいシルエットを得るためには、どのような事実を確認する必要がありますか?

ここに画像の説明を入力 ここに画像の説明を入力

0 投票する
0 に答える
1274 参照

opencv - エッジ ヒストグラム記述子

私は OpenCv Library を使用してソフトウェアを開発しています。私のソフトウェアは、マルチスペクトル ステレオ オドメトリに関する論文に基づいています。画像からエッジを抽出した後、抽出した特徴ごとにエッジ ヒストグラム記述子を計算する必要があります。紙から:

「記述子の空間コンポーネントは次のように取得されます。

• 対象のキーポイントを中心とする P × P ピクセルの領域をエッジ マップから選択します。

• 領域を 16 (4 × 4) のサブ領域に分割します。

• 水平、垂直、45 度対角、135 度対角、および等方性 (方向なし) の 5 つのビンを使用してエッジを分類する各サブ領域のローカル エッジ ヒストグラムを計算します。

次に、80 個のビン (4 × 4 × 5) で構成される結果のヒストグラム ベクトルが正規化されます。"

私の質問は: キーポイントが edgeMap の境界にある場合、私のウィンドウ (PxP) は P>=3 ごとに範囲外です。一部の論文では、P=100 の使用が推奨されています。キーポイントが境界に近い場合にも同じ問題が発生します。

どうすればいいですか?