Нейросетевой перенос выражения лица и позы головы с использованием скрытых дескрипторов позы
Изобретение относится к компьютерным технологиям, а именно к компьютерной графике. Технический результат заключается в повышении точности синтезирования изображения. Аппаратное устройство для переноса произвольного выражения лица и позы головы на аватар человека с сохранением идентичности аватара человека, содержащее: детектор для захвата изображений выражения лица и позы головы человека В, средство выбора изображений человека А, блок кодировщика идентичности, сконфигурированный для получения дескриптора идентичности из изображений человека А, причем выход кодировщика позы не содержит информации об идентичности человека А, блок кодировщика позы, выполненный с возможностью приема на входе изображений человека В, блок генератора выполнен с возможностью выводить полученное изображение аватара человека А, имеющего позу головы и выражение лица, взятые от человека В. 2 н. и 4 з.п. ф-лы, 10 ил., 2 табл.
Область техники, к которой относится изобретение
Изобретение относится к компьютерной графике, телеприсутствию (например, видеосвязи), определению позы головы человека на изображении, видеопроизводству, отслеживанию лица человека на видео, дополненной/виртуальной реальности.
Уровень техники
За последние годы существенно повысились качество и устойчивость переноса видеоизображений головы. Современные наиболее продвинутые системы [33, 22, 37, 30, 39, 42, 10, 36, 35] демонстрируют убедительные, практически фотореалистичные переносы "говорящей головы". Самые последние из них способны обеспечить такой результат с помощью глубоких нейронных генеративных сетей, даже если имеется всего одно изображение целевого человека [30, 42, 10, 36, 35].
Перенос изображений лица/головы является активной областью исследований. В этой области можно выделить работы, в которых изменения и дополнения локализованы в пределах лиц (перенос изображения лица), например [33, 30], и более масштабные подходы, в которых моделируются широкие области, включающие в себя значительную часть одежды, шеи, верхней одежды (перенос изображения головы), например, [22, 37, 42].
Важным аспектом систем переноса является представление позы. Как уже отмечалось выше, в большинстве работ перенос осуществляется с использованием ориентиров [33, 22, 37, 42, 10, 36]. Другой подход заключается в использовании элементов динамики лица (AU) [9], как в переносе лица [30] и переносе головы [35]. Обнаружение элементов динамики все еще требует ручного аннотирования и обучения с учителем. В системе X2Face [39] используются скрытые векторы, которые обучаются прогнозированию полей деформирования.
Более классический подход заключается в моделировании позы лица/головы на платформе трехмерной морфируемой модели (3DMM) [1] или применении аналогичного подхода в двухмерной среде (например, модель активного внешнего вида) [6]. Однако, обучение 3DMM и подгонка обученной 3DMM почти всегда включают в себя обнаружение ориентиров и тем самым наследуют многие из недостатков ориентиров. В других случаях требуется датасет трехмерных сканов, чтобы построить модель для отделения позы от идентичности на платформе 3DMM.
В ряде недавних работ исследовалось, как можно обучать ориентиры без привлечения учителя [44, 19]. Хотя неконтролируемые ключевые точки, в общем, весьма перспективны, они все же содержат специфическую для человека информацию, так же как и контролируемые ключевые точки, и поэтому в основном не пригодны для переноса с одного человека на другого. То же самое относится к плотным, многомерным дескрипторам, таким как дескриптор тела DensePose [14], и к плотным дескрипторам только лица [15, 34]. И наконец, кодек-аватары [26] обучаются на специфических для человека скрытых дескрипторах позы и экстракторах на основе потерь реконструкции. Однако перенос таких дескрипторов с одного человека на другого не рассматривался.
Недавняя параллельная работа [32] продемонстрировала, что можно использовать относительное перемещение неконтролируемых ключевых точек для переноса анимации, по меньшей мере, при отсутствии значительного поворота головы. Всестороннее сравнение предложенного подхода с [32] оставлено для дальнейшей работы.
Кроме переноса головы/лица существует очень большой объем работ по обучению разделенным представлениям. К репрезентативным работам в этой области относятся работы [8, 40], в которых для обучения используются скрытые дескрипторы позы или формы для произвольных классов объектов с использованием датасетов видеоизображений. Некоторые подходы (например [24]) нацелены на обучение разделению стиля и контента (которое может приблизительно соответствовать разделению формы и текстуры) с использованием состязательных потерь [12] и потерь согласованности цикла [45, 17]. Альтернативно, разделение можно осуществлять путем прямого подбора факторизованных распределений к данным (например, [23]).
Что еще более важно, предлагается новое представление позы (здесь и далее "поза головы" означает совокупность ориентации головы, ее положения, а также выражения лица) для нейросетевого переноса выражения лица и позы головы. Это представление позы играет ключевую роль качестве переноса. Большинство систем, включая [33, 22, 37, 42, 10, 36], основаны на представлении ключевой точки (ориентира). Основным преимуществом такого представления является то, что в настоящее время имеются надежные и эффективные "готовые" детекторы ориентиров [21, 2].
Появление больших непомеченных датасетов видеоизображений людей, таких как [29, 4, 5], позволяет обучать скрытым дескрипторам позы и выражения без учителя. Этот подход впервые был изучен в [39, 38], где скрытые дескрипторы позы обучались таким образом, что из обученных дескрипторов можно было вывести плотный поток между различными кадрами.
Однако лицевые ориентиры имеют ряд недостатков. Во-первых, обучение детектора ориентиров требует чрезмерных усилий по аннотированию, и в наборах аннотированных ориентиров часто отсутствуют некоторые важные аспекты позы. Например, во многих аннотациях ориентиров отсутствуют зрачки, и, как следствие, перенос не будет полностью контролировать направление взгляда. Во-вторых, многие из ориентиров не имеют анатомической основы, и их аннотации неоднозначны и подвержены ошибкам, особенно если они загорожены другими объектами. На практике такая неоднозначность аннотации часто приводит ко временной нестабильность обнаружения ключевых точек, что, в свою очередь, отражается на результатах переноса. В заключение следует отметить, что ориентиры в качестве представления являются специфическими для человека, так как они содержат существенный объем не зависящей от позы информации о геометрии головы.
Это может быть крайне нежелательно для переноса головы, например, если кто-то пожелает сделать портретную фотографию или картину с целевым человеком, имеющим другую геометрию головы.
Сущность изобретения
В настоящем изобретении предложено усовершенствовать существующие системы нейросетевого переноса головы по одному примеру (one-shot), используя два важных подхода. Во-первых, предшествующую современную систему переноса [42] просто дополняют способностью прогнозировать сегментацию переднего плана. Такое прогнозирование требуется для различных сценариев, например, для телеприсутствия, где перенос исходного заднего плана в новую среду может быть нежелательным.
Предложена альтернатива подходу на основе деформации [39, 38]. В предложенном подходе обучение ведется по малоразмерным, не зависящим от человека дескрипторам позы наряду со среднеразмерными, зависящими от человека и независящими от позы дескрипторами, посредством наложения набора потерь реконструкции на видеокадры в большой коллекции видеоизображений.
Важно отметить, что при оценке потерь реконструкции предлагается удалить задний план, чтобы его помехи и покадровые изменения не влияли на обученные дескрипторы.
Предлагаемая система модифицирует и расширяет модель переноса Захарова и др. [42]. Во-первых, добавлена возможность прогнозировать сегментацию. Во-вторых, система обучается выполнять перенос на основе скрытых векторов позы, а не ключевых точек.
Простая обучающая структура на основе выборки множества случайных кадров из одного и того же видеоматериала в сочетании с большим размером датасета видеоданных позволяет обучать экстракторы для обоих дескрипторов, что очень хорошо работает для задач переноса, включая перенос с одного человека на другого.
В частности, предлагаемый перенос, основанный на новом скрытом представлении позы, сохраняет идентичность целевого человека намного лучше, чем при использовании дескрипторов позы FAb-Net [38] и X2Face [39]. Кроме того, анализируется качество обученных скрытых дескрипторов позы для таких задач, как прогнозирование ориентиров и поиск на основании позы.
Важнейшим компонентом большого количества ориентированных на человека задач, связанных с компьютерным зрением и графикой является широкое представление позы головы и выражения лица человека. Эффективным подходом является обучение таким представлениям на данных без опоры на выполненную человеком аннотацию, так как при этом можно использовать обширные непомеченные наборы данных видеоизображений людей. В настоящей работе предлагается новый простой метод осуществления такого обучения. В отличие от предыдущих работ, предлагаемое обучение позволяет получить не зависящие от человека дескрипторы, которые фиксируют позу человека и при этом могут передаваться с одного человека на другого, что особенно полезно для таких применений, как перенос лица. Также показано, что кроме переноса лица эти дескрипторы полезны и для других последующих задач, например, для определения ориентации лица. При этом описанный выше способ, выполняемый электронным устройством, может выполняться с использованием модели искусственного интеллекта.
Важно отметить, что предложенную систему можно успешно применить и для создания видео. Даже если каждый видеокадр создается независимо и без какой-либо временной обработки, предлагаемая система демонстрирует сглаженные во времени выражения лица благодаря дополнениям позы и скрытому представлению позы. Предыдущие методы, в которых для осуществления переноса использовались ключевые точки лица, унаследовали бы шаткость от детекторов ключевых точек.
Предложено аппаратное устройство, содержащее программный продукт, выполняющий способ нейросетевого переноса выражения лица и позы головы, содержащее: блок кодировщика идентичности, сконфигурированный для получения дескриптора идентичности из изображения человека А, причем выход блока кодировщика позы не содержит информации об идентичности человека А; блок кодировщика позы, сконфигурированный для получения дескриптора позы головы и выражения лица из изображения человека B, причем выход блока кодировщика позы не содержит информации об идентичности человека B; блок генератора, принимающий выходы блоков кодировщика идентичности и кодировщика позы, причем блок генератора сконфигурирован для синтезирования аватара человека A, имеющего позу головы и выражение лица, взятые от человека B. При этом блок кодировщика позы представляет собой сверточную нейронную сеть, которая принимает на вход изображение человека и выдает на выходе вектор, описывающий позу его головы и выражение лица и не описывающий его идентичность. При этом идентичность человека B означает цвет кожи, форму лица, цвет глаз, одежду и украшения человека B.
Предложен способ синтезирования фотореалистичного аватара человека, заключающийся в том, что: получают с помощью блока кодировщика идентичности дескриптор идентичности из изображения человека А; получают с помощью блока кодировщика позы дескриптор позы головы и выражения лица из изображения человека B; синтезируют с помощью блока генератора, принимающего на вход выходы блоков кодировщика идентичности и кодировщика позы, аватар человека A, имеющий позу головы и выражение лица, взятые от человека B. При этом блок кодировщика позы представляет собой сверточную нейронную сеть, принимающую на вход изображение человека и выдающую вектор, описывающий позу его головы и выражение лица и не описывающий его идентичность. При этом идентичность означает цвет кожи, форму лица, цвет глаз, одежду, украшения.
Описание чертежей
Представленные выше и/или другие аспекты изобретения станут более очевидными из описания примерных вариантов осуществления со ссылкой на прилагаемые чертежи.
На фиг. 1 показано использование произвольно выбранных людей в качестве образцов выражения лица и позы головы (верхний ряд) для получения реалистичных переносов произвольных говорящих голов (таких как Мона Лиза, нижний ряд).
На фиг. 2a показан предложенный обучающий конвейер (для простоты дискриминатор не показан).
На фиг. 2b показано применение предложенного способа.
На фиг. 3 показана оценка систем переноса с точки зрения их способности представлять позу образца и сохранять исходную идентичность (стрелки указывают на улучшение).
На фиг. 4 представлено сравнение переноса с одного человека на другого для нескольких систем на тестовом наборе VoxCeleb2.
На фиг. 5 показан перенос путем интерполяции между двумя векторами позы по сферической траектории в пространстве дескриптора позы.
На фиг. 6 представлено дополнительное сравнение переноса с одного человека на другого для нескольких систем на тестовом наборе VoxCeleb2.
На фиг. 7 представлена количественная оценка того, как абляция нескольких важных признаков обучающей выборки влияет на предлагаемую систему.
На фиг. 8 представлено сравнение переноса с одного человека на другого для предложенной лучшей модели и ее абляционных версий.
На фиг. 9 показано влияние дополнений позы на моделях X2Face+ и FAb-Net+. Без дополнений становится заметным расхождение идентичности.
Описание вариантов осуществления
Предложена система нейросетевого переноса выражения лица и позы головы, в основу которой положено скрытое представление позы и которая способна спрогнозировать сегментацию переднего плана вместе с изображением RGB. Скрытое представление позы обучается как часть всей системы переноса, и процесс обучения основан исключительно на потерях реконструкции изображения. Несмотря на свою простоту, при наличии большой и достаточно разнообразной обучающей выборки данных такое обучение успешно выделяет позу из идентичности. После этого полученная система может воспроизводить мимику человека-образца и, более того, выполнять перенос с одного человека на другого. Кроме того, обученные дескрипторы полезны для других связанных с позой задач, таких как прогнозирование ключевых точек и поиск на основе позы.
На фиг. 1 показано использование произвольно выбранных людей в качестве образцов выражения лица и позы головы (верхний ряд) для создания реалистичных переносов произвольных говорящих голов (таких как Мона Лиза, нижний ряд). Предложенная система может создавать реалистичные переносы произвольных говорящих голов (таких как Мона Лиза), используя произвольных людей в качестве образцов выражения лица и позы головы (верхний ряд). Несмотря на то, что обучение выполняется без учителя, этот способ позволяет успешно разложить позу и идентичность, так что сохраняется идентичность человека, на которого произведен перенос.
Изобретение позволяет быстро получить точное и гибкое представление (дескриптор) позы головы и выражения лица человека по одному изображению его головы.
Изобретение позволяет определять позу головы (направление/поворот/углы наклона) и выражение лица (включая направление взгляда) по изображению человека. Изобретение может найти применение в следующих областях:
системах телеприсутствия (видеосвязи);
системах дистанционного управления с помощью лиц (в телевизорах, смартфонах, роботах и т.д.);
развлекательных системах, играх (управление виртуальным аватаром или его создание);
мессенджерах (например, создание анимированных стикеров/смайликов);
системах дополненной (AR) или виртуальной (VR) реальности (определение положения головы или взгляда при отрисовке виртуальных объектов с правильного ракурса).
Предлагаемая система модифицирует и расширяет модель переноса Захарова и др. [42]. Во-первых, добавлена возможность прогнозирования сегментации. Во-вторых, система обучается выполнять перенос на основе скрытых векторов позы, а не ключевых точек. Как и в [42], обучение осуществляется на датасете видеопоследовательностей VoxCeleb2 [4]. Каждая последовательность содержит говорящего человека и получается из необработанной последовательности путем прогона детектора лица, обрезки полученного лица и изменения его размера до фиксированного размера (в предлагаемом случае 256х256). Кроме того, как и в случае [42], предусмотрена стадия "метаобучения", на которой большую модель, ответственную за воспроизведение всех людей в датасете, обучают через последовательность обучающих эпизодов, и стадия дообучения, на которой "метамодель" подвергают дообучению на кортеж изображений (или одно изображение) конкретного человека.
Как показано на фиг. 2а, на каждом этапе метаобучения предлагаемая система выбирает набор кадров из видео человека. Эти кадры обрабатываются двумя кодировщиками. Кодировщик большего размера применяется к нескольким кадрам видео, а кодировщик меньшего размера - к удержанному кадру. Под удержанными данными обычно подразумевается часть данных, которая специально не показывается определенной модели (т.е. удерживается вне ее). В данном случае удержанный кадр - это просто еще один кадр того же человека. Термин "удержан" подчеркивает, что данный кадр гарантированно не поступит в кодировщик идентичности и поступит только в кодировщик позы. Полученные вложения передаются в сеть-генератор, целью которой является реконструкция последнего (удержанного) кадра. Наличие кодировщика идентичности, который является более емким, чем кодировщик позы, очень важно для отделения позы от идентичности в скрытом пространстве вложений позы, что является ключевым компонентом настоящего изобретения. Не менее важно иметь очень узкое место в кодировщике позы, которое в предлагаемом случае реализуется через нейронную сеть меньшей производительности в кодировщике позы, и меньшую размерность вложений позы, чем вложения идентичности. Это вынуждает кодировщик позы кодировать только информацию позы во вложения позы и игнорировать информацию идентичности. Поскольку производительность кодировщика позы ограничена, а его вход не совсем соответствует другим кадрам относительно идентичности (благодаря дополнению данных), система обучается извлекать всю не зависящую от позы информацию через кодировщик идентификации и использует меньший кодировщик для захвата только связанной с позой информации, тем самым обеспечивая разделение позы и идентичности.
Предложен способ нейросетевого переноса выражения лица и позы головы, т.е. алгоритм синтезирования фотореалистичного аватара человека A, где выражение лица и поза головы взяты из изображения человека B (как показано на фиг. 2a).
Фиг. 2b иллюстрирует конвейер логического вывода предложенного способа, т.е. алгоритм прогнозирования/отрисовки предложенной системой после ее обучения.
Следует отметить, что блок генератора обучается одновременно со всеми остальными блоками. Во время обучения блок кодировщика идентичности прогнозирует вложения идентичности из нескольких изображений человека, а блок кодировщика позы прогнозирует вложение позы из дополнительного изображения этого человека. Блок генератора использует усредненные вложения идентичности и вложение позы и обучается выводить изображение, которое поступило в блок кодировщика позы, а также маску переднего плана для этого изображения. Новыми в этом конвейере являются: (1) блок кодировщика позы, во время обучения которого непосредственно не участвует учитель, (2) использование маски переднего плана в качестве цели, (3) дополнения позы (сохраняющие идентичность искажения ввода в блок кодировщика позы) как метод разделения позы и идентичности.
Прежде всего, вычисляется вложение идентичности как среднее значение выходов кодировщика идентичности по всем имеющимся изображениям человека А. После этого кодировщик идентичности отбрасывается, а остальная часть системы дообучается на изображения человека А точно так же, как на этапе метаобучения, со следующими отличиями: (1) в обучающем наборе имеется всего один человек, (2) веса кодировщика позы сохраняются замороженными, (3) вложение идентичности преобразуется в обучаемый параметр. В заключение, изображение любого человека B пропускается через кодировщик позы, и спрогнозированные рендеринг и сегментация генерируются как обычно (т.е. как во время обучения) из полученного вложения позы и дообученного вложения идентичности.
1. Для получения дескриптора идентичности (цвета кожи, формы лица, цвета глаз, одежды, украшений и т.п.) из изображения человека А используется программный блок "кодировщик идентичности" (например, с использованием системы, описанной в статье "Few-Shot Adversarial Learning of Realistic Neural Talking Head Models".
2. Для получения дескриптора позы головы и выражения лица из изображения человека В (пунктирная линия на фиг. 2а) используется программный блок "кодировщик позы".
3. Выходы этих двух блоков подаются на вход программного блока "генератор" для синтезирования желаемого аватара.
Блок "кодировщик позы" представляет собой обучаемую модель машинного обучения (например, сверточную нейронную сеть). Он принимает на входе изображение человека и выдает на выходе вектор, который описывает позу головы и выражение лица и не описывает их идентичность.
Алгоритм обучения для этой модели: в обучающем конвейере системы "Few-Shot Adversarial Learning of Realistic Neural Talking Head Models" входной блок "RGB & landmarks" заменяется блоком "кодировщика позы" согласно изобретению. Затем вся система обучается, как описано в работе "Few-Shot Adversarial Learning of Realistic Neural Talking Head Models" с дополнениями, описанными ниже. В частности: в генераторе нет понижающей дискретизации (он не относится к архитектуре image-to-image (с одного изображения на другое)), так как он запускается с постоянного обучаемого тензора, а не с полноразмерного изображения; вложение поз дополнительно присоединяется к вводу MLP, который предсказывает параметры AdaIN; кодировщик идентичности имеет другую архитектуру (ResNeXt-50 32×4d).
Предложены произвольные дополнения позы к образцу выражения лица и позы головы; генератор прогнозирует маску сегментации переднего плана в дополнительном выходном канале, и для согласования этого прогноза с истиной применяется потеря Дайса.
По сравнению с другими существующими решениями этой задачи новизна заключается в следующем:
выход блока "кодировщика позы" не содержит информации об идентичности человека B, следовательно, этот выход деперсонифицирован, что имеет преимущество с точки зрения информационной безопасности;
по той же причине, что и выше, предложенный подход позволяет обойтись без блока для адаптации дескриптора позы головы и выражения лица к идентичности человека А (внутри или вне блока "генератор"), а значит, улучшает вычислительную эффективность.
Далее будет описан этап метаобучения.
В каждом эпизоде метаобучения рассматривается отдельная видеопоследовательность. Затем из этой последовательности выбирается K+1 случайных кадров , а также SK+1 - карта сегментации переднего плана для IK+1, которая предварительно вычисляется с помощью готовой сети семантической сегментации.
Затем первые K изображений подаются в относительно высокопроизводительную сверточную сеть F, которая вызывает кодировщик идентичности. Она аналогична сети внедрения в [42], за исключением того, что не принимает ключевые точки на входе.
Для каждого изображения Ii кодировщик идентичности выдает di-мерный вектор , который вызывает вложение идентичности Ii. Ожидается, что вложения идентичности содержат независимую от позы информацию о человеке (включая освещение, одежду и т.п.). При наличии K кадров получается один вектор идентичности путем приведения к среднему .
Оставшееся изображение IK+1 (источник позы) сначала подвергается преобразованию A для произвольного дополнения позы, которое будет описано ниже. Затем A(IK+1) передается через сеть гораздо меньшей производительности, которая называется кодировщиком позы и обозначается как G. Кодировщик позы выдает dp-мерное вложение позы , которое стремится стать не зависящим от человека дескриптором позы.
Преобразование A, упомянутое выше, важно для разделения позы и идентичности. Оно сохраняет позу человека нетронутой, но может изменить его идентичность. В частности, оно произвольно масштабирует изображение независимо по горизонтальной и вертикальной осям и произвольно применяет операции сохранения контента, такие как размытие, повышение резкости, изменение контрастности или сжатие JPEG. В изобретении привлекается дополнение позы, поскольку оно применяется на источнике позы, и его можно рассматривать как форму дополнения данных.
Вложения позы и идентичности передаются в сеть-генератор, которая пытается реконструировать изображение IK+1 с максимально возможной точностью. В то время как в [42] использовались растеризованные ключевые точки (изображения стикмен) для передачи позы в их сети-генераторы, авторы настоящего изобретения полностью полагаются на механизм AdaIN [16] для передачи вложений как позы, так и идентичности в генератор. Более конкретно, предлагаемый генератор повышающей дискретизации запускается с постоянного обучаемого тензора размера 512×4x4 и выдает на выходе два тензора: размера 3×256x256 и размера 1×256x256, которые он пытается согласовать с частью переднего плана изображения IK+1 и его маской сегментации SK+1, соответственно. Это достигается простым прогнозированием тензора 3×256x256 в конечном слое. После каждой свертки вставляются блоки AdaIN. Для получения коэффициентов AdaIN берутся соединенные вложения позы и идентичности, и этот (di+dp)-мерный вектор передается через MLP с обучаемыми параметрами как в StyleGAN [20].
Ожидается, что созданные генератором и будут максимально близки к и SK+1, соответственно. Это достигается с помощью нескольких функций потерь. Карты сегментации сопоставляются с помощью потери коэффицтента Дайса [27]. С другой стороны, изображения головы с забитым задним планом сопоставляются с использованием той же комбинации потерь, что и в [42]. В частности, существуют потери контента на основании сопоставления активаций ConvNet для модели VGG-19, обученной классификации ImageNet, и модели VGGFace, обученной распознавать лица. Кроме того, и передаются через дискриминатор проекции (в данном случае отличие от [42] состоит в том, что в изобретении снова не предоставляются ему растеризованные ключевые точки) для вычисления состязательной потери, которая подталкивает изображения к реалистичности, потерь согласования признаков дискриминатора и параметра согласования вложения.
Перенос и дообучение. После выполнения метаобучения модели ее можно использовать для подгонки к новым идентичностям, невидимым во время метаобучения. Таким образом, при наличии одного или нескольких изображений нового человека можно извлечь из них вектор идентичности, пропустив эти изображения через кодировщик идентичности и усреднив эти результаты поэлементно. Затем, подставив вектор позы y, извлеченный из изображения того же самого или другого человека, можно осуществить перенос этого человека, вычислив изображение и его маску переднего плана.
Чтобы дополнительно уменьшить расхождение идентичности, предлагается следовать [42] и осуществить дообучение модели (а именно, весов MLP, генератора и дискриминатора) с тем же набором потерь, что и в [42], плюс с потерей коэффициента Дайса, рассматривая предоставленный набор изображений нового человека и их сегментацию в качестве истины. Оцененное вложение идентичности сохраняется фиксированным во время дообучения (включение его в оптимизацию не привело к каким-либо различиям в предлагаемых экспериментах, так как число параметров во вложении намного меньше, чем в MLP и сети-генераторе). Сеть G вложения позы также сохраняется фиксированной во время дообучения.
Главным выводом является то, что применительно к человеку X обученная, как описано выше, модель переноса может успешно воспроизводить мимику человека на изображении I, когда вектор позы извлекается из изображения того же человека X. Более удивительно то, что эта модель также может воспроизводить мимику, когда вектор позы извлекается из изображения другого человека Y. В этом случае просачивание идентичности от этого другого человека сводится к минимуму, т.е. полученное изображение все еще выглядит как изображение человека X.
Изначально, такое разделение позы и идентичности не должно было бы происходить и для его обеспечения потребовалась бы какая-то форма состязательного обучения [12] или совместимости циклов [45, 17]. Оказалось, что в случае (i) достаточно низкой производительности сети G экстрактора позы, (ii) применения дополнений позы и (iii) удаления заднего плана, разделение происходит автоматически, и предложенные эксперименты с дополнительными условиями потерь, такими как, например в [8], не дают никаких дальнейших улучшений. Очевидно, что с помощью трех описанных выше методов модель предпочитает извлекать все специфические для человека детали из кадра источника идентичности, используя более производительную сеть экстрактора идентичности.
Далее будет дана оценка этого эффекта разделения, который стал "приятным сюрпризом", и будет показано, что он действительно сильнее, чем в случае других похожих методов (т.е. он лучше поддерживает перенос с одного человека на другого с меньшим просачиванием идентичности).
Кроме того, дополнительно выполняются абляционные исследования, чтобы определить, как производительность кодировщика позы, дополнения позы, сегментация и размерность dp скрытого вектора позы влияют на способность предлагаемой системы переноса сохранять позу и идентичность.
Предлагаемая обучающая выборка данных представляет собой коллекцию видеоматериалов YouTube из VoxCeleb2 [4]. Имеется около 100 000 видеоизображений около 6000 человек. Из каждых 25 кадров в каждом видео выбирался 1 кадр, так что осталось всего около семи миллионов общих обучающих изображений. На каждом изображении аннотированное лицо повторно обрезалось, для чего сначала детектор S3FD [43] захватывал его ограничивающий прямоугольник, а затем прямоугольник превращался в квадрат путем увеличения меньшей стороны, боковые стороны прямоугольника увеличивались на 80% с сохранением центра, и, наконец, размер обрезанного изображения изменялся до 256X256.
Сегментацию человека осуществляли с помощью модели Graphonomy [11]. Как и в [42], авторы установили K=8, используя тем самым вектор идентичности, извлеченный из восьми случайных кадров видео, чтобы реконструировать девятый кадр по его дескриптору позы.
В предложенной лучшей модели кодировщик позы имеет архитектуру MobileNetV2 [31], а кодировщик идентичности - архитектуру ResNeXt-50 (32 X 4d) [41]. Они оба не отлаживались и поэтому содержат нормализацию пакетов [18]. Размеры вложений позы и идентичности dp и di равны 256 и 512, соответственно. К этим вложениям не применяются нормализация или регуляризация. Модуль, преобразующий их в параметры AdaIN, представляет собой персептрон ReLU со спектральной нормализацией и один скрытый слой из 768 нейронов.
В основу предлагаемого генератора положен генератор [42], но без блоков понижающей дискретизации, так как все входы делегированы AdaIN, расположенным после каждой свертки. Точнее, обучаемый постоянный тензор 512 × 4 × 4 преобразуется двумя остаточными блоками постоянного разрешения, за которыми следуют 6 остаточных блоков повышающей дискретизации. Начиная с четвертого блока повышенной дискретизации, количество каналов начинает уменьшаться вдвое, так что тензор конечного разрешения (256 X 256) имеет 64 канала. Этот тензор пропускается через слой AdaIN, ReLU, свертку 1X1 и tanh, становясь 4-канальным изображением. В отличие от [42], авторы не используют механизм самовнимания (self-attention). Спектральная нормализация [28] применяется везде в генераторе, дискриминаторе и MLP.
Вместо чередующихся обновлений генератора и дискриминатора выполняется одно обновление веса для всех сетей после накопления градиентов из всех параметров потерь.
Была обучена модель для 1200000 итераций с минипакетом из 8 выборок, распределенных на два графических процессора NVIDIA P40, что в общей сложности заняло около двух недель.
Предлагаемая количественная оценка оценивает как относительную эффективность дескрипторов позы с использованием вспомогательных заданий, так и качество переноса с одного человека на другого. Показаны примеры переноса в сценариях с одним и тем же человеком и с одного человека на другого с точки зрения качества, а также результаты интерполяции в обученном пространстве позы. Абляционные исследования в дополнительном материале показывают эффект различных компонентов предлагаемого метода.
Далее представлено сравнение результатов предлагаемого изобретения с результатами известных способов и систем. Рассматриваются следующие дескрипторы позы, основанные на различных степенях участия учителя.
Предлагаемое изобретение. 256-мерные скрытые дескрипторы позы, обученные в предложенной системе.
X2Face. 128-мерные векторы образцов, обученные в системе переноса X2Face [39].
FAB-Net. Оцениваются 256-мерные дескрипторы FAb-Net [38] в качестве представления позы. Они связаны с предлагаемым изобретением в том, что, хотя они не являются не зависящими от человека, они также обучаются без участия учителя на видеоколлекции VoxCeleb2.
3DMM. Рассматривается новейшая система 3DMM [3]. Эта система извлекает разложенные жесткую позу, выражение лица и дескриптор формы, используя глубокую сеть. Дескриптор позы получается путем объединения поворота жесткой позы (представленного в виде кватерниона) и параметров выражения лица (29 коэффициентов).
Предлагаемый дескриптор обучается на датасете VoxCeleb2. Дескриптор X2Face обучается на меньшем датасете VoxCeleb1 [29], а FAb-Net - на обоих. Дескрипторы 3DMM контролируются наиболее тщательно, так как 3DMM обучается по 3D-сканам и требует детектора ориентира (который, в свою очередь, обучается по схеме с привлечением учителя).
Кроме того, рассматриваются следующие системы переноса головы, основанные на этих дескрипторах позы:
X2Face. Система X2Face [39] основана на нативных дескрипторах и переносе на основе деформации.
X2Face+. В этом варианте вместо предложенного кодировщика позы авторы используют замороженную предобученную управляющую сеть X2Face (вплоть до управляющего вектора) и оставляют остальную часть архитектуры неизменной относительно предложенной. Обучаются кодировщик идентичности, генератор, зависящий от скрытого вектора позы X2Face и предполагаемого вложения идентичности, и дискриминатор проекции.
FAB-Net+. То же самое, что и X2Face+, но с замороженной FAb-Net вместо предлагаемого кодировщика позы.
3DMM+. То же самое, что и X2Face+, но с замороженной Exp-Net[3] вместо предложенного кодировщика позы и с отключенными дополнениями позы. Дескриптор позы строится из выходов ExpNet, как описано выше.
В предлагаемом изобретении эти 35-мерные дескрипторы дополнительно нормируются по поэлементному среднему и стандартному отклонению, вычисленному на обучающем наборе VoxCeleb2.
FSTH. Исходная система создания говорящей головы по малому количеству примеров (few-shot talking head system) [42], управляемая растеризованными ключевыми точками.
FSTH+. Авторы переобучают систему [42], внеся несколько изменений, которые делают ее более сопоставимой с предлагаемой системой и другими базовыми аспектами. Необработанные координаты ключевых точек вводятся в генератор с использованием механизма AdaIN (как в предлагаемой системе). Генератор прогнозирует сегментацию вместе с изображением. Авторы также используют такие же обрезки, которые отличаются от [42].
Чтобы понять, насколько хороши обученные дескрипторы позы при сопоставлении разных людей в одной и той же позе, используется датасет Multi-PIE [13], который не используется для обучения ни одного из дескрипторов, но содержит шесть аннотаций классов эмоций для людей в различных позах. Этот датасет ограничен практически фронтальной и полупрофильной ориентациями камеры (а именно: 08_0, 13_0, 14_0, 05_1, 05_0, 04_1, 19_0), так что остается 177 280 изображений. В каждой группе ориентации камеры авторы произвольно выбирают из нее изображение запроса и выбирают ближайшие N изображений из той же группы, используя косинусное сходство дескрипторов. Если в ответ возвращается человек с такой же меткой эмоций, совпадение будет корректным.
Эту процедуру повторяют 100 раз для каждой группы. В таблице 1 показано общее отношение корректных совпадений в списках топ-10, топ-20, топ-50 и топ-100. Для дескриптора 3DMM авторы рассматривают только 29 коэффициентов выражения лица и игнорируют информацию о жесткой позе как несущественную для эмоций.
Таблица 1. Точность результатов поиска на основе позы (выражения) с использованием различных дескрипторов позы на датасете Multi-Pie. Детали см. в тексте.
Точность для топ-N запросов (%) | ||||
Дескриптор | N=10 | N=20 | N=50 | N=100 |
Fab-Net | 45.7 | 40.8 | 36.6 | 35.7 |
3DMM | 47.3 | 45.6 | 41.9 | 41.1 |
X2Face | 61.0 | 55.7 | 51.8 | 49.4 |
Ours | 75.7 | 63.8 | 57.8 | 54.1 |
В этом сравнении можно заметить, что скрытое пространство предлагаемых вложений позы лучше сгруппировано по классам эмоций, чем у других дескрипторов выражения лица, поскольку предлагаемый результат намного лучше для метрик топ-10 и топ-20, хотя и похож на X2Face и лучше, чем остальные для топ-50 и топ-100. Векторы FAb-Net и X2Face содержат информацию идентичности, поэтому они с большей вероятностью будут близки к векторам, представляющим одного и того же или похожего человека. Что касается 3DMM, здесь требуются различные скрытые векторы выражения, чтобы превратить различные формы (людей) в одно и то же выражение лица по конструкции; поэтому коэффициенты выражения могут легко совпадать для разных людей, показывающих различные выражения лица.
Регрессия ключевых точек не входит в предложенные целевые применения, так как ключевые точки содержат специфическую для человека информацию. Однако это популярная задача, с которой в прошлом сравнивались неконтролируемые дескрипторы поз, поэтому предлагаемый метод выполняется на стандартном эталонном тесте в тестовом наборе MAFL [25]. Для прогнозирования ключевых точек используется ReLU MLP с одним скрытым слоем размером 768, и в предлагаемом случае авторы используют в качестве ввода вложения как позы, так и идентичности. Используя стандартный нормированный глазной базис, авторы получают ошибку расстояния 2,63. Это меньше, чем ошибка 3,44, полученная FAb-Net, хотя и превосходит достигнутый в [19] уровень (2,54) для этой задачи.
Количественная оценка. Сравнивается производительность семи перечисленных выше систем переноса в схеме переноса с одного человека на другого. Для этого произвольно выбираются 30 человек из тестовой группы VoxCeleb2 и на них обучаются модели говорящих голов T1; ...; Т30. Каждая модель Tk создана из 32 случайных кадров видео . Все модели, кроме X2Face, дообучаются по этим 32 кадрам за 600 шагов оптимизации. Используя эти модели, авторы вычисляют две метрики для каждой системы: ошибку идентичности и ошибку реконструкции позы .
Ошибка идентичности оценивает, насколько близко полученные говорящие головы похожи на подлинного человека k, для которого обучалась модель. Для этого используется сеть R распознавания лица ArcFace [7], которая выдает дескрипторы идентичности (векторы). Авторы вычисляют усредненный эталонный дескриптор из датасета дообучения и используют косинусное сходство (csim), чтобы сравнить его с дескрипторами, полученными из результатов переноса с одного человека на другого. Перенос с одного человека на другого выполняется путем прогона Tk со всеми другими 29 людьми. Чтобы получить окончательную ошибку, усредняются сходства (минус одно) для всех 30 человек в тестовом наборе.
Формально,
С другой стороны, ошибка реконструкции позы предназначена для количественной оценки того, насколько хорошо система воспроизводит позу и выражение лица образца, и определяется в виде лицевых ориентиров. Поскольку наборы ориентиров можно сравнивать напрямую только для одного и того же человека, тестовый датасет ограничен парами самопереноса, т.е. прогон осуществляется только для Tk с Ik. Однако, поскольку Tk обучен на , то во избежание переобучения авторы используют другие 32 удержанных кадра из того же видео . Используется готовый алгоритм прогнозирования двухмерных лицевых ориентиров L [2] для получения ориентиров как в образце , так и в результате переноса .
В предлагаемом случае мерой того, насколько близко ориентиры приближаются к эталонным ориентирам , является среднее расстояние между соответствующими ориентирами, нормированное на глазной базис. Как и ранее, вычисляется d для всех образцов и среднее для всех 30 человек:
На фиг. 3 показана оценка систем переноса с точки зрения их способности представлять позу образца и сохранять начальную идентичность (стрелки указывают на улучшение). Горизонтальная и вертикальная оси соответствуют ошибке идентификации и ошибке реконструкции позы , соответственно, которые обе вычисляются из подмножества тестовой части датасета VoxCeleb2. Эти метрики подробно описаны ниже в разделе "Подробное описание" в подразделе "Количественная оценка". Каждая точка на графике соответствует известной системе переноса головы, которая сравнивается с данной предложенной системой. График на фиг. 3 содержит эти две метрики, оцененные для сравниваемых моделей. Идеальная система Т имела бы , т.е. чем ближе к нижнему левому углу, тем лучше. В этих условиях предлагаемая полная модель явно лучше всех систем кроме FSTH+, которая немного лучше по одной из метрик, но намного хуже по другой, и выигрыш которой обусловлен использованием внешнего детектора ключевых точек.
Качественное сравнение. На фиг. 4 представлено сравнение переноса с одного человека на другого для нескольких систем на тестовом наборе VoxCeleb2. Верхнее левое изображение является одним из 32 кадров источника идентичности, верхнее левое изображение показывает одно из изображений, определяющих целевую идентичность из тестовой части VoxCeleb2, т.е. человека, которого было бы желательно визуализировать с другими выражением лица и позой головы. Остальные изображения в этом ряду также взяты из тестовой части VoxCeleb2, и они определяют позу, которую следует передать целевому человеку. Другие изображения в верхнем ряду представляют собой образцы выражения лица и позы головы. Предлагаемый способ лучше сохраняет идентичность целевого человека и успешно передает мимику от человека-образца. Каждый из оставшихся рядов соответствует какому-то методу нейросетевого переноса выражения лица и позы головы, который сравнивается с "Proposed invention", являющимся предлагаемым изобретением, и другим методам, соответствующие тем, которые показаны на фиг. 3. Показаны результаты переноса, полученные соответствующим методом.
На фиг. 4 показано качественное сравнение описанных выше систем переноса. Видно, что система FSTH, руководствующаяся растеризованными ориентирами, в значительной степени полагается на пропорции лица образца и поэтому не является не зависящей от человека. Ее модифицированная версия FSTH+ дает лучший результат, так как имеет большую репрезентативную силу вокруг векторизованных ключевых точек; тем не менее, имеется заметное "просачивание идентичности" (например, сравните ширину головы в столбцах 1 и 2) и ошибки в значимых выражениях лица, например, закрытые глаза. Основанный на деформации метод X2Face уже потерпел неудачу на небольших поворотах.
Два похожих метода, X2Face+ и FAb-Ne+, обеспечивают убедительные базовый уровень, несмотря на некоторые признаки расхождения идентичности, например, следы очков в столбце 7 и длинные волосы, проявившиеся из образца выражения лица и позы головы в столбце 5. Важно отметить, что, хотя дескрипторы позы из этих методов не являются не зависящими от человека, во время обучения все еще применяются дополнения позы. В описанном ниже абляционном исследовании продемонстрировано, что эффективность переноса с одного человека на другого резко снижается, если в этих двух методах удаляются дополнения позы.
Метод 3DMM+ имеет очень узкое место в интерпретируемых параметрах, и поэтому его расхождение идентичности очень мало. Однако, по-видимому, по той же причине, этот метод не так хорош при визуализации корректных едва заметных выражений лица. Предлагаемая полная система способна точно представлять выражение лица и позу головы образца, сохраняя при этом идентичность целевого человека.
Кроме того, авторы также показывают перенос путем интерполяции в пространстве позы для предложенной системы на фиг. 5, которая демонстрирует плавные изменения позы. На фиг. 5 показан перенос путем интерполяции между двумя векторами позы по сферической траектории в пространстве дескриптора позы. В каждом ряду показаны результаты переноса согласно предложенному изобретению для некоторого человека из тестовой части VoxCeleb2. Первое и последнее изображения в каждом ряду вычисляются с использованием некоторых кадров источника позы из тестовой части VoxCeleb2 (не показаны на фигуре), отображенных с помощью кодировщика позы во вложениях A и B, соответственно. Изображения между ними получены путем обычного выполнения предлагаемого изобретения, за исключением того, что вложение позы получено путем сферической интерполяции между A и B, а не вычислено кодировщиком позы из некоторого изображения. В частности, вложения позы в столбцах 2-5 представляют собой slerp(A, B; 0.2), slerp (A, B; 0.4), slerp(A, B; 0.6), slerp(A, B; 0.8).
На фиг. 6 показано дополнительное сравнение переноса с одного человека на другого для нескольких систем на тестовом наборе VoxCeleb2. Верхнее левое изображение - это одно из изображений, определяющих целевую идентичность из тестовой части VoxCeleb2, т.е. человека, которого необходимо визуализировать с другими выражением лица и позой головы. Остальные изображения в этом ряду также взяты из тестовой части VoxCeleb2 и определяют позу, которую следует передать целевому человеку.
Каждый из оставшихся рядов соответствует какому-либо методу нейросетевого переноса выражения лица и позы головы, которые сравниваются с "Proposed invention", являющимся предлагаемым изобретением, и другим методам, соответствующие тем, что показаны на фиг. 3. Показаны результаты переноса, полученные соответствующим методом.
Временная гладкость. Дополнительное видео демонстрирует способность предложенного дескриптора создавать сглаженный во времени перенос без какого-либо временного сглаживания извлеченной позы (при условии, что результаты обнаружения ограничивающей рамки являются сглаженными во времени). В то же время, достижение сглаженного во времени переноса с помощью систем, управляемых ключевыми точками (FSTH, FSTH+), требует много сглаживания ключевых точек.
Рассматриваются уменьшение размерности вектора позы, увеличение производительности кодировщика позы, сохранение заднего плана на изображениях и устранение дополнения позы.
Реализуется предложенная лучшая модель переобучения с различными подмножествами этих изменений, и делается попытка удалить дополнения позы из X2Face+ и FAb-Net+. X2Face+ и FAb-Net+ изменены путем удаления дополнений позы, и ниже обсуждаются наблюдаемые эффекты.
Все полученные рассматриваемые модели приведены в таблице 2. Они сравниваются как в количественном, так и в качественном аспекте, как и в разделе 4.3.
В предлагаемом исследовании изучаются четыре абляционных размера, которые соответствуют столбцам в таблице 2.
Таблица 2. Сводная таблица систем, сравниваемых в абляционном исследовании
Название модели | Вектор позы dim, dp |
Кодировщик позы | Стертый задний план | Дополнение позы |
Ours | 256 | MobileNetV2 | + | + |
-PoseDim | 64 | + | + | |
-Augm | 256 | + | ||
-Segm | 256 | + | ||
+PoseEnc | 256 | ResNeXt-50 (32×4d) |
+ | + |
+PoseEnc-Augm | 256 | + | ||
+PoseEnc-Segm | 256 | + | ||
X2Face+ | 128 | X2Face (предобучен) | + | + |
X2Face+(-Augm) | 128 | + | ||
FAb-Net+ | 256 | FAb-Net (предобучен) | + | + |
FAb-Net+(-Augm) | 256 | + |
Размерность вектора позы dp. Во-первых, dp уменьшается с 256 до 64 просто путем изменения числа каналов в последнем обучаемом слое кодировщика позы. Предложенная базовая модель (изобретение), но с векторами позы, ограниченными размером 64, помечена на фиг. 7 как -PoseDim. На фиг. 7 представлена количественная оценка того, как абляция нескольких важных признаков обучающей схемы влияет на предлагаемую систему. Кроме того, иллюстрируется влияние дополнения позы во время обучения для X2Face+ и FAb-Net+.
Интуитивно понятно, что подобное этому более узкое место должно как ограничивать способность представлять различные позы, так и побуждать генератор извлекать специфическую для человека информацию из более содержательного вложения идентичности. Согласно представленному графику, ошибка реконструкции позы действительно незначительно увеличивается, в то время как система остается в такой же степени не зависящей от человека. Однако качественно эта разница в позе ничтожна.
Производительность кодировщика позы. Во-вторых, кодировщик позы заменяется более сильной сетью, а именно, ResNeXt-50 (32 X 4), что уравнивает его с кодировщиком идентичности (т.е. с такой же архитектурой). Предложенная лучшая модель с этой модификацией обозначена как +PoseEnc. Как отмечалось выше, кодировщик позы и кодировщик идентичности намеренно не уравновешены, так что кодировщик позы слабее и тем самым вынуждает процесс оптимизации отдавать предпочтение извлечению специфической для человека информации из кадров источника идентичности, а не из кадра образца. Как метрики, так и образцы переноса для +PoseEnc позволяют предположить, что эта идея не была бессмысленной: более производительный кодировщик позы начинает передавать специфические для человека признаки из образца выражения лица и позы головы. На фиг. 8 видно, что на результат +PoseEnc оказывает влияние одежда образца #1, волосы образцов #6-#8, форма лица образца #9. Это также подтверждается очень большим увеличением ошибки идентичности на фиг. 7. С другой стороны, такая система реконструирует позу с более высокой точностью, что может указывать на то, что это может быть лучшим выбором для самопереноса, если "просачивание идентичности" не так актуально.
Стирание заднего плана. В-третьих, предложенная система модифицируется так, чтобы она не прогнозировала сегментацию переднего плана, не использовала сегментацию для вычисления функций потерь и, таким образом, стала системой без участия учителя. "Наш плюс" в этом изменении -Segm. Кодировщик позы в такой системе тратит свою производительность на кодирование заднего плана изображения образца, а не на оценку слабовыраженных деталей выражения лица. Это объясняется тем, что функции потери восприятия слишком чувствительны к расхождениям между созданным и целевым задним планом по сравнению с различиями в выражении лица. Что еще более важно, поскольку задний план часто изменяется внутри видео, реконструировать задний план целевого изображения, просто глядя на изображения источника идентичности, слишком сложно. Поэтому в алгоритме оптимизации возникает соблазн перебросить работу кодировщика идентичности на кодировщик позы. Это видно из графика и образцов, в которых введение заднего плана вносит большой вклад в расхождение идентичности, и еще более заметно при объединении с более сильным кодировщиком позы (модель +PoseEnc-Segm).
Дополнение позы. Реализовано переобучение модели без произвольных дополнений позы, т.е. А устанавливается на преобразование идентичности. В этой схеме система обучается точно реконструировать изображение образца выражения лица и позы головы, и поэтому с большей вероятностью деградирует до автокодировщика (при условии, что кодировщик позы обучается вместе со всей системой).
Как хорошо видно на фиг. 7 (Proposed invention!-Augm, +PoseEnc! +PoseEnc-Augm), несмотря на дополнительное улучшение способности представлять позы, это также существенно вредит сохранению идентичности. Фактически, система с мощным кодировщиком позы ResNeXt-50, обученным без дополнений позы (+PoseEnc-Augm), оказалась худшей из предложенных моделей с точки зрения PT, но в то же время лучшей моделью с точки зрения качества переноса позы. Опять же, такая модель может быть очень полезна для самопереноса, но быть совершенно не пригодной для создания "марионетки" (переноса с одного человека на другого). Тем не менее, даже при самопереносе следует соблюдать осторожность, так как эта модель может дать нежелательные эффекты, такие как передачу качества изображения (например, из образца #8 на фиг. 8). На фиг. 8 представлено сравнение переноса с одного человека на другого для предложенной лучшей модели и ее подвергнутых абляции версий. Верхнее левое изображение на фиг. 8 - это одно из изображений, определяющих целевую идентичность из тестовой части VoxCeleb2, т.е. человека, которого авторы хотели бы визуализировать с другими выражением лица и позой головы. Остальные изображения в этом ряду также взяты из тестовой части VoxCeleb2 и определяют позу для передачи целевому человеку.
Этот эффект еще раз подтверждается при удалении дополнений позы из X2Face+ и FAb-Net+ (к каждой модели добавлен суффикс (-Augm)). При включенных произвольных дополнениях, несмотря на специфическую для человека природу дескрипторов позы X2Face и FAb-Net, генератор все еще развивает устойчивость к специфическим для человека признакам образцов выражения лица и позы головы. Однако без дополнений степень "просачивания идентичности" полностью объясняется спецификой идентичности этих готовых дескрипторов. Кроме того, ошибка реконструкции позы должна уменьшиться, если генератор больше не должен быть таким устойчивым к образцам, и поэтому некоторая часть его производительности высвободится и может быть использована для отрисовки более точных поз. Как и ожидалось, на фиг. 7 показан значительный рост ошибки идентичности и резкое уменьшение ошибки позы для этих двух моделей. Это еще раз доказывает, что дескрипторы X2Face и FAb-Net не являются независящими от человека. Кроме того, на фиг. 9 можно наглядно увидеть расхождение идентичности. Фиг. 9 иллюстрирует эффект дополнений позы на моделях X2Face+ и FAb-Net+. Без дополнений становится заметным расхождение идентичности. Верхнее левое изображение на фиг. 9 - это одно из изображений, определяющих целевую идентичность из тестовой части VoxCeleb2, т.е. человека, которого авторы хотели бы визуализировать с другими выражением лица и позой головы. Остальные изображения в этом ряду также взяты из тестовой части VoxCeleb2 и определяют позу для передачи целевому человеку.
Каждый из остальных рядов соответствует какому-либо сравниваемому методу нейросетевого переноса выражения лица и позы головы. Эти сравниваемые методы перечислены в четырех нижних строках таблицы 2, а именно, X2Face+ и Fab-Net+, каждый из которых оценивается как с дополнениями позы, так и без них. Показаны результаты переноса из соответствующего метода, например, очки из образца #7 или форма лица из образца #1 переданы результату.
В заключение следует отметить, что существует компромисс между ошибкой сохранения идентичности и ошибкой реконструкции позы . Этот компромисс регулируется путем применения вышеуказанных изменений в зависимости от того, который из сценария самопереноса или сценария переноса с образца одного человека на другого более важен. Во втором случае лучше использовать предложенную лучшую модель "PROPOSED", тогда как для первого сценария хорошим кандидатом может быть +PoseEnc или +PoseEnc-Segm.
Выше был описан и проанализирован нейросетевой перенос выражений лица и поз головы, в котором используются скрытые дескрипторы позы и который позволяет достичь реалистичного переноса. В отличие от предшествующей системы [42], в которой качестве в дескриптора позы использовались ключевые точки, в предлагаемой системе используются дескрипторы позы без явного участия учителя, исключительно на основе потерь реконструкции. Единственная слабая форма участия учителя обусловлена масками сегментации. Предлагаемые обученные дескрипторы позы головы превосходят предыдущие дескрипторы без участия учителя в задачах поиска на основе позы, а также переноса с одного человека на другого.
Главный и, возможно, неожиданный вывод заключается в том, что ограниченной производительности сети извлечения позы в предлагаемой схеме достаточно для разделения позы и идентичности. В то же время, возможно, что соответствующее использование циклических и/или состязательных потерь может еще больше улучшить разделение.
Возможно, из-за ограниченной производительности сети предлагаемые дескрипторы позы и система переноса имеют проблемы с захватом некоторой слабовыраженной мимики, особенно направления взгляда (хотя это все же работает лучше, чем дескрипторы ключевых точек, у которых вообще отсутствует представление взгляда). Другим очевидным направлением исследований является обучение дескриптора позы и всей системы с частичным привлечением учителя.
По меньшей мере, один из множества блоков может быть реализован через модель AI. Функция, связанная с AI, может выполняться через энергонезависимую память, энергозависимую память и процессор.
Процессор может включать в себя один или несколько процессоров. При этом один или несколько процессоров могут быть процессором общего назначения, таким как центральный процессор (CPU), процессор приложений (AP) или т.п., процессором только графики, таким как графический процессор (GPU), процессором машинного зрения (VPU) и/или специализированным процессором AI, таким как нейронный процессор (NPU).
Один или несколько процессоров управляют обработкой входных данных в соответствии с предопределенной моделью рабочего правила или искусственного интеллекта (AI), хранящейся в энергонезависимой памяти и энергозависимой памяти. Предопределенная модель рабочего правила или искусственного интеллекта предоставляется посредством обучения или изучения.
В данном контексте предоставление посредством обучения означает, что, посредством применения алгоритма обучения к множеству обучающих данных создается предопределенное рабочее правило или модель AI требуемой характеристики. Это обучение может выполняться в самом устройстве, в котором выполняется AI в соответствии с вариантом осуществления, и/или может быть реализовано через отдельный сервер/систему.
Модель AI может состоять из нескольких слоев нейронной сети. Каждый слой имеет множество весовых значений и выполняет операцию слоя посредством вычисления предыдущего слоя и операции с множеством весов. Примеры нейронных сетей включают, без ограничения, сверточную нейронную сеть (CNN), глубокую нейронную сеть (DNN), рекуррентную нейронную сеть (RNN), ограниченную машину Больцмана (RBM), глубокую сеть доверия (DBN), двунаправленную рекуррентную глубокую нейронную сеть (BRDNN), генеративные состязательные сети (GAN) и глубокие Q-сети.
Алгоритм обучения представляет собой способ обучения заданного целевого устройства (например, робота), используя множество обучающих данных для побуждения, разрешения или управления целевым устройством, выполнять определение или прогнозирование. Примеры алгоритмов обучения включают в себя, без ограничения, обучение с учителем, обучение без учителя, обучение с частичным привлечением учителя, или обучение с подкреплением.
Согласно данному раскрытию в электронном устройстве с помощью способа распознавания выражения лица и позы головы можно получить выходные данные, распознающие изображение или выражение лица и позу головы на изображении, используя данные изображения в качестве входных данных для модели искусственного интеллекта. Модель искусственного интеллекта можно получить посредством обучения. В данном контексте фраза "получить посредством обучения" означает, что предопределенную модель рабочего правила или искусственного интеллекта, сконфигурированную для выполнения желаемой функции (или цели), получают путем обучения базовой модели искусственного интеллекта на множестве фрагментов обучающих данных с помощью обучающего алгоритма. Эта модель искусственного интеллекта может включать в себя множество слоев нейронной сети. Каждый из множества слоев нейронной сети имеет множество весовых значений и выполняет нейросетевое вычисление путем вычисления между результатом вычисления предыдущего слоя и множеством весовых значений.
Визуальное понимание - это метод распознавания и обработки объектов, подобный человеческому зрению, и оно включает в себя, например, распознавание объекта, отслеживание объекта, поиск изображения, распознавание человека, распознавание сцены, трехмерную реконструкцию/локализацию или улучшение изображения.
При этом описанный способ, выполняемый электронным устройством, может выполняться с использованием модели искусственного интеллекта.
Описанные выше примерные варианты осуществления изобретения являются лишь примерами и не должны рассматриваться как ограничивающие. Описание примерных вариантов осуществления также предназначено для иллюстрации, а не для ограничения объема формулы изобретения, и многие альтернативы, модификации и варианты будут очевидны для специалистов в данной области техники.
Список источников
[1] V. Blanz, T. Vetter, et al. A morphable model for the synthesis of 3d faces. In Proc. SIGGRAPH, volume 99, pages 187- 194, 1999,
[2] A, Bulat and G. Tzimlropoulos. How far are we from solving the 2d & 3d face alignment problem? (and a dataset of 230, 000 3d facial landmarks). In Proc. ICCV, pages 1021-1030,2017.
[3] F.-J. Chang, A. T. Tran, T. Hassner, I. Masi, R. Nevatia, and G. Medioni, Expnet: Landmark-free, deep, 3d facial expressions. In In proc. FG, pages 122-129. IEEE, 2018.
[4] J. S. Chung, A. Nagrani, and A. Zisserman. Voxceleb2: Deep speaker recognition. In INTERSPEECH, 2 018,
[5] J. S. Chung, A. Senior, 0. Vinyals, and A. Zisserman. Lip reading sentences in the 'wild. In Proc. CVPR, pages 3444-3453. IEEE, 2017 .
[6] T. F. Cootes, G. J. Edwards, and C. J. Taylor. Active appearance models, T-PAMI, (6):681-685, 2001.
[7] J. Deng, J. Guo, X. Niannan, and S, Zafeiriou. Arcface: Additive angular margin loss for deep face recognition. In CVPR,
[8] E. L. Denton and V, Birodkar. Unsupervised learning of
disentangled representations from, video. In Proc. NeurlPS, pages 4414-4423, 2017.
[9] P. Ekman. Facial action coding system. 1977.
[10] С. Fu, Y. Ни, X. Wu, G, Wang, Q. Zhang, and R. He. High fidelity face manipulation with extreme pose and expression. arXiv preprint arXiv:1903,12 00 3, 2 019,
[11] K. Gong, Y. Gao, X. Liang, X. Shen, M. Wang, and L. Lin. Graphonomy: Universal human parsing via graph transfer learning. In CVPR, 2019.
[12] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D.Warde-Farley, , S. Ozair, A. Courville, and Y. Bengio. Generative adversarial nets. In Proc. NIPS, 2014.
[13] R. Gross, I. Matthews, J. Cohn, T, Kanade, and S. Baker. Multi-pie. In Proceedings of the IEEE International Conference on Automatic Face and Gesture Recognition, IEEE Computer Society, September 2008.
[14] R. A. G"uler, N. Neverova, and I. Kokkinos. DensePose: Dense human pose estimation in the wild. In Proc. CVPR, June 2018.
[15] R, A. G"uler, G. Trigeorgis, E, Antonakos, P. Snape, S. Zafeiriou, and I. Kokkinos. DenseReg: Fully convolutional dense shape regression in-the-wild. In CVPR, volume 2, page 5, 2017,
[16] X. Huang and S. Belongie. Arbitrary style transfer in realtime with adaptive instance normalization. In Proc. ICCV, 2 017.
[17] X. Huang, M,-Y. Liu, S. Belongie, and J. Kautz, Multimodal unsupervised image-to-image translation. In Proc. ECCV, 2018 .
[18] S. Ioffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In Proc. ICML, ICML'15, pages 448-456, 2015.
Unsupervised learning of object landmarks through conditional image generation. In Proc. NeurlPS, pages 4016-4027, 2018.
[1] T. Karras, S. Laine, and T. Aila. A style-based generator architecture for generative adversarial networks. In Proc. CVPR, June 2 019.
[2] V. Kazemi and J, Sullivan. One millisecond face alignment with an ensemble of regression trees. Proc. CVPR, pages 1867-1874, 2014.
[3] H. Kim, P. Garrido, A. Tewari, W, Xu, J. Thies, M. Niefiner, P. P'erez, C. Richardt, M. Zollh"ofer, and C. Theobalt. Deep video portraits. In Proc. SIGGRAPH, 2018,
[4] H, Kim and A. Mnih. Disentangling by f act or i sing. In Proc. ICML, pages 2654-2663, 2018.
[5] M. Liu, X. Huang, A. Mallya, T. Karras, T. Aila, J. Lentinen, and J. Kautz, Few-shot unsupervised image-to-image translation. In Proc. ICCV, 2019.
[6] Z. Liu, P. Luo, X. Wang, and X. Tang, Deep learning face attributes in the wild. In Proc. ICCV, December 2015.
[26] S. Lombardi, J. Saragih, T. Simon, and Y. Sheikh. Deep appearance models for face rendering. ACM Transactions on Graphics (TOG), 37(4):68, 2018.
[1] F. Milletari, N. Navab, and S.-A. Ahmadi. V-net: Fully convolutional neural networks for volumetric medical image segmentationоn. pages 565-571, 10 2016.
[2] T. Miyato, Т. Kataoka, М. Koyama, and Y. Yoshida. Spectral normalization for generative adversarial networks. In International Conference on Learning Representations, 2018.
[3] A. Nagrani, J. S. Chung, and A. Zisserman. Voxceleb: a large-scale speaker identification dataset. In INTERSPEECH, 2017.
[4] A. Pumarola, A. Agudo, A. M. Martinez, A. Sanfeliu, and F. Moreno-Noguer. Ganimation: Anatomically-aware facial animation from a single image. In Proc. ECCV, pages 818---833, 2018.
[5] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, and L.-C. Chen. Mobilenetv2: Inverted residuals and linear bottlenecks. In Proc. CVPR, June 2 018.
[6] A. Siaronin, S. Lathuili'ere, S. Tulyakov, E, Ricci, and N. Sebe. First order motion model for image animation. In Proc. NeurlPS, pages 7135-7145, 2019.
[7] S. Suwajanakorn, S. M. Seitz, and I. Kemelmacher- Shlizerman. Synthesizing Obama: learning lip sync from, audio. ACM Transactions on Graphics (TOG), 36(4):95, 2017.
[34] J. Thewlis, S. Albanie, H. Bilen, and A. Vedaldi. Unsupervised learning of landmarks by descriptor vector exchange. In Proc. ICCV, 2 019.
[1] S. Tripathy, J. Kannala, and E. Rahtu. Icface: Interpretable and controllable face reenactment using gans. CoRR, abs/1904.01909, 2019.
[2] T.Wang, M. Liu, A. Tao, G. Liu, J. Kautz, and B. Сatanzazо, Few-shоt videо-tо-videо synthesis.СоRR, abs/1910.12713, 2019.
[3] Т. -С. Wang, М. - Y. Liu, J. - Y. Zhu, G. Liu, A. Tao, J. Kautz, and B. Catanzaro, Video-to-video synthesis. Proc. NeurlPS, 2018 .
[4] О. Wiles, A. Koepke, and A. Zisserman. Self-supervised learning of a facial attribute embedding from video. In Proc. BMVC, 2018.
[5] О. Wiles, A. Sophia Koepke, and A. Zisserman. X2face: A network for controlling face generation using images, audio, and pose codes. In Proc. ECCV, September 2 018.
[6] F. Xiao, П. Liu, and Y. J. Lee. Identity from here, pose from there: Self-supervised disentanglement and generation of objects using unlabeled videos. In Proc. ICCV, October 2019.
[7] S. Xie, R. Girshick, P. Dollar, Z. Tu, and K. He. Aggregated residual transformations for deep neural networks. In Proc.CVPR, July 2017.
[8] E. Zakharov, A. Shysheya, E. Burkov, and V. Lempitsky. Few-shot adversarial learning of realistic neural talking head models. In Proc. ICCV, October 2019.
[9] S, Zhang, X. Zhu, Z. Lei, H. Shi, X. Wang, and S. Z. Li, S3fd: Single shot scale-invariant face detector. In Proc. ICCV, Oct 2 017.
[10] Y. Zhang, Y. Guo, Y. Jin, Y. Luo, Z. He, and H. Lee. IJnsupervised discovery of object landmarks as structural representations. In Proc. CVPR, pages 2694-2703, 2018.
[11] J.-Y. Zhu, T. Park, P. Isola, and A. A, Efros. Unpaired imageto-image translation using cycle-consistent adversarial networks.In Proc.ICCV,2017.
1. Аппаратное устройство для переноса произвольного выражения лица и позы головы на аватар человека с сохранением идентичности аватара человека, содержащее:
детектор для захвата изображений выражения лица и позы головы человека В;
средство выбора изображений человека А;
блок кодировщика идентичности, сконфигурированный для получения дескриптора идентичности из изображений человека А, причем выход кодировщика позы не содержит информации об идентичности человека А;
блок кодировщика позы, выполненный с возможностью приема на входе изображений человека В, и сконфигурированный для получения дескриптора позы головы и выражения лица из изображения человека В, причем выход блока кодировщика позы не содержит информации об идентичности человека В;
блок генератора, принимающий выходы блоков кодировщика идентичности и кодировщика позы, причем блок генератора сконфигурирован для синтезирования изображения аватара человека А, имеющего позу головы и выражение лица, взятые от человека В;
причем блок генератора выполнен с возможностью выводить полученное изображение аватара человека А, имеющего позу головы и выражение лица, взятые от человека В.
2. Аппаратное устройство по п. 1, в котором блок кодировщика позы представляет собой сверточную нейронную сеть, которая принимает на вход изображение человека и выдает на выходе вектор, описывающий его позу головы и выражение лица и не описывающий их идентичность, и которая применяется к изображениям произвольных людей, в том числе людей, изображения которых не были включены в обучающую выборку.
3. Аппаратное устройство по п. 1, в котором идентичность человека В означает цвет кожи, форму лица, цвет глаз, одежду и украшения человека В.
4. Способ работы аппаратного устройства по п. 1 для переноса произвольного выражения лица и позы головы на аватар человека с сохранением идентичности аватара человека, заключающийся в том, что:
захватывают, посредством детектора, изображения выражения лица и позы головы человека В;
выбирают изображения человека А;
получают с помощью блока кодировщика идентичности дескриптор идентичности из изображений человека А;
получают с помощью блока кодировщика позы дескриптор позы головы и выражения лица из изображений человека В;
синтезируют с помощью блока генератора, принимающего на вход выходы блоков кодировщика идентичности и кодировщика позы, изображение аватара человека А, имеющего позу головы и выражение лица, взятые от человека В,
выводят полученное изображение аватара человека А, имеющего позу головы и выражение лица, взятые от человека В.
5. Способ по п. 4, в котором блок кодировщика позы представляет собой сверточную нейронную сеть, принимающую на вход изображение человека и выдающую на выходе вектор, описывающий позу головы и выражение лица и не описывающий их идентичность, и применимую к изображениям произвольных людей, в том числе людей, изображения которых не были включены в обучающую выборку.
6. Способ по п. 4, в котором идентичность означает цвет кожи, форму лица, цвет глаз, одежду, украшения.