![]() |
OpenCV 4.13.0
Open Source Computer Vision
|
キーポイント記述子をマッチングするための抽象基底クラス。 詳細...
#include <opencv2/cudafeatures2d.hpp>
公開メンバ関数 | |
| virtual void | add (const std::vector< GpuMat > &descriptors)=0 |
| 記述子コレクションを学習するための記述子を追加する。 | |
| virtual void | clear ()=0 |
| 学習用記述子コレクションをクリアする。 | |
| virtual bool | empty () const =0 |
| コレクションに学習用記述子が存在しない場合に true を返す。 | |
| virtual const std::vector< GpuMat > & | getTrainDescriptors () const =0 |
| 学習用記述子コレクションへの定数リンクを返す。 | |
| virtual bool | isMaskSupported () const =0 |
| 記述子マッチャーが許容マッチのマスキングをサポートしている場合は true を返す。 | |
| virtual void | knnMatch (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< std::vector< DMatch > > &matches, int k, InputArray mask=noArray(), bool compactResult=false)=0 |
| クエリ集合の各記述子について、上位 k 個のマッチを検出する (ブロッキング版)。 | |
| virtual void | knnMatch (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, int k, const std::vector< GpuMat > &masks=std::vector< GpuMat >(), bool compactResult=false)=0 |
| virtual void | knnMatchAsync (InputArray queryDescriptors, InputArray trainDescriptors, OutputArray matches, int k, InputArray mask=noArray(), Stream &stream=Stream::Null())=0 |
| クエリ集合の各記述子について、上位 k 個のマッチを検出する (非同期版)。 | |
| virtual void | knnMatchAsync (InputArray queryDescriptors, OutputArray matches, int k, const std::vector< GpuMat > &masks=std::vector< GpuMat >(), Stream &stream=Stream::Null())=0 |
| virtual void | knnMatchConvert (InputArray gpu_matches, std::vector< std::vector< DMatch > > &matches, bool compactResult=false)=0 |
| マッチ配列を内部表現から標準的なマッチベクトルへ変換する。 | |
| virtual void | match (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< DMatch > &matches, InputArray mask=noArray())=0 |
| クエリ集合の各記述子について、最良のマッチを検出する (ブロッキング版)。 | |
| virtual void | match (InputArray queryDescriptors, std::vector< DMatch > &matches, const std::vector< GpuMat > &masks=std::vector< GpuMat >())=0 |
| virtual void | matchAsync (InputArray queryDescriptors, InputArray trainDescriptors, OutputArray matches, InputArray mask=noArray(), Stream &stream=Stream::Null())=0 |
| クエリ集合の各記述子について、最良のマッチを検出する (非同期版)。 | |
| virtual void | matchAsync (InputArray queryDescriptors, OutputArray matches, const std::vector< GpuMat > &masks=std::vector< GpuMat >(), Stream &stream=Stream::Null())=0 |
| virtual void | matchConvert (InputArray gpu_matches, std::vector< DMatch > &matches)=0 |
| マッチ配列を内部表現から標準的なマッチベクトルへ変換する。 | |
| virtual void | radiusMatch (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< std::vector< DMatch > > &matches, float maxDistance, InputArray mask=noArray(), bool compactResult=false)=0 |
| 各クエリ記述子について、指定した距離以内にある学習用記述子を検出する (ブロッキング版)。 | |
| virtual void | radiusMatch (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, float maxDistance, const std::vector< GpuMat > &masks=std::vector< GpuMat >(), bool compactResult=false)=0 |
| virtual void | radiusMatchAsync (InputArray queryDescriptors, InputArray trainDescriptors, OutputArray matches, float maxDistance, InputArray mask=noArray(), Stream &stream=Stream::Null())=0 |
| 各クエリ記述子について、指定した距離以内にある学習用記述子を検出する (非同期版)。 | |
| virtual void | radiusMatchAsync (InputArray queryDescriptors, OutputArray matches, float maxDistance, const std::vector< GpuMat > &masks=std::vector< GpuMat >(), Stream &stream=Stream::Null())=0 |
| virtual void | radiusMatchConvert (InputArray gpu_matches, std::vector< std::vector< DMatch > > &matches, bool compactResult=false)=0 |
| マッチ配列を内部表現から標準的なマッチベクトルへ変換する。 | |
| virtual void | train ()=0 |
| 記述子マッチャーを学習する。 | |
Public Member Functions inherited from cv::Algorithm | |
| Algorithm () | |
| virtual | ~Algorithm () |
| virtual String | getDefaultName () const |
| virtual void | read (const FileNode &fn) |
| ファイルストレージからアルゴリズムの引数を読み込む。 | |
| virtual void | save (const String &filename) const |
| void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
| virtual void | write (FileStorage &fs) const |
| アルゴリズムの引数をファイルストレージに保存する。 | |
| void | write (FileStorage &fs, const String &name) const |
静的公開メンバ関数 | |
| static Ptr< cuda::DescriptorMatcher > | createBFMatcher (int normType=cv::NORM_L2) |
| 総当たり (brute-force) 記述子マッチャ。 | |
Static Public Member Functions inherited from cv::Algorithm | |
| template<typename _Tp > | |
| static Ptr< _Tp > | load (const String &filename, const String &objname=String()) |
| ファイルからアルゴリズムを読み込む。 | |
| template<typename _Tp > | |
| static Ptr< _Tp > | loadFromString (const String &strModel, const String &objname=String()) |
| 文字列からアルゴリズムを読み込む。 | |
| template<typename _Tp > | |
| static Ptr< _Tp > | read (const FileNode &fn) |
| ファイルノードからアルゴリズムを読み込む。 | |
Additional Inherited Members | |
Protected Member Functions inherited from cv::Algorithm | |
| void | writeFormat (FileStorage &fs) const |
キーポイント記述子をマッチングするための抽象基底クラス。
2 つのマッチメソッド群を持つ: ある画像の記述子を別の画像とマッチングするためのものと、画像集合とマッチングするためのものである。
|
pure virtual |
記述子コレクションを学習するための記述子を追加する。
コレクションが空でない場合、新しい記述子は既存の学習記述子に追加される。
| descriptors | 追加する記述子。各 descriptors[i] は同一の学習画像から得られた記述子の集合である。 |
|
pure virtual |
学習用記述子コレクションをクリアする。
cv::Algorithm から再実装。
|
static |
|
pure virtual |
コレクションに学習用記述子が存在しない場合に true を返す。
cv::Algorithm から再実装されている。
|
pure virtual |
学習用記述子コレクションへの定数リンクを返す。
|
pure virtual |
記述子マッチャーが許容マッチのマスキングをサポートしている場合は true を返す。
|
pure virtual |
クエリ集合の各記述子について、上位 k 個のマッチを検出する (ブロッキング版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | マッチ結果。各 matches[i] は同一のクエリ記述子に対する k 個以下のマッチである。 |
| k | 各クエリ記述子について検出する最良マッチの数。クエリ記述子に対して可能なマッチが合計で k 個未満の場合はその数になる。 |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
| compactResult | マスク(またはマスク群)が空でない場合に使われる引数。compactResult が false の場合、matches ベクトルは queryDescriptors の行数と同じサイズになる。compactResult が true の場合、matches ベクトルには完全にマスクされたクエリ記述子に対するマッチは含まれない。 |
DescriptorMatcher::match メソッドのこれらの拡張版は、各クエリ記述子について複数の最良マッチを検出する。マッチは距離の昇順で返される。クエリ記述子および学習用記述子の詳細については DescriptorMatcher::match を参照のこと。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
クエリ集合の各記述子について、上位 k 個のマッチを検出する (非同期版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | GPU メモリに格納されたマッチ配列。内部表現は定義されていない。標準表現で結果を取得するには DescriptorMatcher::knnMatchConvert メソッドを使用する。 |
| k | 各クエリ記述子について検出する最良マッチの数。クエリ記述子に対して可能なマッチが合計で k 個未満の場合はその数になる。 |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
| stream | CUDAストリーム。 |
DescriptorMatcher::matchAsync メソッドのこれらの拡張版は、各クエリ記述子について複数の最良マッチを検出する。マッチは距離の昇順で返される。クエリ記述子および学習用記述子の詳細については DescriptorMatcher::matchAsync を参照のこと。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
マッチ配列を内部表現から標準的なマッチベクトルへ変換する。
このメソッドは、最終結果を得るために DescriptorMatcher::knnMatchAsync と組み合わせて使用することを想定している。このメソッドは DescriptorMatcher::knnMatchAsync が完了した後 (すなわち同期後) にのみ呼び出すこと。
| gpu_matches | DescriptorMatcher::knnMatchAsync から返されるマッチ。 |
| matches | DMatch オブジェクトのベクトル。 |
| compactResult | マスク(またはマスク群)が空でない場合に使われる引数。compactResult が false の場合、matches ベクトルは queryDescriptors の行数と同じサイズになる。compactResult が true の場合、matches ベクトルには完全にマスクされたクエリ記述子に対するマッチは含まれない。 |
|
pure virtual |
クエリ集合の各記述子について、最良のマッチを検出する (ブロッキング版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | マッチ結果。あるクエリ記述子が mask によってマスクされている場合、その記述子に対するマッチは追加されない。したがって matches のサイズはクエリ記述子の数より小さくなることがある。 |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
このメソッドの最初の派生版では、学習用記述子を入力引数として渡す。2 番目の派生版では、DescriptorMatcher::add によって設定された学習用記述子コレクションが使用される。どのクエリ記述子と学習用記述子をマッチング可能とするかを指定するため、省略可能なマスク (またはマスク群) を渡せる。具体的には、queryDescriptors[i] は mask.at<uchar>(i,j) が非ゼロの場合に限り trainDescriptors[j] とマッチングできる。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
クエリ集合の各記述子について、最良のマッチを検出する (非同期版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | GPU メモリに格納されたマッチ配列。内部表現は定義されていない。標準表現で結果を取得するには DescriptorMatcher::matchConvert メソッドを使用する。 |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
| stream | CUDAストリーム。 |
このメソッドの最初の派生版では、学習用記述子を入力引数として渡す。2 番目の派生版では、DescriptorMatcher::add によって設定された学習用記述子コレクションが使用される。どのクエリ記述子と学習用記述子をマッチング可能とするかを指定するため、省略可能なマスク (またはマスク群) を渡せる。具体的には、queryDescriptors[i] は mask.at<uchar>(i,j) が非ゼロの場合に限り trainDescriptors[j] とマッチングできる。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
マッチ配列を内部表現から標準的なマッチベクトルへ変換する。
このメソッドは、最終結果を得るために DescriptorMatcher::matchAsync と組み合わせて使用することを想定している。このメソッドは DescriptorMatcher::matchAsync が完了した後 (すなわち同期後) にのみ呼び出すこと。
| gpu_matches | DescriptorMatcher::matchAsync から返されるマッチ。 |
| matches | DMatch オブジェクトのベクトル。 |
|
pure virtual |
各クエリ記述子について、指定した距離以内にある学習用記述子を検出する (ブロッキング版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | 見つかったマッチ。 |
| maxDistance | マッチした記述子間の距離に対するしきい値。ここでの距離は計量距離(例えば Hamming 距離)を意味し、座標間の距離(ピクセル単位で測られるもの)ではない! |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
| compactResult | マスク(またはマスク群)が空でない場合に使われる引数。compactResult が false の場合、matches ベクトルは queryDescriptors の行数と同じサイズになる。compactResult が true の場合、matches ベクトルには完全にマスクされたクエリ記述子に対するマッチは含まれない。 |
各クエリ記述子について、本メソッドはクエリ記述子と学習記述子との距離が maxDistance 以下となるような学習記述子を見つける。見つかったマッチは距離の昇順で返される。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
各クエリ記述子について、指定した距離以内にある学習用記述子を検出する (非同期版)。
| queryDescriptors | クエリ側の記述子の集合。 |
| trainDescriptors | 学習側の記述子の集合。この集合は、クラスオブジェクト内に格納されている学習記述子コレクションには追加されない。 |
| matches | GPU メモリに格納されたマッチ配列。内部表現は定義されていない。標準表現で結果を取得するには DescriptorMatcher::radiusMatchConvert メソッドを使用する。 |
| maxDistance | マッチした記述子間の距離に対するしきい値。ここでの距離は計量距離(例えば Hamming 距離)を意味し、座標間の距離(ピクセル単位で測られるもの)ではない! |
| mask | 入力クエリと学習記述子行列との間で許可されるマッチを指定するマスク。 |
| stream | CUDAストリーム。 |
各クエリ記述子について、本メソッドはクエリ記述子と学習記述子との距離が maxDistance 以下となるような学習記述子を見つける。見つかったマッチは距離の昇順で返される。
|
pure virtual |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
|
pure virtual |
マッチ配列を内部表現から標準的なマッチベクトルへ変換する。
このメソッドは、最終結果を得るために DescriptorMatcher::radiusMatchAsync と組み合わせて使用することを想定している。このメソッドは DescriptorMatcher::radiusMatchAsync が完了した後 (すなわち同期後) にのみ呼び出すこと。
| gpu_matches | DescriptorMatcher::radiusMatchAsync から返されるマッチ。 |
| matches | DMatch オブジェクトのベクトル。 |
| compactResult | マスク(またはマスク群)が空でない場合に使われる引数。compactResult が false の場合、matches ベクトルは queryDescriptors の行数と同じサイズになる。compactResult が true の場合、matches ベクトルには完全にマスクされたクエリ記述子に対するマッチは含まれない。 |
|
pure virtual |
記述子マッチャを学習させる。
記述子マッチャ (例えば flann インデックス) を学習する。すべてのマッチングメソッドにおいて、マッチングの前に毎回 train() メソッドが実行される。