Skip to content

Latest commit

 

History

History
285 lines (212 loc) · 30 KB

FOMS.md

File metadata and controls

285 lines (212 loc) · 30 KB

Ключевые метрики

Качественное сравнение применения комбинации нескольких датчиков

Различные датчики влияют на вышеуказанные ошибки и соответствие. В настоящее время основными датчиками, используемыми в SLAM, являются камеры, лидары, радары миллиметрового диапазона (mmWave) и комбинация различных датчиков [8–10]. Примеры развития визуального SLAM в последние годы включают применение сети эхо-состояний (ESN) к последовательности модельных изображений [11, 12], объединение нейронной сети с визуальным SLAM [13], CPL-SLAM [14], использование компактного второго статистика порядка [15], комбинация точек и линий для извлечения признаков [16] и другие. Следует отметить, что основной целью вышеуказанных методов является повышение надежности и точности сопоставления точек признаков визуального SLAM. Lidar SLAM давно разрабатывается и в настоящее время имеет широкое применение. В статье [17] представлен алгоритм SLAM на основе двумерного лидара, который сочетается с алгоритмом новой схемы кодирования структурных единиц (SEUS), в то время как SLAM с двумерным лидарным графом, предложенный в статье [18], основан на трехмерных функциях «направленной конечной точки». лучше выполнять картографические и исследовательские задачи роботов. Взаимодействие нескольких роботов также может повысить точность и эффективность лидарного SLAM [19–22]. Благодаря преимуществам mmWave в спектре и характеристиках распространения [23], применение mmWave в технологии SLAM стало новой тенденцией последних лет [24], и может быть достигнут субсантиметровый SLAM [25]. Например, в статье [26] предложен алгоритм максимального правдоподобия (ML), который может обеспечить точный SLAM в сложном случае множественных входов и одного выхода (MISO). Комбинация нескольких датчиков может компенсировать недостатки одного датчика и обеспечить более совершенное восприятие [27]. Например, в статье [28 – 30] датчик технического зрения и IMU объединены. В документе [28] предлагаются гибридные системы внутренней локализации с использованием датчика IMU и камеры смартфона, а также используется алгоритм UcoSLAM [31]. Кроме того, слияние основных датчиков также включает лидар и зрение [32,33], лидар и IMU [19,34] и т. д.

Для того, чтобы показать преимущества и недостатки вышеупомянутых различных датчиков более четко, мы резюмировали их по четырем аспектам: надежность, точность, стоимость и предоставленная информация, как показано в таблице 1.

Sensor Robustness Accuracy Cost Information Provided
visual susceptible to light high cheap rich semantic information
lidar high higher expensive only depth and position
mmWave higher high in long distance, low in short distance expensive only distance and position
visual + IMU susceptible to light high normal rich semantic information
lidar + IMU high higher expensive only distance and position
visual + lidar high higher more expensive rich semantic information

It can be seen that visual sensors are the cheapest sensors [ 7 ] and can provide rich, high- dimensional semantic information [35 ], which can complete more intelligent tasks, although they have low robustness under current technological means. However, the traditional visual SLAM assumes a static environment. For an environment with dynamic objects, its accuracy decreases [36–38]. With the development of deep learning in computer vision and the increasing maturity of instance segmentation technology, the combination of visual SLAM and deep learning can identify and extract moving objects in the environment [39–41]. Through instance segmentation, dynamic objects in the environment are removed, and only static feature points are retained, which can significantly improve the accuracy of visual SLAM, such as You Only Look At CoefficienTs (YOLACT) [ 42]. Therefore, visual SLAM is no longer limited to static scenes. More and more researchers have begun to research the use of visual SLAM in dynamic scenes [ 43 ]. At present, the main SLAM algorithms based on dynamic feature point segmentation include DS-SLAM [44 ,45 ], DynaSLAM [46, 47], LSD-SLAM + Deeplabv2 [48], SOF-SALM [49 ], ElasticFusion [50 ], RS-SLAM [51 ], DOT +

ORB-SLAM2 [ 52], etc. We evaluate the existing algorithms from five aspects: frontend, mapping, whether the segmentation network is independent, the accuracy of contour segmentation and the efficiency in dynamic environment. Among them, the frontend influences feature selection, extraction, matching and local map construction. Mapping affects the details of map construction, but the more details, the more calculation. An independent segmentation network reduces calculation time. The segmentation accuracy of contour will affect the elimination of dynamic feature points. We refer to papers [ 53 ,54 ] for the accuracy of contour segmentation and the efficiency in a dynamic environment. The details are shown in Table 2.

Composition of the Visual Map

Once SLAM has provided the poses for the cameras, we are ready to define a map. Contrary to other approaches, which use the aggregated set of keypoints generated as a result of SLAM, we will keep a subset of all the frames with its corresponding 3D pose. More formally, we define the map M as a set of pairs, composed of 3D poses Ti ∈ SE(3) and Keyframes KFi ∈ R4×H×W , which are raw RGBD images from the Azure Kinect camera.

Note that the size of the map is smaller than the result of the SLAM algorithm, in other words H′ < H, since the selection of keyframes requires to decimate the since of it for further purposes. At this current state, we use a simple heuristic to select the keyframe of the map, we decimate uniformly, and since the speed and the coverage of the space was also regular, this can provide good results.

Сложность построоения карты и локализации

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

Процедура построения карты включает в себя определение замыкания, определение связей с уже построенной картой.

Поскольку такого рода операции могут иметь ограничение на выполнение на мобильном устройстве для больших сцен - мы на раннем этапе рассматриваем возможные сценарии масштабирования системы.

Проблема одновременной локализации и навигации (SLAM) заключается в размещении объекта (транспортного средства) в неизвестной локации без предварительной информации о его местонахождении. Следовательно алгоритмы должны одновременно определять и собственное местоположение объекта, и строить карту окружениия. SLAM в значительной степени считается решенным для небольших локаций (комната, коридор, этаж). Обе наиболее популярные категории классических методов локализации и навигации успешно решают эту задачу: методы основанные на расширенном фильтре Калмана (EKF- SLAM) и методы на основе выбора ключевых кадров могут надежно и эффективно справляться со средами ограниченного размера.

Сокращение вычислительной стоимости выполнения SLAM в больших средах - реальная задача которая еще не полностью однозначно решена.

Методы EKF-SLAM имеют первое важное ограничение: вычислительные затраты на обновление карты на каждом шаге составляют порядка O(n2), где n — количество объектов на карте. В методах, основанных на выборе ключевых кадров, количество необходимых расчетов растет экспоненциально с неопределенностью положения объекта.

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

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

Генерация карты предполагает сшивание целой карты из отдельных кусков сцены. Работа с готовой картой предполагает запрос и получение необходимого участка карты локального окружения.

Алгоритм для получения локальной карты и общая архитектура метода была предложена в [] для преодоления вычислительной сложности метода EKF.

В случае с использованием нейронных методов для локализации:

  • известна примерная текущая координата, следовательно экспоненциальная сложность метода SLAM работающего на основе ключевых кадров находится примерно в линейной области
  • Методы нейронной локализации имеют фиксированное время исполнения запроса, но общая точность модели пропорционально размеру модели - соответственно утверждение справедливо только для карт конечного размера
  • Размеры файла карты всве равно пропорционально растут с размером карты и ее детализацией, в зависимости от ограничений платформы меняется максимальный для работы размер карты

Предложенный в [] метод, уменьшает вычислительные затраты и улучшает согласованность EKF алгоритма.

Последовательное сшивание локальных карт: вместо создания одной глобальной карты, метод создает набор независимых локальных карт ограниченного размера. Затем локальные карты объединяются в одну глобальную карту, которая должна быть эквивалентна карте, полученной с помощью стандартного подхода (EKF-SLAM), за исключением ошибок линеаризации. Оптимальная процедура как определить размер каждой локальной карты, не указана. В статье предлагается делить карты на отдельные файлы при достижении набора видимых ключевых точек в карте. При разделении карты на 25 отдельных файлов общее время построения карты уменьшилось в 50 раз.

This experiment raises the following questions: given a certain environment size and sensor characteristics

  1. is there a computationally optimal local map size, such that the total computational cost is minimal?
  2. is there a consistency optimal local map size, such that the consistency of the final map is maximal?
  3. do these optimals coincide?

Для операций с большими картами существуют более подходящие методы чем EKF-SLAM, но существующие оптимизации этого метода могут быть использованы при проектировании системы локализации и навигации.

Например предложенная в статье [SLAM Updates Require Constant Time. Sebastian Thrun1 , Daphne Koller2 , Zoubin Ghahmarani3 , and Hugh Durrant-Whyte4] техника иерархического решения задачи одновременной локализации и навигации.

Решение позволяет получить разреженную матрицу связей и соответсвенно снизить сложность обновления карты с квадратичной до практически линейной без значительно уменьшения точности.

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

Таким образом, обновления могут выполняться в постоянное время, независимо от количества объектов на карте. Результаты экспериментов показывают высокую точность полученных SEIF карт по сравнению с вычислительно более громоздким решением EKF.

Выше представлен пример сравнения EKF с фильтром SEIF. Этот результат был получен с использованием разреженной информационной матрицы.

Ключевым наблюдением является очевидное сходство между EKF и результат SEIF. Обе оценки практически неразличимы, несмотря на то, что EKF используют квадратичное время обновления, тогда как SEIF требует только постоянного времени.

Вторая строчка - результаты SEIF, в котором вычисляется точная оценка состояния текущего состояния µt. Такое решение требует вычисления инверсной матрицы на каждом этапе вычисления (поэтому решение не работает за постоянное время $O(1)-> O(n^3)$).

Это позволило понять и отделить ошибку, вносимую шагом восстановления амортизированного среднего, от ошибки, полученной за счет преобразования матрицы к разреженной. Результаты в таблице представлены для N = 50 меток- ориентиров, 500 циклов расчета карты, в итоге видно соответствие результатов для всех трех подходов.

Работа алгоритма спарсификации данных

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

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

Таким образом метод имеет практически константную сложность выполнения:

  • время кодирования изображения константно
  • время поиска по хэшированному файлу карты константно