問題タブ [orb]
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.
image-processing - ORB を使用したガウス フィルター
特徴点検出器と記述子を使用して、画像認識の分野で最初のプロジェクトを開始しました。このプロジェクトを開始する前は、画像認識技術のトピックに関する予備知識はありませんでしたが、利用可能な検出器と記述子について調査し、それらの違いを知るようになりました。最後に、画像認識用に ORB 検出器と記述子を使用することを選択しました (要件に従って機能しなかった場合は、後で BRISK を使用したいと思います)。
現在、ORB を使用した画像認識の結果を取得する段階にあります。この時点で、入力画像が少しぼやけても良い結果が得られるように、コードでガウス フィルターを使用することを考えていました。
私の質問:
1) ORB でガウス フィルターを使用して、画像認識でより良い結果を得ることができますか?
2)ORBに関する論文を読んだとき、以下の行を知りました
ORB は画像のコーナーを検出するためのハリス コーナーを提供していますが、ORB と一緒にガウス フィルターを使用する価値はありますか?
3) ORB はハリス コーナーのみを使用してコーナーを検出しますか?
これについてお知らせください。上記の質問について教えてください。
computer-vision - バイナリ記述子の単語の袋
画像記述子の古典的なバッグ オブ ワード パラダイムでは、次のことを行います。
- 各画像の一連の記述子を定義する
- すべての画像のすべての記述子のセットで k-means をランチします。
- その結果、各記述子はクラスターに割り当てられます。
- 「ビジュアル ワード」 (つまり、ベクトルを介して画像を表現する方法) を定義します。各画像について
i-th
、「ビジュアル ワード」ベクトルの次元をクラスターに属する記述子の数として定義しi-th
ます。 k-dimension
画像を表す「ビジュアル ワード」ベクトルを取得しました。
このアプローチは、複雑で高価な SIFT 記述子に最適です...しかし、バイナリと高速記述子 (BRIEF、ORB、BRISK、FREAK など) についても同じですか?
この記事によると違いはありませんが、高価なk-means
アルゴリズムをバイナリ空間で効率的に計算できるかどうか (または、より優れたクラスタリング アルゴリズムがあるかどうか)、またはバイナリ ベクトルを使用したバッグ オブ ワード モデルの代替アプローチがあるかどうかは疑問です。
c++ - 適切なキーポイント マッチ コードを見つける
フォルダ内LATCH_match.cpp
にこのコードが見つかりました:xfeature2D
inliers
これは一種の比率テストだと思いますが、何がポイントなのかわかりません。homography
c++ - 特徴マッチングを使用した画像の損傷の検出
画像とテンプレート画像が与えられた場合、画像を照合して、損傷の可能性がある場合はそれを見つけたいと思います。
無傷の画像
破損した画像
テンプレート画像
注: 上の画像は、損傷の例を示しています。損傷のサイズや形状はさまざまです。適切な前処理が行われ、テンプレートと画像の両方が白い背景のバイナリに変換されたとします。
キーポイントを検出して一致させるために、次のアプローチを使用しました。
- ORBを使用して、テンプレートとイメージからすべての
keypoints
とを検索します。そのために、という名前のOpenCVの組み込み関数を使用しました。descriptors
detectAndCompute()
- この後、Brute Force Matcher を使用し、
knnMatch()
. - 次に、 を使用し
Lowe's Ratio Test
て適切な一致を見つけました。
結果:
テンプレートをそれ自体と一致させると、 1751template-template
件の一致が得られます。これは完全一致の理想的な値です。
無傷の画像では、847 個の一致が得られました。
破損した画像では、346の一致が得られました。
試合数で違いは分かりますが、いくつか質問があります。
- 損傷の正確な位置を特定するにはどうすればよいですか?
image-template
と の適切な一致の数を見て、画像に損傷が含まれているとどのように判断できtemplate-template
ますか?
PS:私は OpenCV を初めて使用するので、精巧な回答を期待しています。
編集:参照用のコードは次のとおりです。
image-processing - AGAST検出器付きORB
Android ベースのアプリケーションの AGAST 検出器で ORB 記述子を使用できるかどうかを知りたいです。
BRISK は AGAST 検出器を使用してキーポイントを検出することを知っています。ORB で AGAST を実装できますか?
ORB Detector/Descriptor よりも効率的に機能しますか。
これについて教えてください。
ありがとう
feature-extraction - ORBの実装
ORB のオープン ソース実装を使用しました。
新しいモジュールを追加して ORB をさらに実装するにはどうすればよいですか?
ORB を使用するだけでなく、より良い結果を得るために、私は自分の側から何ができますか?
外れ値を排除し、より良い結果を得るために RANSAC を使用することを考えています。
この時点で、ORB をさらに実装するためのアイデアを待っています。
円形および三角形のホモグラフィの実装に関するアイデアはありますか?