После прочтения this paper, а также многих вопросов answers.opencv
, мне было интересно, есть ли какие-либо примеры кода из ORB Bag Of Words? Я мог найти только SURF
или SIFT
примеров.opencv C++ ORB Bag Of Words
ответ
К сожалению, нет примеров использования Bag-Of-Words с двоичными дескрипторами (BRIEF, ORB, BRISK, FREAK). В любом случае бумага, которую вы показали, объясняет, как вы можете это сделать. Для традиционных дескрипторов (SIFT, SURF) используется технология кластеризации k-mean, потому что словарь генерируется из набора реальных значащих дескрипторов. Однако для получения бинарного словаря метод k -средства не идеален, потому что среднее значение не определено в двоичном пространстве, тогда вы можете использовать метод k-major.
Самый простой способ сгруппировать двоичные функции в OpenCV - использовать FLANN с расстоянием Хэмминга. Насколько я знаю, ни один пример не существует, поскольку для исправления ошибки в функции расстояния Хэмминга OpenCv [1] потребуется исправление.
Это мой код для него, где cvhack::Hamming<uchar>
- исправленное Хэмминг расстояние.
cvflann::KMeansIndexParams params;
cv::Mat centres = cv::Mat::zeros(dictionarySize, features.cols, CV_32F);
int count = cv::flann::hierarchicalClustering<uchar,cvhack::Hamming<uchar>>(features,centres,params);
- 1. C++ Bag Of Words - OpenCV: Assertion Failed
- 2. OpenCV - Существует ли функция, выполняющая BOW (Bag-of-Words) в python?
- 3. Sed Out of a Words
- 4. NHibernate order by property of bag
- 5. Ouput of Reversing words of String не подходит, как ожидалось
- 6. Parsing pyparsing group of mixed character words
- 7. Uppercasing First Letter of Words Использование SED
- 8. Python: Return Count of Words in List of 2000 Texts
- 9. Векторный индекс Out Of Range opencv C++
- 10. Property bag for C# class
- 11. C# system.speech.recognition alternate words
- 12. C++ count function words occurance
- 13. sort words alphabeticaly in C
- 14. R import vector of int encoded words from text file
- 15. Как использовать примитив «% bag-of» внутри предиката в Racklog
- 16. ошибка C2228: left of '.words' должен иметь класс/struct/union
- 17. Python - tokenizing, replace words words
- 18. C++ strtok function split words
- 19. C++ search for words string
- 20. Регистрация изображения b-spline opencv
- 21. реализация Bags of Words распознавание объектов с помощью VLFEAT
- 22. Вставка значения в поле Key Words of EA программно
- 23. Opencv array of Point issues
- 24. callback of opencv - подробности ссылки
- 25. JInternalFrame image bag
- 26. реализация Haskell Bag (Multiset)
- 27. Python Bag слов кластеризации
- 28. андроид textview clickable words
- 29. Настройка OpenCV 2.2 с Borland на C :: B
- 30. OpenCV create Mat of float from binary
для BOW, к сожалению, только просеивание и серфинг (плавающие дескрипторы) являются подходящими из-за расстояния l2, используемого в кластеризации kmeans. – berak
Так как же они достигли этого? – fakeaccount
^^, заменив часть kmeans другим алгоритмом, кластерные дескрипторы с расстоянием от помех и пересчитав центры кластеров с помощью мажоритарного голосования – berak