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

詳細説明

このセクションでは、FLANN ライブラリへの OpenCV のインターフェースについて説明する。FLANN (Fast Library for Approximate Nearest Neighbors) は、大規模なデータセットや高次元特徴に対する高速な最近傍探索向けに最適化されたアルゴリズム群を含むライブラリである。FLANN に関する詳細は [206] を参照。

クラス

struct  cv::flann::CvType< T >
 
struct  cv::flann::CvType< char >
 
struct  cv::flann::CvType< double >
 
struct  cv::flann::CvType< float >
 
struct  cv::flann::CvType< short >
 
struct  cv::flann::CvType< unsigned char >
 
struct  cv::flann::CvType< unsigned short >
 
class  cv::flann::GenericIndex< Distance >
 FLANN による最近傍探索インデックスクラス。このクラスは、インデックスを構築する対象の要素の型でテンプレート化されている。 続き...
 

関数

template<typename Distance >
int cv::flann::hierarchicalClustering (const Mat &features, Mat &centers, const ::cvflann::KMeansIndexParams &params, Distance d=Distance())
 階層的 k-means アルゴリズムを用いて特徴をクラスタリングする。
 

関数詳解

◆ hierarchicalClustering()

template<typename Distance >
int cv::flann::hierarchicalClustering ( const Mat & features,
Mat & centers,
const ::cvflann::KMeansIndexParams & params,
Distance d = Distance() )

#include <opencv2/flann.hpp>

階層的 k-means アルゴリズムを用いて特徴をクラスタリングする。

引数
featuresクラスタリングする点。行列の要素は Distance::ElementType 型でなければならない。
centers得られたクラスタの中心。行列は Distance::CentersType 型でなければならない。この行列の行数は、希望するクラスタ数を表す。ただし、階層木の切断位置の選び方の都合上、計算されるクラスタ数は、希望するクラスタ数より小さく、(branching-1)*k+1 という形で表せる最大の数になる。ここで branching は木の分岐係数である (KMeansIndexParams の説明を参照)。
params階層的 k-means 木の構築に使用される引数。
dクラスタリングに使用する距離。

このメソッドは、階層的 k-means 木を構築し、クラスタの分散を最小化する切断位置を木の中から選ぶことで、与えられた特徴ベクトルをクラスタリングする。見つかったクラスタ数を返す。

この関数の呼び出しグラフ: