Определение формы местоположения и направления с помощью opencv - PullRequest
0 голосов
/ 28 января 2020

Фон

Я работаю над дешевым и простым методом для отслеживания роботов в их среде, избегая GPS, кодировщиков и т. Д. c. Будет несколько роботов, стремящихся достичь целевой области (см. Пример basi c ниже), и компьютер должен передавать им данные об их местоположении, курсе и цели. example

Подход

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

В идеале для каждого робота должен быть достаточно непрерывный поток данных о местоположении и ориентации, однако я Я работал с OpenCV раньше и понимаю, что это может занять время. Частота обновления около (или лучше) 1 Гц была бы приемлемой (то есть более низкая частота кадров / не используя все кадры).

Ранее я использовал OpenCV для фильтрации кадров SIFT из видео и обнаружения функций для создания мозаичное изображение из кадров. Однако мне трудно адаптировать мои текущие знания к этой конкретной проблеме c, и онлайн-исследование не помогло с простым способом определения ориентации.

Вопрос

Какой самый простой способ быстро определить местоположение и ориентацию фигуры на изображении?

1 Ответ

1 голос
/ 28 января 2020

Вы можете просто использовать minAreaRect . Вы можете взять этот пример в качестве ссылки. Делая это, вы получите соответствующие прямоугольники для каждого вашего объекта, а затем вы можете использовать средние точки краев прямоугольника, чтобы получить угол.

Примечание: Для каждого подогнанного прямоугольника будет два угла, поэтому вы должны создать алгоритм, чтобы выбрать правильный для вашей ситуации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...