Программа для создания 3D-моделей из фотографий: выбор, съёмка и обработка

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

Качество результата зависит в первую очередь не от программы, а от исходных фотографий: равномерного освещения, достаточного перекрытия кадров и резкости. Ниже разберём, как работает технология, какие программы выбрать и как правильно организовать съёмку, чтобы модель получилась детальной и без артефактов.

Как работает фотограмметрия

Принцип фотограмметрии напоминает человеческое бинокулярное зрение: программа находит на разных снимках одни и те же точки объекта и, зная, что камера двигалась между кадрами, вычисляет положение этих точек в пространстве. Из миллионов таких точек формируется облако точек, затем строится полигональная сетка (меш) и на неё «натягивается» текстура, собранная из исходных фотографий.

Процесс обычно проходит в четыре этапа:

  • 📷 Выравнивание фотографий — программа определяет положение камеры для каждого снимка и строит разреженное облако точек.
  • ☁️ Построение плотного облака — вычисляется геометрия поверхности объекта с высокой детализацией.
  • 🔺 Создание меша — облако точек превращается в полигональную сетку.
  • 🎨 Текстурирование — на модель проецируются цвета и детали с исходных фото.

Каждый этап можно контролировать вручную: например, удалить «шумные» точки до построения меша или уменьшить количество полигонов, если модель нужна для игры или веба.

Обзор популярных программ

Выбор программы зависит от задачи, бюджета и мощности компьютера. Ниже — сравнение наиболее известных решений.

ПрограммаТип лицензииПлатформаОсобенности
RealityCaptureБесплатная (с ограничениями) / платнаяWindowsВысокая скорость обработки, популярна в геймдеве
Agisoft MetashapeПлатная (есть пробная версия)Windows, macOS, LinuxГибкие настройки, поддержка скриптов Python
MeshroomБесплатная, открытый кодWindows, LinuxТребует видеокарту NVIDIA с поддержкой CUDA
3DF ZephyrБесплатная версия / платнаяWindowsПростой интерфейс, подходит новичкам
PolycamМобильное приложение, подпискаiOS, Android, вебОбработка в облаке, быстрый результат на телефоне

Для первого опыта разумно начать с бесплатного варианта: Meshroom подойдёт при наличии видеокарты NVIDIA, а 3DF Zephyr Free или облачные мобильные приложения — если дискретной графики нет. Профессиональные задачи (сканы для игр, кино, реставрации) чаще решают в RealityCapture или Metashape.

⚠️ Внимание: условия лицензий и ограничения бесплатных версий периодически меняются. Перед покупкой или коммерческим использованием сверяйтесь с актуальными условиями на официальном сайте разработчика.
📊 Какая программа для фотограмметрии вам интереснее?
RealityCapture
Agisoft Metashape
Meshroom (бесплатная)
Мобильное приложение (Polycam и др.)

Требования к компьютеру

Обработка фотограмметрии — ресурсоёмкая задача. Наиболее требовательные этапы (построение плотного облака и глубинных карт) используют видеокарту, поэтому дискретная GPU существенно ускоряет работу. Часть программ, например Meshroom, рассчитана именно на CUDA-ядра NVIDIA.

Оперативной памяти желательно иметь запас: при обработке сотен снимков в высоком разрешении расход RAM растёт быстро. Для хранения проектов нужен быстрый диск — исходные фотографии плюс промежуточные файлы могут занимать десятки гигабайт. Точные системные требования различаются между программами и версиями, поэтому перед установкой проверьте их на сайте разработчика.

Как правильно снимать объект

Съёмка — самый ответственный этап. Ошибки, допущенные здесь, программа не исправит: размытые или «дырявые» исходники дадут деформированную модель. Основные правила:

  • 🔄 Перекрытие кадров — каждый следующий снимок должен перекрывать предыдущий примерно на две трети; двигайтесь вокруг объекта небольшими шагами.
  • 💡 Рассеянное освещение — пасмурный день на улице или мягкий свет в помещении; избегайте жёстких теней и бликов.
  • 🚫 Неподвижный объект — всё, что движется между кадрами (листва, люди, шторы), создаёт артефакты.
  • 🔍 Резкость и глубина резкости — объект должен быть в фокусе целиком; не используйте цифровой зум.
  • 🪞 Матовые поверхности — глянец, стекло и зеркала плохо распознаются; такие поверхности при необходимости матируют.

Снимайте объект по кругу на нескольких высотах: на уровне объекта, чуть выше и чуть ниже. Для мелких предметов удобно использовать поворотный стол, но тогда фон должен быть неподвижен и однороден — иначе программа «привяжется» к фону вместо объекта.

⚠️ Внимание: отключите на камере автоматическую стабилизацию экспозиции между кадрами, если есть такая возможность — резкие скачки яркости между снимками затрудняют сопоставление точек. Снимайте в ручном режиме с фиксированными настройками.

☑️ Подготовка к фотограмметрической съёмке

Выполнено: 0 / 5

Пошаговая обработка в программе

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

  1. Импортируйте фотографии в проект и запустите выравнивание (alignment).
  2. Проверьте разреженное облако: все ли камеры встали на место, нет ли «отвалившихся» снимков.
  3. Удалите лишние точки — фон, мусор, артефакты за пределами объекта.
  4. Запустите построение плотного облака или сразу меша.
  5. Сгенерируйте текстуру и экспортируйте модель в нужном формате (OBJ, FBX, glTF, STL).

Если часть камер не выровнялась, обычно помогает добавление промежуточных снимков или повторное выравнивание с более высоким качеством. Когда модель получается «рваной» в отдельных местах — это признак недостаточного перекрытия кадров в этой зоне, и проще доснять объект, чем исправлять геометрию вручную.

Какие форматы экспорта выбрать

OBJ и FBX — универсальные форматы для 3D-редакторов и игровых движков. glTF/GLB удобен для веба и AR-приложений. STL используют для 3D-печати, но он не хранит текстуры — только геометрию.

Типичные проблемы и их решения

Даже опытные пользователи сталкиваются с дефектами моделей. Вот частые ситуации и способы их устранения:

  • 🕳️ Дыры в модели — не хватило ракурсов; доснимите проблемную зону или закройте отверстия в 3D-редакторе (Blender, MeshLab).
  • 🌫️ Размытая текстура — причина обычно в смазанных исходниках; проверьте резкость фото до съёмки, а не после.
  • 👻 «Призраки» и двойные поверхности — объект или фон двигался между кадрами; переснимите сцену.
  • 📉 Часть фото не выровнялась — мало перекрытия или однородная поверхность; добавьте снимков либо временно нанесите на объект маркеры.

Однородные поверхности — белая стена, чистый стол — отдельная сложность: программе просто не за что «зацепиться». В таких случаях на поверхность проецируют узор или наносят временные метки, которые потом убирают.

⚠️ Внимание: не пытайтесь компенсировать плохую съёмку агрессивной постобработкой. Модель с «вылеченными» вручную дырами годится для визуализации, но не для измерений или 3D-печати — там нужна корректная исходная геометрия.

Мобильные приложения как альтернатива

Если нет мощного ПК, фотограмметрию можно выполнить прямо на смартфоне: приложения вроде Polycam или KIRI Engine отправляют снимки в облако и возвращают готовую модель. Это удобно для быстрых задач — сканирования предметов интерьера, небольших объектов, памятников архитектуры «на выходных».

Ограничения понятны: облачная обработка обычно требует подписки для экспорта в высоком качестве, а контроль над этапами меньше, чем в десктопных программах. На устройствах iPhone и iPad Pro с LiDAR-сканером доступен ещё и режим сканирования по данным датчика — он работает быстрее, но даёт менее детальную геометрию, чем классическая фотограмметрия по большому набору фото.

Часто задаваемые вопросы

Сколько фотографий нужно для одной модели?

Зависит от размера и сложности объекта. Для небольшого предмета часто хватает нескольких десятков снимков, для здания или крупной сцены могут понадобиться сотни. Ключевой критерий — не количество, а равномерное покрытие объекта кадрами с хорошим перекрытием.

Можно ли создать 3D-модель из видео?

Да, многие программы умеют извлекать кадры из видео. Однако видеокадры часто страдают от смазывания и сжатия, поэтому качество обычно ниже, чем при съёмке отдельными фотографиями. Видео удобно как быстрый способ захвата, но для детальных моделей предпочтительнее фото.

Подойдёт ли камера смартфона?

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

Как отсканировать блестящий или прозрачный объект?

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

Чем фотограмметрия отличается от 3D-сканера?

Аппаратный сканер измеряет геометрию напрямую (лазером или структурированным светом) и обычно точнее, но стоит дороже. Фотограмметрия требует только камеру и ПО, зато результат сильнее зависит от навыков съёмки и освещения. Для многих задач — от хобби до документирования объектов — фотограмметрии достаточно.