Использование нейросетей для автопозинга — опыт авторов программы для создания анимации Cascadeur Материал редакции

Вложенность входных данных, комбинирование результатов и использование физической модели.

В закладки
Слушать

Разработчики из студии Banzai, которые работают над программой для создания анимации Cascadeur, в своей колонке для DTF рассказывают, как они комбинируют несколько нейросетей в одном инструменте автопозинга, о котором шла речь в их статье на «Хабре». В этом тексте будет рассмотрен подход, позволивший им реализовать достаточно продвинутые функции, используя лишь стандартные deep learning методы.

Постановка задачи

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

Использование полносвязных нейросетей предполагает фиксированные вход и выход, поэтому мы сделали несколько нейросетей с разным количеством входных точек: 6, 15, 20, 28 из всех 43 точек персонажа. На картинках ниже в зелёный окрашены те точки, которые подаются на вход нейросети соответствующего уровня детализации.

В чём же проблема использования уровней детализации? Если мы хотим подвинуть точку из 4 уровня, то нам нужно подать на вход все 28 точек. Но мы не хотим заставлять пользователя ставить их все. Наша цель — дать ему возможность подвинуть только несколько из них. Как в таком случае добиться хорошего результата?

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

Вложенность входных данных

Мы выбрали такие уровни детализации, которые имеют особое свойство иерархической вложенности.

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

Комбинирование результатов

Давайте рассмотрим работу инструмента на примере: пользователь расставил все шесть основных точек и решил отредактировать ориентацию левой кисти за счёт дополнительных точек кисти со второго уровня детализации.

Как только вы меняете ещё одну точку, кроме основных шести, инструмент запоминает её и начинает использовать в вычислении позиции других точек.

Работа инструмента происходит в несколько этапов в зависимости от отредактированных точек. В данном случае весь процесс схематично изображен на картинке ниже.

Сперва используется сеть первого уровня — она выставляет все 43 точки персонажа по шести основным. Затем по очереди вызываются сети более детальных уровней. Каждая последующая принимает на вход всё более детальные входные данные — либо уточнённые пользователем, либо из результата работы предыдущего уровня. Таким образом, мы получаем возможность использовать нескольких нейросетей с разной детализацией одновременно.

Физическая корректность

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

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

Заключение и планы

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

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

Мы продолжаем развивать наш инструмент автопозинга. Уже в ближайшее время Cascadeur войдет в стадию открытого бета-теста. Обязательно следите за новостями на cascadeur.com и в социальных сетях проекта.

Вы думаете я тут значит паши а вы там клубничку приедите с молочком поедите?
{ "author_name": "Андрей Верещагин", "author_type": "editor", "tags": ["\u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438","cascadeur"], "comments": 61, "likes": 136, "favorites": 269, "is_advertisement": false, "subsite_label": "gamedev", "id": 146730, "is_wide": false, "is_ugc": false, "date": "Sat, 13 Jun 2020 11:38:01 +0300", "is_special": false }
0
61 комментарий
Популярные
По порядку
Написать комментарий...
21

Вот, отличная статья, с полным (пусть и максимально общим) описанием пайплайна работы программы
Не то, что ИИ Ведьмака
Вообще, советую не брать интервью у людей, которые не могут вот на таком же уровне объяснить, что и как у них работает

Ответить
3

да, в разделе Геймдев появляются статьи смысл которых "нужно много тестировать и мы много тестировали" , но находятся ценители которые пишут что "такие статьи нужны для новичков"

Ответить
7

что сказать круто и давно пора.

К сожалению 3дс макс как был с простой IK ( ещё в 2000 году) так и остался. Приходится качать шесть гигабайт какой то воды что бы просто импортировать в FBX который корректно прочитает Юнити.

Будь ты проклят Аутодеск со своим автокадом.

Ответить
13

Будь ты проклят Аутодеск

Аминь

Ответить
2

Давно пора переходить на Blender.

Ответить
1

давай не будем а?

Ответить
3

Ладно, ладно, я осознаю что среди нас есть любители мазохизма и не осуждаю их.

Ответить
1

видал я ваш блендер ) херь ещё та

Ответить
0

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

Ответить
1

Все верно. Скачал плагин для блендера , или не тот скриптик из интернета, и твой блендер теперь не только пакет для моделирования , но и шпионское по по совместительство , через которое можно устривать сливы подобные ласт оф асс2.

Ответить
0

Ну такое

Ответить
0

причём тут фирмы? У 3д макса был гениальный задел ещё с третей части, просто его не развивали, кроме размера. После 3д макса мало кто видит смысла переходить на блендер. Какой у него плюс? Бесплатность? В нашей стране пока это слава Богу это не проблема.

Ответить
2

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

Ответить
1

А обмазывать плагинами - не безопасно. Один плагин от нечистого разработчика твой блендер становится истончиком заразы, где можно шпионить за конкурентами, или враз зашифровать все данные на пк. С распространением блендера по студиям пусть и мелким такое веселье начнется везде.

Ответить
0

Фирмам не нужно переходить на Блендер, переходят сами 3д художники, всё больше юзая его в разных задачах (но конечно же не во всех)

Ответить
0

Я к тому, что есть же определенные годами пайплайны с тучей плагинов в том же максе или майке.

Ответить
0

Пайплайны есть, но ничто не мешает сделать какую-то детальку в Блендере, если это быстрее, и потом перекинуть её в нужный софт.

Ответить
0

Фрилансеры могут делать на чем угодно. Главное что бы был результат .Впрочем в сша, германии и японии пирать опасно , так что там в первую очередь засели фанаты блендера .

Ответить
0

Можно и без плагинов вполне. С ними просто быстрее, например, широко известные Hard Ops и Box Cutter.

Ответить
0

Для этого они купили майю

Ответить
0

ага и XSI в которой была отличная физика, в том числе и волос и жидкостей (жидкости можно было смешивать), Менатал рей (корректно рендерил волосы) и которого на тот момент не было не в майке не в максе, физика резиновых объектов.  И всё это без плагинов.

А потом просто объявили что продажи плохие и убили то что купили.

Ответить
1

используя лишь стандартные deep learning методы

Это какой-то англицизм. По-русски будет так: "используя лишь стандартные методы deep learning".

Ответить
6

По-русски это будет "используя лишь стандартные методы глубокого обучения".

Ответить
0

Это какой-то старославянский получается.

Ответить
8

Вполне устоявшаяся терминология.

Ответить
–6

"устоявшаяся" — эвфемизм для "ретроградная"

Ответить
2

По сути новый Endorphin? Круто!
Сколько стоит будет можете уже сказать или еще не решили?

Ответить
1

Та оно вроде бесплатное, по крайней мере пока что.

Ответить
0

Давно слежу (но нифига не вкуриваю хех) за нейронками в анимации, вот за этими ресерчами явно нас ждет некстген и дикое удешевление процесса.
https://twitter.com/blacksquirrel__

Надеюсь в каскадере не только Human риг будут апгрейдить, но и квадрапех.

Ответить
5

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

Ответить
2

У него, кстати, в твиттере есть на тему обработки движений прямо с видео:
https://www.youtube.com/watch?v=rIr-nX63dUA&feature=youtu.be
https://github.com/mkocabas/VIBE

Ответить
0

Топовая концепция кстати, не просто удешевит производство но и сделает его убербыстрым, снимая видео прямо с референсов. Это еще одна революция в анимации.

Ответить
0

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

Ответить
0

вроде бы  букву и использовать можешь  так почему гуманоЙды?????????

Ответить
0

Если это то о чем я думаю, то их анмации хорошо выглядят только с одного ракурса

Ответить
1

Одни из немногих кто реально двигает вперед индустрию, почему-то это не убергигантские корпорации с миллиардами, а такие вот студии которые создают то что реально изменит и качество и количество трехмерных фильмов и игр. Спасибо вам !

Ответить
3

почему-то это не убергигантские корпорации с миллиардам

Вообще, занимаются. EA, например.

Ответить
1

Эх, вот сидишь, кодишь такую красотень, а потом игроки жалуются, что каждый год выходит одна и та же игра с донатами и лутбоксами

Ответить
0

Тут вроде как очередной внутристудийный инструмент который никогда не увидит свет для разработчиков.

Ответить
1

Для каких разработчиков?
Юбисофты давно эту тему уже по малой степени внедрили в нынешние проекты, и явно не собираются останавливатся.
То что какие то компании делают эти инструменты публичными не более чем исключение, в основе своей это всегда внутристудийный ресчерч - тот же каскадер изначально таким и был.

Ответить
0

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

Ответить
1

А я думал, её уже доделали. Ну ладно, подождём.

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

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

Я бы сравнил это с тем, какое влияние когда-то оказал на индустрию Marvelous Designer

Ответить
2

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

Ответить
0

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

Ответить
0

а на чем тренеруют нейронку, много захватов движений ?
и возможно ли это использовать для инверсной кинематики ?

Ответить
4

Тренируем мы сетку на pytorch, используем позы из анимаций игры Shadow Fight 3. Ну а если говорить про ИК, то по сути Автопозинг решает задачи ИК для нашего рига. Но делает он это через глобальные позиции точек. Поэтому пока на других скелетах инструмент не получится использовать, но мы работаем над этим)

Ответить
0

Было бы прекрасно, если бы в Каскадере можно было подобную модель использовать для обработки мокапа. Например, я импортирую семь таргетов (ступни, кисти, пояс, грудь и голова), а нейросеть и физическая модель сглаживают возможные выбросы и корректируют плечи, колени и другие второстепенные кости.

Ответить
3

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

Ответить
1

Спасибо за ролик, что-то я был более высокого мнения о качестве мокапа оптическими системами. В любом случае, если алгоритмами машинного обучения удастся приблизить качество гибридного и инерционного мокапа (типа SteamVR или Perception Neuron) к оптическому, это снизит стоимость на порядок. Хороший рынок.

Ответить
0

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

Ответить
1

iKinema уже год как нет с нами. Их съело яблоко — их продукцию больше не купить, и лицензию не продлить.

Ответить
0

Эх, не знал. Но наверное собственный риг сделать не так сложно, проблема в том, что трекеры дорогущие :(

Ответить
1

Нужен шлемак, работающий на SteamVR, и не менее 3 трекеров, каждый по 100 долларов (в России подороже). Это на одном уровне или дешевле, чем Perception Neuron, но позволяет делать более качественную анимацию. Т. е. есть можно выделить три уровня мокапа:
- low-end — кинект — $200
- mid-end — SteamVR, Perception Neuron — $1000-1500
- hi-end — оптика (оптитрак, викон) — десятки тысяч долларов.

Вот пример VR-мокапа без постобработки по семи точкам (голова отслеживается шлемом, руки — контроллерами, плюс два трекера на ногах и два на туловище): https://www.youtube.com/watch?v=MmHJpcox1lY

Ответить
0

Выглядит очень не дурно! Это уже результат с доработкой руками или сразу так все выглядит? P.S.: В анимациях и 3D полный нуб)

Ответить
0

Это необработанный вариант. При резких движениях можно заметить косяки.

Ответить
0

Но все равно круто! ) Думаю огрехи можно с помощью Control Rig'а уже поправить в Unreal. А что за датчики такие для ног используются?

Ответить
1

обычные Vive Tracker

Ответить
0

Я в курсе. VR мокап выглядит очень вкусно. Возможно, придётся всё-таки купить :(

Ответить
1

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

Ответить
0

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

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

Ответить
0

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

Ответить

Комментарии

{ "jsPath": "/static/build/dtf.ru/specials/DeliveryCheats/js/all.min.js?v=05.02.2020", "cssPath": "/static/build/dtf.ru/specials/DeliveryCheats/styles/all.min.css?v=05.02.2020", "fontsPath": "https://fonts.googleapis.com/css?family=Roboto+Mono:400,700,700i&subset=cyrillic" }