Содержание статьи
Сканирование сейчас применяют все чаще, и с развитием этой технологии она может стать еще более востребованной при разработке игр и приложений, в том числе для VR. Реконструирование объектов позволит создавать максимально реалистичные игры, даже если у тебя нет полноценной игровой студии, а также значительно сэкономит время и средства.
В этой статье ты узнаешь о четырех способах сканирования реальности:
- фотограмметрии;
- системах структурированного света;
- ToF-камерах и лазерах;
- камерах светового поля.
Фотограмметрия
Первый способ сканирования реальности — фотограмметрия. Это самый доступный и универсальный способ получить трехмерную модель объекта или сцены. Фотограмметрия определяет форму, размер и положение объектов по фотографиям.
Как это работает?
На первом этапе делаем серию фото с помощью обычной камеры. Фотографируем объект или сцену со всех сторон так, чтобы снимки получились внахлест.
На втором этапе ПО находит на каждой фотографии определяющие соответствия. Существует несколько методов получения таких дескрипторов: SIFT, SURF, KAZE, AKAZE, ORB и BRISK. Пока сравнительный анализ этих инструментов на русском языке недоступен. Детально изучить этот вопрос поможет англоязычная статья на Research Gate.
На третьем этапе ПО сопоставляет дескрипторы друг с другом. Получается трехмерное облако точек, которое описывает реконструируемый объект. Для каждой фотографии ПО строит карту глубины, где рассчитано расстояние от камеры до каждого пикселя.
Софт объединяет данные с нескольких карт глубины и строит меш объекта.
Затем алгоритм учитывает усредненное значение пикселей и текстурирует меш. Результат на видео.
Готовую модель невозможно использовать для создания 3D-контента или VR. После фотограмметрии нужна ручная доработка, о ней более подробно ты можешь прочитать в статье на сайте Exyte.
Какое оборудование понадобится?
Для фотограмметрии подойдут несколько устройств — камера смартфона (объект на картинке выше снят на Samsung S8+), зеркальная или беззеркальная камера со следующими функциями и свойствами:
- фиксация баланса белого;
- фиксация фокусного расстояния;
- минимальная дисторсия объектива;
- короткая выдержка при съемке с рук.
Если ты снимаешь на смартфон, имей в виду, что для фотограмметрии нужен ручной режим съемки и хорошая оптика. Для получения качественного результата лучше всего использовать новые модели. На Android и iOS есть приложения, которые фотографируют объект и демонстрируют предварительный результат сканирования в реальном времени. После объект реконструируется на смартфоне или в облаке, но результат не впечатляет. Полученные модели не годятся для 3D-контента или VR. На мой взгляд, наиболее перспективное приложение — display.land.
Даже лучшие камеры смартфонов имеют слишком малые физические размеры матрицы и линз. Без специальных программно‑аппаратных фильтров они уступают полноформатным камерам, особенно если освещение неидеальное.
info
Если тебе интересно, может ли камера смартфона соперничать с системными камерами, ты можешь почитать об этом в статье на сайте DXO.
От качества полноформатной камеры зависит многое, но основную работу в реконструкции объекта делает ПО, например платформа MeshRoom или коммерческое ПО RealityCapture.
Для реконструирования с использованием MeshRoom требуется мощный компьютер (вроде Core i7, 32 Гбайт RAM, Nvidia CUDA).
Ограничения фотограмметрии
У фотограмметрии несколько ограничений:
- поверхности объектов не должны быть отражающими, прозрачными или однотонными;
- объект не должен двигаться и менять форму;
- освещение и оптические параметры камеры не должны меняться.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»