将描述符匹配到描述符数据库

时间:2012-10-26 11:30:13

标签: image-processing opencv neural-network database-optimization

我正在尝试找到一种快速匹配数据库描述符的方法。我的程序以下列方式工作:

1)使用图像描述符填充数据库(使用适当的特征检测算法)

2)加载图像

3)提取该图像的描述符并将其与DB中的所有描述符进行比较,以便找到合适的匹配。

你可以想象,计算32个描述符数百万次的比较是非常沉重的。我使用了散列函数,但这只适用于两个完全相同的描述符,因此只匹配两个完全相同的图像。

您建议我使用什么来加速搜索?

干杯

修改

我决定从接近神经网络解决方案开始。对于想要开始这个主题的人来说,这是一个pretty good link

1 个答案:

答案 0 :(得分:1)

您要完成的任务基本上称为机器学习/分类。考虑到数据库的大小,直接比较实际上是没有希望的。

以防您不了解术语。您拥有的数据库称为 learning-dataset 。您需要使用机器学习算法,如SVM(支持向量机),K-NN(K近邻),神经网络等来学习模型。该模型后来用于预测新的实例的结果,即。要与数据库进行比较的向量。

我强烈建议使用SVM,因为它是机器学习文献中最先进的分类器。它的实现称为“SVM灯”。 http://svmlight.joachims.org/。也可以使用SVM-light进行排名。请看一下。

您也可以尝试使用神经网络。我在matlab中使用神经网络工具箱(nprtools)非常整洁。