ARKit 2.0 - Сканирование 3D-объекта и создание из него 3D-сетки

Приложение iOS 12 теперь позволяет нам создавать ARReferenceObject и, используя его, может надежно распознать положение и ориентацию объекта реального мира. Мы также можем сохранить готовый .arobject файл.

Но:

ARReferenceObject содержит только информацию о пространственных объектах, необходимую ARKit для распознавания объекта реального мира, и не является отображаемой трехмерной реконструкцией этого объекта.

sceneView.session.createReferenceObject(transform: simd_float4x4, 
                                           center: simd_float3, 
                                           extent: simd_float3) { 
   (ARReferenceObject?, Error?) in
        // code
}

func export(to url: URL, previewImage: UIImage?) throws { }

Есть ли метод, который позволяет нам реконструировать цифровую трехмерную геометрию (низкополигональную или высокополигональную) из .arobject использование файла Poisson Surface Reconstruction или же Photogrammetry?

1 ответ

Решение

Вы ответили на свой вопрос цитатой из документации Apple:

ARReferenceObject содержит только информацию о пространственных объектах, необходимую ARKit для распознавания объекта реального мира, и не является отображаемой трехмерной реконструкцией этого объекта.

Если вы запустите этот пример кода, вы сможете увидеть для себя создаваемые им визуализации эталонного объекта во время сканирования и после распознавания теста - это всего лишь редкое облако трехмерных точек. Конечно, в том, что предоставляет API от Apple, нет фотограмметрии, и нет ничего особенного в плане восстановления реалистичной структуры в сетке.

Это не значит, что такие усилия невозможны - некоторые сторонние организации демонстрировали эксперименты по фотограмметрии на основе ARKit. Но а) здесь не используется сканирование объектов ARKit 2, только необработанный пиксельный буфер и характерные точки из ARFrame и 2) уровень экстраполяции в этих демонстрациях потребует нетривиальных оригинальных НИОКР, поскольку это далеко за пределы той информации, которую предоставляет сама ARKit.

В ARKit 3.5 вы можете легко реконструировать сетку вашей сцены.

С помощью ARKit 3.5 и iPad Pro 4-го поколения, оснащенного сканером обнаружения и определения дальности (LiDAR), вы можете восстановить топологическую карту окружающей среды. LiDAR работает в пределах 5 метров. Этот сканер может помочь вам улучшить качество Z-канала и таких функций, как окклюзия людей, отслеживание движения, немедленное физическое контактное тело и Raycasting.

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

Другие вопросы по тегам