Эта статья в первую очередь для тех, кого заинтересовала работа с графической нейросетью Leonardo AI и кто хотел бы освоить все доступные в ней инструменты. Если вы ещё не знаете, что это такое, то можно начать знакомство с Leonardo отсюда:
Как создать бесплатный аккаунт на Leonardo AI и генерировать сногсшибательные картинки
Рисуем с нейросетью Leonardo AI: как применять стилистические модели и модификаторы
А здесь ― первая часть рассказа про Alchemy:
Алхимик Леонардо: режим Alchemy нейросети Leonardo AI
***
Читая материалы на моём канале, пожалуйста, обращайте внимание на дату публикации и номер версии программы, если он указан. В мире нейросетей изменения происходят постоянно, и информация может устаревать очень быстро.
***
Коротко напомню, что режим Alchemy имеет собственный комплект настроек, который появляется на экране только при его активации. Рядом с названием используемой модели в основном окне появляется выпадающий список со стилями ― о них рассказано в прошлой публикации. Сегодня я покручу настройки в левой панели, благо их там немного.
Для чистоты эксперимента все генерации будут проводиться по одному запросу:
A steampunk airship flying over a desert at sunset, a large cactus underneath, new moon in the sky (дирижабль в стиле стимпанк пролетает над пустыней, внизу под ним большой кактус, в небе молодой месяц).
Я буду использовать стилевую модель DreamShaper v6, а из внутренних стилей Alchemy выберу Raytraced.
Для начала ― контрольный образец. Картинка, сгенерированная безо всякой "алхимии":
Стимпанк-дирижабль ― одна штука, кактусы ― четыре штуки, молодой месяц ― одна штука, закатная пустыня тоже на месте.
Теперь включаю Alchemy и начинаю перебирать настройки.
Expanded Domain (расширенный домен)
Первое, что здесь надо сказать, ― эта настройка работает в связке с другим блоком настроек, который располагается над блоком Alchemy, называется Prompt Magic и отвечает за точность соответствия картинки вашему запросу.
Сейчас в Leonardo доступно две версии Prompt Magic: обкатанная вторая (V2) и третья (V3), которая пока находится в стадии бета-тестирования и активируется только вместе с Alchemy. Так вот, переключатель Expanded Domain появляется только в том случае, если выбрана вторая версия (V2) Prompt Magic:
Почему они связаны? Потому что Expanded Domain тоже отвечает за точность соответствия изображения вашему описанию. Пояснение разработчиков:
Расширяет творческий диапазон генерируемых изображений. Когда он выключен (OFF), изображения с высокой долей вероятности будут эстетически привлекательны, но могут не вполне соответствовать запросу. Когда он включён (ON), вы можете добиться большего соответствия запросу, но повышается риск появления аномалий и артефактов на изображении.
Проверим?
Творческий диапазон воистину расширился. Добавленные нейросетью детали ― дюны, облака, впечатляющий ассортимент кактусов и прочих суккулентов, живое солнечное освещение ― делают сцену намного интереснее, чем без Alchemy.
Что касается точного соответствия запросу, то здесь сложнее. Стимпанк-дирижабль почему-то превратился в воздушный шар, кактусы плохо поддаются исчислению, молодой месяц ― то один, то ни одного, а то с друзьями. При этом большой разницы между включённым и отключённым Expanded Domain я не вижу: в целом запрос снова выполнен довольно точно, а несоответствия по мелочам (в части наличия месяца на небе и количества кактусов) равномерно присутствуют и там, и там.
Раз использование этой настройки себя не особо оправдывает, далее я просто включу режим Prompt Magic v3 и забуду про Expanded Domain.
Contrast Boost (увеличение контраста)
Всплывающая подсказка гласит, что этот ползунок должен настраивать динамический диапазон изображения. На нём можно устанавливать значения от 0 до 1. Если я всё правильно понимаю, значение 1 должно усиливать контраст, а значение 0 ― наоборот, снижать. Между ними есть ещё три промежуточных значения: 0,25, 0,5 и 0,75.
Что такое динамический диапазон в изображении? Если в двух словах: он описывает, насколько хорошо различимы детали на самых тёмных и самых светлых участках. При большом динамическом диапазоне в глубоких тенях и на ярко освещённых участках одновременно сохраняются все детали. Если вы когда-либо обрабатывали фото, пусть даже в мобильных приложениях, вам могла встречаться аббревиатура HDR (High Dynamic Range) ― это оно и есть.
При маленьком динамическом диапазоне либо тени превращаются в сплошные чёрные пятна, либо света ― в сплошные белые.
Обычно чем выше общий контраст, тем больше деталей пропадает на обоих концах шкалы яркости.
Я не буду испытывать значения 0,25, 0,5 и 0,75, возьму только крайние значения, чтобы разница, если она есть, была наиболее очевидна. Оцениваем только степень контрастности изображений и игнорируем досадные мелочи вроде кактусовой клумбы на верхушке дирижабля.
Честно говоря, я не вижу вообще никаких различий. Разве что тени в нижнем ряду выглядят чуть светлее, или мне кажется? Спрошу Photoshop: машина не соврёт. Если есть разница, я увижу её на гистограмме.
Не пугайтесь, я не буду углубляться в детали настроек Photoshop, просто покажу, куда смотреть.
Белые графики-гистограммы показывают распределение пикселей от самых тёмных (левая граница гистограммы) до самых светлых (правая граница) участков. При изменении контраста графики тоже должны заметно меняться. Вот так примерно:
При низком контрасте картинка становится как бы выцветшей, и глубокие тени с яркими бликами просто исчезают. На гистограммах в крайних правой и левой точках ничего нет. При высоком контрасте, наоборот, появляются чёрные тени и белые света, и графики по краям резко взлетают вверх.
Так вот, при использовании настройки Contrast Boost ничего подобного не происходит. Гистограммы выглядят примерно одинаково. Мой вывод ― эта штука не работает как заявлено.
Возвращаю значение Contrast Boost по умолчанию ― 0,5.
Resonance (резонанс)
Как следует из описания, эта шкала устанавливает, сколько деталей содержит изображение и насколько точно оно соответствует запросу. Разработчики предупреждают, что при высоких значениях картинки могут оказаться перегруженными деталями, и советуют использовать срединные значения ― 13-15.
Но мне интересно увидеть, как эта настройка работает, поэтому для наглядности я возьму именно пограничные значения: минимальное 2 и максимальное 30.
Я снова не вижу разницы. Нет, можно было бы посчитать кактусы, скалы и болты на дирижаблях, но думаю, это лишнее. Разница должна быть видна без этих упражнений, а её не видно. Растущего месяца так и вообще нигде нет. Похоже, и эта настройка не работает.
High Resolution (высокое разрешение)
Эта настройка в панели стоит первой, но я намеренно говорю о ней в последнюю очередь. Сейчас объясню, почему.
Если её не активировать, с учётом всех остальных моих настроек размеры генерируемых картинок составляют 768×1152 пиксела.
Всплывающая подсказка:
Эта настройка повышает выходное разрешение Leonardo Alchemy. Результаты, полученные в высоком разрешении, будут несколько отличаться от результатов в обычном разрешении из-за процесса диффузии, поэтому не ожидайте, что эта настройка будет работать как простое увеличение изображения.
После нажатия кнопки Generate (Генерировать) появляется вот такое предупреждение:
"Переключатель High Resolution ― экспериментальный. Он может выдать крутые эффекты, но с той же степенью вероятности может привести к созданию неадекватных изображений, лишних конечностей и мутаций. Используйте на свой страх и риск (потери токенов)!"
Если вам не стало страшно, жмите на скромную чёрную кнопку слева ― Leave it on.
Я воспитываю в себе мужество и храбрость, поэтому вот результаты:
Размеры этих картинок ― 1024×1536 пикселов, то есть они увеличились примерно в полтора раза по ширине и высоте. Поскольку я испытываю эту настройку в последнюю очередь, я могу сравнить результаты с полученными ранее на предмет появления крутых эффектов и страшных мутаций: так вот, я не вижу ни тех, ни других. По крайней мере, ошибок здесь не больше, чем на любом из предыдущих результатов.
Месяца снова нет.
Что в сухом остатке?
Судя по всему, изо всех настроек в левой панели Alchemy работает только увеличение изображения. Почему бы мне было не сказать сразу "а здесь ничего не работает, проходим мимо" и избавить вас от чтения длинной статьи?
Потому что, во-первых, с чего бы вам мне верить? Подобные утверждения выглядят так, будто их автору было лень или не хватило сообразительности докопаться до сути. А мне было не лень и на самом деле интересно, что это за переключатели такие.
Во-вторых, очень может быть, что мне и правда не хватило сообразительности. Может, я что-то не так делаю? Если вы смогли заставить эти ползунки работать, расскажите в комментариях.
В-третьих, полезно сохранить это дело для истории, на случай, если однажды они всё же заработают. Тогда можно будет сравнить результаты "тогда" и "сейчас" и порадоваться за Leonardo (надеюсь).
В любом случае использование режима Alchemy само по себе действительно резко повышает уровень реалистичности и детальности генерации. Неудивительно, что бесплатно такую ценность не выдают.
Остаётся надеяться, что Сбер и Яндекс, сохраняя здоровый азарт, догонят и перегонят иностранных конкурентов (собственно, они уже в затылок дышат). Если при этом "Кандинский" и "Шедеврум" ещё и останутся бесплатными, то я снова начну верить в людей и чудеса.