OpenCV 4.13.0
開源計算機視覺庫 (Open Source Computer Vision)
正在載入...
正在搜尋...
未找到匹配項
多維空間中的聚類與搜尋

詳細說明

本節記錄了OpenCV對FLANN庫的介面。FLANN (Fast Library for Approximate Nearest Neighbors) 是一個包含一系列演算法的庫,這些演算法針對大型資料集和高維特徵中的快速近似最近鄰搜尋進行了最佳化。有關FLANN的更多資訊,請參閱 [206]

結構體  cv::flann::CvType< T >
 
結構體  cv::flann::CvType< char >
 
結構體  cv::flann::CvType< double >
 
結構體  cv::flann::CvType< float >
 
結構體  cv::flann::CvType< short >
 
結構體  cv::flann::CvType< unsigned char >
 
結構體  cv::flann::CvType< unsigned short >
 
類  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 演算法對特徵進行聚類。
 

函式文件 (Function Documentation)

◆ 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 樹並選擇一個能最小化聚類方差的樹切割來聚類給定的特徵向量。它返回找到的聚類數量。

此函式的呼叫圖