Есть ли какие-либо ограничения в Vuforia по сравнению с ARCore и ARKit?
Я новичок в области дополненной реальности, работаю над приложениями, которые создают планы зданий (план этажа, план помещения и т. Д. С точными измерениями) с помощью смартфона. Поэтому я изучаю лучший AR SDK, который можно использовать для этого. Существует не так много статей, в которых Vuforia противопоставляют ARCore и ARKit.
Пожалуйста, предложите лучший SDK для использования, плюсы и минусы каждого.
3 ответа
Обновлено: 1 ноября 2018 г.
В данный момент ARCore
для Android и iOS, младший ARKit
предназначен только для iOS (iPhone 6s и выше), а старая версия Vuforia работает как на iOS, так и на Android. Vuforia использует ARCore
/ARKit
технология, если аппаратное обеспечение, на котором оно работает, поддерживает его, в противном случае оно использует свою собственную технологию AR и механизм (программное решение без зависимого оборудования).
Тем не менее, существует проблема разработки для OEM-смартфонов под управлением Android: все эти устройства нуждаются в калибровке, чтобы наблюдать одинаковый опыт AR.
ARCORE
Текущая версия зрелой ARCore
1,5. Это серьезное обновление принесло glTF
загрузка во время выполнения, идентификаторы Open Source Sceneform и Point Cloud. Более ранняя версия 1.2 принесла многопользовательскую поддержку. Как мы все знаем, ARCore позволяет мобильному устройству понимать и отслеживать его положение и ориентацию (6 DOF) относительно мира, используя Concurrent Odometry and Mapping
и позволяет определять размер и местоположение трех типов поверхностей: горизонтальных, вертикальных и наклонных поверхностей, таких как земля, столы, скамейки, стены и т. д., используя визуальные данные с камеры и с гироскопа / акселерометра (аналогичным образом работают ARKit и Vuforia). Понимание ARCore реального мира позволяет вам размещать трехмерные и двухмерные объекты, аннотации или другую информацию таким образом, чтобы интегрироваться с реальным миром. Вы можете поставить виртуальную чашку на угол вашего реального кофейного столика, используя Anchor
(используется в Android) или GARAnchor
(используется в iOS) класс.
ARCore старше, чем ARKit. Ты помнишь Tango
? Так что ARCore - это танго без глубины камеры. Мудрое приобретение FlyBy и MetaIO помогло Apple наверстать упущенное. Предположим, это очень хорошо для AR-индустрии. ARCore требует Android 7.0 Nougat или более поздней версии, поддерживает ускорение OpenGL ES 3.1 и интегрируется с Unity, Unreal и веб-приложениями. На данный момент самый мощный набор микросхем AR для платформы Android - это Kirin 980. Цена: бесплатно.
Аркыт
ARKit имеет много полезных функций для точных измерений. Например, его последняя версия 2.0 добавляет ARWorldMap
функциональность для Persistent AR experiences
, Это позволяет сохранить карту мира, когда ваше приложение станет неактивным, а затем восстановить ее при следующем запуске приложения в той же физической среде. Вы можете интенсивно использовать ARAnchor
родительский класс из возобновленной карты мира для размещения одного и того же виртуального содержимого на тех же позициях из сохраненного сеанса. Инструменты измерения в ARKit очень точны. ARKit имеет 3D-трекинг, 2D-трекинг, обнаружение вертикальных / горизонтальных плоскостей, обнаружение изображений, обнаружение QR-кода (с каркасом Vision), обнаружение 3D-объектов и т. Д. Оба, ARKit и ARCore используют специальные методы - называемые Visual-Inertial Odometry
в ARKit и Concurrent Odometry and Mapping
в ARCore - для точного отслеживания камеры / объекта. И, используя iBeacons
в ARKit приложение, поддерживающее iBeacon, может знать, в какой комнате оно находится, и отображать правильное содержимое для этой комнаты.
При сборке iOS-приложения, совместимого с ARKit 2.0, на Mac требуется Xcode 10 и мобильное устройство под управлением iOS 12. ARKit поддерживает ускорение Metal 2.0 и OpenGL GPU. ARKit имеет multiuser support
(до 6 человек) и совершенно новый USDZ file format
Pixar (хорошо для сложных трехмерных сцен), и, конечно, физически основанный рендеринг PBR
, ARKit интегрируется с Unity и Unreal. На данный момент самый мощный набор микросхем AR для платформы iOS - A12 Bionic. Цена: бесплатно.
Vuforia
PTC Vuforia Engine 7.5 обладает примерно теми же возможностями, которые вы можете найти в ARKit 2.0 и ARCore 1.4, а также новыми функциями, такими как поддержка внешних камер. Vuforia имеет отдельную версию и версию, встроенную непосредственно в Unity. Он имеет следующие функциональные возможности: целевые объекты модели (позволяют распознавать объекты по форме с использованием уже существующих 3D-моделей), целевые изображения (самый простой способ размещения содержимого AR на плоских объектах), многоцелевые объекты (для объектов с плоскими поверхностями и несколькими сторонами), Цилиндрические цели(для размещения содержимого AR на объектах цилиндрической формы), Ground Plane, VuMarks(позволяют идентифицировать и добавлять контент в серии объектов), Fusion и Object Targets(для сканирования объекта). Vuforia Fusion - это новая возможность, разработанная для решения проблемы фрагментации в AR, позволяющая использовать такие технологии, как камеры, датчики, наборы микросхем и программные среды, такие как ARKit. С Vuforia Fusion ваше приложение автоматически обеспечит наилучшие результаты без дополнительной работы с вашей стороны. Внешняя камера дает новый взгляд на то, что возможно с дополненной реальности. Это позволяет Vuforia Engine получать доступ к внешним источникам видео за пределами камеры, оснащенной телефонами и планшетами. Используя независимую камеру, разработчики могут создать опыт AR, который предлагает вид от первого лица из игрушек, роботов или промышленных инструментов.
Vuforia поддерживает ускорение Metal для устройств iOS. Также вы можете использовать Vuforia Samples для своих проектов. Например:Vuforia Core Samples
Библиотека включает в себя различные сцены с использованием функции Vuforia, в том числе предварительно сконфигурированные объекты распознавания сцены, которые можно использовать в качестве эталона и отправной точки для распознавания объектов приложения.
Vuforia SDK Price (есть четыре варианта): бесплатно(вам нужно зарегистрироваться для получения бесплатного лицензионного ключа разработки), 499 долларов США за лицензию Classic (для приложений, созданных для компаний с доходом менее 10 миллионов долларов США в год), 99 долларов США в месяц за лицензию Cloud и PTC также предоставляет лицензию Pro по личной цене (без ограничения дохода).
Нет никаких существенных ограничений для развития в Vuforia по сравнению с ARCore и ARKit.
Для более подробной информации читайте, почему ARKit лучше, чем альтернативы? статья.
For me, ARKit has a greater measurement accuracy without any need to calibrate a scene
, Точность измерений Vuforia зависит от того, для какой платформы вы разрабатываете. Обратите внимание: приложение Vuforia Chalk использует ARKit от Apple.
Поэкспериментируйте с бесплатными приложениями AR из App Store и Google Play.
И здесь я хотел бы показать вам, как C#
скрипты выглядят как в Unity при работе с Vuforia. В следующем примере показано, как дополнить Vuforia Image Target
с пользовательской 3D-моделью:
using UnityEngine;
using Vuforia;
using System.Collections;
public class MyPrefabInstantiator : MonoBehaviour, ITrackableEventHandler {
private TrackableBehaviour mTrackableBehaviour;
public Transform myModelPrefab;
void Start () {
mTrackableBehaviour = GetComponent<TrackableBehaviour>();
if (mTrackableBehaviour) {
mTrackableBehaviour.RegisterTrackableEventHandler(this);
}
}
void Update () { }
public void OnTrackableStateChanged(TrackableBehaviour.Status previousStatus,
TrackableBehaviour.Status newStatus) {
if (newStatus == TrackableBehaviour.Status.DETECTED ||
newStatus == TrackableBehaviour.Status.TRACKED ||
newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED) {
OnTrackingFound();
}
}
private void OnTrackingFound() {
if (myModelPrefab != null) {
Transform myModelTrf = GameObject.Instantiate(myModelPrefab) as Transform;
myModelTrf.parent = mTrackableBehaviour.transform;
myModelTrf.localPosition = new Vector3(0f, 0f, 0f);
myModelTrf.localRotation = Quaternion.identity;
myModelTrf.localScale = new Vector3(0.0005f, 0.0005f, 0.0005f);
myModelTrf.gameObject.active = true;
}
}
}
Отличная информация. Однако хотел бы добавить несколько пунктов, исходя из опыта использования ARCore и ARkit. Что касается картографии, ARCore имеет возможность управлять более крупными картами по сравнению с ARkit. ARcore отслеживает больше функций по сравнению с ARkit. Еще один момент заключается в том, что ARKit различает горизонтальное и вертикальное обнаружение поверхностей лучше, чем ARcore.
AR KIT и AR CORE, они являются лучшим вариантом. Библиотеки разработаны сообществом разработчиков операционной системы (устройства Android / Apple), поэтому вы также получаете последние обновления для последних технологических достижений устройств и поддержки.
Так что, если вы планируете работать в сфере AR в течение более длительного периода, вам нужно придерживаться этих двух (только мое мнение). Я очень давно работаю над вуфорией. Он научил меня основам AR и создал множество различных приложений. Но на определенном уровне были барьеры, главной для меня была цена, которая привела к определенным ограничениям. Где ar-foundation / AR core /AR kit бесплатные и более стабильные, но и немного гибкие. сравнительно
Вы можете изучить AR-FOUNDATION: это потрясающий пакет по единству, вам просто нужно один раз написать код, и он будет экспортирован в Android и IOS с помощью ARCORE И ARKIT.
ОСОБЕННОСТИ VUFORIA: https://library.vuforia.com/getting-started/vuforia-features
Особенности AR Foundation : https://unity.com/unity/features/arfoundation[ !! Снимок экрана с веб-сайта ARfoundation] ]11