Skip to content

Marker tracking

AlexanderKamynin edited this page Feb 24, 2023 · 1 revision

Добавление в "test_node" трекера маркеров

В ноде "test_node", создаваемой в файле "bot_camera.py", добавлен метод def marker_detecting(self, in_image), находящий на изображении все маркеры с помощью объекта Detector, реализованного в библиотеке Duckietown dt-apriltags (Ссылка на GitHub duckietown/lib-dt-apriltags)

Вызов метода осуществляется при очередном получении изображения с камеры бота, в методе cb_image(). В самом методе создается объект Detector, конвертируется исходное изображение в черно-белое с помощью метода cvtColor() из библиотеки OpenCV, распознаются маркеры на изображении с помощью метода detect() объекта Detector. В цикле for tag in tags для каждого распознанного маркера определяются координаты его углов, рисуется контур, центр маркера и ID маркера. По окончании работы метода на исходном изображении все маркеры оказываются обведенными в задаваемый цвет, с указанием их центра и ID.

Для работы метода необходимо подключить библиотеку dt-apriltags, поэтому в Dockerfile была добавлена следующая строка RUN pip install dt-apriltags

Clone this wiki locally