問題タブ [surf]

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 に答える
812 参照

java - 特徴/ブロブ相関とヒストグラム分析

私は、誰かがスケッチしたものをデータベース内の写真と関連付けるスケッチ検索エンジンに取り組んでいます (現在、データベースには約 40 枚の写真があります)。私は主に楽しみのためにこれを行っているので、コンピューター イメージング技術に精通しているわけではありません。

まず、ヒストグラムの作成方法 (ビンのサイズ、範囲など) に関する経験則はありますか? http://www.scribd.com/doc/6194304/Histogramsにあるヒストグラム コードを使用しています(ただし、JavaCV に移植されています)。良い結果が得られることもあれば、悪い結果が得られることもあり、ほとんどの場合、「まあまあ」の結果が得られます。私は、ビンのサイズと範囲を使用して TON を実験してきましたが、高次元のヒストグラムを比較することがここでの答えになるのではないかと考えています。

第二に、私の現在のヒストグラム設定では、黒が非常に強い存在感を示しているようです (黒い点でさえ、結果セット全体をシフトします)。これは予想されるべきですか?それとも私は何かを台無しにしましたか?例: ここに画像の説明を入力 ドットの後に: ここに画像の説明を入力 "earthrise" の写真が "close" マッチとして既に取得されていることに注意してください。

また、ブロブや特徴の分析にどの方法を使用すればよいか考えています。テンプレートを正確にマッピングするのではなく、blob を大まかに比較したいだけなので、SURF のようなものはやり過ぎかもしれません。Canny フィルターを通過した後のエッジを比較する方法はありますか? (可能であれば複雑さを軽減): ここに画像の説明を入力

たとえば、ここでは、針のスマイリー「ブロブ」が、パッション フルーツの束や銀河よりもスマイリーの顔の形に密接に関連しているため、2 つのスマイリーの顔を一番上に配置します。

ふー長い質問。エンジンを自分で試してみたい場合は、http ://skrch.dvt.name/ にアクセスしてください(恥知らずなプラグイン、知っています、知っています -- FF/Chrome/Safari でのみ動作します)。おそらく、より経験豊富なコンピューター ビジョンの担当者が、結果に基づいて提案を行うことができます。ああ、CV_COMP_BHATTACHARYYAヒストグラムを比較するときに距離を使用しています(カイ二乗も悪くありませんが、最良の結果が得られたようです)。

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

image-processing - SURF(コンセプチュアル)とのマッチング

n 個の画像を一緒に一致させるために surf を使用しています。マッチング段階で異常値を除去することにより、基本的な行列を見つけます。驚くべきことに、一致する点が完全に間違っているにもかかわらず、基本行列を見つけています。私の質問は、そのような問題を回避するためにどの基準または統計を使用する必要があるかです。よろしく、

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

sift - OpenCV SURF と OpenSURF の違いは?

使用しようとしている (SURF(opencv); [OPENSURF c++;OPENSURFC#] OPensurf http://www.chrisevansdev.com/computer-vision-opensurf.html )、イメージ マッチング用の SIFT。

  1. コスト的にはSURF(OpenCV)よりもSIFTの方が正確な気がします。

  2. OpenSURF は OpenCV SURF よりも時間がかかります

  3. SURF/OpenSURF/SIFT の精度テストはありますか?

試したことはありますか?結果はどうでしたか? どちらが優れているのか、その理由は?

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

matlab - MATLAB を使用した SIFT および SURF 特徴抽出の実装

私はmatlabを使って古代のコイン認識システムをやっています。私がこれまでに行ったことは次のとおりです。

  1. グレースケールに変換
  2. ガウス フィルターを使用してノイズを除去する
  3. コントラスト強調
  4. キャニーエッジ検出器を使用したエッジ検出。

今、分類のために特徴を抽出したいと思います。私が選択しようと思った機能は、丸み、面積、色、SIFT、SURF です。私の問題は、SIFT および SURF アルゴリズムをプロジェクトに適用する方法です。両方の組み込み関数が見つかりませんでした。

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

matlab - SIFT および SURF 実装ライブラリ

前回の質問で、MATLAB ソース コードでの SIFT および SURF の実装について尋ねたところ、いくつかのリンクが寄せられました。全てに感謝。さて、私は別の質問があります。これらの SIFT 実装は、私たちが使用しているライブラリのようなものです (例として、C++ プログラミングをコーディングする場合、iostream ライブラリを含めています。ただし、そのライブラリ内のコードを変更する必要はありません)。したがって、これらの SIFT 実装をライブラリとして使用するだけで、画像のコードを変更する必要はありません。つまり、sift の実装はどの画像でも機能するということですか? 誰か助けてくれませんか?

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

c++ - C++の比較サーフ記述子アルゴリズムの一致が時々中断する

画像からのポイント一致を比較するc++アプリケーション(OpenSurf C ++)を作成しましたが、数千の「getUniqueMatches」から1つ、アプリケーションが「getUniqueMatches」内のあるポイントで壊れることがあります。私はこのログを持っています:

そしてこれはコードです:

ここで休憩するのはほんの数回です。何が起こっているのかわかりません、何か問題がありますか?この関数を実行するとき、アプリケーションは1つのスレッドのみを使用します。ポイントを抽出する場合、10スレッドを使用します。

Centos5(VPS)で使用します。2 Gb RAm 20%hd使用g ++(パフォーマンスモード)を使用してコンパイル、IDEはNetbeansを使用。OpenCV、libcurl。

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

c++ - OpenCV2.2SURF機能マッチングの問題

右上隅に何もないと一致する

OpenCVデモアプリケーション「matching_to_many_images.cpp」を変更して、画像(左)をWebカメラ(右)からのフレームにクエリしました。最初の画像の右上隅の何が問題になっていますか?

これは私たちが抱えている別の問題に関連していると思います。空のデータベースから始めて、一意の機能(データベース内の機能と一致しない機能)のみを追加しますが、3つの機能のみを追加した後、すべての新しい機能に一致します。

使用しているもの:SurfFeatureDetector surfFeatureDetector(400,3,4); SurfDescriptorExtractor surfDescriptorExtractor; FlannBasedMatcher flannDescriptorMatcher;

完全なコードは次の場所にあります:http://www.copypastecode.com/71973/

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

iphone - iphone ios 4でopencvのキーポイントを表示

こんにちは
、iPhone に機能検出アルゴリズムを実装しようとしています (surf and sift)。OpenCVで処理する生のビデオストリームをすでに収集しています。問題は、関数が画面に描画したいキーポイント値 (x,y) を返すことです。今私の質問は、AVCaptureVideoPreviewLayer の上にそれらを描画する方法ですか?

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

descriptor - SURF記述子からサブイメージのサイズを取得する方法

SURF ディスクリプタで記述された画像の一部をコピーしたい。サーフの 9x9 フィルターのスケールは 1.2 であることを知っています。たとえば、スケールが 1.2 のディスクリプタがある場合、ディスクリプタ ポイントの周りに 9x9 ピクセルをコピーできるのはその部分ですか? スケールが 1.6 の場合、「9 / 1.2 * 1.6 = 12」でパーツを計算しますか? サブイメージは 12x12 ピクセルになりますか? 一方、OpenSURFのドキュメントでこれを読みました:

「SURF記述子を抽出する最初のステップは、関心点の周りに正方形のウィンドウを構築することです。このウィンドウには、記述子ベクトルのエントリを形成するピクセルが含まれており、サイズは20です。ここでも、sは検出されたスケールを指します。」

記述子ポイントの周りに20 *スケールピクセルを取得すると、サブイメージを取得できますか? なぜ20にする必要があるのか​​わからない!? 最初の解決策はもっと明確だと思います...ありがとう!

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

algorithm - SURFのメトリック

SURFに使用できるメトリックを探しています。ある画像が別の画像とどの程度一致しているかのように、たとえば0から1とします。ここで、0は類似性がないことを意味し、1は同じ画像を意味します。

SURFは次のデータを提供します。

  • クエリ画像のインタレストポイント(およびその記述子)(セットQ)
  • ターゲット画像内の関心点(およびそれらの記述子)(セットT)
  • 最近傍アルゴリズムのペアを使用して、上から2つのセットから作成できます

私はこれまで何かを試していましたが、うまく機能していないようでした:

  1. さまざまなセットのサイズを使用したメトリック:d = N / min(size(Q)、size(T))ここで、Nは一致する関心点の数です。これにより、非常に類似した画像の評価がかなり低くなります。たとえば、Qの約600とTの200から70の関心ポイントが一致した場合でも0.32です。70は本当に良い結果だと思います。対数目盛を使用することを考えていたので、実際に小さい数値だけでは結果が低くなりますが、正しい方程式を見つけることができないようです。0.59の結果が得d = log(9*d0+1)られましたが、これはかなり良いですが、それでも、SURFのパワーを破壊するようなものです。

  2. ペア内の距離を使用したメトリック:Kの最適なものを見つけて、それらの距離を追加するようなことをしました。2つの画像が類似している距離が最小です。これに伴う問題は、距離が計算される関心点記述子要素の最大値と最小値がわからないため、結果を比較的しか見つけることができないことです(多くの入力から最良です)。私が言ったように、メトリックを正確に0から1の間に置きたいのですが、SURFを他の画像メトリックと比較するためにこれが必要です。

これら2つの最大の問題は、もう1つを除外することです。1つは一致の数を考慮せず、もう1つは一致間の距離を考慮しません。道に迷いました。

編集:最初のものについては、log(x * 10 ^ k)/ kの方程式(kは3または4)はほとんどの場合良い結果をもたらします、最小値は良くありません、それはdを1より大きくすることができますいくつかのまれなケースですが、それがなければ小さな結果が戻ってきます。