2014-03-24 82 views
0

我試圖用FLANN進行更深層次的特徵匹配,它看起來像有兩種可用的方法:有和沒有索引。C++/OpenCV - Flann索引匹配和Flann匹配之間的區別

下面是關於使用FLANN indicies匹配SO問題: How to use opencv flann::Index?

這裏是使用FLANN匹配的例子不 indicies: https://github.com/Itseez/opencv/blob/master/samples/cpp/matching_to_many_images.cpp

我看到代碼的差異當然,但我試圖理解使用其中一種方法的優點是什麼。我知道在數據庫中,在許多情況下添加索引可以提高性能。當使用FLANN來匹配功能時,這是否類似?

有沒有人有這方面的經驗?

回答

0

功能匹配索引是交換速度準確性的一種方法。 FLANN所做的稱爲「近似最近鄰居搜索」。這意味着你會失去一點點準確性(例如,在你發現下一個最好的鄰居而不是真正最好的鄰居的時間的某個小部分時間內),但是你會獲得數量級的加速。因爲你的特徵數據本身是嘈雜的,所以在搜索階段的一些近似通常是可以接受的。 KGraph庫提供的索引通常以相同的精度比FLANN快幾倍。

+0

好信息。謝謝。在這裏發佈KGraph網址供他人蔘考:http://www.kgraph.org/ – Brett

+0

@WeiDong KGraph庫目前僅適用於Linux。我會對Windows版本非常感興趣,它還在計劃中嗎? – AldurDisciple