Новый метод гармонизации лица и волос с помощью “скрытых пространств”

NeuroHive Ru
Apr 23, 2018 · 4 min read
Image for post
Image for post

Лицо — это символ для распознавания людей с древних времен до нашего времени. В социальных сетях пользователи чаще делятся фотографиями, на которых есть человеческие лица. Распознавание лиц всегда было востребовано, и в этой области было проведено много исследований, например, определение людей на фото или манипуляции с лицом. Подстановка лица (“face swapping”) — техника, применимая в таких направлениях, как фотомонтаж, виртуальный подбор прически и защита конфиденциальности. До того, как в отрасль пришли нейронные сети, люди вручную подменяли лица на изображениях.

Популярным методом подстановки лиц является 3DMM (3D-морфная модель). При подстановке лица геометрия создается при помощи карт текстур, создавая 3D Morphable Model (3DMM). Исходные и целевые изображения текстурных карт взаимозаменяются при помощи оценочных UV-координат. После этого замененная текстурная карта повторно отображается с учетом предполагаемых условий освещения. Этот метод позволяет подставлять лица с другой пространственной ориентацией или в других условиях освещения. Но он терпит неудачу, когда условия освещения не реалистичны, а восстановление текстуры неосвещенного участка затруднено.

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

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

Эта проблема решена разработчиками путем применения General Adversarial Network (GAN) и двух Separative нейросетей, которые выделяют отдельно волосы и лицо на фото. Сеть обучается, используя данные скрытых пространств (“latent spaces”) после обработки каждой области лица и волос. Архитектура сети, которую назвали Region-Separative GAN (RSGAN), показана на рисунке.

Image for post
Image for post
Архитектура RSGAN с одной сетью Composer и двумя разделительными сетями

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

Пусть x — обучающее изображение, а c — вектор соответствующего визуального атрибута. Отображение скрытого пространства zxf и zxh изображения лица и волос x получают с помощью кодеров лица FE-xf и волос FE-xh . Аналогично, визуальный атрибут c встроен в скрытые пространства. Отображения скрытого пространства zcf и zch атрибутов лица и волос получены с помощью кодеров FE-cf и FE-ch. Объединяющая сеть G генерирует восстановленный внешний вид x’ с помощью скрытого пространства, полученного из кодеров.

Эти процессы реконструкции сформулированы как

Image for post
Image for post

Для лица ( x’f ), волос ( x’h ) и x’ для входного изображения требуются три функции потери. Ниже приведены функции потерь:

Image for post
Image for post

где MBG — фоновая маска, которая принимает пиксели переднего плана за 0 и фоновые пиксели за 1, а оператор ⨀ означает попиксельное умножение. Фоновая маска MBG используется для обучения сети генерации подробных изображений областей переднего плана.

Функция потерь GAN определяется так:

Image for post
Image for post

Результат

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

Image for post
Image for post
Рисунок 2: В верхней группе случайные изображения волос сочетаются с областью лица входного изображения слева. В нижней группе случайные изображения лица объединены с областью волос входного изображения.
Image for post
Image for post
Рисунок 3: Результаты подстановки лиц для разных лиц и причесок. Два верхних ряда на этом рисунке предоставляют исходные входы и их восстановленные изображения, полученные RSGAN. В последних трех столбцах — исходники причесок, которые используются для каждого человека.
Image for post
Image for post
Сравнение с передовыми методами подстановки лиц

Поскольку RSGAN преобразует изображения лиц и волос в скрытые пространства, изображения могут быть изменены манипулированием скрытыми областями. А успех архитектуры RSGAN и метода обучения говорит о том, что глубокие сети способны получать реалистичные изображения, которых не было в наборе датасетов для обучения.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store