Внедрение мобильной дополненной реальности и искусственного интеллекта

Насколько это сложно на самом деле?

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

Всего три года назад и AR, и AI были в значительной степени отнесены к верховным жрецам ботаников. AR и AI были очень интересными темами, которые большинство людей не понимали и не хотели связываться с ними. Но все быстро меняется.

Что касается AR, благодаря Google Glass, Pokémon Go, HoloLens, ARKit/ARCore и небольшому количеству других технологий мир начинает осознавать огромный потенциал этой технологии. Однако ИИ остается подозрительным и чуждым для большинства людей. Большинство из нас знают об искусственном интеллекте только из антиутопических научно-фантастических фильмов, и мы не знаем, насколько этот фантастический мир воплощается в реальной жизни.

Чего большинство людей не ценит, так это того, что и AR, и AI были с нами десятилетиями, и только в последнее время, благодаря некоторым впечатляющим технологическим прорывам и большой тяжелой работе некоторых исключительно умных людей, оба теперь начинают хит умственного мейнстрима общества. Поэтому, естественно, среднестатистические ботаники среди нас спросят: «Насколько сложно их реализовать по отдельности или вместе?»

AR

Я начну с дополненной реальности хотя бы по той причине, что это визуальная технология, и большинство из нас понимает то, что мы видим, легче, чем то, чего мы не видим. Хотя многим нравится делать вид, что мобильная AR стала возможной с появлением ARKit от Apple, реальность такова, что AR существует на мобильных устройствах уже много лет. Исторически сложилось так, что у вас был выбор написать все самостоятельно с нуля (очень дорого, но с максимальной гибкостью!), используя SDK, такой как Vuforia или Kudan, для развертывания собственного приложения AR ( намного дешевле, но все же очень гибко), используйте инструмент CMS на основе браузера с проприетарным сканером (50 долларов США и один день работы, чтобы получить свой первый опыт работы с дополненной реальностью) или используйте AWE.media и получите полностью независимый от платформы, инструмент разработки и развертывания на основе браузера. Хотя ARKit и ARCore можно рассматривать как достижения в некоторых областях, поскольку они добавляют встроенное определение глубины и приближают AR к мобильной ОС, их также можно рассматривать как огромный шаг назад для потребителя, поскольку они разрушают ландшафт разработки приложений, продвигая разработку для конкретной платформы. И это как раз тогда, когда мы привыкаем к законной цели Напиши один раз, беги везде.

Однако ARKit и ARCore упрощают намного создание приложений дополненной реальности для конкретных платформ и, что наиболее важно, привносят в смесь естественное для платформы восприятие глубины, чего никто еще поставил в производственном качестве. Хотя ARKit и ARCore начинались с очень маленьких и простых интерфейсов, со временем это изменится, и разработчикам AR SDK придется все больше и больше бороться, чтобы оправдать свое существование. Инструменты кроссплатформенной разработки, такие как Xamarin и Unity, станут еще более важными для среды разработки дополненной реальности.

Насколько легко внедрить дополненную реальность с помощью ARKit или ARCore? Замечательно легко! И ARKit, и ARCore — очень маленькие SDK, которые очень легко реализовать. Оба они имеют инструмент геометрии, который облегчает размещение виртуальных объектов в поле зрения камеры и создает впечатление, что эти виртуальные объекты зафиксированы в трехмерном пространстве. Когда вы перемещаетесь, виртуальный объект остается на месте. Вы можете ходить над/под/вокруг него, рассматривая объект буквально под любым углом. Вы можете взаимодействовать с объектом — толкать, тянуть, сжимать, увеличивать и бросать его. Кроме того, и ARKit, и ARCore имеют обнаружение плоскостей, которые в настоящее время ограничены горизонтальными плоскостями для обоих.

Все это доступно программисту с очень небольшим количеством кода. ARKit и ARCore делают всю действительно тяжелую работу за вас. Возможно, самым большим минусом здесь являются требования к платформе, потому что и ARKit, и ARCore очень требовательны.

ARKit

  • Телефоны — iPhone 6 или новее
  • Колодки — iPad 2017 или iPad Pro

ARCore

  • Телефоны — Google Pixel и Pixel XL или Samsung Galaxy S8.
  • Пэды — ARCore не работает на пэдах пока

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

Примеры ARKit

Примеры ARCore

Достаточно сказать, что теперь можно легко записывать AR-контент с учетом глубины в приложения для iOS и Android. Теперь задача состоит в том, чтобы создавать приложения, в которых дополненная реальность добавляет законную ценность.

AI

Что насчет ИИ? Вам все еще нужно быть «очень умным», чтобы подключить и использовать ИИ? Нет, больше нет. За последний год в открытом доступе появилось множество инструментов машинного обучения, которые на 90 % упростили использование ИИ, а также запустили его в мобильном приложении.

Что вам нужно сделать, так это понять несколько концепций. Современные механизмы машинного обучения, такие как TensorFlow, создают модели, которые можно загрузить на ваш мобильный телефон с помощью вашего приложения и использовать для выполнения определенных задач. Например, для Классификации изображений вы можете использовать модель Inception V3, которая может быть урезана примерно до 25 МБ. 25 МБ может показаться много для мобильного приложения, но с учетом того, что средний размер игровой программы составляет более 60 МБ, 25 МБ вряд ли будут огромными.

Теоретически шагов для использования модели немного.

  1. Найдите модель, подходящую для вашей задачи (например, классификация изображений, медицинская диагностика, обработка естественного языка и т. д.) или создайте собственную модель (много работы, требующей большого количества данных).
  2. Обучите и протестируйте модель с вашими данными
  3. Реализуйте модель в своем мобильном приложении

На самом деле все гораздо сложнее. Теперь задача состоит в том, чтобы найти модель для работы, которую вы хотите выполнять. Найти модель для классификации изображений несложно, потому что это один из основных вариантов использования ИИ. Однако, хотя вы можете легко найти статьи и обсуждения по любому количеству моделей ИИ, поиск моделей, которые вы можете скачать и использовать любой ценой, в настоящее время является темным искусством. Единственное место, где были доступные модели, — это репозиторий TensorFlow на GitHub. Я искал в Интернете от и до и связался с дюжиной людей, занимающихся машинным обучением и искусственным интеллектом, и никто не знал о другом хранилище моделей, платном или бесплатном. Думаю, нам еще немного рано.

Таким образом, вам остается создать собственную модель, собрать данные и обучить модель. Доступные инструменты, такие как TensorFlow от Google, Core ML от Apple и Azure Machine Learning Studio от Microsoft, делают создание, обучение и проверку моделей разумным предложением. Теперь вы можете экспериментировать и работать с машинным обучением без степени в области компьютерных наук. Реальные проблемы сейчас заключаются в создании модели, которая действительно успешно справляется с желаемой задачей, и в создании достаточного количества данных для обучения и проверки модели.

Разве не там мы были 12 месяцев назад? Нет, не совсем. 12 месяцев назад вы, вероятно, потратили бы в 10 раз больше усилий, чтобы добиться половины результатов. Машинное обучение перешло от высокотехнологичных исследований к прикладным технологиям. Я подозреваю, что еще через 12–24 месяца мы увидим еще один уровень абстракции, который сделает создание, обучение и оценку моделей еще более интуитивными. Тогда вам придется собирать полезные данные для обучения. Если повезет, может развиться рынок моделей машинного обучения, который позволит вам взять модель, доказавшую свою эффективность в желаемом навыке, и все, что вам нужно сделать, это добавить обучающие данные, специфичные для вашего продукта / области.

Когда все сказано и сделано, технологические гиганты проделали потрясающую работу, которая позволила нам использовать ИИ, не будучи экспертом в области ИИ, И дала нам возможность создавать, обучать и оценивать модели с разумной кривой обучения.

Резюме

В результате и AR, и ИИ стали доступны каждому. Хотя для глубокого понимания обеих технологий требуется большой интеллект, не нужно быть гением, чтобы реализовать их в приложениях.

Почему об этом стоит писать? Потому что работа, проделанная для того, чтобы сделать программы AR и AI доступными для масс, сделает AR и AI доступными для миллионов уже развернутых смартфонов. Стоимость внедрения дополненной реальности и искусственного интеллекта только что достигла нового минимума, в то время как их коммерческое качество достигло нового максимума.

Для AR варианты использования очень широки и убедительны:

  • Обучение (глобальный рынок высшего образования представляет собой отрасль стоимостью 2T с оборотом всего 2%, оцифрованную только на 2%).
  • Обслуживание и поддержка ($47T по всему миру)
  • Здравоохранение (1,6 тл. долл. T по всему миру)
  • Аварийное реагирование (88 миллиардов долларов США по всему миру)
  • И этот список можно продолжать и продолжать

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

Одна вещь, которая, как мне кажется, совершенно ясна после обзора текущего ландшафта ИИ, заключается в том, что те, кто заявляет, что пройдет еще 40 лет, прежде чем ИИ даст о себе знать, не могут быть более неправы. Дошло до того, что человек со средним уровнем интеллекта может создать приложение с поддержкой ИИ, которое обеспечивает производительность, немыслимую всего 12 месяцев назад. Ракета ИИ запущена, и ее не остановить.