Программа для создания лица человека 3д

Обновлено: 07.07.2024

Программа позволяет синхронизировать открытие рта с произношением определенных слов или букв.

Благодаря уникальной технологии, которая используется в FaceGen Modeller, можно создавать произвольным образом очень реалистичные или карикатурные лица любой расы, пола и возраста. Возможность редактирования лица с более чем 150 мощными параметрическими настройками, от морфинга расы целого лица до точной настройки формы носа. К созданному вами лицу можно применить любую из 50 готовых текстур кожи. Сразу же можно применить к модели лица анимационный морфинг.

Возможности FaceGen Modeller:

  • генерирует случайные лица по расе, полу и возрасту;
  • более 50 симметричных и 25 несимметричных настроек;
  • более 30 текстурных настроек;
  • применение детальной текстуры кожи;
  • импортирует ваши текстурные изображения на любой объект;
  • применение лиц к любой сетке высокого, среднего и низкого качества;
  • сохранение лиц в FaceGen формате;
  • экспорт моделей в 3DS, Maya ASCII (ma), Lightwave 6 (LWO), OBJ, XSI, VRML1 и VRML97;
  • экспорт текстурных карт в BMP, JPEG, TGA и TIFF;
  • содержит 36 выражений, фонем и модификаторов;
  • Endomorphs появляется автоматически в Lightwave и легко добавляется в MotionBuilder или другие приложения, которые могут читать LWO файлы;
  • демо версия полностью функциональна, однако в ней отсутствует возможность сохранения и экспорта.

Особенности FaceGen Modeller 3.5

FaceGen — связующее программное обеспечение, служащее для генерации лиц в трёхмерном пространстве, разработанное компанией Singular Inversions. FaceGen используется в случаях необходимости создания большого количества разнообразных лиц, как случайным образом, так и с помощью фотографий. Наиболее яркими примерами использования технологии являются видеоигры Tiger Woods PGA Tour, The Elder Scrolls IV: Oblivion, Fallout 3 и игры серии Football Manager.

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

Другое применение заключается в социально-психологических исследованиях. Его преимущество (в сравнении с обычными фотографиями) заключено в большом количестве параметров, которые могут быть легко сгенерированы, лицо может быть подобрано или быть изменено вариацией систематических характеристик человека, таких как раса, возраст и создания карикатурных образов, изменения направления взгляда, позиции головы.

FaceGen Modeller позволяет пользователю копировать, выполнять случайные и другие действия над лицами, отличаясь от традиционных средств трёхмерного моделирования тем, что геометрия моделей регулируется не через саму полигональную сетку, а с помощью ряда настроек, включает в себя алгоритмы для регулировки визуального отображения возраста человека, этнического происхождения и пола. Например, чтобы преобразовать лицо молодого человека в лицо старого, нужно, вместо того, чтобы работать непосредственно с сеткой, отрегулировать всего один ползунок отвечающий за возраст. Также доступна подробная настройка, например, регулирование одной части лица или настройка различных эмоций. Модели, созданные в программе, имеют файловое расширение FG.

Модель лица по настройкам и по фотографии

Программа имеет одно окно с изображением модели головы и настройками (рисунок 1), а на вкладках можно настраивать параметры отображения и настройки итоговой модели. Первая вкладка Generate позволяет генерировать модель по настройкам, сразу же можно выбрать вкладку с какой-либо расой – африканской (African), европейской (Europian), азиатской (East Asian), юго-азиатской (South Asian), а также создать модель, которой присущи черты всех рас (All Races):

  • gender – придает модели черты мужского ил женского пола;
  • age – возрастные настройки;
  • caricature – особенности, добавляющие карикатурное искажение модели;
  • asymmetry – ассимитричные искажения лица;
  • race morphing – расовые коррективы, вносимые в модель, существует некая зависимость между ползунками этой группы.

Рисунок 1 – Вкладка Generate программы FaceGen Modeller 3.5

Кнопка «Generate» позволяет создать случайное лицо, а кнопка «Set Average» позволяет сбросить модель к некому стандарту для выбранной расы.

Вкладки View и Camera позволяют настроить вид отображения и модели и параметры камеры соответственно. Вкладка Shape имеет две подвкладки Symmetric и Asymmetric, в которых можно настроить такие параметры, как, например, положение и размер бровей, глаз, щек, подбородка и т.п. в симметричном и несимметричном режиме соответственно. Вкладка Сolour позволяет настроить цвет таких областей лица человека как губы, щеки, нос и т. д., хотя вкладка имеет две подвкладки Symmetric и Asymmetric, но на практике вкладка Asymmetric не используется. Вкладка Genetic позволяет генерировать случайные лица, но с возможностью просмотра вариантов и настройки коэффициента разброса случайных величин. Вкладка Tween (рисунок 2) позволяет смешивать несколько лиц с настраиваемыми параметрами.

2

Рисунок 2 – Вкладка Tween

3

Рисунок 3 – Вкладка PhotoFit

Вкладка Morph позволяет настроить эмоции на моделируемом лице. Эмоции задаются бегунком и представляют собой некий коэффициент.

Последняя вкладка – PhotoFit (рисунок 3) вызывает особый интерес, так как позволяет моделировать лицо человека по фотографии. Моделирование начинается с загрузки в программу трех фотографий – одной анфас и двух в профиль с разных сторон (рисунок 4).

4

Рисунок 4 – Загрузка фотографий для анализа

Затем необходимо разместить контрольные точки для фотографий в анфас и профиль как показано на примере в правом нижнем углу (рисунок 5, 6, 7, 8).

5

Рисунок 5 – Размещение контрольных точек на снимке анфас

Позже программа дает возможность точнее расставить точки, приближая картинку (рисунки 6, 8).

6

Рисунок 6 – Точное расставление меток на снимке анфас

Позже программа дает возможность точнее расставить точки, приближая картинку (рисунки 6, 8).

7

Рисунок 7 – Расставление меток на снимке в профиль

После расстановки всех меток нужно нажать на кнопку Next. Значки меток могут пропадать, в таком случае нужно нажать кнопку Reset.

8

Рисунок 8 – Точное расставление меток на снимке в профиль

Далее программа позволяет проверить контрольные точки (рисунок 9).

9

Рисунок 9 – Проверка установки контрольных точек

Через некоторое время после нажатия кнопки «Start Now» на левой панели отображается конечный результат (рисунок 11).

10

Рисунок 10 – Окно заключительных настроек, процесс формирования может занимать до 5 минут

11

Рисунок 11 – Получившийся результат

Как видно из рисунка 11 у модели есть волосы. У программы Face Gen весьма специфический механизм создания волосяной растительности на голове. Для того чтобы создать прическу нужно скачать модели причесок, так как сама программа не позволяет генерировать и настраивать волосяной покров головы, включая бороду и усы. Установка конкретной прически показана на рисунках 12 и 13. После нажатия на кнопку «Change model Parts» откроется окно, изображенное на рисунке 13, в котором можно выбрать прическу модели, там же можно выбрать очки, глаза, язык, зубы и некоторые другие части лица модели.

12

Рисунок 12 – Настройка дополнительных параметров модели

Модель экспортируется в файл с расширением stl, но можно также сохранить получившуюся копию в родном для программе формате .fg.

13

Рисунок 13 – Виды дополнительных параметров модели

Тем не менее программа FaceGen Modeller 3.5 предоставляет пользователю один из самых передовых движков для простой генерации и морфинга лица человека по настройкам и загружаемой фотографии, не прибегая к дорогостоящему сканированию, что подтверждается использованием данной программы в современных играх и криминалистике для построения 3Д фотороботов.

Простой способ создать реалистичные человеческие 3D лица в случайном порядке или из 1-2 фотографий.

Преимущества:
- Возможность отрегулировать возраст, расу, пол и 150 других элементов управления.
- Применение граней к любой полигональной сетке и УФ-карте.
- Бесплатная версия обладает полной функциональностью платной версии, за исключением экспорта во внешние 3D-форматы и отображения логотипа «SI» на лбу.

Альтернативы для Face Gen

1155

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

Скриншот 1 программы Blender

Blender - это бесплатная программа для создания 3D-графики с открытым исходным кодом, доступная для всех основных операционных систем в рамках Стандартной общественной лицензии GNU.

93

MakeHuman - это интерактивный инструмент моделирования для создания реалистичных 3D персонажей.

Скриншот 1 программы MakeHuman

MakeHuman - это бесплатный интерактивный инструмент моделирования с открытым исходным кодом для создания пользовательских трехмерных персонажей. Эти персонажи могут быть смоделированы за считанные минуты и затем использованы со многими другими программами моделирования и рендеринга для включения реалистичных человеческих фигур в компьютерные изображения и анимацию. Функции, которые делают это программное обеспечение уникальным, включают the tetra-parametric GUI© и Natural Pose System © для расширенного моделирования мышц.

57

Универсальное цифровое решение для скульптинга.

Скриншот 1 программы ZBrush

Идеи, рожденные в глине.

29

MODO - это полнофункциональное приложение для создания 3D-контента и моделирования.

Скриншот 1 программы MODO

Это мощное средство для 3D-моделирования, скульптурной работы и анимации, которое предлагает расширенные функции, обеспечивает быстрое прямое и гибкое процедурное моделирование.

27

В отличие от большинства 3D-программ, где 3D-объекты обычно создаются с нуля, DAZ Studio разработана, чтобы управлять готовыми моделями и фигурами.

  • Условно бесплатная
  • Windows
  • Mac OS

Скриншот 1 программы DAZ 3D

В отличие от большинства 3D-программ, в которых 3D-объекты обычно создаются с нуля, DAZ Studio позволяет пользователям манипулировать готовыми моделями и фигурами. Он нацелен на пользователей, которые заинтересованы в изображении человеческих фигур для иллюстраций и анимации. Он был создан DAZ Productions, компанией, которая создает встроенный контент.

17

Poser - это программный пакет для 3D-рендеринга, предназначенный для визуализации, анимации и рендеринга.

Скриншот 1 программы Poser

Poser - это программный пакет для 3D-рендеринга, предназначенный для визуализации, анимации и рендеринга трехмерных многогранных фигур, людей и животных.

15

Autodesk Mudbox - программа для моделирования цифровой скульптуры и текстурного окрашивания 3D моделей.

Скриншот 1 программы Autodesk Mudbox

Программное обеспечение Autodesk Mudbox для цифровой скульптуры и рисования текстур предлагает профессионалам 3D-моделирования возможность быстро и легко создавать высокодетализированные органические и неорганические 3D-ресуры.

12

Bforartists полный 3D-пакет для создания 3D-контента.

Скриншот 1 программы Bforartists

Bforartists - это полный 3D-пакет для создания 3D-контента. Полный 3D арт-конвейер для создания игровой графики, фильмов и фотографий. Это ответвление популярного программного обеспечения с открытым исходным кодом Blender. Поставляется с Python для встроенных скриптов.

9

Модель создания программного обеспечения, предназначена для планшетов.

Скриншот 1 программы 3D Model Maker

3D Model Maker позволяет создавать виртуальные 3D-модели на вашем компьютере. Вы можете создать все, что только может придумать ваше воображение, а не ограничиваться простыми кубами или блоками, как некоторые приложения. Он использует сетки многоугольников, как в Toy Story.

7

Создание 3D-моделей из фотографий с двумя стандартными фронтальными и боковыми видами головы.

Скриншот 1 программы 3D Faceworx

Создание 3D-моделей из фотографий с двумя стандартными фронтальными и боковыми видами головы, различные контуры для лица, носа, ушей и т. д.

6

Редактор 3D-моделей на основе OpenGL, работающий с моделями на основе треугольников.

Скриншот 1 программы Misfit Model 3D

Редактор 3D-моделей на основе OpenGL, работающий с моделями на основе треугольников. Он поддерживает многоуровневую отмену, скелетную анимацию, простое текстурирование, создание сценариев, пакетную обработку в командной строке и систему плагинов для добавления новых моделей и фильтров изображений. В него включена полная онлайн помощь. Он прост в использовании и расширяется с помощью плагинов и скриптов.

5

Awakening - это мощное профессиональное 3D-решение в реальном времени.

Скриншот 1 программы Awakening

Awakening - это мощное профессиональное 3D-решение в реальном времени. С его помощью вы можете легко создавать привлекательные интерактивные 3D-презентации, короткие фильмы, игры.

3

ZModeler - это приложение для 3D-моделирования.

Скриншот 1 программы Zmodeler

ZModeler - это приложение для 3D-моделирования. Оно предназначено для разработчиков, которые моделируют компьютерные игры. Такие как 18 Wheels of Steel, Grand Theft Auto, Need for Speed, Midtown Madness или аналогичные видеоигры.

Что в этом списке?

В списке находится программы которые можно использовать для замены Face Gen.

Это аналоги похожие по функционалу на Face Gen, которые заменяют программу частично или полностью. Этот список содержит 13 замен.

С помощью пользователей мы собираем каталог похожих друг на друга программ, чтобы вы могли подобрать альтернативу и скачать их. На сайте можно скачать популярные программы для Windows, Mac Os, Android и iPhone

Фотография (слева) и рендеринг 3D модели лица (справа)

Фотография (слева) и рендеринг 3D модели лица (справа)

Поговорим об одном интересном методе восстановления 3D лица человека, которое почти не отличить от фотографий.

На Хабре уже 2 года не появлялись статьи про лицевую 3D реконструкцию, и в Twin3D мы хотим постепенно заполнять этот пробел и регулярно выкладывать обзоры интересных статей, методов и наших собственных результатов на тему 3D digital human в целом.

Сначала пара слов о том, кому и зачем эти 3D лица и тела нужны (вообще об этом можно отдельную статью написать). Изначально 3D сканирование человека использовалось в кино для спецэффектов, где с лицом героя должно произойти что-то мало желаемое в реальности (например, взрыв) или невозможное. С увеличением требований к графике в компьютерных играх появилась потребность создавать всё более реалистичных персонажей — и гораздо проще отсканировать живого человека, чем лепить/рисовать с нуля по фотографиям. Теперь же к этому прибавляется желание людей оказаться в виртуальном мире или самим быть персонажами игр — и для этого, естественно, тоже нужны 3D модели.

Стоит отметить, что предыдущие статьи на Хабре фокусировались на методах легкого создания 3D моделей лиц. Как обычно, тут есть trade-off между качеством и простотой получения 3D модели. В нашем цикле статей мы расскажем про 3 метода в порядке убывания сложности процесса сканирования: от специального сетапа с 24 камерами и 6 вспышками (об этом методе поговорим сейчас) до фотографии со смартфона.

Исторически реконструкция лица начиналась со стандартных методов multi-view stereo (об этом можно почитать в википедии, а также есть классная брошюра от Google), и понятно, что для таких методов требуется большое число фотографий с разных ракурсов. Эти методы основаны на математической оптимизации.

Терминология

Результатом базовой 3D реконструкции лица является следующее сочетание: геометрия + текстура альбедо + отражаемость и нормали (картинки будут ниже).

Геометрия — это просто меш, т.е. упорядоченный набор связанных между собой точек в 3D.

Текстура альбедо — это по сути набор пикселей, которые покрывают этот меш, настоящий цвет кожи.

Отражаемость и карта нормалей — информация про каждый пиксель о том, как он отражает падающий свет (как сильно и в каком направлении).

Только при наличии всех эти трех компонент можно получить качественную фотореалистичную 3D модель лица.

Пара слов о методе

Метод реконструкции лица, о котором мы сейчас поговорим, описан в статье "Near-Instant Capture of High-Resolution Facial Geometry and Reflection", которая написана G. Fyffe, P. Graham, B. Tunwattanapong, A. Ghosh, P. Debevec и представлена на Eurographics 2016. Ее можно почитать здесь (дальше все картинки взяты оттуда). Эта работа примечательна тем, что авторам впервые удалось получить качество восстановления с точностью до пор кожи при почти мгновенном сканировании (66 мс). На заставке вы увидели результаты именно этой статьи. Статье уже 5 лет, но она стала своего рода классикой, да и авторы у нее широко известны в узких кругах (тот же Дебевек из Google). Статья написана довольно специфичным языком и с опусканием многих неочевидных деталей, так что пришлось немного поломать голову, чтобы ее понять и написать этот текст.

Как это работает

Для начала, авторы собрали весьма интересный риг из камер и вспышек. В нем 24 DSLR камеры Canon EOS 600D и 6 профессиональных вспышек Sigma EM-140. Вспышки эти включаются последовательно, а вместе с ними одновременно фотографируют какое-то подмножество камер, так что в итоге каждая камера фотографирует ровно один раз. Камеры установлены и разбиты на группы так, чтобы оптимально покрыть всю область лица и для каждой точки увидеть хотя бы 3 разных отражения (дальше увидим, зачем). Реализована съемка с помощью микроконтроллера 80MHz Microchip PIC32. Авторы отдельно продумали, что весь этот процесс должен занимать меньше скорости моргания человека (

100 мс), так что от первой до последней фотографии проходит 66 мс, согласно статье.

Риг для съемки лица

Риг для съемки лица

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

Пайплайн алгоритма

Пайплайн алгоритма

Исходный меш получается через обычный multiview stereo (например, Metashape). Но его качество довольно низкое (+- 2 мм), так что на основе карты нормалей этот меш в конце уточняется.

Поэтапное улучшение исходного меша

Поэтапное улучшение исходного меша

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

Диффузная и спекулярная карты нормалей

Диффузная и спекулярная карты нормалей

А получаются эти нормали для каждого пикселя по сути через решение систем линейных уравнений

где L — матрица направлений света для всех видов камер, \beta — искомая нормаль (3-мерный вектор), P — условные значения пикселей для этих точек и видов камер. После пристального взгляда на эту систему становится понятным, зачем нужно видеть точку хотя бы с трех ракурсов — в противном случае систему однозначно не решить. Если хочется иметь карту разрешения 4096x4096, то соответственно нужно решить 16 млн таких систем, так что эффективное использование GPU здесь must have. Параллелизация таких вычислений — отдельная нетривиальная задача.

Эти уравнения решаются в рамках ламбертового приближения для диффузных нормалей, потому что как раз это нужно для описания матового отражения кожи от ее глубинных слоев. Для спекулярных нормалей решаются более сложные уравнения в приближении Blinn-Phong, чтобы учесть возможность зеркальных отражений кожи, но суть остается той же.

Результаты

При наличии уточненного меша, альбедо, освещаемости и карт нормали можно зарендерить 3D модель лица под произвольным ракурсом и освещением.

Для начала сравним кусок щеки фотографии и рендеринга под тем же ракурсом и освещением. Как видим на картинке ниже, результаты очень точные вплоть до мельчайших пор и отражений света.

Сравнение фотографии (слева) и рендеринга 3D модели под тем же углом и освещением (справа)

Сравнение фотографии (слева) и рендеринга 3D модели под тем же углом и освещением (справа)

Если же мы посмотрим на рендеринг под новым ракурсом и освещением, то тут тоже всё весьма прилично.

Уточненный меш и рендеринг под новым ракурсом и освещением

Уточненный меш и рендеринг под новым ракурсом и освещением

Итоги

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

Волосы — на всех результатах люди просто в шапочках, ни у кого нет щетины

Отдельные артефакты — уши, ноздри носа и другие слабо видимые места никаким специальным образом не процессятся

Глаза — они, конечно, не подойдут для игр или кино

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



Windows XP


Windows Vista


Windows 7


Windows 8


Windows 10

Окно редактора

Настройка позы

Утилиты

О Программе

Основная информация о программе

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

В процессе установки MakeHuman вам будет предложено дополнительно проинсталлировать полезные плагины и наборы текстур. Они помогут сделать готовую модель еще более реалистичной. Что наиболее важно - все эти плагины и наборы с текстурами являются совершенно бесплатными. Также в программе можно найти библиотеку с уже готовыми лицами и аксессуарами.

Интерфейс программы представляет собой окно со множеством вкладок, в которых происходит моделирование, текстурирование, настройка позы, работа с чертами лица и прочие операции. Для тех, кто желает потратить на создание человеческой модели как можно меньше времени, предусмотрена возможность получения готового проекта путем введения таких параметров как пол, возраст, телосложение и прочее. Такой подход очень напоминает работу с редактором персонажа в видеоиграх. После того как пользователь создал модель, произвел ее рендеринг и текстурирование можно приступать к экспорту. MakeHuman поддерживает не так много исходных форматов, среди которых STL, MHX, OBJ и DAE. Подобные форматы поддерживаются большинством популярных трехмерных редакторов (например Collada и Blender).

Читайте также: