Taraflex
@Taraflex
Ищу работу. Контакты в профиле.

Как сжать opencv ORB дескрипторы 32 байта в 8 байт с помощью phash?

Пытаюсь сделать поиск по мотивам статьи
https://habrahabr.ru/post/211773/
есть там такой момент
Так как наш хеш это 64битное число, то требуется 32 байта дескриптора ужать в 8 байт и при этом не сильно потерять в точности.
После некоторых тестов было решено попробовать эти 32 байта представить в виде матрицы 16x16 бит. А потом эту матрицу пропустить через перцептивный хеш PHash. Результатом должно было оказаться как раз 64 битное число.

И вот как то у меня идей нет, как эту матрицу скормить в cv::dct из opencv или https://www.phash.org/
Интересует решение на c++ но сойдет и любом другом языке
В репозитории у автора статьи (огромный ему респект кстати) не нашел примера с конвертированием дескриптора в хэш https://github.com/valbok/img.chk
  • Вопрос задан
  • 265 просмотров
Решения вопроса 1
@valbok
Добрый день,
> не нашел примера с конвертированием дескриптора
Дескриптор в виде 32 байта, создается матрица 16*16 бит
https://github.com/valbok/img.chk/blob/master/core...

Тут реализация phash
https://github.com/valbok/img.chk/blob/master/core...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы