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

LightGlue 特徴マッチャー。 続き...

#include <opencv2/features.hpp>

Collaboration diagram for cv::LightGlueMatcher:

公開メンバ関数

virtual ~LightGlueMatcher ()
 
virtual void clearPairInfo ()=0
 保存されたペアのコンテキスト情報をクリアする。
 
virtual void setPairInfo (InputArray queryKpts, InputArray trainKpts, Size queryImageSize=Size(), Size trainImageSize=Size())=0
 次回の match() 呼び出しのためにキーポイントと画像サイズのコンテキストを設定する。
 
- Public Member Functions inherited from cv::DescriptorMatcher
virtual ~DescriptorMatcher ()
 
virtual void add (InputArrayOfArrays descriptors)
 CPU(trainDescCollectionis) または GPU(utrainDescCollectionis) の記述子コレクションを学習するために記述子を追加する。
 
virtual void clear () CV_OVERRIDE
 学習用記述子コレクションをクリアする。
 
virtual CV_NODISCARD_STD Ptr< DescriptorMatcherclone (bool emptyTrainData=false) const =0
 マッチャーを複製する。
 
virtual bool empty () const CV_OVERRIDE
 両方のコレクションに学習用記述子が存在しない場合は true を返す。
 
const std::vector< Mat > & getTrainDescriptors () const
 学習用記述子コレクション trainDescCollection への定数リンクを返す。
 
virtual bool isMaskSupported () const =0
 記述子マッチャーが許容マッチのマスキングをサポートしている場合は true を返す。
 
void knnMatch (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< std::vector< DMatch > > &matches, int k, InputArray mask=noArray(), bool compactResult=false) const
 クエリ集合の各記述子に対して、上位 k 件の最良マッチを探索する。
 
void knnMatch (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, int k, InputArrayOfArrays masks=noArray(), bool compactResult=false)
 
void match (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< DMatch > &matches, InputArray mask=noArray()) const
 クエリ集合の各記述子に対して、最良のマッチを探索する。
 
void match (InputArray queryDescriptors, std::vector< DMatch > &matches, InputArrayOfArrays masks=noArray())
 
void radiusMatch (InputArray queryDescriptors, InputArray trainDescriptors, std::vector< std::vector< DMatch > > &matches, float maxDistance, InputArray mask=noArray(), bool compactResult=false) const
 各クエリ記述子に対して、指定された距離以内にある学習用記述子を探索する。
 
void radiusMatch (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, float maxDistance, InputArrayOfArrays masks=noArray(), bool compactResult=false)
 
virtual void read (const FileNode &) CV_OVERRIDE
 ファイルストレージからアルゴリズムの引数を読み込む。
 
void read (const String &fileName)
 
virtual void train ()
 記述子マッチャーを学習する。
 
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 String getDefaultName () const
 
virtual void save (const String &filename) const
 
void write (FileStorage &fs, const String &name) const
 

静的公開メンバ関数

static Ptr< LightGlueMatchercreate (const String &modelPath, float scoreThreshold=0.0f, int backend=0, int target=0)
 モデルファイルのパスから LightGlueMatcher を生成する。
 
- Static Public Member Functions inherited from cv::DescriptorMatcher
static Ptr< DescriptorMatchercreate (const DescriptorMatcher::MatcherType &matcherType)
 
static Ptr< DescriptorMatchercreate (const String &descriptorMatcherType)
 指定した型の記述子マッチャーをデフォルトのパラメータで(デフォルトコンストラクタを使って)生成する。
 
- 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)
 ファイルノードからアルゴリズムを読み込む。
 

限定公開メンバ関数

 LightGlueMatcher ()
 
- Protected Member Functions inherited from cv::DescriptorMatcher
void checkMasks (InputArrayOfArrays masks, int queryDescriptorsCount) const
 
virtual void knnMatchImpl (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, int k, InputArrayOfArrays masks=noArray(), bool compactResult=false)=0
 
virtual void radiusMatchImpl (InputArray queryDescriptors, std::vector< std::vector< DMatch > > &matches, float maxDistance, InputArrayOfArrays masks=noArray(), bool compactResult=false)=0
 
- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

Additional Inherited Members

- Public Types inherited from cv::DescriptorMatcher
enum  MatcherType {
  FLANNBASED = 1 ,
  BRUTEFORCE = 2 ,
  BRUTEFORCE_L1 = 3 ,
  BRUTEFORCE_HAMMING = 4 ,
  BRUTEFORCE_HAMMINGLUT = 5 ,
  BRUTEFORCE_SL2 = 6
}
 
- Static Protected Member Functions inherited from cv::DescriptorMatcher
static CV_NODISCARD_STD Mat clone_op (Mat m)
 
static bool isMaskedOut (InputArrayOfArrays masks, int queryIdx)
 
static bool isPossibleMatch (InputArray mask, int queryIdx, int trainIdx)
 
- Protected Attributes inherited from cv::DescriptorMatcher
std::vector< MattrainDescCollection
 学習画像から得た記述子のコレクション。
 
std::vector< UMatutrainDescCollection
 

詳細説明

LightGlue 特徴マッチャー。

LightGlue は [174] で説明されている、CNNベースの特徴マッチャーである。2枚の画像からキーポイントの位置と記述子を受け取り、マッチペアを直接予測する。記述子間の距離を計算する従来のマッチャーとは異なり、LightGlue はアテンション機構を用いて各候補マッチペアの信頼度スコアを生成する。

このマッチャーは DescriptorMatcher を拡張し、標準の match()knnMatch()radiusMatch() インターフェースをサポートする。マッチングの前に setPairInfo() によってコンテキスト(キーポイントと画像サイズ)を与える必要がある。

構築子と解体子の詳解

◆ LightGlueMatcher()

cv::LightGlueMatcher::LightGlueMatcher ( )
protected

◆ ~LightGlueMatcher()

virtual cv::LightGlueMatcher::~LightGlueMatcher ( )
virtual

メンバ関数詳解

◆ clearPairInfo()

virtual void cv::LightGlueMatcher::clearPairInfo ( )
pure virtual
Python:
cv.LightGlueMatcher.clearPairInfo() -> None

保存されたペアのコンテキスト情報をクリアする。

◆ create()

static Ptr< LightGlueMatcher > cv::LightGlueMatcher::create ( const String & modelPath,
float scoreThreshold = 0.0f,
int backend = 0,
int target = 0 )
static
Python:
cv.LightGlueMatcher.create(modelPath[, scoreThreshold[, backend[, target]]]) -> retval
cv.LightGlueMatcher.createFromMemory(modelData[, scoreThreshold[, backend[, target]]]) -> retval
cv.LightGlueMatcher_create(modelPath[, scoreThreshold[, backend[, target]]]) -> retval
cv.LightGlueMatcher_createFromMemory(modelData[, scoreThreshold[, backend[, target]]]) -> retval

モデルファイルのパスから LightGlueMatcher を生成する。

引数
modelPathONNXモデルファイルへのパス。
scoreThresholdマッチの信頼度のしきい値。
backendDNN バックエンド
targetDNN ターゲット

◆ setPairInfo()

virtual void cv::LightGlueMatcher::setPairInfo ( InputArray queryKpts,
InputArray trainKpts,
Size queryImageSize = Size(),
Size trainImageSize = Size() )
pure virtual
Python:
cv.LightGlueMatcher.setPairInfo(queryKpts, trainKpts[, queryImageSize[, trainImageSize]]) -> None

次回の match() 呼び出しのためにキーポイントと画像サイズのコンテキストを設定する。

これは LightGlue が記述子に加えて必要とする空間的コンテキストを提供する。in-process の ALIKED インスタンスからの自動コンテキストを使用する場合を除き、match()/knnMatch()/radiusMatch() の前に呼び出す必要がある。

引数
queryKptsクエリ画像のキーポイント(x,y 座標を持つ Nx2 の float 行列)。
trainKptsトレイン画像のキーポイント(x,y 座標を持つ Nx2 の float 行列)。
queryImageSizeクエリ画像のサイズ(width, height)。
trainImageSizeトレイン画像のサイズ(width, height)。

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