После обнаружения возможности OpenCV я решил использовать эту библиотеку для разработки механизма отслеживания естественных движений, над которым я сейчас работаю. Но моя проблема заключается в том, что я понятия не имею о правильном подходе к реализации такого трекера.
Я разработал следующий план:
- Используйте один из алгоритмов отслеживания объектов (например, SIFT, SURF и т.д.), чтобы описывать и извлекать ключевые точки из живого сообщения камеры.
- Основываясь на извлеченных ключевых точках, преобразуйте их в гистограмму и сравните гистограмму с гистограммами сохраненных маркеров.
- Как только совпадение найдено, преобразуйте эту информацию о местоположении и передайте ее движку, ответственному за рендеринг 3D-объектов.
Я попробовал алгоритм SIFT и SURF при описании и извлечении ключевых точек, и конечный результат был супер низким fps для обоих алгоритмов (т.е. меньше 0 fps). Я заметил, что SIFT и SURF довольно дорогостоящие вычислительные средства и подходят ли они для такого отслеживания на канале живой камеры?
Спасибо.