Авторы: Эсекьель Ланца, Руонан Ван

В последние несколько лет нейронные сети устанавливают связи повсюду.

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

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

В этом сообщении блога мы рассмотрим достижения в обработке видео, особенно в стилизации видео.

Стилизация видео: определение

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

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

Мы еще не достигли этого, но со стилизацией изображения алгоритм может. Эти модели могут изменять входное изображение и преобразовывать его в желаемый стиль; проекты с открытым исходным кодом, такие как это, основанные на (Huang & Belongie, 2017), могут помочь вам в этих художественных преобразованиях.
Ознакомьтесь с результатами ниже:

Это нормально для статического изображения, но как насчет видео?

Видео представляет собой последовательный поток изображений, поэтому стилизация видео сложнее, чем стилизация изображения. Проблемы включают в себя то, как добиться стилизации видео в реальном времени (Lu et al., 2018) и как сохранить непрерывность всех кадров, составляющих видео. Это также включает в себя обработку видео (Li et al., 2022), технологию стилизации изображений и другие области, поскольку это не так просто, это всегда было горячей академической темой. И в настоящее время они обращаются к 3D-стилизации, при которой стиль распространяется на объект в трех измерениях (Nguyen-Phuoc et al., 2022) (Liu et al., 2022) (Hauptfleisch et al., 2020)

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

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

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

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

Как это работает?

Как и для любой модели ИИ, есть два этапа: обучение и вывод.

Перед обучением модели входное видео необходимо преобразовать в изображения (группа А). Пользователь предоставляет стилизованные ключевые кадры входных изображений (группа B). Это все данные, необходимые модели для обучения; затем он учится на основе этих данных создавать стилизованные изображения (группа C).

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

Обученная модель может изменять любое необходимое вам входное видео, при этом для создания модели требуется всего несколько изображений примерно за 20–30 минут. См. (Texler et al., 2020) подробные сведения об архитектурах с несколькими шагами.

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

Как BigDL может помочь

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

BigDL может помочь сократить этот разрыв. BigDL-Nano имеет две функции — квантование и многопроцессорный вывод — которые могут почти удвоить скорость обработки с меньшим количеством изменений кода.

Всегда лучше показывать, а не рассказывать: в приведенной ниже таблице показана скорость стилизации видео до и после ускорения BigDL-Nano на процессоре Intel® Core™ i9–12900 с разными номерами процессов. (Номер процесса здесь относится к количеству процессов, выполняющих вывод одновременно. Например, если количество процессов равно 1, то для покадрового рендеринга видео требуется только один основной процесс. Если количество процессов =4, то четыре процесса запускаются одновременно, и каждому процессу нужно обработать около четверти кадров изображения.)
Каждый результат задержки рассчитывается путем усреднения 20 повторных экспериментов. Примечание. Приведенные ниже значения зависят от длины/разрешения входного видео и типа используемого процессора.

Проверьте репозиторий BigDL для оптимизированной реализации.

Стилизация видео — отличный способ создать привлекательный контент, несмотря на трудности, связанные с длительным временем вычислений. BigDL-Nano обеспечивает мощную стилизацию видео с более быстрой доставкой для экономии времени и энергии — даже позволяя работать на портативных мини-ПК, таких как Intel® NUC.

Дополнительные материалы с открытым исходным кодом от Intel см. на open.intel

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

Хауптфляйш Ф., Текслер О., Текслер А., Криванек Дж. и Сикора Д. (2020). StyleProp: стилизация 3D-моделей на основе примеров в реальном времени. Форум компьютерной графики, 39(7), 575–586. https://doi.org/10.1111/cgf.14169

Хуанг, X., и Белонги, С. (2017). Передача произвольного стиля в режиме реального времени с адаптивной нормализацией экземпляра. https://doi.org/10.48550/ARXIV.1703.06868

Лю, Ф.-Л., Чен, С.-Ю., Лай, Ю.-К., Ли, К., Цзян, Ю.-Р., Фу, Х., и Гао, Л. (2022) . DeepFaceVideoEditing: глубокое редактирование видео лиц на основе эскизов. Транзакции ACM с графикой, 41(4), 1–16. https://doi.org/10.1145/3528223.3530056

Нгуен-Фуок, Т., Лю, Ф., и Сяо, Л. (2022). SNeRF: стилизованные нейронные неявные представления для 3D-сцен. https://doi.org/10.48550/ARXIV.2207.02363

Текслер О., Фучик Д., Кучера М., Ямришка О., Сохорова Ш., Чай М., Туляков С. и Сикора Д. (2020). Интерактивная стилизация видео с помощью обучения на основе нескольких исправлений (arXiv:2004.14489). архив http://arxiv.org/abs/2004.14489

Об авторах

Эсекьель Ланца — пропагандист открытого исходного кода в команде Intel Открытая экосистема, увлеченный тем, чтобы помочь людям открыть для себя захватывающий мир искусственного интеллекта. Он также часто выступает с докладами на конференциях по искусственному интеллекту и создает примеры использования, учебные пособия и руководства, помогающие разработчикам внедрять инструменты искусственного интеллекта с открытым исходным кодом, такие как TensorFlow* и Hugging Face*. Найдите его в Твиттере на @eze_lanza

Руонан Ванг (Ruonan Wang) — инженер по инфраструктуре искусственного интеллекта в Intel AIA. В настоящее время занимается разработкой BigDL-Nano, пакета Python* для прозрачного ускорения приложений PyTorch* и TensorFlow* на оборудовании Intel.