GPS внутри здания не работает: спутниковый сигнал затухает в перекрытиях и переотражается от конструкций, и «синяя точка» уплывает на соседнюю улицу. При этом задача никуда не девается: посетитель ТЦ ищет магазин, пассажир — выход на посадку, комплектовщик — ячейку на складе. Это исследование — о том, из каких технологий сегодня собирается навигация внутри зданий, что реально достижимо на обычном телефоне и как выглядит рабочая архитектура такого продукта.
Бюджет точности: три разных задачи
«Навигация в здании» — это три задачи с разной ценой ошибки, и их важно не смешивать:
- «Синяя точка» на карте — найти магазин, гейт, переговорку. Хватает 2–5 метров, но обязателен правильный этаж: ошибка этажа хуже ошибки в десять метров.
- AR-маршрут — стрелки и линия поверх камеры. Нужны дециметры и, главное, точная ориентация: куда смотрит телефон. Ошибка в пару градусов на длинном коридоре кладёт стрелку в стену.
- Позиционирование объектов — робот, погрузчик, паллета. Сантиметры, надёжность, работа без человека с телефоном.
И одна развилка, которая определяет проект сильнее любой технологии: чьи устройства. Телефоны посетителей — это борьба за установку приложения и работа на разнородном парке устройств. Корпоративные устройства склада — контролируемое железо, на котором можно позволить себе больше. Держите эту развилку в голове на протяжении всего сравнения.
Технологии: что можно мерить внутри здания
Раз спутники не добивают, позиционирование приходится собирать из того, что в здании есть или что можно туда принести: радиосигналы, звук, магнитное поле, картинка с камеры и собственные сенсоры телефона. Пройдём по семействам — для каждого: как работает, что покупаете, где предел и обязательный живой кейс.
BLE-маяки: дёшево и сердито
Маленькие батарейные передатчики развешиваются по зданию (примерно 1–5 штук на 150 м²) и постоянно шлют сигнал. Телефон оценивает расстояние до ближайших маяков по силе сигнала и сводит их в позицию. Точность — реалистично ±2–3 метра; маяк стоит 3–30 €; этажность решается просто — маяки «знают» свой этаж. Главная статья расходов не покупка, а эксплуатация: тысячи батареек, которые садятся не одновременно (разбор ограничений).
UWB: сантиметры по времени полёта
Сверхширокополосное радио меряет не силу сигнала, а время полёта импульса между меткой и якорями — отсюда точность 10–30 см. Якоря ставятся каждые 20–30 метров, метка стоит заметных денег, поэтому семейство живёт там, где позиция нужна объектам, а не людям с телефонами: склады, производства, спорт (гид по UWB). Чипы UWB уже есть во флагманских телефонах, но открытые API ограничены — на телефоны посетителей пока не рассчитывайте.
Ультразвук: рекорд точности на готовом железе
Та же идея времени полёта, но со звуком: он летит в миллион раз медленнее радио, поэтому ошибка времени почти не превращается в ошибку расстояния. Результат — ±2 см из коробки. Расплата: нужна прямая видимость маяков и приёмник на объекте — телефон посетителя так не позиционируешь. Ниша — роботы, дроны в помещениях, AGV-тележки.
Магнитное поле: позиционирование без железа
Идея красивая: стальной каркас здания искажает магнитное поле Земли уникальным «рельефом». Картограф проходит здание с телефоном и записывает магнитный отпечаток; дальше магнитометр любого смартфона сверяет наблюдения с этой картой. Железа в здании — действительно ноль (как это подаёт Oriient). Но звучит это лучше, чем работает, — вот честная часть:
- Отпечаток неоднозначен. Замер в точке — всего три числа, и в большом здании сотни мест выглядят для магнитометра одинаково. Поэтому система опознаёт не точку, а траекторию: магнитный профиль нескольких метров ходьбы, склеенный со счислением шагов по инерциалке. Чистой «магнитной навигации» в продакшне не существует — это всегда «магнит + шагомер». Отсюда холодный старт и требование двигаться: стоящего пользователя магнит не локализует.
- Точность — вендорская. «Около метра» — цифра маркетинга; на практике — ближе к 2–5 м и сильная зависимость от здания: насыщенный сталью супермаркет — хорошо, стеклянный атриум — почти никак (разбор слабостей от Pointr — это конкурент, делайте поправку, но аргументы технические).
- «Стабильный рельеф» — с оговорками. Тележки и погрузчики — движущаяся сталь; лифты и эскалаторы — электрика; перестановка стеллажей переписывает отпечаток; магнитометры разных телефонов врут по-разному и требуют калибровки.
Рабочая ниша семейства — грубый слой там, где нельзя или не хочется вешать железо, в связке с инерциалкой (так реальные продукты и устроены). Самостоятельной навигации, и тем более AR-уровня, от магнита ждать не стоит.
Визуальные якоря: дёшево, точно, дискретно
Маркер с известной позицией — QR-код, табличка, постер — в кадре камеры даёт мгновенную привязку: сантиметры и точную ориентацию. Слабость очевидна: точность есть только у якоря, между якорями телефон предоставлен сам себе. Поэтому семейство всегда работает в паре со следующим.
VIO: телефон считает свой путь сам
Visual-inertial odometry — связка камеры и инерциальных датчиков, на которой стоят ARKit и ARCore: телефон отслеживает собственное перемещение относительно точки старта. Абсолютной позиции VIO не даёт и накапливает дрейф ~0.5–2% пройденного пути (бенчмарк VIO-систем): через сто метров коридора ошибка — от полуметра до двух. И дрейф резко растёт там, где камере не за что зацепиться: однотонные стены, пустые коридоры (об этой засаде — в «Граблях» ниже). Это не самостоятельное позиционирование, а клей: точные, но редкие привязки (якорь, VPS) VIO растягивает в непрерывный трек. В этой роли он работает в каждом AR-кейсе этого исследования — от Гатвика до Шереметьево.
VPS: здание узнаёт себя по картинке
Visual Positioning System — самое мощное семейство для AR. Здание один раз сканируют (телефоном, 360-камерой или лазерным сканером), из скана строится облако опорных точек; дальше телефон отправляет кадр с камеры — и получает свою позу с дециметровой-сантиметровой точностью, включая ориентацию — ровно то, что нужно AR-стрелкам. Платой выступают скан, пересканы при изменении облика пространства и чувствительность к «похожим коридорам», толпе, закрывающей обзор, и однотонным поверхностям без деталей — белая стена для VPS неотличима от любой другой белой стены.
Линейка точности
Типичная точность семейств. Зелёным — связка, на которой строится AR-навигация для телефонов.
Сводная таблица
| Семейство | Точность | Железо в здании | Деградация со временем | Слабое место | Кейс |
|---|---|---|---|---|---|
| BLE-маяки | ±2–3 м | маяки + батарейки | батарейки садятся | эксплуатация парка | Гатвик |
| UWB | 10–30 см | якоря по периметру | низкая | цена, не для телефонов | NFL |
| Ультразвук | ±2 см | маяки + приёмники | низкая | прямая видимость, не телефоны | Marvelmind |
| Геомагнит | 1 м (заявл.) / 2–5 м (практика) | ноль | перестановки стирают отпечаток | неоднозначность, движущийся металл | Oriient |
| Визуальные якоря | см у якоря | наклейки/таблички | почти нулевая | дискретность | Amazon |
| VIO | дрейф ~1% пути | ноль | — | нет абсолютной позиции | в составе всех AR |
| VPS | дм–см + ориентация | скан (без железа) | пересканы при ремонтах | толпа, «похожие коридоры» | Сбер, Immersal |
Ключевое наблюдение по таблице: ни одно семейство не закрывает задачу в одиночку. Радио и магнит дают грубую, но абсолютную позицию; VPS и якоря — точную, но не везде и не всегда; VIO — непрерывность без абсолюта. Продакшн-система — всегда гибрид, и как именно его собирать — следующий раздел.
Прикладной пайплайн: как собирается рабочая навигация
Соберём из семейств работающую архитектуру. Ключевая мысль: позиционирование — только один из пяти блоков; команды, которые это недооценивают, делают «синюю точку» и обнаруживают, что до продукта ещё половина пути.
Пять блоков рабочей навигации. Позиционирование — только второй из них.
Карта и граф. Основа продукта: поэтажные планы, поверх них — граф проходимости (узлы — развилки и двери, рёбра — коридоры; лестницы и лифты — рёбра между этажами) и точки интереса. Это не разовая работа, а живой актив: магазины съезжают, зоны закрываются — нужен редактор и процесс обновления.
Гибридная локализация. Три слоя из прошлого раздела: грубый абсолютный (радио или магнит — отвечает «где примерно и на каком этаже»), точный по случаю (кадр в VPS или взгляд на якорь — отвечает «где точно и куда смотрю») и VIO, который тянет трек между привязками. Какие слои включать — решает бюджет и объект; архитектура от этого не меняется.
Склейка и фильтрация. Самый недооценённый блок — и место, где живёт математика продукта. Сырые позиции прыгают: радио шумит метрами, VPS изредка «телепортирует» в похожий коридор, VIO дрейфует. Лечится классической связкой: сглаживающий фильтр поверх источников с разным доверием, отбрасывание выбросов (позиция не может прыгнуть на 40 метров за полсекунды), привязка к графу — точка не ходит сквозь стены, а скользит по проходимым рёбрам, — и гистерезис этажа, чтобы точка не мигала между этажами у лестницы. По опыту: именно качество этого блока, а не точность сырых данных, определяет качество навигации.
Маршрут. Поиск пути по графу — алгоритмически простая часть (Дейкстра/A*), вся сложность в правилах: маршрут для коляски — через лифт, закрытая на инвентаризацию зона — обход, перестроение при сходе с маршрута.
Подача. Основной режим — 2D-карта со стрелкой направления: идти, уткнувшись в поднятый телефон, неудобно и небезопасно. AR включается там, где он незаменим: на развилках и «последних 50 метрах» — у Сбера в Шереметьево и у Immersal в Tripla AR работает именно как режим, а не как единственный интерфейс.
Грабли, о которые спотыкаются все
- Холодный старт: пользователь открыл приложение посреди здания — где он? Решение: попросить навести камеру (VPS/якорь) или пройти несколько метров (магнит/радио сойдутся).
- Лифт: VIO слеп в кабине (картинка не движется, ускорения смазаны). Решение: радио/магнит на выходе + барометр как подсказка этажа.
- Похожие коридоры: этажи-близнецы обманывают VPS. Решение: дизамбигуация грубым слоем (радио знает этаж) — ещё одна причина, почему гибрид обязателен.
- Белые коридоры смерти: камерным методам нужны зрительные зацепки — углы, контраст, детали. Однотонные белые стены больниц, офисов и паркингов не дают ничего: VIO дрейфует в разы быстрее, VPS не может ни закартировать такой коридор, ни узнать его. Решения: вести пользователя в этих зонах радио или магнитом, а если коридор критичен для AR — добавить стенам зацепки: постеры, таблички, навигационную разметку (они же заодно — готовые якоря).
Пределы: что не решается точностью
Технические характеристики из ландшафта — половина правды. Продукты indoor-навигации чаще умирают не от плохой точности, а от перечисленного ниже.
Никто не ставит приложение
Главный предел — не сантиметры, а дистрибуция: ради разовой навигации пользователь не установит приложение ТЦ. Рабочие смягчения: WebAR — навигация в браузере по ссылке из QR-кода (Immersal в Tripla сделал именно так), мини-приложения в мессенджерах и встраивание SDK в приложение, которое у аудитории уже стоит (банк, ритейлер, авиакомпания — у Гатвика навигация живёт в приложении аэропорта, которое пассажир ставит ради посадочного). Для стартапа это вопрос бизнес-модели: продавать навигацию конечным пользователям почти невозможно — продавайте её владельцам аудитории.
Идти с поднятым телефоном неудобно и небезопасно
AR-навигация на всём маршруте — красивое демо и плохой продукт: рука устаёт, взгляд не на пути, в толпе это опасно. Рабочий паттерн: 2D-карта — основной режим, AR — точечный (развилки, «последние 50 метров», поиск нужной двери). Проектируйте переключение режимов с самого начала — это архитектурное решение.
Батарея и нагрев
Камера + AR-рендер — самый прожорливый режим телефона. На маршруте в 15 минут это терпимо, на часовой прогулке по выставке — нет. Ещё один аргумент за «AR точечно»: в 2D-режиме с редкими радио/магнит-привязками расход на порядок ниже.
Приватность
VPS отправляет кадры (или их математические описания) с камеры пользователя в облако — в кадре люди, витрины, чужие экраны. Решения: локализация на устройстве, обезличенные дескрипторы вместо картинок, прозрачная политика. Для корпоративных объектов (офисы, производства) этот пункт часто решает выбор технологии сильнее цены.
Пространство живёт
Толпа закрывает обзор камере — VPS теряется в час пик ровно там, где навигация нужнее всего (грубый слой обязателен как страховка). Витрины и сезонный декор меняют облик — нужен процесс пересканов. Перестановка стеллажей стирает магнитный отпечаток. Любая визуальная и магнитная карта — скоропортящийся актив; в продукт нужен мониторинг качества и бюджет на актуализацию.
Этажи и лифты
Самая частая жалоба пользователей — не «точка в трёх метрах», а «точка на чужом этаже». VIO слепнет в лифте, барометр дрейфует, GPS не помогает. Решается грубым слоем (радио/магнит знают этаж) плюс гистерезисом в фильтрации — но проверяйте именно этот сценарий первым: он ломается чаще всего.
Вывод: рецепты по кейсам
Сведём ландшафт, пайплайн и экономику в рекомендации.
- Музей, выставка, кампус, AR-гид. Якоря + VIO (+ WebAR, чтобы не воевать за установку приложения). VPS не обязателен: точки интереса дискретны, якоря у экспонатов закрывают задачу за минимальный бюджет.
- ТЦ и аэропорты — навигация как продукт. VPS-платформа для точного слоя + радио или магнит для грубого слоя и этажей + гибридная склейка (ваше ядро) + 2D-карта с точечным AR. Дистрибуция — через приложения, которые у аудитории уже есть, или WebAR.
- Склад и производство. Для техники и активов — UWB или ультразвук (Marvelmind-класс): там нужны сантиметры и надёжность, а устройства корпоративные. Для людей — корпоративные телефоны + якоря; Amazon с полумиллионом роботов на QR-кодах — напоминание, что «скучная» технология в правильной архитектуре бьёт «умную».
- Своя VPS. Только если позиционирование — и есть ваш продукт, и вы готовы конкурировать с Immersal, Niantic и Сбером их же оружием. Для всех остальных — платформа.
Сквозные тезисы исследования:
- Позиционирование ≠ навигация. Карта, граф, маршрут, подача и процесс актуализации — половина продукта, которую не купить вместе с SDK позиционирования.
- Гибрид — норма, а не компромисс. Грубый абсолютный слой + точный по случаю + VIO между привязками; ни одно семейство в одиночку задачу не закрывает.
- Дистрибуция важнее точности. Сантиметровый стек в неустановленном приложении проигрывает трёхметровому в браузере. Проектируйте путь пользователя к навигации раньше, чем стек.
- Ядро стартапа — склейка и фильтрация. Единственный блок, который нельзя купить.
Источники
- Sber AR/VR Lab — AR-навигация в Шереметьево, Хабр; AR/VR-платформа Сбера
- Immersal — кейс Mall of Tripla; сайт платформы
- Гатвик + Pointr — TechCrunch; AppleInsider
- Marvelmind — система ультразвукового позиционирования
- Zebra × NFL — NFL Next Gen Stats, официальная страница
- Amazon Robotics — обзор роботов и навигации по QR
- Oriient — геомагнитное позиционирование; Re:Tech о внедрениях
- BLE — ограничения маяков, Locatify; UWB — гид Navigine
- VIO — бенчмарк точности ARKit/ARCore и др.
- Платформы — Niantic Lightship VPS; ARCore Geospatial
