Эту статью посвятим тому как при помощи нейросети можно рисовать мультфильмы. И тут главный акцент "при помощи", потому что сами нейросети ничего рисовать не могут. Как мы выяснили в предыдущей статье.
Мы уже в курсе что нейросети могут рисовать картинки, эти картинки можно использовать например как фоны в мультфильмах или в фильмах. Но как дела с видео? И с видео проблема в том, что задача создания консистентного видео пока решается с трудом. Картинки мерцают, бликуют и вообще всё это больше похоже на набор разных картинок, вместо одного видео.
И вот тут хочется разобрать эксперимент, который поставили ребята из Corridor Crew.
https://www.youtube.com/@CorridorCrew
Они решили сделать мультфильм в стиле Аниме при помощи нейросети Stable Diffusion. Посмотреть его можно тут
И результат действительно впечатляет. Но здесь снова надо оговориться, что это не мультфильм сделанный нейросетью, это мультфильм сделанный при помощи нейросети. То есть сценарий написали люди, снялись в главных ролях - люди, смонтировали всё это вместе люди, даже костюмы пошили люди, а нейросеть сделала самую нудную работу, тщательно обрисовала различные элементы превратив их в рисунки определённой стилистики.
В отдельном видео они рассказали как это было сделано, ссылку на него я размещу в конце, а пока перескажу основные моменты простыми словами.
Шаг первый. В основу всего ложаться съёмки по сценарию реальных актеров в реальных костюмах на хромакее. Все реплики, эмоции и движения камеры закладываются на этом этапе.
Шаг второй. Отснятые кадры засовываются в нейросеть и она на их основе и заложенных промптов рисует кадры. И тут возникает первая проблема. Кадры не консистентны. То есть меняется одежда, отдельные элементы, а главное меняется лицо. Это просто разные лица в каждом кадре!
Решение - обучить нейросеть на лицах персонажей. Как это происходит? В нейросеть загружается как можно больше лиц одного героя с разных ракурсов с разным светом и главное к этому лицо привязывается промпт. Любое сочетание букв и символов главное, чтобы он не пересекался ни с каким другим словом, которое может быть в базе.
Таким образом мы получаем модель базы обученной на лицах и тогда изображение становится чуть более консистентным.
Второй вариант, можно генерировать не каждый кадр, а каждый второй или третий и использовать интерполяцию между кадрами. И так далее. В общем результат достигается методом тыка, проб и ошибок. А главное долгой и кропотливой работы. Нет такого что просто сняли видео закинули в нейросеть и вот тебе мультик. Ничего подобного. Да это проще и быстрее чем нанять десяток художников, но всё таки не так просто.
Шаг третий - интерьеры. У нас сняты герои на хромакее надо им создать пространство. Берётся макет собора из игровых библиотек Unreal. Там можно как протреканную со съёмок камеру закинуть в unreal и высчитать анимацию фона, либо что проще и консистентнее сделать "фотографии" в разные стороны. Дать нейросети обрисовать их, чтобы они не выглядели как 3D, а были как рисунки. И на этапе сборки и композа объединять это всё в 3D пространстве.
Шаг 4 сборка. Теперь всё это собирается в единое целое в DaVinci. Почему там? Ну это логично, тут можно монтировать и компоузить в одной программе. На самом деле в DaVinci все идёт с самого начала. В нём монтируется аниматик ещё с актерами на зелёном фоне. Потом каждый клип отправляется в Fusion и там собирается все окружение и многократно применённый DeFliker делает лица героев более консистентными убирая мерцание.
Возможно теперь этот пайплайн пойдёт в массы или ещё допилится в сторону упрощения и более стабильного предсказуемого результата. Но главное, что начало положено. Вход в мир анимации будет проще. А главное туда смогут зайти те, кто не умеет рисовать. Такие как я.
Ссылка на мой курс по Stable Diffusion
Ну и ссылка на оригинальное видео от Corridor Crew
На этом всё!
Спасибо за внимание!