問題タブ [sift]
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.
c++ - David Lowe の SIFT -- スケール空間と画像座標に関する質問 (奇妙なオフセットの問題)
これは非常に専門的な質問だと思います..しかし、ここに行きます。SIFT の実装を使用して、2 つの画像の一致を見つけています。私が持っている現在の実装では、画像を 90 度または 180 度のバージョンと一致させると、一貫して約半分のピクセルだけずれている一致が得られますが、範囲内で変化します。したがって、たとえば、im1 のピクセル座標 (x,y) で一致が見つかった場合、90 度回転した画像 im2 の対応する一致は (x,y + 0.5) になります。180 度の画像を使用すると、オフセットは x 座標と y 座標の両方に表示され、270 度 (-90) 回転した画像を使用すると x 座標にのみ表示されます。
1) まず第一に、SIFT が回転した画像で同じ一致する場所を提供するはずだと仮定しています。暗黙の仮定は、回転によって画像のピクセル値が変更されないということです。これは正しいことを確認しました。(私は IRFAN ビューを使用して回転し、.pgm として保存しますが、ピクセル値は変更されません)。
2) このオフセットを与えない他の実装があります。
3) このオフセットはプログラミング関連であり、おそらくスケール空間のキーポイント座標から画像空間のキーポイント座標への変換に関係していると思います。
誰かがこの問題に遭遇したか、スケール空間から画像空間に変換する方法についてのリファレンスを教えてくれることを願っています。
computer-vision - David Lowe の SIFT とスケール スペースをピクセル スペースに - 画像の境界線上の矢印
私はSIFTの多くの実装を使用してきました。描画されるフィーチャの一部は、画像の端からはみ出します。それらは、記述子の計算に使用される領域の半径の近似値として、スケール空間からピクセル空間に変換するために 6 * シグマの変換を使用する傾向があります。
画像よりも大きい場合、記述子の計算に使用される領域の半径を矢印で表す方法がわかりません。記述子を計算するために画像の外側から空白を含めると、マッチングが不安定になり、信頼性が低下するため、記述子が計算される領域の半径を表す場合、矢印が画像よりも大きくなる理由がわかりません。私が見た SIFT のすべての実装に共通しているようです。
これは、David Lowe の 2004 年の論文の 15 ページからの例を含む図です。
http://maym86.com/post/6751229699/how-can-sift-features-extend-over-the-borders-of
matlab - SIFT キーポイント検出器
http://www.cs.ubc.ca/~lowe/keypoints/で SIFT デモ プログラムを実行した後、jpg ファイルは何も変化しないようです。誰もがそれがどのように機能するか知っていますか?
どうもありがとう。
matlab - SIFT - 2 つ以上の画像で類似点を見つける方法
2 つの画像を SIFT (matlab) で比較する方法は知っていますが、複数の画像間の類似性を見つけなければならない場合はどうすればよいでしょうか。たとえば、30 個の画像があるとします。SIFT を使用して、そのうちの 10 個が 30% 一致し、5 個が 95% 一致すると言うにはどうすればよいですか? クラスタリングを使用できますが、その前に、クラスタリング手法を適用できる何らかの値が必要です。私はこの質問に数時間静かに悩まされてきました. あなたが知っているなら、友達は私を助けてください。
ありがとう
python - OpenCV Python および SIFT 機能
PythonとOpenCVについて多くの質問があることは知っていますが、この特別なトピックに関するヘルプは見つかりませんでした。
Python OpenCV で画像からSIFT キーポイントを抽出したいと考えています。
最近 OpenCV 2.3 をインストールしましたが、SURF と MSER にはアクセスできますが、SIFT にはアクセスできません。Pythonモジュール(cvおよびcv2)でSIFTに関連するものは何も表示されません(まあ、少し嘘をついています:2つの定数があります:cv2.SIFT_COMMON_PARAMS_AVERAGE_ANGLE
とcv2.SIFT_COMMON_PARAMS_FIRST_ANGLE
)。
これはしばらくの間私を困惑させます。それは、OpenCV の一部が C であり、他の部分が C++ であるという事実に関連していますか? 何か案が?
PS: pyopencv (OpenCV <= 2.1 の別の python バインディング) も試しましたが、成功しませんでした。
opencv - SiftDescriptorExtractor
opencv SiftDescriptorExtractor について 2 つの質問があります。
cv::Mat
記述子をvector<float* >
(i 番目の行 = i 番目の記述子)に変換するにはどうすればよいですか?- SIFT 記述子のサイズ (= 次元) を定義するにはどうすればよいですか?
ええ、OpenCV リファレンスについては知っていますが、それを機能させることができません。誰かがここに最小限の実例を載せることができますか?
opencv - SIFTはOpenCVの参照画像で特徴を見つけていません
他の画像でターゲットロゴを見つけるために使用しようとしているターゲットロゴの画像があります。現在、画像上のロゴを検出するために2つの異なる検出アルゴリズムを実行しています。私が使用する最初の検出は、色が非常に似ている画面上の一般的な領域を画像で検索するヒストグラムベースです。そこからSIFTを実行して、探しているオブジェクトをさらに取得します。これはほとんどのロゴで機能しますが、私が持っているターゲットロゴは、ロゴのキーポイントを取得していません。
画像内のいくつかのキーポイントを見つけるのに役立つことがあるかどうか疑問に思いました。アドバイスをいただければ幸いです。
以下は、SIFTによって取得されていない画像です。
前もって感謝します。
編集 私は、モデルのテンプレートマッチングベースのさまざまなスケールと回転についてのジュリアンのアイデアを使用するのに疲れましたが、それでもほとんど結果が得られませんでした。テストしようとしている画像を含めました。
c - SiftDescriptorExtractorはメモリリークを引き起こします
現在、画像から特徴点を抽出するためにSIFTを実装していますが、記述子を取得するとメモリリークが発生することに気付きました。とにかく、クラスに接続されている可能性のあるメモリを解放できますか?
編集 コードブロックに詳細を追加しました
アドバイスをいただければ幸いです。ありがとう。
c++ - このアルゴリズムを説明する(SURFアルゴリズムのポイントを比較する)
このアルゴリズムが既知のものであるかどうかを知る必要があります。
これは、SURFアルゴリズムの結果を比較します。
- これは最近傍アルゴリズムですか?これは、funcがすべてのポイントの最も近いポイントを検索しているように見えます。
- Quadtreeまたはkd-treeを使用して同じことを行うことはできますか?
- 画像ポイントと比較して、それらが同じか類似しているかを知るためのより良いアルゴリズムがありますか?
- できれば、それらをmysqlに保存し、kdツリーを構築して1つの画像をすべての画像で比較したいのですが、それは可能ですか?
- RANSACは、このタスクで何かに役立ちますか?
- 誤検知をキャッチする方法はありますか?
c++ - SIFTとキーポイント
C ++でSIFTアルゴリズムがどのように行われるかを尋ねたいと思います。
SIFTがキーポイントを抽出することを理解しています。その場合、SIFT アルゴリズムによって抽出されたキーポイントによって表される値は何になりますか? また、同様のキーポイントを比較して検出するにはどうすればよいですか?
私は論文でSIFTを使用します。誰かがこれをもっと簡単な方法で私に話してくれませんか? 私は優れたプログラマーですが、SIFT の実装方法を理解できないようです。画像処理のクラスはありませんでした。