|
| String | getDefaultName () const CV_OVERRIDE |
| |
| virtual float | getScaleFactor () const =0 |
| |
| virtual void | setScaleFactor (float scale_factor)=0 |
| |
| virtual | ~Feature2D () |
| |
| virtual void | compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors) |
| | 画像(1番目のバリアント)または画像集合(2番目のバリアント)で検出されたキーポイントの集合について記述子を計算する。
|
| |
| virtual void | compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors) |
| |
| virtual int | defaultNorm () const |
| |
| virtual int | descriptorSize () const |
| |
| virtual int | descriptorType () const |
| |
| virtual void | detect (InputArray image, std::vector< KeyPoint > &keypoints, InputArray mask=noArray()) |
| | 画像(1番目のバリアント)または画像集合(2番目のバリアント)からキーポイントを検出する。
|
| |
| virtual void | detect (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, InputArrayOfArrays masks=noArray()) |
| |
| virtual void | detectAndCompute (InputArray image, InputArray mask, std::vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false) |
| |
| virtual bool | empty () const CV_OVERRIDE |
| | 検出器オブジェクトが空の場合に true を返す。
|
| |
| virtual void | read (const FileNode &) CV_OVERRIDE |
| | ファイルストレージからアルゴリズムの引数を読み込む。
|
| |
| void | read (const String &fileName) |
| |
| void | write (const String &fileName) const |
| |
| virtual void | write (FileStorage &) const CV_OVERRIDE |
| | アルゴリズムの引数をファイルストレージに保存する。
|
| |
| void | write (FileStorage &fs, const String &name) const |
| |
| | Algorithm () |
| |
| virtual | ~Algorithm () |
| |
| virtual void | clear () |
| | アルゴリズムの状態をクリアする。
|
| |
| virtual void | save (const String &filename) const |
| |
| void | write (FileStorage &fs, const String &name) const |
| |
BEBLID (Boosted Efficient Binary Local Image Descriptor) を実装するクラス。[265] で解説されている。
BEBLID [265] は、ブースティングによって学習された効率的なバイナリ記述子である。scale_factor 引数を変更するだけで、任意の検出器によるキーポイントを記述できる。複数のベンチマークにおいて、ORB や BRISK といった他のバイナリ記述子を同等の効率で大きく上回ることが実証されている。BEBLID は、KeyPoint 周辺の画像の異なる領域における平均グレー値の差を用いて記述を行う。この記述子は、これらの問題が持つ非対称性に対処し、画像マッチングとパッチ検索に特化して最適化されている。
本コードが有用であると感じた場合は、以下の論文への参照を追加していただきたい:
Iago Suárez, Ghesn Sfeir, José M. Buenaposada, and Luis Baumela. BEBLID: Boosted efficient binary local image descriptor. Pattern Recognition Letters, 133:366–372, 2020.
この記述子は、UBC データセット [307] の Liberty 分割からランダムにサンプリングした 100 万組のパッチペア(陽性 20%、陰性 80%)を用いて、論文 [265] に記載された方法で学習されている。AKAZE のサンプルで、BEBLID がいかにうまく機能するかを確認できる。ORB で 10000 個のキーポイントを検出し、BEBLID で記述すると 561 個のインライア(75%)が得られるのに対し、ORB で記述した場合は 493 個のインライア(63%)しか得られない。