2011-04-17 24 views

回答

3

這裏有一個很好的詞彙樹實現 - libvot。它使用C++ 11標準多線程庫來加速構建過程,因此運行速度非常快。

它使用三個步驟來建立一個詞彙樹。第一步是使用篩選描述符來構建kmeans樹。第二步是使用您在第一步中創建的詞彙樹構建圖像數據庫。第三步是根據圖像數據庫查詢圖像。一些高級技術如倒排列表和L1距離度量也反映在這個存儲庫中。

0

你想尋找一個空間填充曲線或空間索引。 sfc將2D複雜性降低到1d複雜度,但它只是表面的重新排序。 sfc recursivley將表面細分爲更小的圖塊並通過圖塊繼續拾取附近的信息。它可以與四叉樹比較。這可能是有用的比較圖像,因爲你比較近瓷磚。然後困難是使瓷磚可比。我相信DCT在這裏很有用。你想尋找尼克的希爾伯特曲線四叉樹空間索引博客。

+0

我不understad空間填充曲線如何與詞彙樹或問題中提及的算法的任何部分。你是否認爲這是整個算法的替代?你能否詳細說明一下? – cvlad 2011-04-17 16:35:07

+0

是的,我建議這是一種替代方法,但我沒有DCT的經驗,但你可以谷歌這種方法我忘記了研究員。它已經投入生產。 – Bytemain 2011-04-18 12:03:58

2

關於詞彙樹,我發現這篇論文(http://www.tango-controls.org/Members/srubio/MasterThesis-VocabularyTree-SergiRubio-2009.pdf),它用C++/python實現它們。但是,我無法在任何地方找到代碼,因此我聯繫作者以獲取代碼,但直到此日期才成功。

此外,我發現這個其他的實現(http://www.inf.ethz.ch/personal/fraundof/page2.html),但我無法把它的工作。

您是否已經實現了它?我想爲圖像識別做同樣的事情,但這似乎是一個非常痛苦的任務。

此致敬禮。

2

Sergio Rubio發佈了一個在圖像分類中使用詞彙樹的實現方案http://sourceforge.net/projects/vocabularytree/。我不得不重做他發佈的大部分C代碼以使其能夠在我的Windows系統上運行,但總體而言,它是實現原始文件中提出的想法的非常好的資源。