Что такое словарный запас и как его построить? - PullRequest
9 голосов
/ 31 января 2010

Я много читаю о словарных деревьях, когда речь идет о быстрых запросах похожих изображений или текстов в больших базах данных. Но я не смог найти хорошее (простое для понимания) описание того, что такое дерево словарного запаса и как создать одну из функций.

Ответы [ 2 ]

3 голосов
/ 17 сентября 2015

Дерево словаря - это компактный способ поиска изображений. Есть в основном три шага для реализации этого алгоритма, и он сильно зависит от других методов компьютерного зрения, например, Особенности SIFT.

Первым шагом является построение дерева kmeans с использованием дескрипторов sift. Узлы листа этого дерева содержат «мешок» дескрипторов просеивания. Вторым шагом является создание базы данных изображений с использованием словарного дерева, которое вы строите на первом шаге. Вы можете рассматривать этот процесс как квантование изображения в векторное пространство. Затем третьим шагом является запрос изображения к базе данных изображений. Конечно, есть некоторые подробные методы, такие как перевернутый список и т. Д.

Вот хорошая реализация дерева словаря - libvot . Это в основном выполнить три шага, которые я описал выше. Он использует стандартную многопоточную библиотеку C ++ 11 для ускорения процесса сборки, поэтому он работает довольно быстро.

Вот оригинальное исследование статья об этом. В эти годы это оказывает большое влияние на сообщество компьютерного зрения.

1 голос
/ 29 сентября 2015

Showing BOF representation

Словарное дерево - это то, что создается путем объединения визуальных слов в кластеры. Для этого применяется древовидная структура, что делает его словарным деревом. Следующая диаграмма прояснит ситуацию.

Также проверьте это:

...