Автор: Александр Николаевич Абраменков
Аннотация:
В статье рассматривается задача позиционирования подвижного объекта на основе изображений, получаемых с камеры. В ряде случаях данная задача может быть сведена к известной проблеме PnP (perspective-n-point), для решения которой в настоящей работе предлагается использовать оптимизационный алгоритм. В качестве функционала для минимизации рассматривается ошибка репроекции, использующая параметризацию матрицы поворота вектором Родрига. Предлагается подход с заменой переменных, для которого выводятся аналитические частные производные. Особенностью задачи позиционирования подвижного объекта можно считать то, что новое решение в большинстве случаях находится в окрестности предыдущего. Благодаря этому, обходится основной недостаток оптимизационного подхода – необходимость вычислять начальное приближение. Также это позволяет обходить проблему с вектором Родрига, который неограниченно возрастает при приближении угла поворота к 180 градусам. Для решения оптимизационной задачи был использован численный алгоритм BFGS. Предложена эвристика для выбора начального приближения обратного гессиана и первого шага линейно-го поиска, ускоряющая сходимость алгоритма. На синтетических данных проведено сравнение предложенного подхода с известными реализациями из библиотеки OpenCV. Эксперимент показал, что рассматриваемый подход обладает хорошими показателями по соотношению точности и скорости выполнения.
Ключевые слова:
визуальная одометрия, оптимизационный алгоритм, ошибка репроекции