OpenCV 4.13.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 4.13.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。

画像からSpeeded Up Robust Featuresを抽出するためのクラス [22]詳細...

#include <opencv2/xfeatures2d/nonfree.hpp>

Collaboration diagram for cv::xfeatures2d::SURF:

公開メンバ関数

String getDefaultName () const CV_OVERRIDE
 
virtual bool getExtended () const =0
 
virtual double getHessianThreshold () const =0
 
virtual int getNOctaveLayers () const =0
 
virtual int getNOctaves () const =0
 
virtual bool getUpright () const =0
 
virtual void setExtended (bool extended)=0
 
virtual void setHessianThreshold (double hessianThreshold)=0
 
virtual void setNOctaveLayers (int nOctaveLayers)=0
 
virtual void setNOctaves (int nOctaves)=0
 
virtual void setUpright (bool upright)=0
 
- Public Member Functions inherited from cv::Feature2D
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 Ptr< FileStorage > &fs, const String &name) const
 
void write (const String &fileName) const
 
virtual void write (FileStorage &) const CV_OVERRIDE
 アルゴリズムの引数をファイルストレージに保存する。
 
void write (FileStorage &fs, const String &name) const
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 アルゴリズムの状態をクリアする。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
void write (FileStorage &fs, const String &name) const
 

静的公開メンバ関数

static Ptr< SURFcreate (double hessianThreshold=100, int nOctaves=4, int nOctaveLayers=3, bool extended=false, bool upright=false)
 
- Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 ファイルからアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 文字列からアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 ファイルノードからアルゴリズムを読み込む。
 

Additional Inherited Members

- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

詳細説明

画像からSpeeded Up Robust Featuresを抽出するためのクラス [22]

アルゴリズムの引数:

  • member int extended
    • 0 は基本記述子(各64要素)を計算することを意味する
    • 1 は拡張記述子(各128要素)を計算することを意味する
  • member int upright
    • 0 は検出器が各特徴の方向を計算することを意味する。
    • 1 は方向を計算しないことを意味する(これははるかに高速である)。例えば、ステレオペアの画像をマッチングする場合や画像のスティッチングを行う場合、マッチングされた特徴はおそらく非常に近い角度を持つため、upright=1 に設定することで特徴抽出を高速化できる。
  • メンバ double hessianThreshold キーポイント検出器のしきい値。ヘッセ行列の値が hessianThreshold より大きい特徴のみが検出器によって保持される。したがって、値が大きいほど得られるキーポイントは少なくなる。適切なデフォルト値は、画像のコントラストに応じて 300 から 500 程度である。
  • メンバ int nOctaves 検出器が使用するガウシアンピラミッドのオクターブ数。デフォルトでは 4 に設定されている。非常に大きな特徴を取得したい場合は、より大きな値を使用する。小さな特徴だけが欲しい場合は、この値を減らす。
  • member int nOctaveLayers The number of images within each octave of a gaussian pyramid. It is set to 2 by default.
    覚え書き
    • An example using the SURF feature detector can be found at opencv_source_code/samples/cpp/generic_descriptor_match.cpp
      • SURF 特徴検出器、抽出器、マッチャーを使用した別の例は opencv_source_code/samples/cpp/matcher_simple.cpp にある

メンバ関数詳解

◆ create()

static Ptr< SURF > cv::xfeatures2d::SURF::create ( double hessianThreshold = 100,
int nOctaves = 4,
int nOctaveLayers = 3,
bool extended = false,
bool upright = false )
static
Python:
cv.xfeatures2d.SURF.create([, hessianThreshold[, nOctaves[, nOctaveLayers[, extended[, upright]]]]]) -> retval
cv.xfeatures2d.SURF_create([, hessianThreshold[, nOctaves[, nOctaveLayers[, extended[, upright]]]]]) -> retval
引数
hessianThresholdSURF で使用されるヘッセ行列キーポイント検出器のしきい値。
nOctavesキーポイント検出器が使用するピラミッドのオクターブ数。
nOctaveLayers各オクターブ内のオクターブレイヤー数。
extended拡張記述子フラグ(true - 128要素の拡張記述子を使用する。false - 64要素の記述子を使用する)。
uprightアップライトまたは回転特徴フラグ(true - 特徴の方向を計算しない。false - 方向を計算する)。

◆ getDefaultName()

String cv::xfeatures2d::SURF::getDefaultName ( ) const
virtual
Python:
cv.xfeatures2d.SURF.getDefaultName() -> retval

アルゴリズムの文字列識別子を返す。この文字列は、オブジェクトをファイルまたは文字列に保存する際に、最上位の xml/yml ノードタグとして使用される。

cv::Feature2D から再実装されている。

◆ getExtended()

virtual bool cv::xfeatures2d::SURF::getExtended ( ) const
pure virtual
Python:
cv.xfeatures2d.SURF.getExtended() -> retval

◆ getHessianThreshold()

virtual double cv::xfeatures2d::SURF::getHessianThreshold ( ) const
pure virtual
Python:
cv.xfeatures2d.SURF.getHessianThreshold() -> retval

◆ getNOctaveLayers()

virtual int cv::xfeatures2d::SURF::getNOctaveLayers ( ) const
pure virtual
Python:
cv.xfeatures2d.SURF.getNOctaveLayers() -> retval

◆ getNOctaves()

virtual int cv::xfeatures2d::SURF::getNOctaves ( ) const
pure virtual
Python:
cv.xfeatures2d.SURF.getNOctaves() -> retval

◆ getUpright()

virtual bool cv::xfeatures2d::SURF::getUpright ( ) const
pure virtual
Python:
cv.xfeatures2d.SURF.getUpright() -> retval

◆ setExtended()

virtual void cv::xfeatures2d::SURF::setExtended ( bool extended)
pure virtual
Python:
cv.xfeatures2d.SURF.setExtended(extended) -> None

◆ setHessianThreshold()

virtual void cv::xfeatures2d::SURF::setHessianThreshold ( double hessianThreshold)
pure virtual
Python:
cv.xfeatures2d.SURF.setHessianThreshold(hessianThreshold) -> None

◆ setNOctaveLayers()

virtual void cv::xfeatures2d::SURF::setNOctaveLayers ( int nOctaveLayers)
pure virtual
Python:
cv.xfeatures2d.SURF.setNOctaveLayers(nOctaveLayers) -> None

◆ setNOctaves()

virtual void cv::xfeatures2d::SURF::setNOctaves ( int nOctaves)
pure virtual
Python:
cv.xfeatures2d.SURF.setNOctaves(nOctaves) -> None

◆ setUpright()

virtual void cv::xfeatures2d::SURF::setUpright ( bool upright)
pure virtual
Python:
cv.xfeatures2d.SURF.setUpright(upright) -> None

このクラス詳解は次のファイルから抽出されました: