我有一个图像库,有约 5000 张图像和约 150 个特征。现在我有另一个具有约 300 个特征的图像,我想在我的库中找到 5 个最相似的图像。
蛮力大约需要 300 * 5000 * 150 * 128 次操作,花费太多时间。所以我为我库中每个图像的特征构建了一个 kd-tree,这意味着大约 5000 个 kd-tree。我像其他筛选库一样使用bbf 搜索近似最近的邻居。但是性能变得比我的蛮力算法还要慢。为了确保这不是我实现的错,我修改了其他库的匹配算法以蛮力,它们的性能也有所提高。
我的问题是有没有可能将〜5000 kd-trees组合成一棵树?或者是否有其他方法可以在匹配多个图像时提高性能?