Мой новый коллега – цифровой аватар. Как и зачем компании создают фотореалистичные 3D-модели людей

Когда за три недели до окончания съемок «Гладиатора» умер Оливер Рид — актер, игравший роль тренера гладиаторов Антония Проксимо, — создателям фильма пришлось срочно переписывать сценарий так, чтобы Проксимо погиб по ходу действия, а недостающие сцены создавать с помощью дублера и компьютерных эффектов. Тогда, 21 год назад, 160 секунд киноленты с участием «цифрового Рида» обошлись в 3,2$ млн. А сейчас благодаря развитию технологий, по нашим оценкам, можно было сократить бюджет раз в тридцать, и за эти деньги не просто сделать цифрового двойника актера (digital double) для нескольких сцен, а создать его полную гиперреалистичную 3D-модель и дальше снимать с ней кино без ограничений во времени и пространстве. Наша команда как раз и работает над созданием таких аватаров. В этом посте я расскажу, зачем они нужны помимо кино и что любопытного мы узнали во время собственных экспериментов.

879ed6d83d778a433ebe4c28e70255dd.png


Двойники в кино


Вы наверняка не раз видели на экране двойников актёров и, скорее всего, даже не замечали подмены. Если раньше за схожесть отвечали гримёры, сейчас режиссеры всё чаще привлекают команды разработчиков из геймдев-индустрии.

«Гладиатор», которого я привел в пример, стал одним из первых фильмов с цифровым двойником. Те его сцены, которые не успели снять с Оливером Ридом, собирали из частично отснятого материала, добавляя кадры, сделанные с помощью 3D-графики. Для 1999 года удалось добиться просто фантастического результата, и даже специалисты в CG чаще всего не замечают подмену. 


Еще один известный пример воссоздания киногероя после смерти актёра — фильм «Возвращение Супермена» (2006) Брайана Сингера. Сделать Марлона Брандо отцом сверхчеловека было делом принципа для режиссера, ведь в далеком 1978 году Брандо сыграл ту же роль в «Супермене». 

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


Еще десять лет назад многие сложные операции для создания фотореалистичной модели делались вручную. А современной киноиндустрии для этих же целей уже доступен огромный технологический стек, и не нужно «изобретать велосипед».

Пожалуй, самый показательный пример прогресса в технологии — это процесс создания кожи в 3D. Человеческая кожа пропускает свет, и луч, проходящий через нее, отражается и распределяется внутри. В компьютерной графике это называется Subsurface scattering — распределение света под поверхностью. Современные рендер-движки, в которых реализован функционал Subsurface scattering-материалов, умеют физически корректно просчитывать этот эффект. А лет 10 лет назад его приходилось программировать или создавать «фейк» на постобработке.

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

Хотите потренироваться? Посмотрите сериал «СуперБобровы» с участием звезды «Собачьего сердца» Владимира Толоконникова. К большому сожалению, актер, всем известный по роли Полиграфа Полиграфовича Шарикова, не смог завершить съемки из-за остановки сердца. Так что все недостающие сцены сыграл его аватар.

Серьезный прогресс в создании цифровых двойников связан еще и с развитием вычислительных мощностей. Если раньше для просчета секвенции с цифровым персонажем нужны были целые фермы из процессоров и оперативной памяти, то сейчас все считается на домашнем игровом компьютере — медленно, но верно. Так что, думаю, Антония Проксимо можно было бы рендернуть примерно за месяц втроем. А если учитывать еще и создание трехмерной модели (самая трудоемкая и самая дорогая часть работ), общая длительность проекта составила бы 2–2,5 месяца, а бюджет можно было бы ограничить 100$ тыс.

Фабрика контента для бизнеса


Прогрессу в технологиях создания фотореалистичных моделей людей сопутствует скачок в развитии нейросетей, при помощи которых можно управлять 3D-моделями. В сумме это создаёт основу для более широкого применения Digital Human. Так, объединив 3D-модель с нейросетями или чат-ботом, можно организовать целую фабрику по производству видеоконтента: вы «скармливаете» ей текст, а ваш аватар зачитывает его с мимикой и эмоциями. Разработки такого сценария уже есть на рынке, правда, используют не 3D-модели, а съемки реальных людей.

284763056c84dae8d98946b61da4d82c.jpg


Глядя на ведущих новостей федеральных каналов, многие думают, что примерно так они и работают. На самом деле, нет — ведущие не только читают текст с мимикой и эмоциями, но и пишут его под себя. А в будущем — конечно, «писать» текст для ТВ и видеоблогов смогут нейросети, а озвучивать — аватары. И при организации репортажей тоже можно будет экономить — отправлять на место только оператора, а на уже отснятый видеоматериал накладывать стендап аватара с текстом, написанным в редакции.

Нам в «ЛАНИТ-Интеграции» наиболее перспективными кажутся два направления использований технологий Digital Human.

Первое — это замена лица человека на видео. Наверное, все уже видели клонов Илона Маска, которые подключались к Zoom-конференциям. Этот сценарий называется Deep Fake и, как ясно из названия, используется для разного рода фейков. Технологически то же самое направление ещё называют Face Swap, но этот сценарий уже не для черного пиара, а для коммерческих целей, не вызывающих этических споров. Например, можно отладить производство образовательного контента. 

У банка с федеральной сетью филиалов есть много обучающего видео самого разного качества. Часть из них — это просто записи Zoom-конференций. Собрать их в единый обучающий курс не позволяет низкое качество видео и обстановка в кадре, не соответствующая корпоративному стандарту. А при помощи цифровых аватаров и нейросетей можно все исправить — поменять и фон, и внешность спикера.

Схожий сценарий создания видеопродукции интересен ТВ и блогерам. Недавно к нам обратился продюсер одного тематического канала и попросил оценить стоимость производства регулярных выпусков с участием цифрового аватара в роли ведущего. Конечно, Digital Human не снимет всех задач — пока еще нет технологии, позволяющей аватару воспроизводить эмоции при обработке текста нейросетью — для этого всё еще нужен живой человек, чью мимику и чьи движения будет использовать аватар. Кроме того, нужен специалист, который возьмет на себя написание сценариев, текстов для озвучки. Правда, становится совершенно не важно, как выглядят люди, занятые в производстве медиаконтента, какого они пола, какой у них тембр голоса и где они находятся. Для съемки потребуется костюм для захвата движения, шлем с видеокамерой, направленной на лицо (для «захвата» мимики), и сам аватар, который в режиме реального времени будет транслировать на экран все движения закадрового работника. По нашим расчетам, такая технология позволит в 10 раз сократить смету видеопроизводства.

Второе направление применения Digital Human — это объединение цифрового аватара с чат-ботом и системой синтеза голоса, и оно может быть очень востребовано для коммуникаций с клиентами.

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

Прикрутив к цифровому аватару чат-бота, микрофон и систему распознавания и синтеза речи, можно создавать виртуальных хостесс, продавцов-консультантов, консультантов в госучреждениях (схожий кейс есть у Soul Machines — виртуальный помощник Ella общается с посетителями штаб-квартиры полиции Новой Зеландии), сомелье — в общем, любых сотрудников, основная задача которых — просто отвечать на вопросы клиента. По идее, это позволит экономить на ФОТ, а сотрудникам — заниматься тем, что нейросеть пока не может делать.


Итак, базой для всех вышеописанных сценариев является цифровой аватар. Я уже говорил о том, что его создание — очень трудоемкий процесс. Фактически речь о виртуальной скульптуре человека, выполненной 3D-скульптором. Он прорабатывает все детали внешности, а потом при помощи инструментов симуляции «выращивает» волосы. 

Вопросов к внешности не возникнет, если вы создаете копию знаменитости или модели. А что если надо с нуля создать виртуального человека? Какими чертами вы его наделите?  

2c9ece94700a8c5c1920bb05e165fe25.png


В качестве эксперимента мы решили создать своего цифрового аватара — амбассадора ЛАНИТ. Конечно, можно было опросить всех коллег, как он должен выглядеть. Но, во-первых, опрос нескольких тысяч человек — это уже слишком, а во-вторых, на основе этих данных нам бы пришлось создать второго Кена для Барби — приятный обобщенный образ, полностью лишенный индивидуальности. Нет, такой амбассадор нам совсем не нужен. Мы пошли по другому пути.

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

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

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

Итак, нейросети мы «скормили» человеческие качества, соответствующие чертам корпоративного духа: лидерству, инновационности, надежности, целеустремленности и т.д.

24502391572793ef91b821e2c82cc45a.png


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

Лицо и в целом вся компьютерная графика состоит из трех компонентов:  

  1. 3D-модель, которую сложнее всего изменять;
  2. материалы и текстуры, которые наложены на трехмерную модель и которые определяют то, как она выглядит;
  3. освещение (к слову, оно драматически влияет на восприятие образа). 


Технологический стек


1. Создание модели персонажа


Голова

Для создания Максима (так мы назвали своего аватара) взяли за основу упрощенную форму человеческой головы и формировали детали (sculpt) в Zbrush. Сначала была создана высокополигональная модель, в которой проработали мельчайшие детали, включая поры на коже (для нее были разработаны текстуры). 

Мы используем текстуры 4К. 8К текстуры дают более качественный результат на крупных планах, но потребность в них случается редко, поэтому от использования 8К текстур мы отказались в угоду производительности. После того как высокополигональная модель готова, мы создаем ее низкополигональную копию и переносим на нее мелкие детали при помощи карт нормалей (карты «выдавливания» поверхности).

Волосы

Существует множество инструментов для создания волос. Мы выбрали GroomBear для Houdini, чтобы не раздувать софтверный стек — большая часть технической работы выполняется в Houdini.

b66f3c92b0d2c756a44fc672bdedc58d.png

Вот так выглядела самая первая версия Максима

Одежда

Для моделирования одежды использовали Marvelous Designer, а складки и мелкие и характерные детали доделывали в Blender.

615e41183d131009e79bef2c782c5f55.png

А здесь уже Максим 4.0

2. Текстурирование


Мы выполняем текстурирование в Substance painter — на наш взгляд, его инструментарий обеспечивает наиболее простой и быстрый процесс текстурирования. Важный момент — хинт: чтобы скорректировать образ аватара, достаточно менять только текстуры кожи, совсем не трогая геометрическую основу. Впрочем, для любительниц макияжа это вовсе не секрет. Китаянки с помощью косметических средств ежедневно достигают эффекта, сравнимого с пластической операцией. А для аватаров столь простое изменение внешности означает большую экономию на производстве видеоконтента — три клика, и образ твоего персонажа изменился кардинально — настолько, что это уже совершенно другой человек.

09c241c93cd33c57680eb74649fbf97d.png


3. Анимация


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

Xsense управляет движениями туловища, головы и конечностей. Система анимации гибридная: большие массивы геометрии управляются костями, которые, в свою очередь, управляются данными мокап-системы, а складки одежды в районе суставов и других характерных местах управляются вспомогательными блендшейпами (состояниями модели с характерными сгибами в районе суставов), которые обеспечивают корректную работу геометрии там, где костная анимация не позволяет добиться корректного результата. 

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

Dynamixyz управляет анимацией лица, и настройка лицевой анимации  — самая сложная и трудоемкая часть в пайплайне. Дело в том, что под кожей лица скрывается 57 мышц (25% от общего количества мышц в человеческом теле), и движение каждой из них влияет на выражение лица. 

Распознавание лиц и эмоций — крайне важная способность, необходимая для существования в социуме, поэтому люди моментально фиксируют неправдоподобную мимику. А значит, для аватара нужно сделать лицевую анимацию, реалистичную на 100%. 

У каждого лица может быть бесконечное множество выражений, но, как показала практика, 150 блендшейпов достаточно, чтобы создать реалистичную анимацию. Мы пошли несколько дальше и создали 300 блендшейпов (и продолжаем создавать новые, если находим ситуации, когда 300 недостаточно). 

Dynamixyz работает по следующему принципу: на голову актера надевают шлем, на котором закреплены специализированные камеры со сверхвысокой скоростью передачи данных. Видео с этих камер транслируется на рабочую станцию, где нейросеть определяет на лице актера якорные точки и в каждом кадре сопоставляет их с якорными точками на виртуальной лицевой маске, заставляя ее двигаться. К движениям лицевой маски привязана система блендшейпов, которые «переключаются» в соответствии с характером движения лицевой маски. Каждый блендшейп создается для всего лица целиком, но переключаться во время анимации он может локально, например, в районе рта или правого глаза отдельно от остального лица. Эти переключения происходят плавно и совершенно незаметно глазу.

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

4. Рендер


Наш Максим живет в Unreal Engine и Houdini. 

В Unreal Engine (UE) мы рендерим анимации, не требующие сложной постобработки, потому что UE не позволяет получить на выходе необходимые для постобработки каналы и маски в полном объеме, а также имеет ряд ограничений (например, нет возможности сделать корректную маску на волосы, потому что UE не умеет делать маски полупрозрачными). Некоторое время мы экспериментировали с Real time ray tracing (RTX), но, не получив существенного прироста в качестве изображения, отказались от его применения. 

Для рендера в Houdini мы используем Arnold. Это CPU рендер, и работает он довольно медленно в сравнении с GPU и RealTime движками, но выбор пал именно на него, потому что сравнительные тесты показали, что Sub Surface Scattering материалы (а материал кожи является именно таким) и материал волос в Arnold работают на порядок лучше, чем в Redshift и Octane, а V-ray, к сожалению, бессистемно выдает артефакты на Sub Surface Scattering материалах.

5. Интерактив


Наиболее перспективным (но и наиболее сложным), с нашей точки зрения, направлением развития цифровых аватаров является их связка с программными продуктами — голосовыми помощниками, чат-ботами, системами speech2text и т.д. Такие интеграции открывают возможность для создания масштабируемых продуктов. В настоящее время мы активно работаем в этом направлении, строим гипотезы и прототипы. Если у вас есть идеи подобного применения цифровых аватаров, буду рад их обсудить.

Симпатичный или отвратительный? Движения усилят этот эффект


Возможно, Максим напомнит вам кого-то из ваших знакомых. А может, вы вчера с похожим человеком вели переговоры. Был ли он милым или раздражал своей манерой общения? В любом случае образ Максима вызывает эмоции.

В процессе его создания мы на собственном опыте проверили эффект «Зловещей долины», описанный японцем Масахиро Мори, который исследовал восприятие людьми человекоподобных роботов. Об этом подробно написано в Wiki, но если кратко: чем больше робот напоминает человека, тем большую симпатию мы к нему испытываем. Этот эффект нарастает до определенного момента. Когда робот уже почти неотличим от человека, мы, глядя на него, начинаем ощущать дискомфорт и даже страх — все потому, что робота выдают мельчайшие детали, которые мы чаще всего даже не можем выделить и назвать. Вот это резкое изменение наших реакций (соответствуют провалу на графике) и названо «Зловещей долиной». При этом анимация усиливает как отрицательный, так и положительный эффект, однако, как видно из графика, достичь полного сходства с человеком можно только с помощью анимации.

95a6d832425fdbeab8991a92f4998d57.png

Источник 

Итак, наш Максим перешел «Зловещую долину», но один нюанс негативно влияет на его восприятие — без анимации у него вообще нет никакого выражения лица, все лицевые мышцы расслаблены, чего не бывает у живого человека. Поэтому он выглядит очень отрешенным, смотрит не на собеседника, а словно сквозь него, что очень неприятно. 

Максим нам кажется достойным представителем семьи аватаров. Поскольку Digital Human становятся все более популярны, мы рассчитываем на то, что наши клиенты и партнеры скоро решат обзавестись аватаром для маркетинговых задач. Тогда у Максима появятся братья и сестры по разуму — искусственному, разумеется. 

А пока Максим в одиночку исследует возможности, которые открывает для цифровых аватаров В2В-рынок: в октябре 2020 года он примет участие в конференции «Умные решения — умная страна: инновационные технологии для новой реальности» и выставке цифрового искусства Disartive, будет продвигать продукты и услуги ЛАНИТ в социальных медиа и, возможно, даст несколько интервью.


В России есть компании, которые работают в схожем с нами направлении. Но далеко не все публичны — многие взаимодействуют с gamedev-студиями и делают персонажей для игр (а этот мир живет по своим правилам, и очень часто студии используют голливудскую модель, не раскрывая своих подрядчиков). 

Самая известная компания — это, пожалуй, Malivar, в которую Сбербанк инвестировал 10 млн рублей. Ей принадлежит виртуальный персонаж Алиона Пол (Aliona Pole) — художница, модель и автор коллекций «цифровой одежды». 


Digital-модель за доли секунды меняет красную кофточку на синюю, примеряет новые образы, не останавливая движение. А зритель, воспитанный на Stories в Instagram и на TikTok, с удовольствием смотрит короткие ролики с фантастическим количеством трансформаций, не доступных живой модели.

Алиона постепенно отходит от образа только модели, обретая в своем инстаграме все новые человеческие черты — пропагандирует экологичное отношение к миру, философствует на тему границ личности, смешения обычной и виртуальной реальности и «топит» за индивидуальность и бодипозитив.

На глобальном рынке есть любопытный проект в сфере цифровых аватаров: Samsung — Neon. Конечно, до создания новой формы жизни разработчикам еще далеко, но своих трехмерных моделей они обучили хорошо двигаться. Благодаря интерфейсу, который может превращать голос в текст, модель анализирует входящую информацию, трансформирует её в решения и отдает внутреннии команды движения рук и других частей тела. На выставке CES 2019 компания показала аватаров медсестры, телеведущего, скаута из национального парка, фитнес-тренера и несколько других. 

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

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

© Habrahabr.ru