Компьютерная лицевая анимация - Computer facial animation

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

Хотя разработка методов компьютерной графики для лицевой анимации началась в начале 1970-х годов, основные достижения в этой области появились позже и произошли с конца 1980-х годов.

Работу по компьютерной лицевой анимации можно разделить на две основные области: методы создания данных анимации и методы применения таких данных к персонажу. Такие методы, как захват движения и ключевые кадры, принадлежат к первой группе, в то время как анимация цели морфинга (более известная как анимация blendshape) и скелетная анимация относятся ко второй. Лицевая анимация стала хорошо известна и популярны благодаря анимационным фильмам и компьютерным играм , но ее приложения включают в себя много новых областей , такие как коммуникации , образование , научное моделирование и агент систем на основе (например , представители обслуживания клиентов в Интернете). Благодаря последним достижениям в вычислительной мощности персональных и мобильных устройств , анимация лица перешла от отображения в предварительно визуализированном контенте к созданию во время выполнения.

История

Выражение лица человека было предметом научных исследований более ста лет. Изучение движений и мимики лица началось с биологической точки зрения. После некоторых более ранних исследований, например, Джона Булвера в конце 1640-х годов, книгу Чарльза Дарвина « Выражение эмоций у людей и животных» можно считать серьезным отклонением от современных исследований в области поведенческой биологии .

Компьютерное моделирование выражения лица и анимация - не новое дело. Самая ранняя работа с компьютерным изображением лица была сделана в начале 1970-х годов. Первая трехмерная лицевая анимация была создана Парком в 1972 году. В 1973 году Гилленсон разработал интерактивную систему для сборки и редактирования линейных изображений лица. В 1974 году Парк разработал параметризованную трехмерную модель лица.

Одной из самых важных попыток описать движения лица была Система кодирования движений лица (FACS). Первоначально разработанный Карлом-Херманом Хьортсьё в 1960-х годах и обновленный Экманом и Фризеном в 1978 году, FACS определяет 46 основных единиц действия для лица (AU). Основная группа этих единиц действия представляет примитивные движения лицевых мышц в таких действиях, как поднятие бровей, подмигивание и разговор. Восемь AU предназначены для жестких трехмерных движений головы (т.е. повороты и наклоны влево и вправо, а также движение вверх, вниз, вперед и назад). FACS успешно используется для описания желаемых движений синтетических лиц, а также для отслеживания лицевой активности.

В начале 1980-х годов Платт разработал первую физически управляемую модель лица, управляемую мышцами, а Бреннан - технику создания карикатур на лице. В 1985 году короткометражный анимационный фильм « Тони де Пелтри» стал вехой в лицевой анимации. Это был первый раз, когда компьютерное выражение лица и речевая анимация стали фундаментальной частью рассказа.

В конце 1980-х годов Уотерсом была разработана новая мышечная модель, Магненат-Тельманн и его коллеги - абстрактная модель мышечного действия , а Льюисом и Хиллом - подходы к автоматической синхронизации речи. В 1990-е годы наблюдается рост активности в разработке методов лицевой анимации и использовании компьютерной лицевой анимации в качестве ключевого компонента повествования, что показано в таких анимационных фильмах, как «История игрушек» (1995), Antz (1998), « Шрек» и « Корпорация монстров». (оба 2001 года) и компьютерные игры, такие как Sims . «Каспер» (1995), ставший важной вехой в этом десятилетии, был первым фильмом, в котором главная роль была снята исключительно с использованием цифровой лицевой анимации.

Сложность фильмов возросла после 2000 года. В «Матрице: перезагрузка» и «Матричные революции» использовался плотный оптический поток от нескольких камер высокого разрешения, чтобы запечатлеть реалистичное движение лица в каждой точке лица. Polar Express (фильм) использовал большую систему Vicon для захвата более 150 точек. Несмотря на то, что эти системы автоматизированы, для того, чтобы данные можно было использовать, по-прежнему требуется много усилий по очистке вручную. Еще одной важной вехой в лицевой анимации стал «Властелин колец» , где была разработана базовая система форм для конкретных персонажей. Марк Сагар был пионером в использовании FACS в развлекательной лицевой анимации, а системы на основе FACS, разработанные Сагаром, использовались в Monster House , King Kong и других фильмах.

Техники

Создание данных лицевой анимации

К созданию данных лицевой анимации можно подходить по-разному: 1.) захват движения на основе маркеров по точкам или отметкам на лице исполнителя, 2.) безмаркерные методы захвата движения с использованием различных типов камер, 3.) аудио- управляемые техники и 4.) анимация по ключевым кадрам .

  • При захвате движения используются камеры, размещенные вокруг объекта. Объект обычно снабжен либо отражателями (пассивный захват движения), либо источниками (активный захват движения), которые точно определяют положение объекта в пространстве. Данные, записанные камерами, затем оцифровываются и преобразуются в трехмерную компьютерную модель объекта. До недавнего времени размер детекторов / источников, используемых системами захвата движения, делал технологию непригодной для захвата лиц. Однако миниатюризация и другие достижения сделали захват движения жизнеспособным инструментом компьютерной лицевой анимации. Захват движения лица широко использовался в Polar Express компанией Imageworks, где были захвачены сотни точек движения. Этот фильм был очень успешным, и хотя он пытался воссоздать реализм, его критиковали за то, что он попал в `` сверхъестественную долину '', область, где анимационный реализм достаточен для человеческого признания и передачи эмоционального сообщения, но где персонажи не могут быть восприняты. как реалистично. Основные трудности захвата движения - это качество данных, которые могут включать вибрацию, а также изменение геометрии точек.
  • Захват движения без маркеров направлен на упрощение процесса захвата движения, позволяя не загромождать исполнителя маркерами. Недавно появилось несколько технологий с использованием различных датчиков, среди которых стандартные видеокамеры, Kinect и датчики глубины или другие устройства на основе структурированного света. Системы, основанные на структурированном свете, могут работать в реальном времени без использования каких-либо маркеров с использованием высокоскоростного сканера структурированного света. Система основана на надежном этапе отслеживания лица в автономном режиме, который обучает систему различным выражениям лица. Соответствующие последовательности используются для построения индивидуальной линейной модели лица, которая впоследствии используется для онлайн-отслеживания лица и передачи выражения.
  • Техники, управляемые звуком , особенно хорошо подходят для речевой анимации. Речь обычно обрабатывается иначе, чем анимация выражений лица, потому что простые подходы к анимации, основанные на ключевых кадрах, обычно плохо аппроксимируют реальную динамику речи. Часто виземы используются для представления ключевых поз в наблюдаемой речи (т. Е. Положения губ, челюсти и языка при воспроизведении определенной фонемы ), однако существует множество вариаций в реализации визем при воспроизведении естественной речи. Источник этой вариации называется коартикуляцией, которая представляет собой влияние окружающих визем на текущую визему (то есть эффект контекста). Для учета коартикуляции существующих системы либо явно принимают во внимание контекст при смешивании viseme ключевых кадров или использовать более длинные блоки , такие как дифон , triphone , слог или даже слова и член предложений -длина единицы. Одним из наиболее распространенных подходов к речевой анимации является использование функций доминирования, введенных Коэном и Массаро. Каждая функция доминирования представляет собой влияние висемы на речевое высказывание во времени. Обычно влияние будет наибольшим в центре виземы и будет ухудшаться по мере удаления от центра виземы. Функции доминирования объединяются вместе для создания речевой траектории во многом так же, как базовые функции сплайна объединяются вместе для создания кривой. Форма каждой функции доминирования будет отличаться в зависимости от того, какую визему она представляет, и от того, какой аспект лица контролируется (например, ширина губ, поворот челюсти и т. Д.). Этот подход к компьютерной анимации речи можно увидеть в говорящей голове Балди. В других моделях речи используются базисные единицы, которые включают контекст (например, дифоны , трифоны и т. Д.) Вместо визем. Поскольку базисные единицы уже включают вариацию каждой виземы в соответствии с контекстом и до некоторой степени динамику каждой виземы, никакой модели коартикуляции не требуется. Речь просто генерируется путем выбора соответствующих единиц из базы данных и объединения единиц вместе. Это похоже на конкатенативные методы в синтезе звуковой речи . Недостатком этих моделей является то, что для получения естественных результатов требуется большой объем собранных данных, и хотя более длинные блоки дают более естественные результаты, размер требуемой базы данных увеличивается со средней длиной каждого блока. Наконец, некоторые модели напрямую генерируют речевую анимацию из звука. Эти системы обычно используют скрытые марковские модели или нейронные сети для преобразования параметров звука в поток параметров управления для модели лица. Достоинством этого метода является возможность обработки голосового контекста, естественного ритма, темпа, эмоциональной и динамической обработки без сложных алгоритмов аппроксимации. Обучающую базу данных не нужно маркировать, поскольку нет необходимости в фонемах или виземах; единственные необходимые данные - это голос и параметры анимации.
  • Keyframe анимация является наименее автоматизированы процессы для создания анимационных данныххотя это обеспечивает максимальную степень контроля над анимацией. Его часто используют в сочетании с другими техниками для окончательной полировки анимации. Данные ключевого кадра могут состоять из скалярных значений, определяющих коэффициенты морфинга или значения поворота и перемещения костей в моделях с оснасткой на основе костей. Часто для ускоренияпроцесса анимациипо ключевым кадрам анимация использует контрольную установку. Управляющая установка представляет собой более высокий уровень абстракции, который может одновременно воздействовать на несколько целевых коэффициентов морфинга или костей. Например, элемент управления «улыбка» может одновременно воздействовать на изгибающуюся кверху форму рта и прищурившиеся глаза.

Применение лицевой анимации к персонажу

Основными методами, используемыми для применения лицевой анимации к персонажу, являются: 1.) анимация морфинг-целей , 2.) анимация , управляемая костями , 3.) анимация на основе текстур (2D или 3D) и 4.) физиологические модели.

  • Системы на основе целей морфинга (также называемые «смешанными формами» ) предлагают быстрое воспроизведение, а также высокую степень точности выражений. Техника включает моделирование частей сетки лица для аппроксимации выражений и визем, а затем смешивание различных подсетей , известных как цели морфинга или формы наложения. Возможно, наиболее опытным персонажем, использующим эту технику, был Голлум из «Властелина колец» . Недостатки этой техники в том, что они требуют интенсивного ручного труда и индивидуальны для каждого персонажа. В последнее время начали появляться новые концепции в 3D-моделировании. В последнее время начинает появляться новая технология, отходящая от традиционных методов, такая как Curve Controlled Modeling, которая подчеркивает моделирование движения 3D-объекта вместо традиционного моделирования статической формы.
  • Анимация, управляемая костями, очень широко используется в играх. Расположение костей может варьироваться от нескольких костей до почти сотни, чтобы обеспечить все тонкие выражения лица. Основное преимущество анимации, управляемой костями, заключается в том, что одна и та же анимация может использоваться для разных персонажей, если морфология их лиц одинакова, и, во-вторых, они не требуют загрузки в память всех данных целей морфинга . Анимация, управляемая костями, наиболее широко поддерживается игровыми 3D-движками. Анимация, управляемая костями, может использоваться как в 2D, так и в 3D. Например, с помощью Adobe Flash можно оснастить и анимировать 2D-персонажа с помощью костей.
Скриншот из короткометражного мультфильма "Кара" от Quantic Dream
  • В анимации на основе текстуры используется пиксельный цвет для создания анимации на лице персонажа. Двухмерная лицевая анимация обычно основана на преобразовании изображений, включая изображения из неподвижной фотографии и последовательности видео. Морфинг изображения - это метод, который позволяет создавать промежуточные переходные изображения между парой целевых неподвижных изображений или между кадрами из последовательностей видео. Эти методы морфинга обычно состоят из комбинации техники геометрической деформации, которая выравнивает целевые изображения, и перекрестного затухания, которое создает плавный переход в текстуре изображения. Ранний пример трансформации изображения можно увидеть в видео Майкла Джексона на "Black Or White". В 3D-анимации анимация на основе текстуры может быть достигнута путем анимации самой текстуры или отображения UV. В последнем случае создается карта текстуры всего выражения лица, а анимация UV-карты используется для перехода от одного выражения к другому.
  • Физиологические модели , такие как системы скелетных мышц и физически обоснованные модели головы, образуют другой подход к моделированию головы и лица . Здесьмоделируютсяфизические и анатомические характеристики костей , тканей и кожи для обеспечения реалистичного внешнего вида (например, упругости пружины). Такие методы могут быть очень мощными для создания реализма, но сложность структур лица делает их дорогими в вычислительном отношении и трудными для создания. Принимая во внимание эффективность параметризованных моделей для коммуникативных целей (как объясняется в следующем разделе), можно утверждать, что физически обоснованные модели не являются очень эффективным выбором для многих приложений. Это не отрицает преимуществ физически обоснованных моделей и того факта, что их можно использовать даже в контексте параметризованных моделей для предоставления локальных деталей, когда это необходимо.

Языки анимации лица

Многие языки анимации лица используются для описания содержимого лицевой анимации. Их можно вводить в совместимое программное обеспечение «проигрыватель», которое затем создает требуемые действия. Языки анимации лиц тесно связаны с другими языками мультимедийных презентаций, такими как SMIL и VRML . Из-за популярности и эффективности XML как механизма представления данных большинство языков анимации лиц основаны на XML. Например, это образец из Virtual Human Markup Language (VHML):

 <vhml>
   <person disposition="angry">
     First I speak with an angry voice and look very angry,
     <surprised intensity="50">
       but suddenly I change to look more surprised.
     </surprised>
   </person>
 </vhml>

Более продвинутые языки позволяют принимать решения, обрабатывать события, а также выполнять параллельные и последовательные действия. Язык моделирования лиц (FML) - это язык на основе XML для описания анимации лиц . FML поддерживает параметры анимации лиц (FAPS) MPEG-4 , принятие решений и динамическую обработку событий , а также типичные программные конструкции, такие как циклы . Это часть системы iFACE. Ниже приведен пример из FML:

 <fml>
   <act>
     <par>
 	<hdmv type="yaw" value="15" begin="0" end="2000" />
 	<expr type="joy" value="-60" begin="0" end="2000" />
     </par>
     <excl event_name="kbd" event_value="" repeat="kbd;F3_up" >
 	<hdmv type="yaw" value="40" begin="0" end="2000" event_value="F1_up" />
 	<hdmv type="yaw" value="-40" begin="0" end="2000" event_value="F2_up" />
     </excl>
   </act>
 </fml>

Смотрите также

Рекомендации

дальнейшее чтение

Внешние ссылки