Разработчики из Facebook AI Research создали алгоритм, позволяющий управлять движением человека на видео и менять фон. В основе алгоритма лежат две нейросети, одна из которых определяет позу человека и меняет ее в соответствии с командой пользователя, а вторая отвечает за создание нового реалистичного видеролика с измененным положением человека, рассказывают авторы статьи на arXiv.org.
Перенос объектов и стиля между изображениями — один из наиболее впечатляющих примеров, наглядно показывающих прогресс в области нейросетевых алгоритмов. Пожалуй, самый известный пример такого переноса — алгоритм пользователя deepfakes, который создал с его помощью порнографические ролики, в которых лица оригинальных актеров были реалистично подменены на лица знаменитостей. При этом такие алгоритмы обычно ограничены тем, что работают только для уже имеющихся роликов с предопределенными движениями и не позволяют в интерактивном режиме управлять движениями человека.
Исследователи из Facebook AI Research под руководством Янива Тайгман (Yaniv Taigman) разработали алгоритм, способный не только переносить движения между видеороликами, но и менять их по желанию пользователей. В основе программы лежат два нейросетевых алгоритма Pose2Pose и Pose2Frame. Оба алгоритма основаны на нейросети pix2pixHD, разработанной в 2017 году для переноса между изображениями или видеозаписями разных типов. Кроме того, авторы использовали алгоритм DensePose, который извлекает из двумерного кадра с человеком трехмерную модель его тела. После создания модели Pose2Pose превращает исходную запись с двигающимся человеком в запись с моделью его тела, двигающейся на черном фоне. На этом же этапе нейросеть принимает от пользователя команды, заставляющие человека на видео двигаться в ту или иную сторону в двумерном пространстве. На основе позы на текущем кадре и сигнала от пользователя нейросеть создает следующий кадр, где человек уже находится в другом месте на кадре.
На следующем этапе обработку производит уже алгоритм Pose2Frame, отвечающий за превращение технического ролика с позой человека в реалистичный видеоролик. Для каждого кадра она создает несколько новых, в том числе цветной кадр с человеком и маски с выделенным человеком и тенями от него. Эти кадры нейросеть объединяет и накладывает на заданный пользователем фон.
Эксперименты с алгоритмом показали, что он способен создавать достаточно реалистичные ролики, причем с разными действиями людей, а не только игрой в теннис. Однако на видео все же можно видеть, что в процессе работы нейросети создают множество артефактов изображения.
В прошлом году разработчики из NVIDIA создали нейросетевой автосимулятор. За расчет структуры игрового мира в нем отвечает игровой движок, создающий 3D-модели и последовательность кадров с семантической сегментацией областей. Таким образом получается видеоролик, на котором объекты разных типов окрашены в определенные цвета. После этого нейросетевой алгоритм для переноса изображений превращает семантически сегментированный ролик в реалистичную видеозапись.