Ruler AR app iconRuler.
← Все статьи
6 минAccuracyTipsAR

Насколько точна AR-рулетка на iPhone? Гид от строителя

Реальные числа точности AR-приложений, что ожидать с LiDAR и без, когда доверять показаниям, и пять приёмов, которые уменьшают ошибку вдвое.

Короткий ответ: современный iPhone с LiDAR даёт измерения с точностью ±5 мм на дистанции 3 метра. Без LiDAR ожидайте ±1-2 см на той же дистанции. Этого достаточно для подбора мебели, объявлений о недвижимости и большинства ремонтных смет. Этого не хватит для корпусной мебели или столярки — там по-прежнему нужна стальная линейка.

Но «точность» — величина подвижная. Одно и то же приложение на одном и том же телефоне может ошибиться на 5 см в один раз и дать ±2 мм в другой, в зависимости от освещения, дистанции и того, как пользователь держит телефон. Вот что на самом деле происходит внутри AR-сессии и что вы можете сделать, чтобы стабильно получать максимально точные показания.

Что на самом деле делает ARKit

ARKit (фреймворк, на котором построены все приложения-рулетки для iPhone) делает две вещи одновременно. Он отслеживает положение телефона с шестью степенями свободы в пространстве с помощью визуально-инерциальной одометрии: камера считывает текстурные признаки окружения 60 раз в секунду, а IMU (акселерометр + гироскоп) считывает движение 1000 раз в секунду. Два сигнала объединяются, чтобы оценить, где находится телефон.

Затем, когда вы касаетесь экрана, чтобы поставить точку измерения, приложение пускает луч из точки касания в трёхмерное пространство и ищет, где этот луч пересекает обнаруженную поверхность. Точка пересечения получает 3D-координату.

Расстояние между двумя точками — это просто евклидово расстояние между их 3D-координатами. В теории всё просто. На практике на каждом шаге этой цепочки есть погрешность: трекинг признаков уходит в дрейф, детекция поверхностей размыта, луч может попасть не в ту плоскость.

LiDAR против отсутствия LiDAR: что меняется

iPhone с LiDAR (12 Pro+)iPhone без LiDAR (Xs, 14)
Как измеряется глубинаПрямой лазерный замер времени пролётаВычисляется из параллакса камеры + IMU
Типичная точность (≤3 м)±5 мм±10-20 мм
Точность на 5 м±10 мм±30-50 мм
Работает в полной темнотеДа (лазеру не нужен внешний свет)Нет (трекинг камеры срывается)
Время инициализации~1 секунда~3-5 секунд

Пять приёмов, которые вдвое снижают ошибку измерения

  1. Сначала откалибруйте, двигая телефоном. Перед тем как поставить первую точку, пройдитесь метр-два вокруг области, которую будете измерять. Это даёт ARKit достаточно движения, чтобы триангулировать глубину по параллаксу; самые первые измерения сразу после запуска приложения наименее точны.
  2. Используйте режим Touch для малых размеров. Для всего, что меньше 30 см, AR-лучу трудно поставить начальную точку именно там, где вы хотите. Режим Touch (в выборе режимов) вместо этого ставит начальную точку в физическом положении телефона. Прижмите телефон к начальной кромке, коснитесь один раз, переместитесь к концу, коснитесь снова. Нет луча — нет ошибки луча.
  3. Касайтесь текстурированной поверхности, а не пустой стены. AR распознаёт плоскости, находя опорные точки (углы, кромки, точки в текстуре). Идеально белая оштукатуренная стена не имеет ни одной такой точки. Если нужно измерить до пустой стены, прикрепите кусок узорчатого скотча или положите книгу там, где хотите закрепить точку — что угодно с кромками.
  4. Перепроверяйте длинные дистанции пешком. AR-дрейф накапливается с расстоянием. Для всего, что длиннее 4 м, измеряйте пополам: выберите середину, измерьте от одного конца до середины, затем от середины до дальнего конца. Сумма двух половин должна совпадать с единым измерением «из конца в конец» с точностью до нескольких миллиметров. Если нет — в длинном измерении есть дрейф.
  5. Не доверяйте первому показанию. Сделайте три. Коснитесь, сохраните, отведите телефон, вернитесь, коснитесь снова. Повторите три раза. Если все три показания сходятся в пределах ±3 мм, у вас надёжное число. Если они расходятся больше чем на 1 см, что-то в AR-сессии (освещение, качество трекинга, поверхность) неблагоприятно — измените что-нибудь и повторите.

Когда НЕ стоит использовать AR-рулетку

AR — неподходящий инструмент для:

  • Корпусной мебели, дверей, фасадов ящиков. Везде, где важен зазор в 1 мм, стальная линейка быстрее и надёжнее.
  • Диагонали комнаты длиннее 5 м. Используйте лазерный дальномер — он дешёвый, точный и не дрейфует на больших дистанциях.
  • Улицы под прямым солнцем. LiDAR засвечивается ярким ИК-фоном (солнцем), а трекинг камеры страдает от того же из-за движущихся теней. Лучше в тени или при облачности.
  • Отражающих или прозрачных поверхностей. Зеркала, полированный мрамор и стекло дают неверные показания глубины. Закройте их или избегайте.

Apple Measure против сторонних AR-приложений

Встроенное приложение Apple Measure использует те же примитивы ARKit, что и сторонние приложения, поэтому «сырая» точность похожа. Различия — в функциях:

  • Apple Measure: расстояние, рост (автоматически определяет рост человека), уровень. И всё.
  • Сторонние AR-приложения (Ruler AR, MagicPlan, RoomScan Pro): всё вышеперечисленное плюс углы, площадь, измерение многоугольников, 3D-сканы помещений, ручные конструкторы планов, папки проектов, экспорт в PDF, режимы калибровки, аннотации к фотографиям и так далее.

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

Итог

Современное AR-приложение для iPhone достаточно точно, чтобы заменить рулетку для большинства домашних и нетяжёлых профессиональных задач. С LiDAR реально получить ±5 мм. Без LiDAR реально ±1-2 см. Используйте пять приёмов выше — и ваши показания улучшатся. Для чистовых работ держите стальную линейку в наборе инструментов.

Читать ещё

Ruler AR
Free · iOS 16.6+
Установить