Як працює розпізнавання об'єктів в AR?
Object tracking дозволяє AR-додатку розпізнавати реальний фізичний об'єкт за його 3D-формою та утримувати цифровий контент прив'язаним до нього під час руху камери та самого об'єкта. На відміну від image tracking, тут не потрібні маркери — достатньо самого об'єкта. Наша команда з 5+ роками досвіду в AR-розробці реалізувала 10+ проектів з object tracking та виробила ефективні підходи. Зв'яжіться з нами для оцінки вашого об'єкта.
В основі object tracking лежить побудова point cloud та вилучення feature points. ARKit на iOS використовує ARObjectScanningConfiguration для сканування та ARWorldTrackingConfiguration з detectionObjects для розпізнавання. Детальний опис API доступний в документації ARKit. Точність розпізнавання — 5–10 мм при хорошому освітленні. На пристроях A12+ сканування займає 10–15 хвилин, отриманий .arobject файл важить від 1 до 50 МБ.
Чому object tracking, а не image tracking?
Image tracking працює з плоскими зображеннями — наклейками, постерами, екранами. Якщо об'єкт тривимірний, контент буде «плавати» при зміні кута огляду. Object tracking використовує point cloud, щоб визначити точне положення та орієнтацію об'єкта в 3D. Це єдиний спосіб реалізувати анотації на двигуні автомобіля або накладення схеми на промисловий верстат.
Які об'єкти розпізнаються добре, а які ні?
| Хороші кандидати |
Погані кандидати |
| Іграшки з малюнками/деталями |
Монохромні пластикові корпуси |
| Побутова техніка з панелями |
Скляні/прозорі об'єкти |
| Промислове обладнання з маркуванням |
Металеві поліровані поверхні |
| Коробки з упаковкою |
М'які деформовані об'єкти |
| Автомобільні деталі |
Об'єкти без постійної форми |
Скляні та дзеркальні поверхні не піддаються visual feature tracking — для них використовуємо маркери або LiDAR mesh matching.
Як ми вирішуємо проблему брудних об'єктів: кейс з практики
В одному з проектів для сервісного центру наш клієнт зіткнувся з проблемою: технік наводить камеру на двигун автомобіля — ARKit не розпізнає через бруд та нагар. Чистий еталонний .arobject не підходив. Ми відсканували кілька варіантів (чистий / з помірним забрудненням) та додали всі в detectionObjects. Це підняло точність з 60% до 92%. Виграш у часі — на 30% швидше, ніж ручний пошук за каталогом.
Vuforia Model Targets: альтернатива ARKit
ARKit Object Detection вимагає фізичного сканування. Vuforia Model Targets — розпізнавання за CAD-моделлю (STEP, OBJ, FBX) без фізичного сканування. Це різниця для промисловості, де CAD-дані вже є. Ліцензія Vuforia коштує від $840/рік, що економить до 50% бюджету порівняно з кастомним рішенням.
| Порівняння |
ARKit Object Detection |
Vuforia Model Targets |
| Потрібен фізичний об'єкт? |
Так |
Ні (потрібна CAD-модель) |
| Точність |
5–10 мм |
5–10 мм |
| Стійкість до забруднення |
Низька |
Середня (алгоритм більш робастний) |
| Ліцензування |
Безкоштовно |
Платна, від $840/рік |
| Підтримувані платформи |
iOS |
iOS + Android |
ARKit швидше в налаштуванні, Vuforia виграє при наявності CAD-моделі. Вибір технології — безкоштовна консультація.
Що входить в нашу роботу з object tracking
- Аналіз об'єкта: оцінка текстур, форми, умов експлуатації; підбір технології (ARKit / Vuforia / ARCore).
- Сканування або підготовка CAD: отримання еталонного опису об'єкта.
- Розробка AR-модуля: налаштування detection, прив'язка контенту.
- Інтеграція з backend: збереження стану, завантаження контенту з БД.
- Тестування: перевірка при різному освітленні та ступені забруднення.
- Документація та навчання: інструкції зі сканування.
Приблизний план робіт та терміни
- Аналіз та сканування — 3–5 днів.
- Розробка прототипу — 5–10 днів.
- Інтеграція контенту та тестування — 5–10 днів.
- Фінальне доопрацювання та деплой — 3–5 днів.
Базове object detection з одним об'єктом — 1–2 тижні. Складні проекти — 3–5 тижнів. Вартість розраховується індивідуально. Замовте розробку — ми підготуємо комерційну пропозицію.
Як відстежувати об'єкти, що рухаються?
Для об'єктів, що рухаються (конвеєрна деталь, робот), використовуємо MediaPipe Object Detection (COCO SSD) + depth estimation через LiDAR. Точність tracking при швидкості понад 0.5 м/с деградує. Такий підхід ми застосували для конвеєрної лінії на заводі — знизили час ідентифікації деталей на 40%.
Отримайте консультацію — обговоримо ваш об'єкт та підберемо рішення.
Ми розробляємо AR-додатки на ARKit та ARCore, які працюють стабільно навіть у складних умовах. Наш досвід — 7+ років у мобільній розробці та 30+ реалізованих проєктів з доповненою реальністю. Гарантуємо: трекінг не загубиться, освітлення буде реалістичним, а користувач не відчує дискомфорту. Сертифіковані розробники Apple та Google.
Чому трекінг втрачається і як це виправити?
ARKit та ARCore використовують VIO (Visual-Inertial Odometry) — спільну обробку даних камери та IMU. Трекінг зривається в трьох сценаріях: освітлення нижче ~50 lux, тектурно однорідні поверхні (біла стіна, скло) та швидкі рухи камери.
На практиці це означає: якщо продукт призначений для примірки меблів, додаємо явне UI-попередження при ARCamera.TrackingState.limited(.insufficientFeatures). Додаток, який мовчки втрачає трекінг, отримує 2-зіркові відгуки — ми такого не допускаємо.
Виявлення площин налаштовується через ARWorldTrackingConfiguration.planeDetection = [.horizontal, .vertical]. Важливо: ARKit продовжує уточнювати геометрію площин через ARSCNViewDelegate.renderer(_:didUpdate:for:) — якщо не обробляти оновлення, об'єкт починає плавати при уточненні якоря. Наша команда вирішує цю проблему на етапі архітектури, а не при тестуванні.
AR Foundation: кроссплатформа з нюансами
Unity AR Foundation — шар абстракції поверх ARKit та ARCore. Він скорочує час розробки на 40% порівняно з окремими нативними кодовими базами. Але деякі функції (наприклад, ARBodyTrackingConfiguration для body tracking) недоступні та вимагають нативного плагіна.
Для React Native та Flutter прямого AR Foundation немає. Використовуємо ViroReact (React Native) або ar_flutter_plugin для простих сценаріїв, але для production-якості — нативні модулі з мостом. Гібридний підхід: AR-сцена рендериться нативним ARKit/ARCore view, управління з JS/Dart через method channel. Входить у нашу стандартну поставку.
| Задача |
iOS |
Android |
Кроссплатформа |
| Plane detection |
ARKit |
ARCore |
AR Foundation, Unity |
| Face tracking |
ARKit (TrueDepth) |
ARCore Augmented Faces |
Banuba, Snap Camera Kit |
| Image tracking |
ARKit (Vision) |
ARCore Augmented Images |
AR Foundation |
| Object detection |
ARKit 3D Object Scanning |
ARCore |
немає єдиного SDK |
| Persistence (збереження якорів) |
ARKit World Map |
ARCore Cloud Anchors |
— |
Порівняння платформ: ARKit випереджає ARCore за стабільністю трекінгу та набором функцій (на 30% менше збоїв у сценаріях з низьким освітленням), але ARCore дешевший у підтримці пристроїв. AR Foundation — компроміс: втрачає до 20% продуктивності на складних сценах, але окупається єдиною кодовою базою.
Try-on: примірка товарів через AR
Примірка окулярів, прикрас, косметики — окремий клас задач. Тут потрібен face tracking, а не plane detection.
ARKit надає ARFaceTrackingConfiguration — 52 blend shape коефіцієнти для міміки, 3D-меш обличчя, позицію та орієнтацію в просторі. Працює лише на пристроях з TrueDepth-камерою (iPhone з Face ID).
Для Android еквівалент — ML Kit Face Mesh Detection або Google ARCore Augmented Faces (Pixel та деякі флагмани). Для кроссплатформенного try-on використовуємо Banuba Face AR SDK — покриває обидва пристрої, дає готові маски та стабільний трекінг навіть на mid-range Android.
Якість try-on критично залежить від 3D-моделей товарів. Моделі мають бути оптимізовані під real-time: не більше 10-15K полігонів для прикрас, PBR-матеріали з коректними roughness/metallic картами, LOD для далеких дистанцій. В рамках нашого підряду ми надаємо готові гайди з оптимізації моделей.
Як досягти реалістичного освітлення в AR?
ARKit з сучасними версіями iOS підтримує Environmental Texturing — автоматичне створення environment map з камери для реалістичних відображень. Вмикається через ARWorldTrackingConfiguration.environmentTexturing = .automatic. Без цього металеві та скляні матеріали виглядають пластиково.
ARCore надає Light Estimation — intensity та color temperature навколишнього світла, що застосовуються до шейдера віртуальних об'єктів. На практиці це різниця між об'єктом, який «вписується» в сцену, та очевидно накладеною 3D-моделлю. Ми гарантуємо, що фінальне зображення не видає віртуальності.
Що входить в роботу
- Архітектура AR-рішення (вибір стеку, проектування модулів)
- 3D-пайплайн: оптимізація моделей під real-time, PBR-матеріали, LOD
- Інтеграція трекінгу (площини, обличчя, зображення, об'єкти)
- Тестування на 10+ реальних пристроях (iOS та Android)
- Документація з використання SDK та готових компонентів
- Підтримка після запуску (1 місяць баг-фіксингу)
Строки та оцінка
Проста AR-сцена з розміщенням однієї 3D-моделі на площині — 1–2 тижні. Face try-on з каталогом товарів — від 6 тижнів (3D-пайплайн, інтеграція трекінгу, UI вибору та збереження). Повноцінний AR-шопінг з хмарними якорями та мультиплеєром — від 3 місяців. Оцінимо проєкт за 1 день — пишіть, обговоримо вашу AR-ідею.