Содержание
управляем роботом в режиме дополненной реальности / Хабр
Благодаря Хабрахабру и Google к нам в лабораторию робототехники Сколтеха на неделю попал дев-кит планшет проекта Google Tango. Мы не только протестировали данное устройство, но и написали небольшое демо по управлению мобильным роботом в режиме дополненной реальности. Но об этом чуть позже, сначала немного об устройстве и наших впечатлениях от него.
Статья автора Дмитрия Сенашенко, в рамках конкурса «Device Lab от Google».
Думаю многие из вас уже слышали о данном проекте и неплохо представляют что он из себя представляет. Если вкратце, то это платформа компьютерного зрения и локализации нацеленная на применение в мобильных устройствах. Используя данные с двух камер (широкоугольной и обычной), датчика глубины (по сути Kinect в миниатюре), акселерометров, гироскопов и барометра устройство проекта Google Tango способно воспринимать окружающее трёхмерное пространство и отслеживать своё положение в нём. Громадная заслуга группы инженеров ATAP (Advanced Technology and Projects) заключается не только в том, что они смогли уместить всё это оборудование в мобильном устройстве, но и в том что у них вышло разработать дружелюбное к разработчику высокоуровневое SDK, которое берёт на себя основную тяжёлую работу по обработке данных с сенсоров и проведению необходимых преобразований, позволяя разработчику работать с удобными абстракциями. Так же в лучших традициях Google нам доступна документация высокого качества, позволяющая достаточно быстро освоиться с устройством даже разработчикам без опыта разработки приложений под Android.
Об устройстве
Принцип работы
Устройство по сути имеет два основных режима локализации: с Area Learning и без него. В первом режиме мы предварительно сканируем помещение и строим его карту (к сожалению это делается offline, т.е. сначала обработка накопленных данных, потом использование результата в виде файла ADF — Area Description File), после чего мы можем весьма точно локализоваться в изученном помещении, компенсировать дрейф и справляться с проблемой временной потери трекинга. (например, при закрытии сенсоров рукой или другим слишком близко поднесённым объектом)
Второй режим позволяет нам проводить локализацию в пространстве и отслеживание движение устройства безо всякой предварительной подготовки. Работает он на основе совмещения данных со всех датчиков: IMU (Inertial Measurment Unit), визуальной одометрии по особым точкам изображения широкоугольной камеры, датчика глубины и т.д. Но т.к. нам неизвестны точки за которые мы могли бы зацепиться, в данном режиме координаты устройства будут подвержены дрейфу за счёт постоянно накапливающейся ошибки. (см. иллюстрацию) Кроме того имеется риск потери трекинга, корректное восстановление из которого в данном режиме в общем случае невозможно.
Пользуясь данными локализации (т.е. по сути зная с некоторой точностью координаты и ориентацию устройства относительно помещения) и имея трёхмерное облако точек с датчика глубины мы имеем возможность создавать приложения дополненной реальности ранее принципиально невозможные на мобильных устройствах. Логичным продолжением была бы установка Tango на очки дополненной реальности (следующая итерация Google Glass наподобии Hololens?), но пока мы можем воспользоваться эрзац-заменителем в виде Google Cardboard.
Немного о точности
Разумеется одним из первых вопросов к устройству является его точность. В документации, разумеется, касаются данного вопроса, но мы не могли отказать себе в желании проверить самим заявления о точности в несколько сантиметров в оптимальных условиях.
Т.к. мы были весьма ограничены по времени, то решили всего лишь сделать кустарную оценку сверху используя в качестве инструмента стол с известными размерами. (два на три метра) Перемещая устройство из одного угла стола в другой по кривой траектории с отклонением от стола вплоть до двух метров мы записывали глобальные координаты (с и без Area Learning) в каждой из точек, после чего рассчитывали расстояние между данными точками и сравнивали с тем, что должно было получиться. Итоги следующие:
- Среднее отклонение составило 2-3 см, в худших случаях вплоть до 5-6 см
- Точность с Area Learning и без него на траекториях 15-20 метров кардинально не отличаются, что говорит о достаточно высоком качестве локализации по визуальной одометрии и IMU
- Ориентация устройства влияет на координаты с ошибкой вплоть до 5 см (в т.ч. и с использованием Area Learning), т.е. если вернуть устройство в исходную точку, но повёрнутым, его координаты будут несколько иными
По понятным причинам точность сильно зависит от помещения в котором проводятся измерения. В помещении с хорошим освещением (устройство плохо относится к прямому солнечному свету) и большим количеством особых точек вполне реально добиться точности в пару сантиметров. Но в плохих условиях устройство быстро теряет трекинг, IMU конечно до поры до времени выручает, но его возможности весьма ограничены. Поэтому мы и бросили идею поставить танго на индустриальную робо-руку и измерить таким образом точность, ибо комната с роботом плохой пример «обычного» помещения.
Теперь о точности датчика глубины. Проверять его точность мы решили снимая облака точек для плоских объектов (пола, стен, столов) и анализируя насколько хорошо точки ложатся на плоскость. На оптимальной дистанции 0.5-4 м точность обычно составляла около 0.5 см, но на некоторых поверхностях точность падала в 2-3 раза, например на поле нашей лаборатории, покрытом черно-белым ковром в крапинку. Похоже текстура играла злую шутку с алгоритмами определения глубины основанными на структурированном ИК излучении.
Об SDK и API
Если кратко, то Google на высоте. Думаю как только Tango устройства попадут в широкую продажу, то отбоя от разработчиков не будет не только из-за уникальных возможностей устройства, но и из-за простоты программирования приложений для него. Фраза во вступлении, о том что с девайсом может освоиться даже разработчик без опыта программирования под Android — эксперементально подтверждённый факт, т.к. основной разработчик для Tango нашего демо управления роботом — Марко Симик (иностранный магистр нашей лаборатории), практически не имел опыта разработки под Android, но тем не менее смог за пару дней смог изучить инструменты и API в объёме достаточном для написания простеньких приложений.
Но хватит похвал. Tango Service представляет собой сервис работающий отдельным процессом. Общая структура программного стека показана на иллюстрации.
SDK предоставляет возможность работать с C++, Java и Unity. Порядок примерно соответствует их «высокоуровневости». Разумеется разработчики игр скорее всего оценят по достоинству возможность использования Unity и будут преимущественно выбирать данный вариант. Если же вы хотите работать напрямую с AIDL (Android Interface Definition Language) или другими Java приложениями, то Java API для вас. Разработчики же желающие разрабатывать приложения с Android NDK и иметь более полный контроль выберут C API.
Во всех трёх вариантах API практически идентично и предоставляет инструменты для съёма данных с устройства, управлением им и проведения необходимых преобразований из различных систем координат. (коих имеется аж 6 штук)
Думаю, пересказывать документацию смысла мало, лучше просто ознакомиться с ней.
Ложка дёгтя
Однако, с дев-китом ситуация обстояла далеко не идеально. Временами Tango Service падал и либо отказывался работать, либо выдавал шум на выходе. В подобных случаях помогала только перезагрузка. Вообще чувствовалась некоторая сырость устройства, будем надеяться что это свойство дев-кита и в коммерчески доступных устройствах эти детские болячки будут исправлены.
Кроме того стоит отметить что устройство достаточно ощутимо нагревается, особенно в приложениях с 3D гафикой. Тут, к сожалению, принципиально поменять ситуацию вряд ли получится, т.к. тяжёлые вычисления производить надо в любом случае. Так что на продолжительную работу Tango устройств при активном использовании, думаю, рассчитывать не приходится. Для оценки можете взять свой телефон или планшет и запустить на нём 3D игру, примерное время жизни устройства думаю будет плюс-минус совпадать.
Кроме того не стоит ожидать чудес от построения карт. Примерно качество можно увидеть например в этом видео.
Плюс стоит помнить, что устройство не является волшебной палочкой и у него имеются собственные ограничения, которые весьма вероятно послужат сдерживающим фактором при его консьюмерском использовании, ибо обычный пользователь не подозревает об особенностях используемых алгоритмов локализации, поэтому во время игры на Tango устройстве он может сталкиваться с весьма неприятными лагами, прыжками и прочими проявлениями неидеальности работы. Например, мы так и не смогли сыграть в игры поставлявшиеся с устройством так, что бы уверено сказать, что они готовы для обычных пользователей, скорее всего текущие игры они опишут просто как «глючные и непонятные». Но возможно это просто симптом сырости устройства.
Демо: управляем роботом
Видео с конечным результатом недельного знакомства с Google Tango:
Исходный код скриптов для Unity опубликован на Гитхабе.
Идея
Не секрет, что виртуальная реальность являются нарастающим трендом. Но обычно она рассматривается с точки зрения добавления виртуального к реальному, мы же захотели, если можно так выразиться, добавить реального в виртуальное. На наш взгляд для настоящей виртуальной реальности недостаточно добавить виртуального оверлея, необходима обратная связь от виртуального к реальному. Примерно в том же ключе следовала работа из MIT по добавлению виртуальных интерфейсов для физических объектов.
В нашем случае мы решили сделать виртуальный интерфейс для вполне реального мобильного робота. Т.к. мы были весьма ограничены по времени, то решили ограничиться лишь управлением роботом посредством задания точек куда ехать роботу в реальном пространстве. Разумеется данную идею можно продолжать множеством направлений: добавлять дополнительные интерфейсы для робота (например, «голограмму» человека над роботом, визуализировать обмен данными между роботами), создавать обратную связь (например, показывая запланированную траекторию робота), делать игры совмещающие реальное и виртуальное (например, собирать виртуальные объекты реальной машинкой) и тому подобное.
Но даже простое исполнении контроля робота через задание целевых точек может оказаться весьма полезной фичей, особенно на производствах в которых становится всё больше и больше роботов.
Не говоря уже о потенциальных возможностях развития идей использования Google Tango для контроля физических объектов.
Исполнение
Для реализации данной идеи мы решили использовать Unity API, как наиболее простое и лёгкое для построения демо приложения в виду своей высокоуровневости. Для повышения надёжности определения координат мы использовали локализацию с использованием Area Learning. (на практике, вероятнее всего, роботы будут использоваться в известных помещениях, промерить которые не составит труда). Конечно можно было обойтись и без него, но точность и надёжность значительно от этого пострадают.
Разумеется, что бы приложение заработало желательно, что бы робот имел собственные средства навигации в пространстве, иначе нам постоянно придётся держать робота в области видимости устройства, что согласитесь не очень удобно. В нашем мобильном роботе использовался двухмерный лазерный сканер Hokuyo-04LX и программное обеспечение реализующие SLAM (одновременная локализация и картографирование), на выходе которого мы получали карту занятости (occupancy grid) окружающей местности, используя которую мы уже можем планировать траекторию движения робота. (софт для робота был по большей части самописным, но всё то же самое можно сделать используя готовые модули в ROS).
Теперь нам остаётся только сопоставить глобальные координаты устройства и робота, причём первые координаты уже выровнены по горизонтали посредством использования акселерометра, так что нам нужно по сути локализовать робота и его ориентацию в глобальном двухмерном пространстве устройства, после чего мы сможем проводить преобразования координат целевых точек из системы планшета в систему робота.
Для того что бы реализовать данную задумку приложению необходимо было включить в себя три фичи: трекинг движения, Area Learning и получение карты глубин. (или иначе говоря трёхмерного облака точек) Использование приложения проходит по следующему пути:
- Записать Area Description File (ADF), т.е. провести Area Learning помещения в котором будет использоваться программа
- Загрузить полученный ADF, подвигать немного устройство дабы устройство распознало особые точки и произвело собственную локализацию
- Отметить положение робота
- Отметить целевую точку и нажать кнопку исполнения команды
Причём стоит отметить, что отмечая положение робота мы узнаём только его координату, но не направление, тут мы пошли на ухищрение и упростили задачу создав правило, что робота надо всегда выбирать стоя строго сзади него. Конечно в общем случае робота можно детектировать по специальным меткам (скажем отображающимся на экране или наклеенным на корпусе) или же вообще используя нейронные сети на основе TensorFlow. Но опят же сказались ограничения по времени.
Код
Исходники в репозитории (ссылка выше) содержат лишь три скрипта: выбор файла ADF, сплеш-скрин инициализации (релокализации) после выбора ADF, основной скрипт управления и UI. Что бы воспользоваться этими скриптами достаточно добавить их в пример AreaLearning.
Unity скрипты исполняются определённым образом, имеется 3 главных коллбека, которые мы используем в нашем демо:
- Start() запускается при запуске приложения
- Update() запускается при каждом обновлении кадра
- OnGUI() запускается несколько раз за кадр
В итоге у нас получилась следующая структура:
- Start() назначает коллбеки к соответвующим событиям
- Update() обрабатывает касания к экрану и при необходимости запускает корутину для нахождения глобальных координат соответствующих тапнутым координатам экрана, плюс рисует красный маркер при успешном выборе точки
- OnTangoDepthAvailable, OnTangoPoseAvailable коллбеки ожидающие событий от Tango и устанавливающих соответствующие флаги при запуске
- _WaitForTouch корутины ожидающие тапа по экрану после нажатия одной из кнопок, после чего вызывает корутину для вычисления глобальных координат соответствующих месту тапа
- _WaitForDepth ожидает карту глубин (трёхмерное облако точек) и находит координаты точки в глобальной системе отсчёта для заданной координаты на экране
- _WaitForRequest обрабатывает посылку команды роботу, в нашем случае это был простой GET запрос
Код управления робота, думаем, выходит за рамки данной статьи, поэтому на данный момент не публикуется.
Заключение
По итогам нашего знакомства могу с уверенностью сказать: Google Tango чрезвычайно многообещающее устройство, которое способно совершить в ближайшие года переворот в том, что мы считаем мобильными устройствами. В общем, весьма маловероятно что данный проект закончит как Glass и Wave. Разумеется на данный момент устройства не лишены детских болячек, и как любая технология имеют свои пределы и особенности, но первое будет поправлено, а ко второму, думаю, пользователи и разработчики постепенно привыкнут.
Таким образом, мы считаем, что давно навзревавший бум виртуальной реальности по видимому скоро раскроется в полную силу, и Google Tango явно намерен возглавить его посредством своей простоты программирования, дружелюбия к разработчикам, сложившейся Android экосистемы, в так же активного продвижения Google.
Project Tango от Google, или новое восприятие мира? / Хабр
На очередной конференции Google iO, которая в этом году прошла 19 мая в Калифорнии, разработчики компании посвятили максимум времени нашумевшему проекту Tango, который призван кардинально поменять привычное понимание окружающего пространства.
В чем заключается уникальность технологии и чем она может быть интересна каждому из нас? В сегодняшней статье проведем краткий обзор основного функционала продукта.
Называть виртуальную реальность компонентом будущего уже не актуально. Она изо дня в день настолько плотно вкрапляется в нашу повседневную жизнь, что становится ее неотъемлемой составляющей. И технология дополненной реальности для мобильных устройств, над которой компания Google работает уже в течение трех лет, — яркое тому подтверждение. Фактически это “сплав” двух современных тенденций поколения миллениалов — виртуальной реальности и мобайла — что выводит пользователей мобильных устройств на качественно новый уровень. Что же обещает нам данная инновация?
Со слов разработчиков, новый смартфон Lenovo Phab 2 Pro, созданный в рамках проекта Tango, обладает улучшенной системой распознавания окружающего мира, преобразования трехмерных объектов в виртуальные единицы. Устройство создано в сотрудничестве с отделом Google Advanced Technologies and Products и оснащается двойной камерой, датчиком глубины и датчиком захвата движений, которые сканируют трёхмерное пространство с частотой 250 000 раз в секунду. По сути, это должно стать уникальным 3D-решением в области моделирования виртуальной реальности напрямую на смартфоне с помощью специальных приложений для Android и особой системы камер, с использованием технологии fish-eye.
Технический директор Google Джонни Ли считает, что технологии Project Tango изменяют сам принцип восприятия устройствами окружающего мира, и, как итог, — принцип нашего взаимодействия с окружающим миром при помощи смартфона или планшета. “Project Tango — это ещё один большой шаг вперед на пути к упорядочиванию сбора и обработки пространственной информации”, — подчеркивает Джонни.
На сегодняшний день можно найти достаточно обширный список приложений, предназначенных для устройства, поддерживающих Project Tango. Но мы уделим внимание тому функционалу, который разработчики считают ключевым и наиболее полезным для массового пользователя.
В основе Project Tango лежат три ключевые технологии:
Отслеживание перемещений — позволяет Phab 2 Pro (который разработан в рамках того же проекта) определять свое местоположение в трёхмерном пространстве;
Исследование окружающей среды — передаёт фаблету данные о его текущем положении;
Восприятие “глубины” пространства — позволяет фаблету анализировать окружающий мир за счёт обнаружения различных поверхностей и объектов.
Приложение позволяет транслировать 3D-модели на окружающее пространство на экране мобильного устройства, органично “вплетая” виртуальную реальность в действующую. Оно “мониторит” обстановку, на которую наведена специальная fish-eye-камера и создает 3D-проекциии.
Восприятие “глубины” пространства
Специальное приложение позволяет измерять расстояния между объектами. При наведении камеры мобильного устройства на окружающие предметы на его экране появляется зеленая окружность с точкой посередине.
Такими точками можно отмечать границы предметов и проводить измерения расстояний, как привычной всем линейкой. Эта функция, в первую очередь, предназначена для помощи при ремонте и перестановке к помещениях. Вы можете с легкостью измерить периметр окон, вычислить параметры мебели, измерить длину и ширину стола, узнать, каким объемом места Вы обладаете для выбора подходящих габаритов посудомоечной или стиральной машины и т.п. Картинку с цифровыми данными о размерах объектов Вашей квартиры Вы можете сохранить в галерее на мобильном устройстве и воспользоваться ими в нужный момент, например, при посещении интернет-магазина.
Ричард Молтсбаргер, директор по развитию сети магазинов Lowe’s:
«Технология Project Tango дает уникальную возможность понять и увидеть, как идеи по ремонту или переделке дома будут выглядеть в реальности. Мы разработали приложение для PHAB2 Pro, поскольку хотим научить людей использовать все возможности инструмента Tango».
Кстати, об интернет-магазинах. Этому пункту разработчики Google уделили особо внимание. На PHAB2 Pro есть специальное приложение Lowes Vision, которое позволяет в онлайн-режиме выбрать понравившийся Вам товар и в реальном размере “примерить” его на свою жилплощадь. Например, Вам нужно выбрать стулья в гостиную. Вы выбираете товар и “ставите” его в свою комнату, наводя камеру мобильного устройства на нужное место. Done! Теперь Вы можете оценить, насколько этот стул подходит к цвету обоев, стилистике интерьера или же рассчитать, сколько стульев вместится в Ваши «квадратные метры».
Либо Вам нужно выбрать красивую дизайнерскую лампу. Вопрос пары кликов. Вы так же выбираете ее и ставите на понравившееся место — журнальный столик или прикроватную тумбочку. Фактически это 3D-моделирование интерьера в Вашем смартфоне, без “посредников”.
Игры
Еще одна функция приложения Tango, которая порадует заядлых “геймеров”, которым наскучили сетевые видео-игры, — виртуальный “шутер”.
Мобильное устройство с приложением подключается к специальному игрушечному автомату, после чего пользователь стреляет по виртуальным целям, которые появляются в воздухе в виде проекции на окружающее Вас пространство. Во время такого интерактива Вы можете перемещаться куда угодно, без ограничения игрового пространства.
Виртуальный гид по музею
На конференции Джонни Ли поразил публику демонстрацией динозавров в формате 3D, проецируемых на пространство сцены. Речь шла о специальном приложении, через которое Вы можете посещать виртуальные туры по музеям. Вы заходите в каталог приложения музея, выбираете интересующее Вас экспонат (например, динозавра) и одним нажатием на экран смартфона интегрируете его 3D-модель в окружающее пространство. Параллельно Вы можете получить дополнительную информацию о физических характеристиках рептилии, изменить размер динозавра (который указывается в процентном соотношении от его реального размера), увеличить его, чтобы сделать презентацию максимально реалистичной.
И, внимание для ярых поклонников селфи, Вы можете “сфотографироваться” с динозавром и сохранить изображение в галерее, после чего с чувством собственного достоинства опубликовать его в свои соцсети.
Основной девиз Google, который “красной нитью” проходил по всей презентации Project Tango: “We seeking those who want to build the future with us” — “Мы ищем тех, кто хочет построить будущее вместе с нами”.
Насколько данное высказывание соответствует реальному положению вещей — каждый решает сам. Насколько заявленные функции будут использоваться среднестатистическими пользователями — так же под вопросом. Эти данные будут доступны широкой аудитории лишь с течением времени. Сейчас мы можем лишь подытожить, что задумка разработчиков Google действительно является уникальной и может иметь достаточно большие перспективы в будущем.
Например, нельзя не отметить две возможные социальные выгоды от использования приложений Project Tango — помощь в ориентации в пространстве для людей с ограниченными возможностями и точное определение службами спасения гео-локации людей, попавших в происшествие.
А что Вы думаете о проекте Tango?
BYYD • Мобильная рекламная платформа
Tango: Платформа дополненной реальности от Google
Tango — это вычислительная платформа дополненной реальности, разработанная Google. Он использует компьютерное зрение, чтобы позволить мобильным устройствам , таким как смартфоны и планшеты, определять свое положение относительно окружающего мира без использования GPS или других внешних сигналов.
На данный момент следующие устройства поддерживают Tango:
- Планшет Development Kit
- Смартфон Lenovo Phab2 Pro
- Asus ZenFone AR
В этом блоге мы рассмотрим компоненты платформы, ключевые концепции и варианты использования.
Компоненты Tango
Все Android-устройства с поддержкой Tango имеют следующие компоненты:
Камера слежения за движением: Tango использует широкоугольную камеру слежения за движением (иногда называемую линзой «рыбий глаз») для добавления визуальной информации, что помогает более точно оценить вращение и линейное ускорение.
Трехмерное определение глубины: для реализации восприятия глубины устройства Tango используют общие технологии глубины, включая структурированный свет, время полета и стерео. Структурированный свет и время полета требуют использования инфракрасного (ИК) проектора и ИК-датчика.
Акселерометр, барометр и гироскоп: акселерометр измеряет движение, барометр измеряет высоту, а гироскоп измеряет вращение, которое используется для отслеживания движения.
Датчик внешней освещенности (ALS): ALS аппроксимирует реакцию человеческого глаза на интенсивность света при различных условиях освещения и при использовании различных материалов для ослабления.
Ключевые понятия Tango
Отслеживание движения
Отслеживание движения позволяет устройству понимать свое движение по мере его перемещения по области. API-интерфейсы Tango обеспечивают положение и ориентацию устройства пользователя с шестью степенями свободы (6DoF).
Tango реализует отслеживание движения с помощью визуально-инерциальной одометрии, или VIO, для оценки того, где находится устройство относительно того, с чего оно началось.
Визуально-инерционная одометрия Tango дополняет визуальную одометрию инерционными датчиками движения, способными отслеживать вращение и ускорение устройства. Это позволяет устройству Tango оценивать как свою ориентацию, так и движение в трехмерном пространстве с еще большей точностью. В отличие от GPS, отслеживание движения с помощью VIO работает в помещении.
Область обучения
Area Learning дает устройству возможность видеть и запоминать ключевые визуальные особенности физического пространства: края, углы и другие уникальные особенности, чтобы позже оно могло снова распознать эту область.
Для этого он сохраняет математическое описание визуальных особенностей, которые он идентифицировал, в доступном для поиска индексе на устройстве. Это позволяет устройству быстро сопоставлять то, что оно видит в данный момент, с тем, что оно видело раньше, без каких-либо облачных служб.
Восприятие глубины
Восприятие глубины позволяет приложению определять расстояние до объектов в реальном мире.
Современные устройства лучше всего работают в помещении на среднем расстоянии (от 0,5 до 4 метров). Эта конфигурация дает хорошую глубину на расстоянии, уравновешивая требования к мощности для ИК-подсветки и обработки глубины.
Во-первых, в системе используется 3D-камера, которая создает инфракрасный точечный узор, освещающий контуры окружающей среды. Это известно как облако точек. По мере того, как эти точки света удаляются от своего первоначального источника (телефона), они становятся больше. Размер всех точек измеряется алгоритмом, а различные размеры точек указывают на их относительное расстояние от пользователя, что затем интерпретируется как измерение глубины. Это измерение позволяет Tango понять всю трехмерную геометрию, существующую в вашем пространстве.
API-интерфейсы Tango предоставляют функцию для получения данных о глубине в виде облака точек. Этот формат дает координаты (x, y, z) для максимально возможного количества точек сцены. Каждое измерение представляет собой значение с плавающей запятой, записывающее положение каждой точки в метрах в системе координат камеры измерения глубины.
Обзор Tango API
Это текущий стек разработки приложений Tango:
Tango Service — это служба Android, работающая в автономном процессе. Он использует стандартную межпроцессную связь Android для поддержки приложений, написанных на Java, Unity и C. Tango Service выполняет все основные технологии Tango, такие как отслеживание движения, изучение области и восприятие глубины. Приложения могут подключаться к Tango Service через API.
Варианты использования Tango
Внутренняя навигация
Устройство Tango можно использовать для точной навигации по торговому центру или даже для поиска определенного товара в магазине, когда эта информация доступна.
Игры виртуальной и дополненной реальности с несколькими пользователями
Используя возможности отслеживания движения Tango, разработчики игр могут экспериментировать с 6DoF для создания захватывающих 3D-игр с дополненной реальностью, превращать дом в игровой уровень или создавать волшебные окна в виртуальной и дополненной средах.
Измерение физического пространства и 3D-картографирование
Используя встроенные датчики, устройства с поддержкой Tango предназначены для распознавания и захвата 3D-измерений помещения, которые поддерживают захватывающие новые варианты использования, такие как моделирование внутренних пространств в реальном времени. и 3D-визуализация для шоппинга и дизайна интерьера.
Обнаружение маркера с помощью AR
Устройство Tango может искать маркер, обычно черно-белый штрих-код или определенный пользователем маркер. Как только маркер найден, на него накладывается 3D-объект. Используя камеру телефона для отслеживания относительного положения устройства и маркера, пользователь может обойти маркер и рассмотреть 3D-объект под любым углом.
Ссылки
https://developers.google.com/tango
https://medium.com/@rtpvr/project-tango-2093353f0def
https://en.wikipedia.org/wiki/Tango_(platform)
https://www.qualcomm.com/products/snapdragon/tango
Что случилось с Google Tango?
Помните Google Tango, вычислительную платформу дополненной реальности, которая была впервые разработана Google ATAP (Advanced Technology and Projects) в 2014 году? Прошло больше года с тех пор, как они закрыли его 1 марта 2018 года, и до сих пор обидно видеть, что такая многообещающая технология добавлена в список заброшенных проектов Google.
Но в чем именно причина? Google отказался от этого проекта? Давайте вспомним, как все начиналось, как это повлияло на тренд, а также чего нам ждать от AR в будущем.
Что такое танго (также известное как Project Tango)?
Tango, ранее называвшийся «Project Tango» во время его разработки, представлял собой вычислительную платформу дополненной реальности, которая работает вместе со сложными аппаратными компонентами, такими как данные акселерометра и гироскопа, включая камеры с датчиками движения и инфракрасные камеры, для отслеживания местоположения и отображения изображений его окружения в реальном времени. -время.
Идея проста и проста: сделать мобильный телефон, использующий технологию Tango, чтобы революционизировать то, как мы видим наше непосредственное окружение как физически, так и виртуально.
Местоположение и ориентация телефона в трехмерной среде отслеживаются, в то же время сохраняется виртуальное изображение его окружения. Это открывает возможность создавать приложения, такие как навигация в магазине, картографические утилиты, приложения для измерения, презентации и дизайна и многое другое.
Раннее развитие и этапы танго
Чтобы добиться значительных улучшений, Google создал два устройства Tango для разработчиков программного обеспечения:
- Peanut Phone
- Йеллоустонская табличка
.
Телефон Peanut
Первым устройством Tango был «Peanut», выпущенный в первом квартале 2014 года. Это был мобильный телефон Android с камерой движения «рыбий глаз», процессором Movidius Vision и RGB-IR. камера для цветного изображения и инфракрасного определения глубины. Акселерометр и гироскоп были добавлены только в более поздних разработках.
Устройство было роздано большому количеству исследователей, в частности, университетам компьютерного зрения и робототехники. Более того, он также был распространен среди разработчиков приложений и других технологических стартапов. Телефон «Peanut» закончился в сентябре 2015 года, когда Google развила и поддержала новые версии Android.
Планшет Yellowstone
После телефона «Peanut» компания Google выпустила «Yellowstone», который в целом имеет лучшую специфику.
А именно, сенсорный экран с разрешением 1920×1200 пикселей, цветная камера с разрешением 4 МП, четырехъядерный процессор Nvidia Tegra K1 с тактовой частотой 2,3 ГГц, флэш-память на 128 ГБ и возможность подключения 4G LTE вдобавок к тому, что было у телефона «Peanut».
27 мая 2017 года Google официально прекратил поддержку «Йеллоустон».
Комплект разработчика и коммерческие устройства Tango
Для справки: в продаже было всего 2 устройства Tango. Но был Dev Kit от Intel, который был доступен исключительно для разработчиков.
Смартфон Intel RealSense
В августе 2015 года Intel объявила, что к концу 2015 года выйдет смартфон Intel RealSense, комплект разработчика, в котором используется технология Tango с более сложной камерой ZR300, которая также имеет оптические функции, такие как камера типа «рыбий глаз», необходимые для Tango.
Только в январе 2016 года они начали публично предлагать устройство разработчикам. Примерно в то же время был выпущен первый коммерческий смартфон с технологией Tango, о которой мы поговорим далее.
Lenovo Phab 2 Pro
Анонсированный в 2016 году, выпущенный в августе и доступный для покупки в США в ноябре, был Lenovo Phab 2 Pro. У него был 6,4-дюймовый экран с процессором Snapdragon 652, 64 ГБ встроенной памяти, а также 16-мегапиксельная задняя камера в паре с 8-мегапиксельной передней камерой 9.0005
Asus Zenfone АР
В следующем году на выставке CES 2017 был анонсирован второй мобильный телефон с технологией Tango: Asus Zenfone AR.
Помимо технологии Tango, компания также запустила Daydream VR, еще один проект Google, ориентированный на виртуальную реальность, встроенную в мобильную ОС Android. На этот раз он работал на Snapdragon 821 с 6 или 8 ГБ оперативной памяти и 256 ГБ встроенной памяти.
Что случилось с танго?
Tango был настолько последователен в своем обновлении до 1 марта 2018 года, когда Google официально заявила, что окончательно закрывает платформу Tango. Что случилось?
Ожидалось, что Lenovo Phab 2 Pro вызовет негативную реакцию, поскольку это было первое устройство Tango, доступное для широкой публики. Проблемы варьируются от низкого времени автономной работы, громоздкости до низкой производительности.
В довершение ко всему, он был доступен в хозяйственных магазинах, а не у операторов беспроводной связи, что еще больше усложняет потребителям получение устройства в свои руки. Без пользовательской базы для поддержки и развития технологии AR платформа почти остановилась.
Несмотря на то, что Asus ZenFone AR был выпущен всего через три месяца после выхода Lenovo Phab 2 Pro, он все еще не попал в центр внимания. Что еще хуже, потребители утверждали, что всем AR-приложениям Tango не хватает точности и калибровки, и создается впечатление, что они используют демоверсии.
Вот почему Google полностью прекратил производство после Asus Zenfone AR. Однако это не означает, что они остановились навсегда, потому что Google достаточно умен, чтобы переключить свое внимание на другую платформу, над которой они работают. Вскоре мы подробно поговорим об этой платформе.
Как Tango повлиял на технологию дополненной реальности
Появление Google Tango открыло безграничные возможности для различных отраслей. Смешивая изображения виртуальной реальности с физическим миром, мир, каким мы его знали, перешел к более инновационному и продвинутому будущему.
Бизнес
Компании могут иметь дело с клиентами, а также более реалистично представлять своим клиентам бизнес-идеи.
Объединив виртуальную реальность с нашим физическим миром, можно достичь более захватывающего способа маркетинга при проведении презентаций или при предложении бизнес-идей. Кроме того, клиентам могут быть предоставлены реалистичные презентации, повышающие уровень потенциальных продаж или конверсий.
Измерение физического пространства
Google Tango также может дать вам приблизительную оценку реальных вещей вокруг вас.
Указав на края, вы получите оценку измерений и размеров объекта. Следует отметить, что, хотя результаты были не такими точными, они все же были достаточно хороши для большинства пользователей в то время. И, учитывая его огромный потенциал для улучшения и повышения точности в будущем, это может быть полезно во многих вещах, особенно в инженерном отделе.
Поскольку мобильные телефоны становятся необходимостью в нашей повседневной жизни, мы, вероятно, заменим рулетки и другие формы измерения такими технологиями. Возможно, это произойдет не в ближайшие 10 лет, но придет время, когда эта технология станет следующей большой вещью.
3D-картографирование/внутренняя навигация
Поскольку устройство отслеживает не только свое положение в пространстве, но и записывает подробную трехмерную среду, это открыло возможность создавать пользовательские приложения, такие как навигация в магазине и картографические утилиты, чтобы помочь покупателям ориентироваться. магазин.
С таким устройством вы сможете ходить по магазину так, как будто вы были там более сотни раз, даже если вы там впервые.
Домашнее хозяйство и мебель
Это устройство также может преобразить отдел товаров для дома. Помимо того, что они смогут лучше рекламировать свою продукцию с помощью реалистичных презентаций, клиенты также могут использовать такое устройство, чтобы проверить, подходит ли мебель для определенной области или пространства.
Эта технология позволяет вам поместить виртуальное изображение в ваше непосредственное окружение, чтобы вы могли видеть через экран, подходит оно или нет. В соответствии с этим вы также можете размещать другие предметы или живые организмы и учиться на них с помощью текстов и других интерактивных объектов, встроенных в приложение.
Игры
Технология дополненной реальности также вывела игры на новый уровень — например, Pokemon Go . Другим хорошим примером является игра под названием Ingress , мобильная игра с дополненной реальностью (AR), разработанная и опубликованная Niantic для устройств Android и iOS, в которой вы взаимодействуете с «порталами» или реальными местами и достопримечательностями, чтобы захватывать и защищать это от противоположной фракции.
Почему Google отказался от Tango и каково будущее AR
У Google было трехлетнее преимущество над Apple в области дополненной реальности, когда они выпустили Project Tango в 2014 году. Но, похоже, это оказалось сложнее, чем они изначально предполагали. Не говоря уже о дорогом оборудовании, которое требовалось для работы и не отставать от передовых технологий.
Даже спустя более трех лет с момента анонса платформы Google AR было выпущено только 2 телефона с технологией Tango: Lenovo Phab 2 и Asus ZenFone AR . В этот момент Google понимает, что с продуктом что-то не так, и им нужно что-то сделать… быстро.
Вот почему они решили направить свои усилия в Tango на что-то действительно многообещающее: ARCore , новый набор SDK, в котором есть новая и улучшенная технология Tango, за исключением дорогостоящего оборудования, такого как датчики.
Теперь вы можете подумать, что Tango ушел навсегда, но на самом деле это просто ребрендинг. Босс Google AR/VR Клэй Бавор даже добавил:
Наша цель с Tango состояла в том, чтобы действительно проверить основную технологию и показать миру, что это возможно. Очевидно, что другие начали инвестировать в AR для смартфонов, и наша цель с Tango всегда заключалась в том, чтобы реализовать эту возможность на как можно большем количестве устройств.
Бесспорно, есть много людей, интересующихся технологией Tango, но из-за отсутствия устройств, поддерживающих ее, понятно, почему им пришлось рассмотреть другой подход.