Ожидаемая точность локализации AprilTag - PullRequest
0 голосов
/ 10 марта 2020

Я использую библиотеку AprilTag Мичиганского университета для локализации объектов и ищу совет для достижения моих целей точности локализации. Я использую камеру 0,4 мегапикселя на метках шириной примерно 7,5 см на расстоянии 0,1-1,5 метра. Я использовал MatLab для калибровки собственных характеристик камеры и коэффициентов искажения.

Желаемый результат Я хотел бы иметь возможность локализовать метки с точностью до 5 мм.

Наблюдаемый результат Когда я перемещаю камеру относительно тега, результаты локализации меняются. На каждые 100 см, которые я удаляю от метки, я нахожу дрейф в проецируемом месте метки в мире около 10 см.

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

1 Ответ

0 голосов
/ 16 марта 2020

Если дрейф в основном появляется в компоненте Z TVE C и ошибка увеличивается более или менее линейно, это является верным признаком того, что фокусное расстояние (fx & fy в матрице камеры) вашей калибровки отключено.

Попробуйте следующее:

  • проверьте свою калибровочную доску: правильный ли размер сетки? Убедитесь, что ваш принтер не масштабирует исходный файл
  • . Убедитесь, что калибровочная плата зафиксирована на прочной плоской поверхности
  • . Выполните калибровку еще раз и проверьте, не изменились ли значения fx и fy. (записи (0,0) и (1,1) в матрице камеры).
  • используйте не менее 50 изображений, измените угол доски и удалите все изображения с размытым изображением перед калибровкой.
  • также проверьте параметры обнаружения: вы можете попытаться активировать para.cornerRefinementMethod = cv2.aruco.CORNER_REFINE_APRILTAG, чтобы улучшить точность углов ( если вы используете c ++, измените команду соответственно).
...