Multiprobe LSH索引Opencv

时间:2014-05-15 12:56:29

标签: performance opencv indexing

我编写了一个程序,通过获取两个ORB描述符然后使用多探针LSH索引来比较它们来比较两个图像:

flann::Index flannIndex(descriptorsA, flann::LshIndexParams(1,20,2), cvflann::FLANN_DIST_HAMMING);

flannIndex.knnSearch(descriptorsB, index, dist, 1, flann::SearchParams());

将一个输入图像与42k(线性)的10k图像进行比较,检索效果良好。

-

在我之前

flann::Index flannIndex(descriptorsA, flann::LshIndexParams(10,10,2), cvflann::FLANN_DIST_HAMMING);

flannIndex.knnSearch(descriptorsB, index, dist, 1, flann::SearchParams());

使用相同的输入和数据库,花了65秒也检索到了良好的结果。

我的问题更多是关于LSH的实现:为什么减少表的数量和增加密钥大小,使搜索更快?换句话说:

为什么

flann::Index flannIndex(descriptorsA, flann::LshIndexParams(1,20,2), cvflann::FLANN_DIST_HAMMING);

flann::Index flannIndex(descriptorsA, flann::LshIndexParams(10,10,2), cvflann::FLANN_DIST_HAMMING);

0 个答案:

没有答案