Программа для 3д моделирования лица по фото
Интересно взглянуть на себя со стороны? Нет? А сделать 3D модель лица своего знакомого? Тоже нет? Тогда читайте следующий пост! Ибо тут пойдет речь именно о 3D моделировании лиц.
Я хочу рассказать, как сделать более-менее похожее лицо с помощью фотографии. Использовать мы будем простую, не очень навороченную (зато бесплатную) программу FaceGen Modeller.
Итак, начнем.
FaceGen Modeller обладает солидным набором готовых лиц всех типов и расс. А так же возможностями преобразить эти лица с помощью управления различными параметрами, такими как ширина скул, размер глаз и рта, высота лба, форма носа и прочее.
Но нас же интересует сделать модель себя любимых. Ну, или, на крайний случай, кого-то из знакомых. Те, у кого есть художественные способности могут поупражняться с моделированием вручную. Остальным же советую использовать фотографию.
Программе требуется три фотографии. Анфас, и два профиля. Но хватит и одной. Возможно, получится не так похоже, но узнаваемо.
Мастер создания модели по фотографии находится (как ни странно) на самой последней вкладке — Photo Fit. Загружаем фотку, устанавливаем ключевые точки на глазах, скулах, углах рта и крыльях носа. Что куда ставить отлично продемонстрировано на фотке, так что не запутаетесь.
Затем уточняем положение крестиков на укрупненной фотке, и ждем… Довольно долго. Но в итоге получаем голову висящую в пространстве, отдаленно напоминающую фотографию.
Теперь понадобится некоторые художественные способности чтобы подогнать то, что программа не увидела. Лицо получается слишком узкое, профиль копируется неточно. Подкорректировать можно на вкладке Shape.
В итоге получится нечто вроде этого:
Лысый, но симпатичный.
Теперь можно и поиздеваться. Например, поменять выражение лица.
В общем, поле для творчества есть.
А если все удачно получится, то и аватарку прикольную можно сделать. =)
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Прочитав данную статью, вы узнаете, как я распечатал модель своего лица и тела на 3Д-принтере!
Всё началось c покупки 3д принтера Kingroon KP3S, с размером стола 180 на 180 на 180 мм.
У меня была уже готовая модель женщины и сразу же после сборки принтера, а собирал я его 15 минут всего, я отправил данную модель на печать.
Для принтера из коробки, да еще и не до конца настроенного, качество нормальное.
После некоторых манипуляций с принтером, мне удалось получить совершенно гладкую поверхность фигуры, после печати.
В процессе просмотра роликов по настройке принтера для печати, я наткнулся на видео, где показывалась программа для моделирования лица.
Называется эта программа - DAZ3D. ( возможно, уже была статья на эту тему, тапками не закидывать)
И в голову мне пришла идея, сделать модель собственного лица и тела. Может в будущем и подзаработать на этом, делая 3д модели людей и печатая их на заказ. ( но вряд ли это кому-нибудь нужно)
После установки мы видим начальную страницу программы.
И чтобы создать себя нужно перейти во вкладку Windows - Panes - Face Transfer.
После открытия данного плагина, вам останется только вставить свою фотографию.
Вставляем фотографию, нажимаем male - мужчина (female - женщина) и жмем - Generate (генерация ).
Появляется тело с нашим лицом и вы посмотрите какое сходство.
Вроде бы и похож, но спешу вас расстроить. Для печати данная модель нам не подходит.
Дело всё в том, что наша фотография натягивается на болванку, на заготовку. И выглядит вроде бы и правдоподобно, но если выводить данную модель на печать, то мы получим фигуру, ну вообще на нас не похожую. Программ попыталась в автоматическом режиме повторить наши черты лица, но у нее это не очень хорошо получилось.
Для создания 3д модели своего лица, придется потрудиться.
Для этого мы покупаем расширение для DAZ 3D - MetaMixer Toolkit.
Быстренько устанавливаем и для начала создадим болванку. Genesis 8 Basic Male
может быть не установлен, придется покупать ;-)
Ищем и запускаем Мета Миксер.
Далее , выбираем вкладку Shaping и выбираем лица, которые наиболее похожи на вас, по вашему мнению.
Ведь, Ok Google MetaMixer - это: "MetaMixer - это инструмент Daz Studio, который позволяет пользователям создавать уникальные лица из набора ранее выпущенных персонажей с помощью дополнений для Metamixer."
Данный инструмент нам позволит изменить черты лица нашей болванки, а не просто наложить фотографию ( текстуру) на нее.
Выбрав нужные лица, нам нужно запустить Power Pose. Смотрим на картинку ниже и запускаем.
В Power Pose выбираем Скульпинг или любые другие параметры, которые помогут "слепить " лицо Вашей мечты. После многочасовой работы в даз 3д, мне удалось создать своё лицо и настроить тело.
Вывожу модель на печать. File - Export - Сохраняю в формате .obj и перекидываю в слайсер. (использую Cura).
А если вы хотите узнать, что у меня получилось в итоге, то Welcome to my YouTube channel =)
Ссылка на видеоролик:
Не ругайтесь в комментариях, всем добра. Спасибо , что дочитали)
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
В последнее время очень популярна услуга создания 3D-модели человека по фотографиям для её последующей печати в виде гипсополимерной 3D-статуэтки. Самым непростым и высокохудожественным этапом в этой услуге является моделирование лица. В данной статье мы вам поэтапно расскажем, на что стоит обращать внимание 3D-моделлерам при создании 3D-лиц, какие при этом бывают сложности и как их избежать.
1. Конструкция черепа
При создании портрета очень важно учитывать конструкцию черепа, так как кость является единственной недеформируемой частью головы (за исключением движения нижней челюсти).
Мышечные ткани, жир и кожа, деформируются в зависимости от эмоций на лице.
Очень важно при создании экстремальных (в плане деформации) эмоций не потерять наличие конструкции черепа. При «потере черепа» лицо может выглядеть неестественно, хотя при этом и может быть согласовано клиентом.
Для начала определим такое понятие как Лицевой индекс.
Лицевой индекс помогает более точно установить пропорции соотношений между шириной скул и длины лица, чтобы избежать ошибки узких лиц.
В среднем высоту головы от подбородка до макушки можно взять за 22-23 сантиметра (оно может меняться в зависимости от формы черепа). А за среднюю ширину головы 16 см (расстояние измеряемое между точками эурион). Как правило, расстояние между точками эурион является самым широким на черепе.
Неверную конструкции головы выдает ощущение диспропорций лица, дисгармония масс, излишняя карикатурность. Наиболее это заметным становится при просмотре головы с экстремальных ракурсов, с углов с которых обычно никто никогда не фотографирует.
Как пример, с нижнего ракурса, голова кажется вытянутой и узкой. Лобные массы кажутся сильно выставленными вперед, контур нижней челюсти пропадает. Подбородок кажется непропорциональным по отношению к низу лица.
Однако ощущения некорректной анатомии и фактические нарушения конструкции лица могут совершенно некоррелировать между собой.
Например, на ниже приведённом примере, может казаться, что лоб сильно выставлен вперед, однако ошибка не во лбу, а в некорректной постановке скул и в ширине головы.
Лицо может казаться яйцеобразным не из-за ширины щек, а из-за отсутствия конструкций нижней челюсти и неверной постановки ширины точек черепа эурион (точек над ухом).
Изменение угла источников света и добавление перспективы, очень помогают определить нарушения в конструкции лица.
Создание верной конструкции черепа - это половина дела. Без портретных сходств лицо не получится узнаваемым, хоть конструкция лица и несет в себе большинство портретно-узнаваемых особенностей головы и лица в целом. Например, выступающий подбородок или выпирающие губные массы, что является следствием выступающих вперед зубов или же массивность надбровных дуг. Но речь идет больше о чертах лица, как об особенной совокупности костных масс, мышечных масс, процента жировых масс, качества и количества кожных масс. В нашем мире огромное количество людей, но людей с одинаковыми лицами практически единицы. Каждое лицо по-своему уникально и отличается от другого лица своим набором уникальных черт и форм. Это и есть ключевой момент для создания портрета, понять особенности моделируемого лица.
Рассматривание других лиц и их сравнение со «средним» лицом помогает быстрее выделить конкретные уникальные отличия моделируемого лица от среднестатистического лица.
3. Объективное лицо и искажения объективного лица.
Предположим, есть некое объективное лицо, характерное конкретному периоду жизни человека, с конкретной эмоцией, которое необходимо создать. Объективное лицо, это то самое «истинное лицо» или же, то лицо которое мы получим при трехмерном сканировании. Но художник воспринимает это лицо только через фотографии. И это восприятие может быть в разной степени коррелировать с объективным лицом. Заказчик же, видел владельца лица воочию, и воспринимает лицо с этих же фотографий совершенно по-другому, в его голове возникает совершенно другая база образов отличная от базы образов художника. Мы думаем, что это и является проблемой между ожиданиями клиента и поисками проделанными художником. Поэтому для создания наиболее объективного портрета нужно отбросить как можно больше субъективных или искажающих факторов.
Вот примерный перечень искажающих восприятие факторов.
- Угол обзора камеры или «сила» перспективы.
- Низкое разрешение изображения, его явная пикселизация или же расфокусировка лица.
- Качество освещения на фотографии.
- Наличие заграждающих факторов (очки, маски, кепки, падающие тени на лице)
- Отсутствие достаточного количества ракурсов и плохие углы съемки.
- Посторонние эмоции и разный возраст на фотографиях.
- Качество кожи, наличие пост эффектов и фильтров.
- Метод наложения фотографии на модель.
- Привыкание к лицу.
Начнем по порядку.
3.1. Угол обзора камеры очень сильно влияет на воспринимаемую форму лица.
Чем больше угол обзора, тем сильнее вытягивается лицо. Все что ближе к камере становится крупнее, все что дальше от камеры, меньше и уходит как бы во внутрь. Такие фотографии чаще всего получаются при съёмке лица вблизи камеры и при создании селфи. Чем дальше сфотографирован человек, тем меньше в его лице перспективных искажений и тем сильнее перспектива стремится к фотографии.
3.2. Сжатие изображения.
Чем сильнее сжато фото, тем недостовернее воспринимается форма лица. Как правило, фотографии большого разрешения читаются лучше, и мозгу не нужно прилагать дополнительные усилия для распознавания черт лица. С клиентом же ситуация состоит по-другому. Клиент даже в сильно сжатой фотографии низкого разрешения увидит своего друга, любимого, коллегу. Все это связано с механизмом распознавания образов. При просмотре «пиксельного» фото, у клиента в голове, уже есть библиотека образов связанная с этим конкретным человеком и он с легкостью по некачественному фото может описать его конкретные черты. Однако настоящим источником информации клиента является не фото, а его голова. Желательно меньше ориентироваться на некачественные фото, так как они могут в голове 3D-художника посеять сомнения об объективном лице.
3.3. Качество и углы освещения, ракурс.
Это те самые искажения, которые применяются профессиональными фотографами для преображения фотографируемой модели. Не все лица, красивы со всех ракурсов и не на все лица хорошо падает свет. Именно этого и стараются избежать, когда фотографируют. Фотографии человека, присланные клиентом, всегда чуть более привлекательные, чем объективная реальность и менее привлекательные, чем профессиональная фотосессия. Но для создания верной формы головы, для отображения всех черт лица, нужно увидеть все стороны лица. Поэтому наличие как можно большего количества фотографий и их анализ, создание подобных фотосклеек, помогут построить в голове образ объективной головы.
Наличие разных ракурсов позволит соотнести позиции тех или иных черт и масс лица в пространстве.
3.4. Заграждающие факторы.
Тут все просто. Очки, падающие тени на лице, портят восприятие лица. В глазах клиента, лицо с заграждающими факторами воспринимается абсолютно так же как и объективное лицо, а в глазах художника это полная неопределенность.
3.5. Отсутствие профиля.
3.6. Эмоции и возраст.
Эмоции очень сильно могут изменить восприятие объективного лица. Особенно в тех случаях, когда требуется конкретная эмоция, а на присланных фото она совершенно другая. В таких случаях лучше опираться на конструкцию лица, на костные структуры. Например, при открытой улыбке, мягкие массы лица очень сильно меняются и меняют восприятие лица, нежели чем на лице без эмоций. Однако костные массы, при этом остаются неизменными. Для создания улыбок надо опираться на анатомические материалы, сканы и экорше лиц с улыбками. И соотносить динамику деформаций лиц в примере с динамикой на конкретном объективном лице. Особенно в тех случаях, когда улыбка есть только в анфас.
Зачастую присылаемые фотографии сделаны в разные периоды жизни человека. Надо учитывать, что форма головы, лица, его черт меняется из года в год. Кроме того, помимо изменения мягких мышечных и кожных масс, меняются также и костные массы. А значит, с возрастом меняется и конструкция черепа. В итоге, более молодые лица воспринимаются иначе, чем более возрастные и тут нужен общий анализ фотографий. Какие черты сильнее сохраняются с возрастом, по какому принципу меняется лицо с возрастом. Зачастую, молодые лица могут сбивать художника с толку при моделировании состарившегося лица.
3.7. Макияж, фотошоп.
Использование фильтров и макияжа, еще один способ уйти от объективной реальности и исказить визуальное восприятие лица. Как правило, лица девушек на фото и в жизни две совершенно разные стихии. Девушки хотят выглядеть привлекательнее, чем они есть на самом деле. В таких случаях похожая конструкция лица и гладкая упругая кожа уже сделают большой вклад в портретное сходство. Однако порой бывает тяжело определить конструкцию лица на «зафотошопленных» фото. Также надо учитывать и то, что объективные формы могут не такими, какими они кажутся на фотографии, и придётся искать любые зацепки в других ракурсах. Сильно бликующая кожа тоже портит восприятие формы лица, в этом случае с фотографией можно поработать в фотошопе и заглушить мешающие блики.
3.8. Метод наложения фотографии на модель.
Этот метод используется для быстрого поиска формы лица, однако при неправильном использовании этого метода, можно сильно исказить лицо. Для того чтобы избежать подобных искажений, нужно правильно выставить перспективу и ракурс. Найти точки опоры и оси лица. Одна из таких вспомогательных осей, это линия между основанием носа и мочкой уха. Угол поворота анфас-профиль можно ровнять по линии глаз. При этом нужно обязательно учитывать перспективные искажения. Так как два фото при разных полях зрения и углах обзора (например, профиль и полуанфас) при наложении никогда не сведут модель в единый объективный образ.
Негативная сторона такого метода ещё и в том, что лицо может сойтись с фото, даже может быть в некотором проценте случаев согласовано, но фактически в печати будет выглядеть совершенно иначе и расходиться с объективным лицом. Например, в печати лицо может быть более узким. Такие ошибки возникают при недостаточном количестве сведений фотографий с моделью, либо при неверном соотнесение углов лица на фото и угла модели. В идеале лицо должно сходиться с фото как минимум в 4-5 разных ракурсах.
3.9. Привыкание к лицу.
В процессе создания портрета художник привыкает к лицу. Из-за этого, некоторые уникальные особенности лица, воспринимаются им уже не так уникально, либо художник начинает принижать значение некоторые особенностей лица, дабы подчеркнуть его незначительные особенности. Проблема заключается в том, что когда мы первый раз видим лицо какого-то человека, то мы его воспринимаем, основываясь на своем опыте увиденных нами лиц. Наш мозг устроен так, что он склонен подчеркивать и запоминать различия или особенности лица, по сравнению с ранее увиденными лицами. Это требует минимум энергии для запоминания. При долгой же работе с лицом, мы принимаем все особенности этого лица как само собой разумеющееся и не отходящее от среднего лица. Это накладывает искажения на восприятие лица. Несмотря на все это, лицо увиденное в первый раз на фотографии, также может быть изначально неправильно прочитано и воспринято, но это уже совокупность всех вышеописанных проблем восприятия. Желательно делать перерывы при моделировании лица, отвлекаться, рассматривать другие лица. Этот простой метод помогает начать заново, свежо воспринимать создаваемое лицо.
Фотография (слева) и рендеринг 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 модели под тем же углом и освещением (справа)
Если же мы посмотрим на рендеринг под новым ракурсом и освещением, то тут тоже всё весьма прилично.
Уточненный меш и рендеринг под новым ракурсом и освещением
Итоги
При всей крутости результата и метода, конечно, в результате не получается супер-идеальный аватар человека. Тут никак не обрабатываются несколько ключевых элементов:
Волосы — на всех результатах люди просто в шапочках, ни у кого нет щетины
Отдельные артефакты — уши, ноздри носа и другие слабо видимые места никаким специальным образом не процессятся
Глаза — они, конечно, не подойдут для игр или кино
В Twin3D мы тоже работаем над алгоритмами фотореалистичной реконструкции лица и тела человека; собрали свой риг, в котором можем отсканировать лицо и по классической фотограмметрии, и по фотометрик стерео . Мы верим, что такими подходами можно и нужно вдохновляться, но в конечном итоге для получения фотореалистичных цифровых людей без артефактов нужен элемент обучения на данных, ибо классический подход не понимает, что ноздри и глаза нужно как-то иначе обрабатывать, чем кожу. О подходах с элементами обучения мы расскажем в будущих статьях.
Привет, Хабр! Представляю вашему вниманию перевод статьи «Learning 3D Face Morphable Model Out of 2D Images».
Трёхмерная морфируемая модель лица (3D Morphable Model, далее 3DMM) — это статистическая модель структуры и текстуры лица, которая используются компьютерном зрении, компьютерной графике, при анализе человеческого поведения и в пластической хирургии.
Неповторимость каждой черты лица делает моделирование человеческого лица нетривиальной задачей. 3DMM создётся для получения модели лица в пространстве явных соответствий. Это означает поточечное соответствие между полученной моделью и другими моделями, позволяющими выполнять морфирование. Кроме того, в 3DMM должны быть отражены трансформации низкого уровня, такие как отличия мужского лица от женского, нейтрального выражения лица от улыбки.
Исследователи из Университета Мичигана предлагают новейший метод получения 3DMM лица, основанный на глубоком обучении. Используя высокую эффективность глубоких нейронных сетей для осуществления нелинейных отображений, их метод позволяет получить 3DMM на основе 2D изображения, снятого в произвольной обстановке.
Более ранние подходы
Обычно 3DMM получают с помощью набора 3D сканов лиц и набора 2D изображений этих же лиц. Общепринятый подход заключается в использовании редукции размерностей при обучении с учителем, которая выполняется с помощью применения анализа главных составляющих (Principal Component Analysis – PCA) на тренировочном наборе данных, состоящем из 3D сканов лиц и соответствующих 2D изображений. При использовании линейных моделей, таких как PCA, нелинейные трансформации и лицевые вариации не могут быть отражены в 3DMM. Более того, для моделирования точных 3D текстур лиц необходимо большое количество «3D информации». Таким образом, использование данного подхода оказывается неэффективным.
Предлагаемый метод
Идея предлагаемого метода заключается в использовании глубоких нейронных сетей или, более конкретно, свёрточных нейросетей (которые лучше подходят для рассматриваемой задачи и менее затратны в плане времени вычислений, чем многослойные перцептроны) для получения 3DMM. Кодирующая нейросеть (энкодер) принимает на вход изображение лица и генерирует параметры текстуры и альбедо лица, с помощью которых две декодирующих нейросети (декодеры) оценивают текстуру и альбедо.
Как было указано ранее, линейная 3DMM имеет ряд проблем, таких как необходимость наличия 3D сканов лиц, невозможность использования изображений, снятых в произвольном ракурсе и ограниченная точность представления из-за использования линейной PCA. В свою очередь, предлагаемый метод позволяет получить нелинейную 3DMM модель на основе 2D изображений лиц высокого разрешения, снятых с произвольного ракурса.
Планарное представление
В своём подходе, исследователи используют развёрнутую 2D карту лица для представления его текстуры и альбедо. Они утверждают, что учёт пространственной информации играет важную роль, так как они применяют свёрточные нейронные сети, а фронтальные изображения лица содержат мало информации о боковых сторонах. Именно поэтому их выбор пал на планарное преставление.
Три различных представления альбедо. (а) – 3D представление, (в) – альбедо как 2D фронтальное изображение лица, (с) – планарное представление.
Планарное представление. x, y, z и суммарное представление текстуры.
Архитектура нейросети
Исследователи спроектировали нейросеть, которая, принимая на вход изображение, кодирует его в вектора текстуры, альбедо и освещения. Закодированные скрытые вектора для альбедо и текстуры декодируются с использованием двух декодеров, в качестве которых используются свёрточные нейросети. На выходе декодеры выдают блики лица, его альбедо и 3D текстуру лица. С использованием этих параметров, дифференцируемый рендеринг-слой генерирует модель лица посредством совмещения 3D текстуры, альбедо, освещения и параметров расположения камеры, полученных энкодером. Архитектура представлена на схеме ниже.
Архитектура предлагаемого метода для получения нелинейной 3DMM
Получаемая устойчивая нелинейная 3DMM может быть использована для 2D наложения лиц и решения проблемы трёхмерной реконструкции лиц.
Сравнение с другими методами
Рассматриваемый метод был приведён в сравнение с другими методами на примере следующих задач: 2D наложение, 3D реконструкция и редактирование лиц. Предлагаемый метод превосходит другие современные подходы для решения этих задач. Результаты сравнения представлены ниже.
2D наложение лица
Одно из приложений метода — наложение лиц, что должно существенно улучшить анализ лиц в ряде задач (к примеру, распознавание лиц). Наложение лиц – непростая задача, но рассматриваемый метод показывает высокие результаты при её решении.
Результаты 2D наложения лиц. Невидимые пометки отмечены красным. Рассматриваемый метод отражает необычные позы, освещение и выражение лица.
3D реконструкция лица
Рассматриваемый метод также был приведён к сравнению на примере 3D реконструкции лица и показал выдающиеся результаты по сравнению с другими методами.
Количественное сравнение результатов 3D реконструкции
Результаты 3D реконструкции в сравнении с методом Sela и др. Предлагаемый метод сохраняет волосы на лице и другие особенности лица намного лучше, чем этот метод.
Результаты 3D реконструкции в сравнении с VRN от Jackson и др. на примере известного датасета CelebA.
Результаты 3D реконструкции в сравнении с методом Tewari и др. Как видно, предлагаемый метод решает проблему сжимания лица при наличии различных текстур (таких как волосы на лице).
Редактирование лица
Обсуждаемый метод разбивает изображение лица на отдельные элементы и позволяет изменять лицо с помощью манипуляций над ними. Результаты работы данного метода при редактировании лиц были оценены на примере таких задач, как изменение освещения и добавление дополнительных элементов лица.
Результаты добавления бороды. Первая колонка содержит исходные изображения, последующие – разные степени изменения бороды.
Сравнение с методом Shu и др. (вторая строка). Как видно, предлагаемый метод даёт более реалистичные изображения, и кроме того, лучше сохраняется идентичность лица.
Вывод
Предлагаемый метод, предположительно, получит широкое распространение, так как он позволяет получить точную и устойчивую 3DMM. Хотя 3DMM была широко распространена с момента своего создания, до появления рассматриваемого метода не существовало эффективного получения этой модели с помощью 2D изображений с произвольного ракурса.
Предлагаемый метод использует глубокие нейронные сети в качестве аппроксиматора для устойчивого моделирования человеческих лиц со всеми их особенностями. Столь необычный способ получения 3DMM позволяет проводить манипуляции с изображением и может быть использован во многих задачах, некоторые из которых были представлены статье.
Читайте также: