मैं opencv फ्लान :: सूचकांक के साथ कुछ समस्याएं हैं -ओपनसीवी फ्लैन :: इंडेक्स का उपयोग कैसे करें?
मैं सूचकांक बना रहा हूं
Mat samples = Mat::zeros(vfv_net_quie.size(),24,CV_32F);
for (int i =0; i < vfv_net_quie.size();i++)
{
for (int j = 0;j<24;j++)
{
samples.at<float>(i,j)=(float)vfv_net_quie[i].vfv[j];
}
}
cv::flann::Index flann_index(
samples,
cv::flann::KDTreeIndexParams(4),
cvflann::FLANN_DIST_EUCLIDEAN
);
flann_index.save("c:\\index.fln");
एक fter है कि मैं इसे लोड और पास की neiborhoods
cv::flann::Index flann_index(Mat(),
cv::flann::SavedIndexParams("c:\\index.fln"),
cvflann::FLANN_DIST_EUCLIDEAN
);
cv::Mat resps(vfv_reg_quie.size(), K, CV_32F);
cv::Mat nresps(vfv_reg_quie.size(), K, CV_32S);
cv::Mat dists(vfv_reg_quie.size(), K, CV_32F);
flann_index.knnSearch(sample,nresps,dists,K,cv::flann::SearchParams(64));
खोजने के लिए कोशिश कर रहा हूँ और लाइन
((IndexType*)index)->knnSearch(_query, _indices, _dists, knn,
(const ::cvflann::SearchParams&)get_params(params));
Pl में miniflann.cpp में पहुंच उल्लंघन है मदद
ध्यान देने योग्य बिंदु यह है कि आपको वास्तविक मूल डेटासेट प्रदान करने की आवश्यकता है, न केवल सही आयाम वाले मैट। यह ओपनसीवी दस्तावेज में बहुत स्पष्ट नहीं है, लेकिन [फ्लैन प्रलेखन] की धारा 3.3.4 में उल्लेख किया गया है (http://www.cs.ubc.ca/~mariusm/uploads/FLANN/flann_manual-1.6.pdf) – Sau
@Sau धारा 3.3.4 Matlab के बारे में बात नहीं है और सी ++ नहीं है? क्या आपने ओपनसीवी में या फ्लैन के सी ++ संस्करण में अपनी टिप्पणी सत्यापित की है? – t2k32316