» » GAN научили создавать лица с реалистичной текстурой и геометрией

 

GAN научили создавать лица с реалистичной текстурой и геометрией

Автор: admin от 9-09-2018, 21:30, посмотрело: 113

Привет, Хабр! Представляю вашему вниманию перевод статьи «Facial Surface and Texture Synthesis via GAN».



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

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



3D Morphable Model (3DMM) — наиболее распространенный метод для представления и синтеза геометрии и текстур и изначально он был представлен в контексте генерации трехмерных человеческих лиц. Согласно этой модели, геометрическая структура и текстуры человеческого лица могут быть линейно аппроксимированы, как комбинация корневых векторов.



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



GAN научили создавать лица с реалистичной текстурой и геометрией

Лица, полученные с помощью 3DMM





Более того 3DMM генерируют данные на основе гауссовского распределения, которое редко отображают реальное распределение данных. Например, ниже показаны два PCA (анализ главных компонент) коэффициента построенные по реальным лицам и синтезированным с помощью 3DMM. Разница между синтетическим и реальным распределением может легко привести к генерации некорректных данных.

GAN научили создавать лица с реалистичной текстурой и геометрией

Первые два коэффициента PCA для реальных (слева) и 3DMM сгенерированных (справа) лиц







State-of-art идея



Слоссберг, Шамай и Киммел из Техниона — Израильского технологического института предлагают новый подход к синтезу реалистичных человеческих лиц, использующий комбинацию 3DMM и GAN.



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



Такая архитектура генерирует реалистичные изображения, при этом:




  • не страдает от контроля над такими атрибутами, как поза и освещение;

  • количественно не ограничена в генерации новых лиц.



Давайте взглянем поближе на процесс генерации данных.



Процесс генерации данных



GAN научили создавать лица с реалистичной текстурой и геометрией

Подготовка данных





Пайплайн генерации данных состоит из четырех основных этапов:




  • Сбор данных: исследователи собрали более 5000 сканов (разверток лица) разных этнических, гендерных и возрастных групп. Каждый участник должен был изобразить 5 различных выражений лица включая нейтральное.

  • Разметка: 43 ключевые точки добавлены на мэши полуавтоматически, путем рендеринга лица и использования предобученного детектора лицевой разметки

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

  • Перенос текстуры: текстура переносится из скана на шаблон с помощью техники ray casting, встроенной в тулбокс Blender. После этого текстура преобразуется из шаблона в двумерную полоскость, используя предопределенное универсальное преобразование





GAN научили создавать лица с реалистичной текстурой и геометрией

Плоские выровненные лицевые текстуры





Следующий шаг — обучение GAN созданию имитаций выровненных текстур. Для этой задачи исследователи использовали прогрессивный GAN c генератором и дискриминатором, организованными как симметричная нейросеть. В такой реализации, генератор прогрессивно увеличивает размер feature map пока не достигнет размера выходного изображения, в то время как дискриминатор постепенно уменьшает размер обратно до единичного выхода.



GAN научили создавать лица с реалистичной текстурой и геометрией

Текстуры лиц, полученные GAN





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



GAN научили создавать лица с реалистичной текстурой и геометрией

Две синтезированные текстуры наложенные на разные геометрии.





Неожиданно, метод наименьщшх квадратов показывает наилучшие результаты. Принимая во внимание простоту метода, он был выбран для всех экспериментов.



Результаты



Предложенный метод может генерировать множество новых лиц, и каждое из них может быть представлено в различных позах, с различным выражением и освещением. Различные выражения лица добавлены к нейтральной геометрии, используя Blend Shape model. Полученные изображения показаны ниже:



GAN научили создавать лица с реалистичной текстурой и геометрией



GAN научили создавать лица с реалистичной текстурой и геометрией



GAN научили создавать лица с реалистичной текстурой и геометрией



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



GAN научили создавать лица с реалистичной текстурой и геометрией



Таблица демонстрирует, что полученные текстуры статистически ближе к реальным данным, чем полученные с помощью 3DMM.



Следующий эксперимент оценивает способности синтеза изображений, которые значительно отличаются от тренировочного датасета, и получения ранее не виденных изображений. Таким образом, 5% лиц не были включены в оценку. Исследователи измерили L2 дистанцию между каждым реальным лицом из тренировочных данных и максимально похожего из сгенерированных, и аналогично — для реального из тренировочного датасета.



GAN научили создавать лица с реалистичной текстурой и геометрией

Дистанция между синтезированными и реальными лицами





Как видно из графиков, тестовые данные ближе к сгенерированным изображениям, чем к тренировочным. Более того “Test to fake” дистанция не слишком отличается от “Fake to real”. Из этого следует, что полученные образцы — это не просто синтезированные лица, похожие на тренировочную выборку, но абсолютно новые лица.



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



GAN научили создавать лица с реалистичной текстурой и геометрией

Синтезированные текстуры (вверху) против ближайших реальных «соседей» (внизу)





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



Итоги



Предложенная модель, вероятно, первая которая способна реалистично синтезировать как текстуру, так и геометрию человеческих лиц. Это может быть полезно для детекции и распознавания лиц или моделей реконструкции лица. Кроме того, она может применяться в случаях, когда требуется много разных реалистичных лиц, например, в киноиндустрии или компьютерных играх. Более того, эта структура не ограничивается синтезом человеческих лиц, но может быть фактически использована для других классов объектов, где возможна аугментация данных.



Оригинал



Перевел — Станислав Литвинов.

Источник: Хабр / Интересные публикации

Категория: Программирование

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *