![]() |
OpenCV 4.12.0
开源计算机视觉
|
本节介绍了 OpenCV 与 FLANN 库的接口。FLANN(快速近似最近邻库)是一个包含一系列优化算法的库,用于在大数据集和高维特征中快速搜索最近邻。有关 FLANN 的更多信息可在 [203] 中找到。
类 | |
| 结构体 | 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 ¢ers, const ::cvflann::KMeansIndexParams ¶ms, Distance d=Distance()) |
| 使用分层 k-means 算法对特征进行聚类。 | |
| int cv::flann::hierarchicalClustering | ( | const Mat & | features, |
| Mat & | 输出检测到的中心点数组。, | ||
| const ::cvflann::KMeansIndexParams & | params, | ||
| Distance | d = Distance() ) |
#include <opencv2/flann.hpp>
使用分层 k-means 算法对特征进行聚类。
| features | 要聚类的点。矩阵的元素类型必须为 Distance::ElementType。 |
| 输出检测到的中心点数组。 | 获得的聚类中心。矩阵的类型必须为 Distance::CentersType。此矩阵的行数表示所需的聚类数量,然而,由于分层树中切割点的选择方式,计算出的聚类数量将是 (branching-1)*k+1 形式的最大值,且该值低于所需的聚类数量,其中 branching 是树的分支因子(参见 KMeansIndexParams 的描述)。 |
| params | 构建分层 k-means 树时使用的参数。 |
| d | 用于聚类的距离。 |
该方法通过构建分层 k-means 树并选择树中使簇方差最小的切割点来聚类给定的特征向量。它返回找到的簇的数量。