В этой статье описывается синтез видео в видео [1], размещенный на arXiv 20 августа 2018 года, и синтез нескольких кадров видео в видео [2], опубликованный 28 октября 2019 года.

  • Первый - это статья о GAN под названием vid2vid, которая может синтезировать правдоподобные видео на основе семантических изображений, таких как маски разделения на области.
  • Последний представляет собой статью о GAN под названием Few shot vid2vid, которая развивает первый и может составлять видео на основе небольшого количества эталонных изображений и семантических изображений.

Синтез видео в видео

Резюме

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

Они предлагают GAN под названием vid2vid для синтеза видео. По сравнению с pix2pixHD и COVST в предыдущем исследовании, сгенерированное видео менее искажено, поскольку оно генерируется с использованием условной вероятности предыдущего кадра. Они тренируют модель в «пространственно-временном прогрессивном» режиме, который попеременно выполняет обучение с прогрессивной скоростью, увеличивающее количество кадров, используемых для синтеза по мере обучения, и пространственно-прогрессивное обучение, которое постепенно увеличивает разрешение, как в PG-GAN.

В приведенном ниже примере два видео с высоким разрешением создаются на основе маски разделения нижней левой области.

Постановка проблемы

Рассмотрите возможность создания видео, которое состоит из набора сгенерированных изображений, со сгенерированными изображениями x тильда с момента 1 до T и семантические образы s из времени 1 ко времени T.

Затем генерация изображения в каждый момент времени t формулируется как совокупная вероятность сгенерированных изображений x тильда с момента времени tL до t-1 и семантические изображения s из tL на t.

Полные последовательности изображений (видео) сформулированы следующим образом.

Генератор (F)

Архитектура генератора F показана ниже.

Объясняя грубо, он состоит из двух изображений, перемноженных маской m. Первая часть - это предыдущее изображение (t-1), искаженное оптическим потоком (синий). Вторая часть - это промежуточное изображение, которое синтезирует другую часть (красный). Маска m имеет непрерывные во времени значения от 0 до 1. Два изображения назначаются для каждого местоположения с помощью маски m. Поскольку видео является непрерывным во времени, существует естественное предположение, что изображения делятся на одно, которое можно выразить с помощью оптического потока, и другое, которое не так.

Последнее промежуточное изображение h может быть дополнительно разложено следующим образом: нижний индекс B указывает фон, а нижний индекс F указывает передний план.

Маска m_B указывает положение фона в момент времени t и решает, какая часть будет сгенерирована функцией переднего плана h_F или фоновая функция h_B.

Функция переднего плана h_F отвечает за структуру интенсивного движения, которое трудно выразить с помощью оптического потока, а функция фона h_B отвечает за ту часть, которая может быть выражена с помощью оптического потока с небольшим движением. Фактически, первый член F содержит термин, который искажает изображение с помощью оптического потока, поэтому h_B отвечает за ту часть, которая не может быть выражена только оптическим потоком, например вновь появляющийся фон в момент времени t.

Переписывание F с учетом этих результатов приводит к следующему.

Дискриминатор

Модель vid2vid вводит два дискриминатора, дискриминатор изображений и дискриминатор видео.

  1. Первый - это дискриминатор, который различает (истинное изображение, соответствующее семантическое изображение) или (сгенерированное изображение, соответствующее семантическое изображение) и рассматривает, является ли изображение, сгенерированное из семантического изображения, правдоподобным.
  2. Последний различает (истинное изображение, соответствующий оптический поток в предыдущий раз) или (сгенерированное изображение, соответствующий оптический поток в предыдущий раз) и определяет, является ли движение видео естественным или нет.

Кроме того, известно, что Дискриминатор должен быть введен в нескольких масштабах, чтобы предотвратить коллапс режима. В модели vid2vide Дискриминаторы изображения вводятся в нескольких масштабах.

Целевая функция

Целевая функция для оптимизации генератора (F) и дискриминаторов следующая.

Первый член L_I и второй член L_V в круглых скобках - это минимаксная формулировка генератора F и Дискриминаторы, как в обычной целевой функции GAN. Нижний индекс I означает дискриминатор изображений, а нижний индекс V означает дискриминатор видео.

Третий термин L_W относится к оптическому потоку. Первый элемент - это разница между истинным оптическим потоком и предсказанным оптическим потоком, а второй элемент - это разница между деформированным изображением в момент времени t оптическим потоком и изображением на один раз вперед.

Метод обучения

Обучение проводится «прогрессивно в пространственно-временном отношении». Проще говоря, это метод обучения, который начинает обучение с небольшого количества кадров и грубого разрешения и постепенно увеличивает количество кадров и разрешение поочередно.

Полученные результаты

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

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

Синтез нескольких кадров видео в видео

Резюме

Этот документ был отправлен в arXiv 28 октября 2019 года. В этом исследовании предлагалась модель «Несколько снимков vid2vid», основанная на vid2vid. В vide2vid синтез был возможен только в видеороликах, которые были изучены, но с «несколькими кадрами vid2vid» синтез видео возможен даже в видеороликах, которые не были просмотрены в обучении.

Резюме таково.

Они предложили GAN, который называется «Few shot vid2vid», чтобы синтезировать видео с несколькими кадрами. Хотя он основан на vid2vid, они используют модифицированный SPADE [4], чтобы вставить стиль в сэмпл, который будет синтезирован несколькими выстрелами. Объедините два приведенных ниже шага, чтобы создать новое изображение временного интервала.

1. Извлекает оптический поток W и карту окклюзии M из синтезированных изображений (видео) и семантического изображения, такого как ключевая точка и маска разделения области.

2. Извлеките особенности изображений, которые вы хотите синтезировать, с помощью Encoder E. И, используя их в качестве переменных параметров стиля, поместите их в модифицированный SPADE ResBlock вместе с семантическими изображениями.

Улучшенная архитектура для быстрого обучения

В основном, это следует за vid2vid, но для реализации обучения с несколькими кадрами они модифицировали модуль H, который создает промежуточное сгенерированное изображение. В vid2vid параметры модуля H являются фиксированными значениями независимо от входных данных. Однако Few shot vid2vid позволяет модели динамически изменять параметры в зависимости от входных выборок (e_K, s_K), которые вы хотите синтезировать.

Итак, как сделать возможным динамическое изменение параметров? Есть три основных шага.

  1. Извлеките характеристики для каждого кадра с помощью кодировщика (E_P) из (e_K, s_K) и рассчитайте характеристики q ^ l (l - идентификатор слоя) для каждого уровня кодировщика.
  2. Рассчитайте вес внимания для каждого кадра и вычислите q, взвешенный по вниманию.
  3. Вставьте q, взвешенное по вниманию, и семантическое изображение s в Генератор H с SPADE, который модифицирован для работы с динамическими параметрами.

Сначала на шагах 1 и 2 изображение кадра e и семантическое изображение s обрабатываются E_F и E_A соответственно. Характеристики q рассчитываются на основе изображения кадра e с помощью кодировщика E_F, а веса внимания рассчитываются на основе семантических изображение s с помощью кодировщика E_A. Обратите внимание, что функции q извлекаются для каждого уровня кодировщика E_F.

На шаге 3 они используют уровень нормализации под названием SPADE [4], который используется для передачи стилей. GauGAN, использующий SPADE, может создавать реалистичные изображения из иллюстраций, нарисованных простыми линиями и цветами.

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

В исходном SPADE, γ и β сворачиваются с использованием фильтров с фиксированным значением. Однако, поскольку SPADE в Few shot vid2vid необходимо динамически изменять параметры, изображения кадров сворачиваются с использованием весов θ_H, обрабатываемых кодировщиками E_P и E_A.

θ_H делится на θ_S, θ_β, и θ_γ, а обработка свертки выполняется в разных частях. Записывается математическими формулами следующим образом:

Полученные результаты

Вот пример обучения с несколькими выстрелами с помощью Few shot vid2vid. Во-первых, вот пример передачи танца несколькими кадрами с использованием ключевых моментов танцующего человека. Вы видите, что передача прошла очень успешно.

Далее приведен пример дороги и города (набор данных Cityspace). Опять же, используя изображение маски, фильм может быть сгенерирован в стиле примеров изображений, которые вы хотите передать.

Это пример по сравнению с другими методами. Видно, что этот метод может очень хорошо передавать позу по сравнению с существующим методом.

Заключение

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



Еженедельная рассылка по машинному обучению с Revue



использованная литература

  1. Тинг-Чун Ван и др. Синтез видео в видео arXiv: 1808.06601,2018
  2. Тинг-Чун Ван и др. Синтез нескольких кадров видео в видео, arXiv: 1910.12713,2019
  3. Исследования NVIDIA: видео в синтез видео, https://www.youtube.com/watch?v=GrP_aOSXt5U&feature=youtu.be
  4. Taesung Park et al. Семантический синтез изображений с пространственно-адаптивной нормализацией. arXiv: 1903.07291, 2019