Любой якорь в ARKit (ARFaceAnchor
, ARImageAnchor
, ARPlaneAnchor
и т. Д.) Наследуется от класса ARAnchor
и, в некоторых случаях, от протокола ARTrackable
.
Каждый якорь в ARKitимеет свое специальное назначение (например, ARPlaneAnchor
- это специальная версия ARAnchor, предназначенная для процесса обнаружения самолетов).Я не думаю, что один якорь точнее другого.
Таким образом, все, что вам нужно для получения надежного результата отслеживания, - это хорошее освещение , различимые трехмерные поверхности и высококонтрастные текстуры на них .Также предварительно сохранено ARWorldMap
является хорошим моментом для постоянного опыта AR.
Не используйте повторяющиеся узоры текстуры / объектов и поверхностей со сплошными цветами при отслеживании вашей сцены.Кроме того, для лучших результатов отслеживания не отслеживайте даже слегка движущиеся объекты.Вам нужна только статическая среда.
И я должен сказать, что все устройства Apple хорошо откалиброваны для надежного и точного восприятия AR.
![enter image description here](https://i.stack.imgur.com/nTWBD.jpg)
PS
Несколько советов о ARWorldTrackingConfiguration () и ARImageTrackingConfiguration () .
Если включить функцию распознавания изображений в6 DOF ARWorldTrackingConfiguration()
Вы получите ARImageAnchor
объектов (для каждого обнаруженного изображения), это просто информация о положении и ориентации изображений, обнаруженных в сеансе AR отслеживания мира.Это не повышает точность отслеживания мира, но значительно замедляет скорость обработки.
guard let referenceImages = ARReferenceImage.referenceImages(inGroupNamed: "ARGroup",
bundle: nil) else {
fatalError("Missing expected resources.")
}
let configuration = ARWorldTrackingConfiguration()
configuration.detectionImages = referenceImages
configuration.maximumNumberOfTrackedImages = 3
session.run(configuration, options: [.resetTracking,
.removeExistingAnchors])
A world-tracking session
с включенным отслеживанием изображений может одновременно отслеживать только небольшое количество изображений.Вы можете отслеживать больше изображений с ARImageTrackingConfiguration
.Но точность и производительность обнаружения изображений значительно снижаются при увеличении количества изображений обнаружения.Для достижения наилучших результатов используйте в наборе не более 20-25 изображений.
ARImageTrackingConfiguration () :
При ARImageTrackingConfiguration
ARKit устанавливает 3Dпространство не путем отслеживания движения устройства относительно мира, а исключительно путем обнаружения и отслеживания движения известных 2D-изображений в поле зрения камеры.Image-only tracking
позволяет привязывать виртуальный контент к известным изображениям, только когда эти изображения находятся в поле зрения камеры.World tracking with image detection
позволяет использовать известные изображения для добавления виртуального контента в трехмерный мир и продолжает отслеживать положение этого контента в мировом пространстве даже после того, как изображение больше не отображается.World tracking
лучше всего работает в стабильной, неподвижной среде.Вы можете использовать отслеживание только по изображениям, чтобы добавить виртуальный контент к известным изображениям в других ситуациях, например, в рекламе внутри вагона метро.
Вывод : использование ARImageAnchors
в вашей сцене не добавляется дополнительный уровень качества для World Tracking Results.Проверьте Распознавание изображений в статье AR Experience для получения подробной информации.
Надеюсь, это поможет.