Сравнение алгоритмов локализации ORB SLAM и LSD SLAM | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Авторы: ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №27 (213) июль 2018 г.

Дата публикации: 09.07.2018

Статья просмотрена: 1960 раз

Библиографическое описание:

Панков, В. Д. Сравнение алгоритмов локализации ORB SLAM и LSD SLAM / В. Д. Панков, В. А. Шульга. — Текст : непосредственный // Молодой ученый. — 2018. — № 27 (213). — С. 16-19. — URL: https://moluch.ru/archive/213/51977/ (дата обращения: 26.04.2024).



Задача одновременной локализации и построения карты (SLAM) — одна из наиболее важных задач в робототехнике: роботу необходимо знать где он находится в текущий момент времени для перемещения в заданное положение, обхода препятствий и многих других задач. Стоит отметить, что для локализации необходимо строить карту окружающей среды, для построения которой, в свою очередь, требуется знать текущее положение робота. SLAM алгоритмы выполняют построение карты и определяют местоположение одновременно.

Наиболее популярны методы, использующие камеру для построения карты и отслеживания перемещения робота в пространстве. Это обусловлено компактностью и дешевизной камер (например, в сравнении с LIDAR-датчиками, стоимость которых достигает 50000$). Данные методы можно разделить на два класса: использующие изображение с камеры целиком и строящие плотную карту местности (direct-based SLAM), и признаковые методы, которые строят разреженную карту: из кадра извлекаются ключевые точки — наиболее выделяющиеся точки изображения, а остальная информация отбрасывается.

В данной статье приведено сравнение двух реализаций SLAM из обеих групп: feature-based ORB SLAM и direct-based LSD SLAM.

ORBSLAM

Одна из наиболее популярных реализаций SLAM. Данный метод основан на детекторе ключевых точек ORB [1]. Высокая скорость детектора ORB позволяет методу работать в реальном времени в условиях ограниченных вычислительных ресурсов.

На рисунке 1 показаны основные компоненты алгоритма. Его работа разделена на три основных потока. Tracking — отслеживание кадров. Данный поток приблизительно определяет текущее положение камеры путем поиска похожего кадра в локальной карте и сопоставления ключевых точек с найденным кадром. Local Mapping — выполняет построение карты вблизи текущего положения камеры и оптимизирует карту. Loop Closing — алгоритм замыкания циклов, который ищет и объединяет похожие кадры.

Рис. 1. Основные компоненты ORB SLAM [2]

Первый шаг алгоритма — инициализация карты, которая состоит из карты точек (MapPoints) и ключевых кадров (KeyFrames). Ключевые кадры сохраняют информацию о положении камеры и ключевых точках, присутствующих на кадре.Далее, с использованием карты точек и ключевых кадров выполняется построение неориентированного взвешенного графа пересечений (Сovisibility Graph). В данном графе каждый кадр представляет собой узел. Пара узлов связывается ребрами, если у соответствующей пары кадров наблюдается более 15-ти общих точек карты. Весом ребер является число общих точек.

Поток Tracking отслеживает перемещение камеры. Он извлекает ключевые точки с помощью алгоритма ORB, а затем пытается сопоставить их с предыдущим кадром. В случае неудачи выполняется релокализация. В случае успешного сопоставления в графе пересечений ключевых кадров ищется локальная карта, после чего производится сопоставление точек текущего кадра с точками в локальной карте путем проекции. И, наконец, выполняется оптимизация локальной карты (Local BA), с помощью которой уточняется положение камеры.

Модуль локального построения карты (LocalMapping) обрабатывает новые кадры и добавляет их в граф пересечений и остовное дерево графа. Кроме того, он выполняет локальную оптимизацию карты (Local BA) для получения более точной реконструкции облака точек вблизи положения камеры.

Модуль замыкания циклов (LoopClosing) ищет похожие кадры для каждого нового кадра. Если такие кадры найдены — для них и текущего кадра вычисляется преобразование подобия (Compute SE3). Затем положения найденного и текущего кадров выравниваются путем применения найденного преобразования, а одинаковые ключевые точки объединяются.

Кроме локальной оптимизации, ORB SLAM выполняет глобальную оптимизацию карты (Full BA), которая позволяет уменьшить накопленную ошибку с учетом найденных замыканий циклов.

LSDSLAM

Алгоритм включает в себя три основных модуля: tracking, depth map estimation и map optimization. Схема модулей показана на рисунке 2.

Модуль tracking непрерывно отслеживает новые изображения с камеры и определяет перемещение камеры. Для оценки перемещения вычисляется преобразование подобия между предыдущим и новым кадрами. В отличие от ORB SLAM, основанном на сопоставлении ключевых точек, в LSD SLAM для расчета преобразования используется минимизация фотометрической ошибки.

Модуль depthmapestimationсравнивает новый кадр с текущим, а затемуточняет или полностью заменяет текущий кадр. Для сравнения используется взвешенная сумма относительного расстояния от нового кадра до текущего и углов поворота между ними. Если вычисленная сумма больше заданного порога — текущий кадр заменяется новым.

Модуль mapoptimization выполняет оптимизацию карты. Оптимизация позволяет предотвратить накопление ошибок в отслеживании местоположения и поддерживает точность построения карты окружающей среды. Оптимизация выполняется библиотекой g2o [3] непрерывно в отдельном потоке.

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

Рис. 2. Визуальное представление трех основных компонентов LSD SLAM [4]

Сравнение

В таблице 1 приведены основные характеристики рассматриваемых алгоритмов.

Таблица 1

Сравнение алгоритмов

ORB SLAM

LSD SLAM

  1. Open-Source

+

+

  1. Интеграция с ROS

+

+/-

  1. Поддерживаемые типы сенсоров

Monocular, Stereo, RGB-D

Monocular

  1. Ресурсоемкость

низкая

высокая

  1. Карта окружающей среды

разреженная

плотная

  1. Оба алгоритма имеют открытый исходный код, и опубликованы под лицензией GPL.
  2. Оба алгоритма имеют интеграцию со средой ROS (Robot Operating System, популярный робототехнический фреймворк). Недостатком LSD SLAM является отсутствие поддержки последних версий ROS: алгоритм не обновлялся с 2011 года.
  3. LSD SLAM имеет реализацию только для монокулярной камеры. ORB SLAM поддерживает работу с монокулярными, стерео и RGB-D камерами.
  4. ORB SLAM значительно менее требователен к ресурсам, и способен работать в реальном времени, например, на Raspberry PI (популярном микрокомпьютере с тактовой частотой 1–1.5 ГГц). LSD SLAM менее производителен, поскольку хранит и обрабатывает существенно больший объем информации (изображения целиком, а не только ключевые точки), и для приемлемой работы требует значительных вычислительных ресурсов.
  5. В отличие от первого алгоритма, LSD SLAM способен строить плотную карту окружающей среды, которую можно использовать для планирования пути в среде с препятствиями.

Наиболее важным параметром для сравнения является точность локализации, т. е. точность оценки местоположения камеры (и робота). В таблице 2 приведена погрешность локализации для обеих алгоритмов, протестированных на различных наборах тестовых данных, предоставленных TUM RGB-D dataset [5].

Таблица 2

Оценка погрешности локализации

ORB SLAM

LSD SLAM

fr1/xyz

0.014м.

0.272м.

fr1/room

0.120м.

0.053м.

fr2/desk

0.018м.

0.045м.

Оценка погрешности рассчитана следующим образом (RMSE — Root Mean Square Error):

где — измеренное положение камеры в момент времени , — истинное положение, n — количество измерений на всей траектории движения камеры.

Заключение

В данной статье приведен обзор SLAM-алгоритмов, используемых для локализации робота в пространстве с помощью камеры. Приведено описание реализаций ORB SLAM и LSD SLAM, а также их сильные и слабые стороны. Кроме того, оценена точность локализации с использованием набора данных TUM RGB-D.

Литература:

  1. Ethan R., Vincent R., Kurt K., Gary B., ORB: an efficient alternative to SIFT or SURF 2011. URL: http://www.willowgarage.com/sites/default/files/orb_final.pdf (дата обращения: 06.07.2018)
  2. Raul Mur-Artal and Juan D. T, ORB-SLAM2: An Open-Source SLAM System for Monocular, Stereo, and RGB-D Cameras // IEEE TRANSACTIONS ON ROBOTIC, Октябрь 2017.
  3. Kummerle R., Giorgio G., Hauke S., Intl. Conf. on Robotics and Automation // g2o: A general framework for graph optimization. 2011.
  4. Engel J. Schops T., Cremers D., LSD-SLAM: Large-Scale Direct Monocular SLAM // ECCV. Lecture Notes in Computer Science, Springer, Vol. 8690, 2014.
  5. RGB-D SLAM Dataset and Benchmark // Computer Vision Group: [сайт]. URL: https://vision.in.tum.de/data/datasets/rgbd-dataset (дата обращения: 06.07.2018)
Основные термины (генерируются автоматически): SLAM, ORB, LSD, RGB-D, ROS, кадр, окружающая среда, текущий кадр, TUM, локальная карта.


Похожие статьи

Вычисление расстояния до наблюдаемого объекта по...

После выполнения данного шага, все прямые линии наблюдаемых объектов окружающего мира становятся прямыми линиями на изображении.

Рис. 3. Изображение с правой камеры (этап сборки кадров с камеры с изображением шахматной доски).

Методы определения объектов на изображении | Статья в журнале...

Рис. 4. Результат поиска локальных минимумов и наложение результата на оригинальное изображение.

Для поиска объекта во всем кадре окно поиска перемещается по всему изображению с некоторым нахлестом.

Выделение границ фонем речевого сигнала с помощью...

r — номера кадров в области I вокруг текущего кадра, используемых для расчёта коэффициента регрессии.

Локальные максимумы функции S(n) — границы звуков, вычисленные методом.

Способы классификации движущихся объектов на видео

Другими словами, трекер присваивает последовательные метки для отслеживаемых объектов в разных кадрах видео.

В обработке изображений обычно используется цветовое пространство RGB (Red, Green, Blue — красный, зеленый, синий).

Информационная система для моделирования распространения...

Введение. Состояние окружающей среды оказывает огромное влияние на жизнь всех живых существ на планете.

Предоставляет возможность подключаться к расчетному модулю системы через локальную сеть или интернет с помощью «толстого» клиента и использовать систему...

Применение библиотеки AForge.NET и ее расширения Accord.NET...

Это событие появляется в то время, когда с камеры отправлен новый кадр.

изображение, компьютерное зрение, информация, реальное время, Метод выделения, распознавание образов, система управления, окружающая среда, контур, функция.

Сравнительный обзор сетевых интерфейсов для коммутации...

На канальном уровне Ethernet реализует систему обмена сообщениями на основе кадров, которые содержат в себе адрес отправителя (6 байт)

Операции чтения и записи производятся с локальной памятью, изменения в которой затем синхронизируются с другими узлами сети.

Кадровый контроллинг в системе управления персоналом...

– определять потребность в кадрах в стратегическом, тактическом и оперативном аспектах.

Контроллинг сегодня является ответом экономической мысли на беспрецедентное усложнение внешней и внутренней среды функционирования предприятия.

Обработка и сегментация тепловизионных изображений

Благодаря тому, что метод использует локальные характеристики изображения

Центральный элемент устанавливается на исследуемый (текущий) пиксель.

– Строится карта вероятности нахождения углов в каждом пикселе изображения посредством вычисления оценочной функции.

Методы нахождения особых точек изображения и их дескрипторов

Смещение. Постановка задачи. В текущей работе был использован программный пакет «MATLAB

Рассмотрим ситуацию: пользователь фотографирует пейзаж, на кадре появляется портрет

В данной работе проводится сравнительный анализ методов ORB, BRISK, AKAZE...

Похожие статьи

Вычисление расстояния до наблюдаемого объекта по...

После выполнения данного шага, все прямые линии наблюдаемых объектов окружающего мира становятся прямыми линиями на изображении.

Рис. 3. Изображение с правой камеры (этап сборки кадров с камеры с изображением шахматной доски).

Методы определения объектов на изображении | Статья в журнале...

Рис. 4. Результат поиска локальных минимумов и наложение результата на оригинальное изображение.

Для поиска объекта во всем кадре окно поиска перемещается по всему изображению с некоторым нахлестом.

Выделение границ фонем речевого сигнала с помощью...

r — номера кадров в области I вокруг текущего кадра, используемых для расчёта коэффициента регрессии.

Локальные максимумы функции S(n) — границы звуков, вычисленные методом.

Способы классификации движущихся объектов на видео

Другими словами, трекер присваивает последовательные метки для отслеживаемых объектов в разных кадрах видео.

В обработке изображений обычно используется цветовое пространство RGB (Red, Green, Blue — красный, зеленый, синий).

Информационная система для моделирования распространения...

Введение. Состояние окружающей среды оказывает огромное влияние на жизнь всех живых существ на планете.

Предоставляет возможность подключаться к расчетному модулю системы через локальную сеть или интернет с помощью «толстого» клиента и использовать систему...

Применение библиотеки AForge.NET и ее расширения Accord.NET...

Это событие появляется в то время, когда с камеры отправлен новый кадр.

изображение, компьютерное зрение, информация, реальное время, Метод выделения, распознавание образов, система управления, окружающая среда, контур, функция.

Сравнительный обзор сетевых интерфейсов для коммутации...

На канальном уровне Ethernet реализует систему обмена сообщениями на основе кадров, которые содержат в себе адрес отправителя (6 байт)

Операции чтения и записи производятся с локальной памятью, изменения в которой затем синхронизируются с другими узлами сети.

Кадровый контроллинг в системе управления персоналом...

– определять потребность в кадрах в стратегическом, тактическом и оперативном аспектах.

Контроллинг сегодня является ответом экономической мысли на беспрецедентное усложнение внешней и внутренней среды функционирования предприятия.

Обработка и сегментация тепловизионных изображений

Благодаря тому, что метод использует локальные характеристики изображения

Центральный элемент устанавливается на исследуемый (текущий) пиксель.

– Строится карта вероятности нахождения углов в каждом пикселе изображения посредством вычисления оценочной функции.

Методы нахождения особых точек изображения и их дескрипторов

Смещение. Постановка задачи. В текущей работе был использован программный пакет «MATLAB

Рассмотрим ситуацию: пользователь фотографирует пейзаж, на кадре появляется портрет

В данной работе проводится сравнительный анализ методов ORB, BRISK, AKAZE...

Задать вопрос