Введение 4
1. Предметная область 6
1.1. ORB SLAM 6
1.2. Отслеживание динамических объектов 6
2. Постановка задачи 8
3. Описание алгоритма 9
3.1. Определение динамических точек 9
3.2. Реконструкция положения динамического объекта .... 10
4. Особенности реализации 11
4.1. Прототипирование алгоритма 11
4.1.1. Реализация алгоритма определения динамических
точек 12
4.1.2. Реализация алгоритма реконструкции положения
динамического объекта 13
4.2. Google Ceres Solver 13
4.3. Калибровка камеры 14
4.4. Docker 14
4.5. Набор данных 15
5. Результаты экспериментов 17
6. Заключение 19
Список литературы
Задача одновременной локализации и построения карты (SLAM)
для однокамерного зрения может считаться решенной в случае, когда
наблюдается неподвижная сцена. Современные методы игнорируют наблюдаемые динамические объекты, хотя в ряде приложений (например,
в навигации и управлении мобильными роботами) реконструкция их
траектории представляет интерес. В этой работе описываются новые
алгоритмы для реконструкции траекторий динамических объектов, а
также сравниваются алгоритмы детекции точек динамических объектов. Новые алгоритмы используются на основе траекторий движения
камеры, полученных с помощью наиболее точной и современной однокамерной SLAM-системы ORB-SLAM. В работе также предлагается
собственный набор данных для тестирования подобных алгоритмов, созданный с помощью контроллера ТРИК, содержащий один динамический объект, движущийся на фоне статической сцены, имеющий наряду
с цветными кадрами карты глубин для определения точности работы
алгоритмов реконструкции траекторий динамических объектов.
В последние годы появился ряд однокамерных систем одновременной локализации и построения карты (SLAM), работающих в реальном
времени, работоспособных на значительном числе видеозаписей из открытых наборов данных разной степени сложности, снятых с помощью
ручных и установленных на мобильные роботы камер, при этом получены высокие результаты по точности построения карты и воссоздания
траектории движения камеры.
На практике, однако, зачастую используются системы на основе стереокамер или RGB-D сенсоров. Важную роль в объяснении этого факта
может играть отсутствие возможностей в современных однокамерных
системах SLAM для реконструкции траекторий динамических объектов. Существуют отдельные опубликованные алгоритмы такого рода,
однако в основном они либо имеют своей целью реконструировать движение отдельной динамической точки, не обеспечивая при этом точности, сравнимой с точностью для статических точек сцены, либо являются теоретическими примерами, которые не были интегрированы в
системы SLAM.
В этой работе делается попытка построить на основе современного
решения для однокамерного SLAM [9] прототип системы, в которой отлеживаются движущиеся объекты и реконструируются их траектории.
В результате проделанной работы были выполнены следующие задачи:
• Разработан алгоритм и реализован прототип детекции точек динамических объектов на базе ORB SLAM. Было предложено несколько способов классификации точек, были проведены эксперименты,
в которых исследовалось качество каждого из предложенных способов;
• Разработан алгоритм и реализован прототип реконструкции траекторий точек динамических объектов на базе ORB SLAM. Были
проведены эксперименты, в которых исследовалось качество алгоритма в сравнении с данными из карт глубин.