Добро пожаловать, чтобы обратить внимание на коллекцию или поделиться, пожалуйста, укажите источник при перепечатке.
Персональная колонка
В то же время реализация реконструкции лица и связанных с ней приложений требует глубокого понимания алгоритмов оптимизации и т. д., а объем инженерных работ не мал, что является хорошей отправной точкой для изучения резюме.
Под реконструкцией лица здесь подразумевается,3D-модель лица реконструируется из 2D-изображения лица.. Вероятно, есть следующие методы: Реконструируется с помощью многоракурсной геометрии, которая требует сбора лиц под разными углами и предъявляет относительно высокие требования к оборудованию; Реконструируется методом 3D Morphable Model (3DMM) с помощью камер RGBD или RGB. Этот метод также имеет ограничения: из-за особенностей модели детали модели (складки и т. д.) не могут быть сгенерированы, существуют также появившиеся в последние годы методы глубокого обучения для реконструкции (некоторые совмещены с традиционными методами 3DMM для обучения параметры модели лица).
В этой статье в основном говорится оМетод 3DMM для монокулярной RGB-камеры. Этот метод имеет низкие требования к оборудованию, простой алгоритм и прост в реализации реконструкции в реальном времени на мобильном терминале.Предпосылка здесь заключается в том, что у нас уже есть ключевые точки для распознавания лиц на изображении.. Введите изображение и обнаруженные ключевые точки лица, а также выведите трехмерную сетку лица.
Обзор
Метод 3DMM был впервые предложен Blanz [2] в 1999 году, и последующие усовершенствования обычно основаны на их работах. Этот метод имеет «априорные знания» о модели лица, то есть деформируемой модели. Поэтому независимо от того, под каким углом находится лицо, можно получить более полное лицо.
В настоящее время более распространенными моделями лица являются Базельская модель лица (BFM), Суррейская модель лица (SFM), FaceWarehouse, Крупномасштабная модель лица (LSFM) и так далее. Среди них LSFM, вероятно, является наиболее точной моделью, доступной на сегодняшний день. BFM относительно легко получить, и многие люди используют его для экспериментов. Платформа с открытым исходным кодом SFM также внесла большой вклад в сообщество. В то же время стоит прочитать FaceWarehouse команды Чжэцзянского университета и серию статей по теме.
Сначала нужно знатьПараметрическая модель лицаиблендшейп модельдве концепции.
Параметрическая модель лица
В методе Бланца они отсканировали 200 моделей голов взрослых людей, каждая из которых содержала около 70 000 вершин. После обработки PCA создается параметризованная модель лица, топология каждой модели лица одинакова, но положение вершин или цвета различаются. Вы можете думать о каждом векторе признаков как о различных чертах лица, таких как длина лица, полнота и худоба и т. д.
Здесь модель лица разбита на два вектора:
Следовательно, любое новое лицо может быть создано линейной комбинацией этих векторов признаков:
модель выражения blendshape
blendshapeЭто технология, используемая для деформации модели в 3D-программном обеспечении.Путем регулировки веса дизайнер может преобразовать целевую модель в серию предопределенных моделей или любую линейную комбинацию этих моделей.
В индустрии цифрового производства blendshape обычно используется для создания выражений, то есть новое выражение синтезируется из набора базовых выражений лица. Опять же, топология этих моделей непротиворечива, меняются только положения вершин. Чтобы не казаться сломанными и искаженными, вес ограничен.
При реконструкции лица обычно используетсяdelta blendshape, то есть разница между каждым выражением и нормальным выражением.
Комбинация blendshape и параметрической модели лица дает:
S представляет собой модель лица с чьими-то чертами лица и выражением лица.
реконструкция
«Оценка» модели лица по заданному изображению немного похожа на процесс, обратный рендерингу. Поэтому помимо модели лица необходимо учитывать параметры камеры.
используется здесьСлабая перспективная проекция.
Слабая перспективная проекция использует те же принципы, что и орфографическая проекция, но умножается на параметр масштабирования для достижения эффекта большого ближнего и дальнего малого.
Его можно рассматривать как гибрид перспективной проекции и орфографической проекции. [4]
Ключом к алгоритму реконструкции является поиск подходящих параметров, чтобы проекция 3D-модели лица на плоскость была максимально приближена к исходному изображению. Если текстура не учитывается, то можно упростить **"сделать проекцию ключевых точек модели лица на плоскость как можно ближе к положению ключевых точек 2d лица"**.
Следует отметить, что общие результаты обнаружения ключевых точек лица обычно представляют собой двумерные точки. Другими словами, ориентация лица отличается, и обнаруженные краевые точки лица также будут другими.2d точки края лица не находятся на реальной линии края щеки.
Подробности можно увидеть на рисунке ниже. Синие точки в верхнем ряду изображений — это точки обнаружения 2D-лиц (2d). Синие точки на нижнем изображении — это ключевые точки модели (3d), а красные точки — соответствующие точки 2d. Хорошо видно, что 2D-краевые точки, обнаруженные на изображении, отличаются от 3D-краевых точек самой модели. Следовательно, в итеративном процессе необходимо постоянно обновлять индекс 3D-краевой точки модели, чтобы они соответствовали друг другу.
Существует много способов найти краевые точки 3D-модели под текущим углом обзора.
Вы можете использовать алгоритм выпуклой оболочки, чтобы найти линию края, или вы можете найти касательную грани на основе угла между нормалью и лучом зрения. Или обратитесь к описанию в [5], чтобы найти самую дальнюю точку на наборе предварительно сохраненных линий лица.
С приведенным выше описанием мы превратили проблему реконструкции в задачу оптимизации.
Среди них S — модель лица, s — масштаб масштабирования, R — матрица поворота, t — вектор смещения, Y — точка обнаружения лица, n — количество ключевых точек лица.и
— индекс ключевых точек изображения лица и точек 3D-модели лица соответственно.
Из-за изменения проекции этонелинейный метод наименьших квадратовпроблема. Можно использоватьGauss-Newton , Левенберг-МарквардтДождитесь решения алгоритма, который здесь обсуждаться не будет.
Есть еще один более простой способ.
Во-первых, параметры камеры модели оцениваются с использованием наборов точек 2d и 3d, а приведенное выше уравнение приводится к линейной задаче. Затем поэтапно получают параметры лица и параметры выражения. Весь итеративный процесс заключается в исправлении некоторых параметров и обновлении других параметров.
Параметры признаков формы лица и параметры выражения необходимо контролировать в определенном диапазоне (в зависимости от модели), иначе могут появиться неразумные формы модели. В видеосценах также необходимо учитывать такие вопросы, как межкадровая стабильность и согласованность черт лица спереди и сзади.
применение
После завершения реконструкции мы можем получить 3D-сетку лица, положение модели на изображении и параметры выражения blendshape текущего лица. Основываясь на приведенной выше информации, можно добиться различных интересных эффектов, вот несколько примеров, основанных на этих наборах параметров.
Трехмерная сетка и пространственное расположение
С помощью 3D-модели и информации о положении мы можем скрыть модель лица во время рендеринга, чтобы создать эффект 3D-стикеров, таких как головной убор и очки.
Модели и текстуры
Нарисуйте uv-карту модели, а затем визуализируйте модель лица. Этот метод можно использовать для добавления бороды, краски, масок и т. д. на лицо.
Параметры модели лица и параметры выражения
Вычисленные веса выражений можно перенести в модель blendshape с теми же настройками, а человеческое лицо можно использовать для управления анимацией модели для достижения эффекта, похожего на анимодзи. Вы также можете изменить исходные параметры выражения лица, чтобы фотография двигалась.
Вероятно, это написано здесь, а другие методы или детали будут иметь возможность быть добавлены позже.
Ссылаться на
[0] Apple только что представила «Animoji» — смайлики, которые говорят и синхронизируются с вашим лицом
[1] Facebook buys popular face swapping app for silly selfies
[2] A Morphable Model For The Synthesis Of 3D Faces
[3] Face Transfer with Multilinear Models
[4] 3D projection
[5] High-Fidelity Pose and Expression Normalization for Face Recognition in the Wild
[6]Захват лица iPhone X — Apple blendshapes