Создание 3D-моделей при помощи дронов DJI и Agisoft Photoscan

перевод
MagisterLudi 20 октября в 15:45 11,3k
Оригинал: Matthew Brennan
Это руководство написано для новичков, но я постараюсь поделиться всеми советами и трюками, которые я узнал за последние 5 лет полетов и фотомоделирования.

image

Вступление


Меня зовут Matthew Brennam, я аспирант факультета информатики в Индианском университете. У меня есть опыт в архитектуром дизайне, но я работал археологом и дизайнером мультимедиа.

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

Недавняя потребительская доступность современных беспилотных летательных аппаратов (UAV / UAS) в сочетании с легкими камерами с высоким разрешением и повышенной вычислительной мощностью для фотомоделирования означает, что в настоящее время на долю времени и денег, которые она когда-то занимала, мы способны создавать высокоточные модели больших структур и ландшафтов, которые могут использоваться для приложений AR и VR, а также отображаться в реальном времени в Интернете.


image

Цель


Этот туториал расскажет вам (почти) все что вам нужно знать о создании точной 3D-модели объекта или ландшафта и использованием БПЛА на уровне потребителя.

Мы рассмотрим следующие:

  1. Доступные дроны для аэросъемки.
  2. Основы полета БПЛА для съемки и фотомоделирования.
  3. Обработка фотографий в Agisoft Photoscas для создания 3D-модели и использование некоторых дополнительных функций в Photoscan Pro для создания ортографических фотографий.
  4. Редактирование модели в Photoscan и ее оптимизия для загрузки на Sketchfab.

На рисунке показаны шаги, которые мы рассмотрим:

image

По факту — этот туториал даст вам базовые знания, которые вам понадобятся на каждом шаге, от принятия обоснованного решения при покупке, от того, как лучше все редактировать и делиться созданной 3D-моделью. Если у вас уже есть опыт использования БПЛА для съемки и моделирования, вы, вероятно, не узнаете ничего принципиально нового здесь — этот туториал написан для новичков, но я постараюсь поделиться всеми советами и трюками, которые я узнал за последние 5 лет полетов и фотомоделирования.

Прежде чем мы пойдем дальше, вот несколько примеров моделей объектов в разных масштабах, все они сфотографированны с дрона, созданы и полностью отредактированы в Photoscan, и загружены в Sketchfab:



Маленький масштаб: Древний обелиск, Сады Боболи, Флоренция, Италия (POI).



Средний масшатаб: первая христианская церковь и библиотека графства Монро, Колумбус, штат Индиана (фотографии ортографии и POI).



Большой масштаб: археологический объект Коса, Тоскана, Италия (только ортографические фотографии)

Беспилотные летательные аппараты и транспортные средства (UAS/UAV)


Беспилотные летательные аппараты и транспортные средства, или UAS и UAV для краткости, обычно называются дронами. Это не особенно точно, так как многие БПЛА на потребительском уровне не являются автономными. Другими словами, они требуют, чтобы пилот вносил свой вклад — они не летают и не принимают решения самостоятельно. Большинство БПЛА на уровне потребителей являются квадрокоптерами, что означает, что они используют 4 пропеллера для полета. Высокопроизводительные системы могут иметь от 6 до 8 пропеллеров, что позволяет им переносить большие камеры.

В настоящее время для потребителей доступно несколько относительно недорогих «летающих камер», но не все они подходят для фотомоделирования и съемки. Ключевыми факторами, которые следует учитывать при выборе БПЛА для этих целей, является разрешение камеры (если дрон продается с ней), наличие кардана (для стабилизации и ориентации камеры) и / или полезная нагрузка БПЛА (максимальный вес в камере / объективе, который дрон может перевозить и все еще безопасно летать).

DJI Phantom 3 Professional 4k


DJI Phantom 3 Professional 4k — самая продвинутая модель Phantom третьей серии. Оснащен 12-мегапиксельной камерой и подвесом. Это базовый квадрокоптер, который предлагает прямую трансляцию через приложение DJI на смартфон или планшет.

image

Ключевые моменты для DJI Phantom 3 Professional 4k:

  • 12-мегапиксельный объектив без FishEye
  • Камера и подвес в комплекте

Квадрокоптер DJI Phantom 4 Advanced


image

Ключевые моменты для DJI Phantom 4 Advanced:

  • 12-мегапиксельный объектив без FishEye
  • Камера и подвес в комплекте
  • Время полета до 30 минут
  • Датчики для обнаружения препятствий впереди
  • Трансляция видео на планшет или смартфон, а также возможность управления настройками камеры

DJI Mavic Pro


image

Ключевые моменты для DJI Mavic Pro:

  • 12-мегапиксельный объектив без FishEye
  • Камера и подвес в комплекте
  • Датчики для обнаружения препятствий
  • Трансляция видео на планшет или смартфон, а также возможность управления настройками камеры
  • Складная компактная конструкция обеспечивает удобно переносимую систему

Некоторые основные моменты, которые следует учитывать при использовании БПЛА для фотомоделирования, — это то, что размер датчика камеры, объектив и способность камеры может дистанционно запускаться или устанавливаться в режим временной шкалы. Все вышеуказанные системы отвечают этим требованиям. Режим Timelapse и / или дистанционное срабатывание затвора камеры — это, пожалуй, самый важный аспект камеры, используемой на дроне.

Камеры, доступные на DJI Phantom 4 и Mavic Pro, предлагают более традиционные объективы для камеры — они широкоугольные, но не ультраширокие или fisheye, что означает мало искажений. Для фотомоделирования это иногда лучше, хотя вы можете быть ограничены тем, насколько близко к объекту вы можете летать, сохраняя при этом все в кадре.

Основы использования БПЛА для фотомоделирования


Фотограмметрия или фотомоделирование — это технология, благодаря которой трехмерная цифровая поверхность может быть восстановлена из серии фотографий. Он часто используется для создания высокоточных 3D-моделей объектов реального мира, таких как эта древнегреческая бронзовая скульптура:



Лучший способ подумать о фотомоделировании объекта или ландшафта с помощью БПЛА — это представить, как бы вы приблизились к объекту, если он был очень маленьким, и вы смогли сфотографировать его с помощью карманной камеры. Например, на приведенной ниже диаграмме, иллюстрирующей фотосъемку для фотомоделирования, снимаются фотографии с различными высотами и углами в 360-градусном охвате.

image
Фотосъемка для фотомоделирования объекта.

Захват изображений с дрона работает практически так же. Камера должна быть настроена на временной режим (фото снимается каждые 2 или 5 секунд) или дистанционно запускается через контроллер БПЛА (при фотосъемке пилот нажимает кнопку захвата). Если вы сканируете один «объект», например здание или колонну, лучше всего работают фотографии POI, то есть камера указывает на интересующий объект, а окружающий ландшафт игнорируется.

Однако, если вы заинтересованы в захвате местности или географической функции, лучше всего использовать ортографические изображения. Ортографические фотографии — это то место, где камера указывает прямо на землю, а дрон (беспилотный летательный аппарат) пролетает по сетке в интересующей области. Можно комбинировать фотографии POI, ортографические фотографии и даже карманные фотографии в одном проекте для наилучшей возможной модели:

image

Объединение аэрофотографических, POI и карманных фотографий.

image
POI Фотографии обелиска.

БПЛА, перечисленные выше, могут летать от 15 до 30 минут, что обычно достаточно для сбора не менее 200 — 400 фотографий объекта или ландшафта, в котором вы летали. Конечно, если у вас несколько батарей, можно объединить фотографии с несколькими перекрывающимися полетами, чтобы можно было отсканировать даже очень большие области или объекты.

Создание 3D-модели из фотографий с помощью Agisoft Photoscan


Итак, мы только что сделали около 400 фотографий здания, теперь как превратить их в 3D-модель, которую мы сможем выложить в Интернете? В этом туториале мы будем использовать Agysoft's Photoscan, доступную, недорогую и хорошо поддерживаемую часть ПО фотограмметрии. Photoscan доступен на операционных системах Mac, Windows и Linux и распространяется в двух вариантах: Standard и Pro. Версия Pro включает в себя несколько функций, таких как использование маркеров, геопривязка и экспорт ортографических фотографий, которые будут особенно полезны тем, кто использует его для работы по землеустройству. Agisoft также предлагает скидки для образовательных учреждений на свое программное обеспечение, что делает его особенно популярным в университетах где изучают географию, археологию и антропологию!

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

Интерфейс


Все шаги, необходимые для реконструкции 3D-модели из фотографий, собраны во вкладке меню «Workflow», как показано ниже:

image

По порядку: 1) Добавление фотографий в проект, 2) Выровнять фотографии, 3) Построить плотное облако точек, 4) Построить трехмерную полигональную модель из облака точек и 5) Создать текстуры. Этот процесс, конечно, значительно упрощен: существует ряд действий, которые вы можете предпринять, чтобы получить лучший результат и оптимизировать свою модель.

Давайте рассмотрим шаги более подробно:

1) Добавление фотографий. Чтобы добавить фотографии, которые вы хотите использовать для создания 3D-модели, вы можете использовать кнопку «Add Photos...» в меню Workflow, чтобы открыть обзор файлов, где вы можете выбрать фотографии, или вы можете просто выбрать фотографии и перетащить их на панель «Workspace» в левом нижнем углу. Когда вы добавите фотографии, Photoscan создаст «Chunk» и отобразит количество добавленных вами фотографий.

2) Выравнивание фотографий: выбор «Align Photos...» вызывает диалоговое окно с параметрами для выравнивания. Я всегда использую «Highest» для настройки точности и «Generic» выбор пары. Аэрофотосъемка имеет множество полезных функций — ПО для фотомоделирования любит фотографии травы, земли, дорог и других «органических» неповторяющихся поверхностей. Для «Key point limit» и «Tie point limit» во вкладке «Advanced» я обычно устанавливаю 40000 точек и 10000 проекций соответственно.

Когда вы нажмете «ОК» в диалоговом окне «Align Photos», Photoscan найдет похожие точки на всех ваших фотографиях и восстановит позиции камеры в трехмерном пространстве. Он также создает «разреженное облако точек», которое будет состоять из 50 000-200 000 или около того точек в зависимости от ваших настроек и количества фотографий:

image
«Разреженное» облако точек в Photoscan после выравнивания изображений.

Сначала все кажется непонятным, но если использовать поворот «gizmo» (прозрачная сфера с красными, зелеными и синими линиями на ней), чтобы немного повернуть изображение, вы, вероятно, начнете понимать, где находится вверх, а где низ. Если ваш БПЛА не помещает фотографии с данными GPS в EXIF, модель не будет иметь собственной ориентации.

Теперь самое подходящее время для установки ограничивающей рамки, чтобы не тратить время на части, которые не интересны. Это можно сделать, используя кнопки «Resize Region» и «Rotate Region». Обычно я устанавливаю «Region» для охвата части облака точек, которая содержит объект или область, в которой я хочу создать модель. Это экономит время обработки и уменьшает объем ручной работы по редактированию, которая может потребоваться позже.

3) Build Dense Cloud: Это, возможно, самая интенсивная вычислительная часть обработки. В диалоговом окне «Dense Cloud» вы можете выбрать параметры качества и глубины. Если в вашем компьютере меньше 32 ГБ ОЗУ, я бы не рекомендовал переходить за «Medium» качество. Я считаю, что среднее качество, как правило, имеет достаточное разрешение для большинства моих потребностей: Высокое и Ультра-качество занимает намного больше времени, иногда до 2-3 дней обработки для проектов с сотнями 36-мегапиксельных фотографий.

Предупреждение: как только вы нажмете «ОК» в этом диалоговом окне, Photoscan будет использовать почти всю оперативную память вашего компьютера, что очень затрудняет работу над чем-либо еще. Я обычно оставляю процесс на ночь, или когда я знаю, что мне не нужно будет использовать компьютер.

image
Полученное плотное облако точек.

4) Build Mesh: если у вас есть плотное облако точек, возможно насчитывающее миллионы точек, можно построить трехмерную полигональную модель. Я всегда удостоверяюсь, что в этом диалоговом окне отмечена «interpolation enabled». В зависимости от размера облака, построение полигональной модели может занимать от 10 минут до нескольких часов.

Результатом будет трехмерная модель с обозначением вершин, полученной из фотографий. Перед созданием текстуры можно использовать инструменты выделения, чтобы обрезать любые ненужные части модели, также используйте «Close Holes», чтобы заполнить любые небольшие отверстия в модели, используйте «Gradual Selection», чтобы удалить небольшие скопления посторонней геометрии и используйте функцию «Decimate Mesh», чтобы уменьшить полигональную модель до допустимого размера для загрузки в Sketchfab.

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

  • Photoscan имеет прямоугольную область выделения и инструмент лассо для выбора и удаления частей полигональной модели (или плотного облака или разреженного облака). Можно использовать их, чтобы дать модели ровные края или удалить любые области, которые не нужны, с помощью кнопки «Delete».
  • «Close Holes», находится в разделе «Tools -> Mesh -> Close Holes ...» Здесь можно использовать слайдер для закрытия небольших отверстий, средних отверстий или всех отверстий в полигоне. Редко я использую опцию на 100%.
  • Можно удалить постороннюю геометрию с помощью «Gradual Selection...», который находится в «Edit-> Gradual Selection...». Отрегулируйте ползунок, пока не будут выделены красные точки посторонней геометрий, расположенных вокруг основного полигона, а затем удалите их.
  • Можно уменьшить размер полигональной сетки, чтобы легко загрузить ее на Sketchfab и легко просматривать свою модель на мобильных устройствах, используя функцию «Decimate Mesh». Здесь можно уменьшить количество полигонов в модели с 2-3 миллионов до 300-400 000. Это можно найти в «Tools -> Mesh -> Decimate Mesh ...»

5) Build Texture: теперь, когда мы немного очистили нашу модель и уменьшили ее размер, мы готовы ее текстурировать. Текстуры — это то, где сильно уменьшенные модели получают много деталей. Текстуры основаны на сделанных вами фотографиях, поэтому полученная модель будет иметь тени, которые были там, когда вы фотографировали. Используйте «Build Texture ...» в разделе «Workflow» для доступа к диалоговому окну. Здесь вы можете установить размер текстуры и количество текстур, которые вы хотите сгенерировать. Обычно я устанавливаю размер 2048, 4096 или 8192 и выбираю от 1 до 10 текстур, в зависимости от количества фотографий в проекте.

Теперь мы готовы экспортировать нашу модель и загрузить ее на Sketchfab! Photoscan имеет возможность загружать модели в один клик на Sketchfab. Эту опцию можно найти в разделе «File -> Upload Model ...». Кроме того, вы можете просто экспортировать модель в виде OBJ, FBX или другого формата и загрузить ее на Sketchfab.

Чтобы добавить окончательный блеск и презентабельность вашей модели в программе просмотра Sketchfab, перейдите в «Settings» -> «3D Settings» (см. ниже), чтобы настроить ориентацию, материал и освещение.

image

Заключение


В этом кратком туториале мы надеемся дать вам знания, необходимые для создания 3D-моделей с использованием БПЛА. Перед полетом на объект, обязательно ознакомьтесь с местными законами и правилами. Если вас интересует более подробная информация о любом аспекте этого процесса, от совмещения нескольких моделей, проверки точности в Photoscan и вывода ортографической фотографии или модели с географической привязкой, отличным местом для начала будет сайт Agisoft.

И вот несколько примеров 3D-моделей на SketchFab.



Проголосовать:
+24
Сохранить:
Лучшее на Habrahabr