Глоссарий

SLAM-навигация

Синонимы: одновременная локализация и картирование, СЛАМ, визуальная одометрия

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

Что такое SLAM-навигация

SLAM-навигация — метод, при котором аппарат одновременно строит карту незнакомого пространства и определяет в нём собственное положение. Название расшифровывается как simultaneous localization and mapping, то есть буквально «одновременная локализация и картирование».

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

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

Как это работает

Аппарат непрерывно наблюдает окружение и выделяет в нём устойчивые ориентиры: углы, кромки, характерные пятна текстуры. Между кадрами он сопоставляет одни и те же ориентиры и по их смещению вычисляет собственное перемещение. Параллельно положение ориентиров уточняется и накапливается в карту.

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

Визуальный и лидарный SLAM

Два основных подхода
ТипЧто используетСильные стороныСлабые места
ВизуальныйКамеры, иногда стереопараЛёгкий, дешёвый, богатая информация о сценеПлохо работает в темноте и на однородных поверхностях
ЛидарныйЛазерный сканерНе зависит от освещения, точная геометрияДороже, тяжелее, слабее в длинных однообразных коридорах
КомбинированныйКамеры плюс лидар плюс инерцияУстойчивость в сложных условияхСложность настройки и вычислительная нагрузка

Родственный, но более простой механизм — оптический поток: камера вниз, отслеживающая смещение картинки. Он удерживает аппарат на месте, но карты не строит и на большом маршруте накапливает ошибку.

Дрейф и замыкание цикла

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

Замыкание цикла
Когда система узнаёт место, где уже была, она получает мощную подсказку и пересчитывает всю карту так, чтобы концы сошлись. Этот механизм называют замыканием цикла, и именно он превращает набор наблюдений в связную карту помещения.

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

Где применяют

  • Обследование помещений и промышленных цехов, где нет спутникового сигнала;
  • Съёмка шахт, тоннелей и подземных коммуникаций;
  • Инвентаризация складов — облёт стеллажей по заданной схеме;
  • Обследование резервуаров и замкнутых конструкций изнутри;
  • Полёты в плотной городской застройке, где сигнал отражается от зданий;
  • Построение трёхмерных моделей внутренних пространств для проектирования.

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

Вычислительная сторона вопроса

SLAM — это не датчик, а алгоритм, и работает он на вычислителе. Обработка потока с камер или лидара в реальном времени требует ресурсов, которых нет у обычного полётного контроллера, поэтому на борт ставят отдельный компьютер. Отсюда две практические особенности: аппарат тяжелее и энергоёмче обычного, а время полёта короче — часть заряда уходит на вычисления, а не на движение.

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

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

Что это значит для оператора

Полёты в помещениях требуют другой манеры: медленные плавные движения, отсутствие резких разворотов, аккуратный старт с контролем захвата ориентиров. Резкий манёвр сбивает сопоставление кадров, и система теряет положение — а внутри здания это означает столкновение через секунду.

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

И последняя практическая деталь: результат такой съёмки почти всегда нуждается в привязке к реальным координатам объекта. Внутренняя карта строится в собственной системе аппарата, поэтому для инженерных задач её совмещают с планами здания или с наземными измерениями — иначе модель окажется геометрически верной, но висящей в пустоте.

Частые вопросы

Зачем нужен SLAM, если есть спутниковая навигация?

Спутниковый сигнал доступен не везде. Внутри зданий он отсутствует полностью, в тоннелях и шахтах тоже, а в плотной городской застройке отражается от стен, из-за чего координаты скачут на десятки метров. Есть и задачи, где точности спутниковой системы принципиально не хватает: полёт в метре от стены резервуара требует понимания положения с точностью до сантиметров, а не метров. SLAM решает обе проблемы, потому что опирается не на внешний сигнал, а на наблюдаемое окружение. При этом он не заменяет спутниковую навигацию на открытом пространстве: там она проще, дешевле и не накапливает ошибку. На практике системы дополняют друг друга, и аппарат переключается между режимами по мере ухода под крышу или выхода на открытое место.

Чем визуальный SLAM отличается от лидарного?

Источником данных и, как следствие, сильными и слабыми сторонами. Визуальный работает по камерам: он лёгкий, дешёвый и получает богатую информацию о сцене, включая текстуру и цвет, но зависит от освещения и плохо себя чувствует на однородных поверхностях вроде свежепокрашенной стены, где не за что зацепиться. Лидарный использует лазерный сканер: ему безразличны темнота и текстура, он сразу даёт точную геометрию, но комплект дороже и тяжелее, а в длинном однообразном коридоре, где все сечения похожи, он тоже теряется. На сложных объектах применяют комбинированные системы, добавляя к ним инерциальный блок. Выбор определяется задачей: для тёмной шахты нужен лидар, для освещённого цеха достаточно камер.

Что такое дрейф и как с ним борются?

Дрейф — это накопление ошибки положения. Каждое отдельное измерение немного неточно, и на длинном маршруте расхождения складываются: система считает, что аппарат в одной точке, а фактически он в нескольких метрах в стороне. Основной инструмент борьбы — замыкание цикла: когда система узнаёт уже виденное место, она получает сильное ограничение и пересчитывает карту так, чтобы концы сошлись. Помогают также объединение данных нескольких датчиков и, где это возможно, привязка к заранее известным опорным точкам на объекте. Для оператора практический вывод один: маршрут стоит планировать с повторными проходами через узнаваемые участки, а не как одну длинную линию в один конец — иначе дрейф исправить будет нечем.

Можно ли летать по SLAM в полной темноте?

Визуальному SLAM нужен свет: без него камеры не видят ориентиров, и система не работает. Частично выручает подсветка на борту, но она освещает лишь ближнюю зону и создаёт резкие тени, которые сами по себе мешают сопоставлению кадров. Лидарный SLAM от освещения не зависит вообще, поскольку измеряет расстояние собственным лучом, — именно поэтому подземные обследования выполняют с лазерными сканерами. Ещё один вариант для темноты — тепловизионные камеры, но их низкое разрешение ограничивает точность. Практический подход: для тёмных пространств сразу планируют лидарную систему, а попытки «подсветить и снять камерами» оставляют для помещений с частичным освещением, где света не хватает лишь местами.

Насколько точна навигация по SLAM?

Порядок точности — сантиметры на коротких участках, но итог сильно зависит от условий и длины маршрута. В помещении с богатой геометрией и множеством ориентиров система держит положение уверенно; в длинном однообразном коридоре ошибка растёт заметно быстрее. После замыкания цикла карта пересчитывается и итоговая точность улучшается. Важно различать точность локализации в моменте и точность итоговой карты: первая определяет, врежется аппарат в стену или нет, вторая — насколько пригодна модель для измерений. Для инженерных задач результат обычно контролируют по известным элементам объекта: если размеры проёмов и пролётов на модели совпадают с фактическими, карта считается пригодной для работы.

Нужен ли специальный дрон для полётов в помещении?

Как правило, да. К стандартной платформе добавляются датчики для SLAM и вычислитель, способный обрабатывать данные на борту в реальном времени. Кроме того, аппараты для помещений делают компактными и обязательно ставят защиту винтов: столкновение с колонной или стеллажом внутри здания почти неизбежно, и оно не должно заканчиваться падением. Многие такие дроны имеют клетчатую или сферическую защиту по всему периметру. Отдельное требование — управляемость на малых скоростях и устойчивость к сквознякам, которые в цехах бывают сильнее, чем кажется. Обычный съёмочный коптер в помещении тоже поднимется, особенно с оптическим потоком, но строить карту он не будет, а его габариты и отсутствие защиты быстро приведут к аварии.

Чем SLAM отличается от оптического потока?

Масштабом задачи. Оптический поток — это простой механизм удержания положения: камера смотрит вниз и отслеживает смещение картинки, помогая аппарату висеть на месте и не сносить его ветром. Он не строит карту, не помнит, где был, и на длинном маршруте накапливает ошибку без возможности её исправить. SLAM решает более сложную задачу: строит модель пространства, запоминает ориентиры, узнаёт ранее посещённые места и корректирует накопленный дрейф. Соответственно, различаются и требования: оптический поток работает на простой камере и слабом процессоре, SLAM требует существенных вычислительных ресурсов. На практике они часто соседствуют в одном аппарате, дополняя друг друга на разных этапах полёта.

Востребованы ли операторы для полётов в помещениях?

Это узкая, но растущая ниша. Спрос идёт от промышленности и горнодобычи: обследование шахтных выработок, резервуаров, дымовых труб, коллекторов и цехов, где присутствие человека либо опасно, либо требует остановки производства. Работы такого рода оплачиваются заметно выше обычной аэросъёмки, потому что требуют специальной техники и подготовки. От оператора ждут аккуратного пилотирования на малых скоростях в стеснённых условиях, понимания того, как устроена система навигации, и умения оценить качество полученных данных прямо на объекте. Путь в эту специализацию обычно лежит через уверенный налёт на открытых площадках: без базовых навыков в помещении делать нечего, там ошибка исправляется не секундами, а сантиметрами.

Смежные термины