Как мы создали алгоритм для генерации видео (результат в конце)

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


Думаю, будет интересно всем, кто интересуется созданием ИИ, разработкой алгоритмов, музыки и видео, погнали:

Весной этого года к нам пришла идея создать программу, видеоряд которой напрямую зависит от написанной нами музыки. Такое вот -кибер- музыкальное искусство. Получилось, что летом мы оказались в арт-резиденции в Оренбурге (фото оттуда), которая стала отличной возможностью реализовать долгожданную идею.
Как мы создали алгоритм для генерации видео (результат в конце) Клип, Программа, Программирование, Искусственный интеллект, Музыка, Электронная музыка, Гайд, Python, Современное искусство, Искусство, Видео, Длиннопост

В качестве ЯП я выбрал Python: оказалось, на нем больше всего библиотек для обработки видео и звука - как раз то, что нам надо. Первым делом я научил программу распознавать различные параметры в музыке, например: спектральная ширина, спектральный центроид и т.д.

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

Вот самые красивые:

Как мы создали алгоритм для генерации видео (результат в конце) Клип, Программа, Программирование, Искусственный интеллект, Музыка, Электронная музыка, Гайд, Python, Современное искусство, Искусство, Видео, Длиннопост
Как мы создали алгоритм для генерации видео (результат в конце) Клип, Программа, Программирование, Искусственный интеллект, Музыка, Электронная музыка, Гайд, Python, Современное искусство, Искусство, Видео, Длиннопост
Как мы создали алгоритм для генерации видео (результат в конце) Клип, Программа, Программирование, Искусственный интеллект, Музыка, Электронная музыка, Гайд, Python, Современное искусство, Искусство, Видео, Длиннопост

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

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

Как мы создали алгоритм для генерации видео (результат в конце) Клип, Программа, Программирование, Искусственный интеллект, Музыка, Электронная музыка, Гайд, Python, Современное искусство, Искусство, Видео, Длиннопост

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


1. Программа определяет порядок видеоотрезков.

2. На основе характеристик музыки она обрезает, вставляет и соединяет видеоотрезки.

3. Так же на основе музыки она накладывает различные эффекты и схемы.

4. Выгружает конечный вариант видео.


В итоге получился вот такой результат:

Именно это видео мы представили на итоговой выставке арт-резиденции в Оренбурге.

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

Спасибо за прочтение!

Искусственный интеллект

4.5K постов11.3K подписчика

Правила сообщества

ВНИМАНИЕ! В сообществе запрещена публикация генеративного контента без детального описания промтов и процесса получения публикуемого результата.


Разрешено:


- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.

- Делиться статьями, понятными большинству аудитории Пикабу.

- Делиться опытом создания моделей машинного обучения.

- Рассказывать, как работает та или иная фиговина в анализе данных.

- Век жить, век учиться.


Запрещено:


I) Невостребованный контент

  I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.

  I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.

  I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.


II) Нетематический контент

  II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.

  II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".

  II.3) Создавать контент, входящий в противоречие с правилами Пикабу.


III) Непотребный контент

  III.1) Эротика, порнография (даже с NSFW).

  III.2) Жесть.


За нарушение I - предупреждение

За нарушение II - предупреждение и перемещение поста в общую ленту

За нарушение III - бан