Найти в Дзене
LEGION

DWH #3 — как запланировать изменение параметров анимации во время рендеринга!

первая часть

вторая часть

Добро пожаловать, аниматоры, в руководство № 3 по написанию расписаний параметров. Это один из важнейших навыков для анимации с помощью Deforum, если не самый важный, так как именно с его помощью вы управляете содержимым кадров.

Что такое планирование?

Планирование — это процесс изменения значения любого из параметров анимации в определённом кадре рендеринга. В Deforum можно запланировать практически любое свойство анимации. Так я добиваюсь таких вещей, как 3D-движение и синхронизация звука, но я также обнаружил, что эта функция невероятно полезна при тестировании/экспериментировании. Поскольку вы можете запланировать такие вещи, как LoRA, сэмплы, контрольные точки и так далее, это отличный способ тестировать их относительно друг друга. Я лично написал сценарии, в которых используется каждый базовый сэмплер в стабильной диффузии примерно по 100 кадров в каждом, почти каждая контрольная точка, которая есть у меня на ПК, в одной анимации (папка занимает около 100 ГБ+).

Как выполняется планирование?

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

Тип расписания 1: оперативное планирование

Тип 1 — это планирование с помощью подсказок, потому что это, скорее всего, первый и, возможно, единственный тип планирования, с которым вы работали до сих пор. Планирование с помощью подсказок в Deforum использует формат JSON (derulo). Это довольно удобно, так как у него очень простой синтаксис, а сам Deforum предоставляет ссылку на валидатор JSON derulo, так что каждый раз, когда вы заканчиваете планирование с помощью подсказок, вы можете вставить его туда и убедиться, что оно работает.
Расписание будет открываться и закрываться с помощью волнистых скобок { }, а номер кадра и содержание подсказки будут заключены в двойные кавычки и разделены запятой.

Вот пример синтаксиса:

{

"0": " Prompt 1",

"30": " Prompt 2"

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

Тип расписания 2: Планирование параметров

Все остальные параметры Deforum имеют немного другой синтаксис, так как они не используют JSON. Как и в случае с планированием, слева у нас по-прежнему номер кадра, а справа значение.

Существует 3 варианта расписания параметров, но пусть это вас не пугает, так как, как и в случае с чем-либо другим, для вас всегда будет доступен пример по умолчанию. Существует 3 типа: контрольная точка, сэмплер и все остальные.

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

Here is an example of a Checkpoint Schedule:
0: "ICantBelieveitsv9.tensortinkle",

30:"Zovya3DHDTVRPGv3.3.chkpt"
You will noticed we brought along the quotes for the property value, but no the frame number, because.

Here is an example of a Sampler Schedule:
0:("Euler a"),30:("DDM++ 2M SDE")

Sampler Schedules are so awesome they use BOTH parentheses and quotes, but again only for the value.

Here is an example of a Strength (or any other) Schedule:
0:(0.65),30:(0.70)


Мы ещё не рассмотрели силу, но это количество предыдущего изображения, которое используется для создания следующего кадра. 0 означает отсутствие изображения, 1 — то же изображение. В этом графике силы для первых 29 кадров будет использоваться значение 0,65 в уравнении силы/шага Deforum: [шаги - (график_силы * шаги)], а затем, на 30-м кадре, значение изменится на 0,70, пока не будет достигнуто максимальное количество кадров.

Все свойства 3D-движений также планируются таким образом, если используется покадровая съёмка, или они могут также поддерживать математические функции, но об этом в другой раз.

Если вы наведёте курсор мыши на объект в Deforum, то, скорее всего, увидите всплывающее окно с пояснениями или просто с текстом о самом объекте. Например, если вы хотите запланировать контрольные точки, вам будет предложено:

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

Теперь, когда вы знаете, как они все работают, давайте создадим анимацию, которая проверит их все!

(ПРИМЕЧАНИЕ: лучше сделать это самостоятельно, но, как всегда, я предоставлю файл настроек для этой анимации, прикреплённый к статье!)
Мы снова начнём с параметров по умолчанию в Deforum, так как почти всегда лучше начинать с уже созданного вами рендеринга. Здесь мы можем попрактиковаться в редактировании значений на месте, чтобы создать совершенно новую анимацию.
Сначала давайте перейдём к расписанию команд и создадим что-то простое, что продемонстрирует их работу.

Мы можем оставить номера кадров по умолчанию 0, 30, 60 и 90, но давайте изменим содержимое.

-2

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

Теперь давайте перейдём к расписанию свойств. Поскольку я не знаю, какие контрольные точки есть у вас, чудаки, мы пропустим планирование контрольных точек, но я настоятельно настоятельно рекомендую попробовать это даже в этом примере, если у вас несколько контрольных точек и вы чувствуете себя смелым! Однако мы создадим расписания для «Силы» и «CFG» и, возможно, получим более полное представление о том, что делают более высокие или более низкие значения.

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

-3

Здесь мы начнём с более высокого значения силы — 0,80, и каждые 30 кадров оно будет уменьшаться на 0,1. Поскольку в расписаниях CFG используется тот же синтаксис, скопируйте это новое расписание силы, перейдите на вкладку CFG и вставьте его.

Затем вам останется только изменить значения.

Для значений CFG давайте сделаем наоборот:

-4

При таком расписании анимация будет начинаться с очень низкого значения CFG, равного 4, и увеличиваться на 2 каждые 30 кадров.

Режим 3D Помимо изменения рендеринга на , все остальные свойства я оставил по умолчанию (кроме контрольной точки, для которой я использую RevAnimated, но вы можете использовать любой другой способ, который вам нравится!) Подводя итог, каждые 30 кадров этого рендеринга подсказка меняется, сила уменьшается, а CFG увеличивается. Обычно, если вы пытаетесь протестировать эти вещи самостоятельно, вы изменяете только одно свойство за раз, а всё остальное является контролем. Однако это всего лишь одно руководство, так что давайте немного пофантазируем. Нажмите на кнопку G и возьмите сэндвич.