- BrainTools - https://www.braintools.ru -

Локализовать нельзя ошибиться. Как работает локализация в автономном транспорте и почему это — самая сложная задача. 1-2

Представьте, что вы находитесь за рулем автомобиля. Даже находясь на пустой дороге, в отсутствии других участников дорожного движения, вам необходимо постоянно “подруливать”, чтобы удержаться в полосе, притормаживать или останавливаться перед перекрестками и, наконец, поворачивать, останавливаться и парковаться. А теперь представьте, что все тоже самое вам необходимо делать с закрытыми глазами — примерно также “ощущает” себя автономный автомобиль без системы локализации.

Всем привет! На связи вновь команда разработки ЭвоКарго, а именно — команда локализации и картирования. Ранее обещали вам [1] рассказать о том, как наш флот автономных грузовиков работает в нынешних условиях постоянного ограничения связи. Сделаем. Но для полноценного погружения решили сперва рассказать о том, как вообще устроена локализация в автономном транспорте. В этой статье в 2-х частях вы узнаете о том, почему задача локализации так сложна и какие способы для ее решения придумали инженеры. 

Локализовать нельзя ошибиться. Как работает локализация в автономном транспорте и почему это — самая сложная задача. 1-2 - 1

В приведенной выше аналогии можно подумать, что система локализации для автономных машин выполняет ту же роль, что и для человека зрение [2], но и это не совсем верное сравнение. Ведь нажимая педаль “газа” или поворачивая рулем на скорости, вы чувствуете действующее на вас ускорение. Смотря на спидометр, вы невольно представляете с какой частотой вращаются колеса автомобиля (и, соответственно, с какой скоростью вы движетесь). Сверяясь с навигатором из телефона, примерно понимаете свое глобальное положение, а сопоставляя карту из навигатора с окружающим пространством — уже уточняете место, где вы находитесь. И уже такой комплекс “органов чувств” наиболее похож на современные системы локализации. 

TLDR:

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

  • Ошибка [3] в локализации напрямую приводит к ошибке в построении траектории;

  • Каждый источник данных обладает собственной нестабильностью и погрешностями;

  • Ошибка может проявляться не как шум, а как ложная уверенность системы — то есть неверная оценка собственной точности;

  • Задача локализации, как и все задачи автопилота,  требует непрерывного решения в режиме реального времени;

  • Условия эксплуатации меняются быстрее, чем успевают обновляться карты;

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

  1. Ошибка в локализации напрямую приводит к ошибке в построении траектории;

  2. Каждый источник данных обладает собственной нестабильностью и погрешностями;

  3. Ошибка может проявляться не как шум, а как ложная уверенность системы — то есть неверная оценка собственной точности;

  4. Задача локализации, как и все задачи автопилота,  требует непрерывного решения в режиме реального времени;

  5. Условия эксплуатации меняются быстрее, чем успевают обновляться карты;

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


1. Что такое локализация?

Локализация — это способность системы ответить на три ключевых вопроса: 

1. где я нахожусь?

2. куда ориентирован?

3. с какой скоростью и в каком направлении двигаюсь?

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

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

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

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

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

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

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

Чтобы понять, как работает локализация, разберем основные подходы простыми словами.

Одометрия (счисление пути): самый базовый метод. Машина считает обороты колес и, зная их диаметр, вычисляет пройденное расстояние. Проблема в том, что колеса могут буксовать или проскальзывать, что приводит к быстрому накоплению ошибки. Это тот самый “счетчик пробега” на приборной панели вашего автомобиля.

Визуальная одометрия: более сложный вариант. Камера на машине отслеживает смещение ключевых точек (углов, границ объектов) от кадра к кадру и по этому смещению оценивает перемещение. В идеальных условиях (хорошее освещение, богатая деталями сцена, широкое поле зрения [5] и высокое разрешение камер) такой подход может быть точнее колесной одометрии. Однако, на практике он сильно зависит от внешних условий: при плохом освещении или ночью часто уступает даже простой одометрии, а в ситуациях с малым количеством ориентиров (пустыри, тоннели) или при появлении движущихся объектов (например, проезжающий рядом крупный транспорт) может давать значительные ошибки без поддержки других сенсоров.

Обзорно-сравнительные методы: здесь в игру вступает карта. Это методы, основанные на сравнении реально наблюдаемой окружающей местности (или некоторого физического процесса, например, характеристики магнитного поля) и её изображения на карте, заложенной в памяти [6] бортового компьютера. Проще говоря, машина постоянно задает вопрос: “На что я сейчас смотрю?” или “Что я сейчас измеряю?” и ищет этот вид в своей карте. Найдя совпадение, она знает свое место. Это “узнавание одинокого дерева в тумане”.

 Inside-Out vs. Outside-In подходы (это классификация по тому, где находятся сенсоры):

a. Inside-Out (англ. изнутри-наружу): все датчики установлены на самом транспортном средстве. Это камеры, лидары, гироскопы и акселерометры. Система сама “наблюдает” мир и вычисляет свое положение. Такой подход не требует развёртывания внешней инфраструктуры, что существенно ускоряет внедрение, упрощает масштабирование и расширяет область применения с точки зрения бизнеса. Однако платой за это, как правило, становится не столько рост вычислительной нагрузки, сколько зависимость от качества сенсоров и условий окружающей среды: в ряде случаев это может приводить к снижению точности и надёжности локализации по сравнению с инфраструктурными решениями; 

b. Outside-In (англ. снаружи-вовнутрь): предполагает наличие внешней инфраструктуры. Часть датчиков устанавливается на транспортном средстве, а часть — на окружающих объектах (например, на столбах или зданиях). Эти внешние системы отслеживают движение транспорта и передают ему информацию о его положении. Такой подход способен обеспечивать очень высокую точность и стабильность, но требует значительных затрат на развертывание и поддержку инфраструктуры, что ограничивает его масштабируемость.

На практике в автономном транспорте почти всегда используется гибридный Inside-Out подход, где машина сама отвечает за свою локализацию, но может дополнять ее данными извне: напр. V2X — Vehicle to Everything (англ. от Автомобиль, подключенный ко всему), V2V — Vehicle to Vehicle (англАвтомобиль-Автомобиль). Стоит сказать, что мы эксплуатируем ВАТС на объектах заказчика без какого-либо внедрения в его инфраструктуру: бизнес-процессы не меняются — просто теперь вместо “Газелей” между зданиями ездят автономные робогрузовики. 

ВАТС ЭвоКарго автономно “работают” на объектах. Нет необходимости в дополнительной инфраструктуре — напр. QR-кодах-метках для сканирования камерами или дополнительных камерах для отслеживания ВАТС на территории.  

ВАТС ЭвоКарго автономно “работают” на объектах. Нет необходимости в дополнительной инфраструктуре — напр. QR-кодах-метках для сканирования камерами или дополнительных камерах для отслеживания ВАТС на территории.  

2. Карты, деньги, 2 лидара

Разберемся с картами, на основе которых работает система локализации. В сфере беспилотного транспорта сегодня сосуществуют два принципиально различных подхода к навигации: с использованием заранее построенной карты и без неё. Оба направления теоретически жизнеспособны, однако на практике коммерческие системы всё чаще опираются на карты, и прежде всего HD‑карты (англ. High‑Definition — высокое разрешение). Стоит сказать, что это не обычные карты, которые вы используете каждый день в навигаторе, а специализированные модели окружающего мира, предназначенные для работы алгоритмов локализации и планирования.

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

В контексте HD‑карт для автономного транспорта можно выделить два ключевых слоя: 

Лидарный слой представляет собой трёхмерный «слепок» местности — облако точек, где каждая точка имеет точные координаты в 3D-пространстве с характерной точностью до сантиметров. В классическом подходе такие данные собираются с помощью специализированного картографического автомобиля, оснащённого высокоточной сенсорикой. Однако на практике более рациональным оказывается использование тех же ВАТС, которые затем будут работать на линии. Это логистически проще и экономически выгоднее: не требуется собирать отдельную платформу и доставлять её на объекты картирования.

Кроме того, такой подход снижает риски на уровне разработки и эксплуатации ПО. Если карта создаётся на данных сенсоров более высокого класса, чем те, что используются в рабочем режиме, алгоритмы локализации могут не перенестись на «боевые» условия из-за ухудшения качества входных данных — отсюда возникают дополнительные требования и ограничения. В обратную сторону зависимость работает стабильнее: алгоритмы, рассчитанные на менее точные данные, как правило, продолжают корректно работать при улучшении качества сенсорики (иногда даже с выигрышем в точности после донастройки). В конечном счёте, выбор подхода упирается не только в технологию, но и в экономику — затраты на разработку, поддержку и масштабирование решений.

Так происходит разметка лидарной карты вручную.

Так происходит разметка лидарной карты вручную.

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

Векторный слой создается картографами-разметчиками вручную и при помощи нейросетей. Он основан на лидарных данных и содержит информацию об элементах дорожной инфраструктуры: полосах движения, бордюрах, светофорах, знаках, столбов и т.п. Эти объекты описываются в виде векторных сущностей с атрибутами — тип, правила проезда, ограничения, приоритеты. Такой слой необходим не только для уточнения позиции, но и для построения маршрута и планирования поведения [7] ВАТС.

Современные промышленные HD‑карты эволюционируют в полноценный «цифровой двойник» дороги: они версионируются, обновляются инкрементально (англ. increment — приращение), проходят формальную и логическую валидацию, а изменения вносятся через специализированные инструменты редактирования. 

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

Изнутри процесс сопоставления лидарных сканов может строиться на следующих подходах (а чаще всего, на нескольких сразу): 

Feature‑based (англ. feature — признак) подход. Алгоритм выделяет из текущих данных лидара или камеры устойчивые особенности — углы зданий, опоры, отдельные деревья и другие уникальные объекты. Затем эти признаки ищутся на HD‑карте, а найденное соответствие позволяет вычислить положение автомобиля;

Методы Монте‑Карло (да, название связано с казино и теорией вероятностей). Это класс вероятностных алгоритмов, наиболее известный представитель — фильтр частиц (англ. — particle filter). Система формирует множество гипотез о возможном положении автомобиля, каждая гипотеза имеет свой вес (правдоподобие). По мере поступления новых данных с датчиков (например, лидар «увидел» стену в 5 метрах справа) веса пересчитываются: наиболее согласующиеся с наблюдениями гипотезы усиливаются, остальные «вымирают». Итоговое распределение частиц отражает степень неопределённости в оценке позиции. Например, при движении по автомагистрали, когда лидар наблюдает только дорогу и дорожные столбы, легко получить многомодальное распределение: каждая мода соответствует одному из возможных положений ВАТС, а разброс вокруг моды отражает «уверенность» системы в этой локальной гипотезе.

Оптимизационные подходы — алгоритмы NDT (англ. Normal Distributions Transform — преобразование нормального распределения), ICP (англ. Iterative Closest Point — итеративное приближение точки) и их аналоги. Эти методы решают задачу минимизации ошибки при сопоставлении двух облаков точек, подбирая смещение и ориентацию скана таким образом, чтобы расстояния между соответствующими точками (или некоторым статистическим представлением распределения точек, как в NDT) были минимальны.

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

Сверху — вид с передней камеры ВАТС. Ниже: мэтчинг лидарного скана с лидарной картой. Белыми линиями отмечен лидарный скан в реальном времени, цветными точками — лидарная карта, сделанная заранее. 

Сверху — вид с передней камеры ВАТС. Ниже: мэтчинг лидарного скана с лидарной картой. Белыми линиями отмечен лидарный скан в реальном времени, цветными точками — лидарная карта, сделанная заранее. 

Немного разобрались с сутью процесса локализации и процессом построения карт для нее. Теперь обратим внимание [8] на самое важное — данные для локализации. Ни один из используемых сенсоров не даёт истины — только свою версию реальности: спутники часто расположены “неблагоприятно”, камеры не “видят” разметку в снегу, лидары теряются среди бесконечных паллет и глухих стен, инерциальные датчики незаметно уводят ВАТС в космос. И именно из этого несовершенного набора и собирается система, которая отлично определяет свое положение с сантиметровой точностью и не ошибается. Вопрос уже не в том, какой сенсор лучше, а в том, как жить в мире, где каждый источник данных ошибается по-своему — и иногда делает это слишком уверенно. 

Как именно мы ставим запятую во фразе «Локализовать нельзя ошибиться» — разбираем в следующей части.

Stay tuned!

Автор: Evocargo_IT

Источник [9]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/30908

URLs in this post:

[1] обещали вам: https://habr.com/ru/companies/evocargo_it/articles/967066/

[2] зрение: http://www.braintools.ru/article/6238

[3] Ошибка: http://www.braintools.ru/article/4192

[4] восприятия: http://www.braintools.ru/article/7534

[5] поле зрения: http://www.braintools.ru/article/9711

[6] памяти: http://www.braintools.ru/article/4140

[7] поведения: http://www.braintools.ru/article/9372

[8] внимание: http://www.braintools.ru/article/7595

[9] Источник: https://habr.com/ru/companies/evocargo_it/articles/1040766/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1040766

www.BrainTools.ru

Rambler's Top100