问题标签 [flann]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2762 浏览

opencv - opencv 中的 FLANN 运行速度太慢

我有一套积分cloub(积分cloub的数量≈200万)。我想为点 cloub 中的每个点找到最近的 k 邻居。我做了这样的事情

但这运行得很慢。在 for 循环中,它运行 1000 次,持续 20 秒,非常慢。我用错了吗?或者有什么方法可以加快速度吗?

更新:我需要搜索的查询点正是用于构建树的点,我需要为树中的每个点找到最近的 k 个邻居,因此我从数据的每一行中获取点并执行knn搜索。

0 投票
1 回答
2031 浏览

c++ - 如何使用 opencv 特征匹配来检测复制移动伪造

在我的 opencv 项目中,我想检测图像中的复制移动伪造。我知道如何使用 opencv FLANN 在 2 个不同的图像中进行特征匹配,但是我对如何使用 FLANN 检测图像中的复制移动伪造感到非常困惑。

P.S1:我得到了图像的筛选关键点和描述符,并坚持使用特征匹配类。

P.S2:特征匹配的类型对我来说并不重要。

提前致谢。

更新 :

这些图片是我需要的一个例子

输入图像

结果

并且有一个代码匹配两个图像的特征并在两个图像(不是一个)上做类似的事情,android原生opencv格式的代码如下:

0 投票
0 回答
1003 浏览

c++ - 在 OpenCv 中使用带有 FLANN 或 Knn 的自定义距离函数?

我正在研究基于 SIFT 流从一组图像中计算密集 SIFT 特征的代码:http: //people.csail.mit.edu/celiu/SIFTflow/

我想通过比较 SIFT 流表示中每个图像之间的“能量”来尝试在这些图像上建立一个 FLANN 索引。

我有从这里计算能量的代码:http ://richardt.name/publications/video-deanaglyph/

有没有办法为索引创建我自己的距离函数?


相关说明:

终于能够获得与 flann::Index 一起使用的备用(但不是自定义)距离函数。诀窍是你需要像这样使用 flann::GenericIndex :

flann::GenericIndex<cvflann::ChiSquareDistance<int>> flannIndex(descriptors, cvflann::KDTreeIndexParams());

但是你需要给它CV_32S描述符。

如果您使用带有自定义距离函数的 knnSearch,则必须提供CV_32S结果 Mat 和CV_32F距离 Mat。

这是我的完整代码,以防万一有用(那里没有很多文档):

实际上,使用卡方对我来说似乎比 L2 距离更有效。在这种情况下,我的特征向量是 BoW 直方图。

0 投票
1 回答
61 浏览

c++ - 查找 flann 矩阵类型中出现频率最高的元素

找到 flann 矩阵的最频繁元素的最佳方法是什么,例如flann::Matrix<int> k_indices

0 投票
0 回答
240 浏览

k-means - FLANN hierarchical kmeans 如何确定哪个向量分配给哪个集群?

大家好,我是 FLANN 的新手,

我想使用 FLANN 执行分层 kmeans 聚类,我如何确定哪个向量属于哪个聚类?

提前致谢

0 投票
2 回答
955 浏览

c++ - c++和opencv中的向量下标超出范围错误

我正在尝试编写一个程序,该程序使用 ORB 算法来检测和计算图像的关键点,并使用 FLANN 匹配器匹配描述符向量。我面临的问题是,每次我在 Visual C++ 上运行程序时,都会收到一条错误消息,提示“向量下标超出范围”(我还附上了错误的图像)。

问题似乎在某个地方,因为当我启动调试器时它停在那里并且我得到了错误。当我评论第一个 for 以查看其余部分是否正常时,我在第二个 for 上遇到了同样的错误。

请帮我找出问题所在。

我得到的错误

0 投票
1 回答
521 浏览

opencv - 合并轮廓中足够接近的点

我正在使用 Canny 算法和 findContours 函数从图像中获取一些信息。

有时我会在一些包含头发或任何其他细节内容的图像中得到太多的噪点。我想知道如何将足够接近的点与 OpenCV 合并。例如,我希望我可以合并所有彼此相距小于 X 的点。(sqrt(dx dx + dy dy) < XI mean)。

我听说 OpenCV 有自己的 FLANN 包装器,但我不确定如何使用它。

是的,我希望在所有相互认识的轮廓上进行合并,而不是在每个轮廓内单独进行。

0 投票
0 回答
339 浏览

python - OpenCV 中的 Flann - 不支持的距离类型

我正在尝试使用 opencv3.1 和 python 3.5 进行 knn 搜索。

在我看来,miniflann.cpp只支持distType=1distType=2作为输入。opencv的python API总是使用miniflann吗?或者有没有办法使用 python 中的所有flann 功能(不同algorithm和不同distance类型)?

0 投票
1 回答
224 浏览

c++ - 如何使用从突触安装的 FLANN

我试图用 cmake 编译 FLANN,但唯一的结果是一个巨大的头痛。

所以我在这里通过 PCL 存储库和突触找到了这个解决方案。安装似乎很顺利,但现在我不知道如何使用已安装的包。

引用 FLANN 的文档

必须使用的编译命令示例如下所示: 库主目录g++ flann_example.cpp -I $FLANN_ROOT/include -o flann_example_cpp在哪里。$FLANN ROOT

但我不清楚在哪里$FLANN_ROOT

0 投票
0 回答
2457 浏览

cmake - HDR5_DIR-NOTFOUND 错误

我构建了HDF5 的并行版本。然后我尝试通过 cmake-gui构建FLANN 。

由于我尝试使用(我已经安装)HDF5_DIR进行了签名,但没有任何改变。HDF5_DIR-NOTFOUNDsudo apt-get install libhdf5-mpi-devmpicc

我认为如果这个条目不会改变,那么我会在这个make阶段出现问题(特别是因为我想与 MPI 和 OpenMP 并行执行 FLANN)。