gpt4 book ai didi

OpenCV 2.4.5 : FLANN and hierarchicalClustering

转载 作者:太空宇宙 更新时间:2023-11-03 21:27:56 24 4
gpt4 key购买 nike

我最近开始将应用程序移植到运行 OpenCV 2.4.5 的新平台。

我使用 OpenCV 的 FLANN 实现进行层次聚类的部分代码不再编译。

代码如下:

cv::Mat mergedFeatures = cvCreateMat(descriptorTotal, descriptorDims, CV_32F);

int counter = 0;
for (uint j = 0; j < ImageFeatures.size(); j++) {
cv::Mat features = ImageFeatures[j];
for (int k = 0; k < features.rows; k++) {
cv::Mat roi = mergedFeatures.row(counter);
features.row(k).copyTo(roi);
counter++;
}
}

cv::Mat centers = cvCreateMat(1000, descriptorDims, CV_32FC1);
cv::flann::KMeansIndexParams k_params = cv::flann::KMeansIndexParams();
cv::flann::AutotunedIndexParams atp = cv::flann::AutotunedIndexParams();
int numClusters = cv::flann::hierarchicalClustering<float, float>(mergedFeatures, centers, k_params);

我得到的错误(在 Eclipse 中)是 cv::flann::hierarchicalClustering 有无效的参数,而且这个函数的两个候选者都不满足。

谁能解释一下我怎么突然好像错误地调用了这个方法?

非常感谢您的帮助。

最佳答案

我自己解决了这个问题。

而不是接受:

cv::flann::KMeansIndexParams k_params

hierarchicalClustering 函数实际需要:

cvflann::KMeansIndexParams k_params

这是一个与 OpenCV 中的 FLANN 库混淆的命名空间约定,我刚刚忽略了编译器错误告诉我的命名空间差异。

现在一切正常。 KMeansIndexParams 类型存在于两个命名空间中,我猜 hierarchicalClustering 方法从 OpenCV 2.3 到 2.4.5 发生了非常轻微的变化。

关于OpenCV 2.4.5 : FLANN and hierarchicalClustering,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17460431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com