Невыносимая яркость бытия
Обновлённая графическая нейросетевая модель от Сбера "Кандинский" версии 2.2 уже вызвала много разговоров и публикаций среди тех, кто интересуется темой рисующих нейросетей. Большинство отзывов — восторженные, и это понятно: в новой версии стиль генерации сместился от цифровой живописи в сторону реализма и гиперреализма; изображения, создаваемые по одному и тому же запросу, перестали быть клонами друг друга и стали разнообразнее по всем параметрам, а ещё заметно уменьшилось количество анатомических и прочих конструктивных ошибок.
Бросается в глаза и кое-что ещё. Бросается с разгона, так, что хочется зажмуриться, чтобы зрение не пострадало. Тут вместо объяснений проще показать. Вот приблизительно так выглядели в массе картинки версии 2.1:
А вот картинки версии 2.2, сгенерированные по тем же самым запросам и расположенные в том же порядке:
Если раньше от "Кандинского" порой веяло унынием и безысходностью, то теперь он впал в другую крайность. Не то по ошибке, не то потому, что таковы их представления о прекрасном, разработчики выкрутили насыщенность цвета по умолчанию на максимально кислотную мощность. Справедливости ради скажу, что такие фееричные результаты получаются не всегда. Тем не менее от большинства картинок беспощадно режет в глазах, а пикселы на экране готовы лопнуть.
Здесь, конечно, вопрос вкуса. Например, дети очень любят яркие цвета. В некоторых сюжетах они даже вполне уместны, хотя всё равно не в такой концентрации. Но если вы не согласны мириться с этим весёленьким безобразием и ищете способ его исправить, у меня есть для вас решение. Даже два.
Решение 1: договоритесь на берегу.
Этот вариант самый простой и очевидный, к тому же он применим на всех платформах "Кандинского": и в телеграм-боте, и на сайтах FusionBrain и ruDALL-E. Просто сразу говорите "Кандинскому" в запросе, что цвета нужно приглушить.
Это уточнение можно сформулировать по-разному и получить разные результаты. Покажу на примерах.
Вот картинка, созданная по запросу "тронный зал, высокие сводчатые потолки, много света, в глубине по центру стоит трон". Меня не устраивают слишком насыщенные цвета - из-за них сцена не выглядит реалистичной.
Первые мои попытки исправить ситуацию включали выражения "тёплые оттенки, приглушённые тона" (первое — чтобы не потерять тёплое солнечное освещение, второе - чтобы попытаться сделать его естественно выглядящим), "неяркие цвета" и "сдержанные цвета".
Вот что получилось у меня в результате:
Со словом "неяркие" вышел конфуз: нейросеть проигнорировала префикс "не-" и выдала ровно противоположное. В третьем варианте она избавилась от ультрафиолета в окнах, но пылающий интерьер всё равно режет глаза. Первый вариант выглядит лучше всех остальных, однако всё ещё недостаточно реалистично.
Что если попытаться поговорить на языке графических редакторов вроде Фотошопа? К "приглушённым тонам" добавляю слова "низкая насыщенность":
Вуаля! Мы с роботом поняли друг друга. Результат меня полностью устраивает.
Повторю эксперимент, чтобы убедиться, что способ действительно работает. Базовый запрос: "улица после дождя, вечер".
Результаты генерации с добавлением уточнения "приглушённые тона, низкая насыщенность" и для сравнения — с уточнениями "приглушённые тона" и "низкая насыщенность" по отдельности:
Способ работает, можно использовать.
Решение 2: вносите правки.
Этот способ подойдёт тогда, когда у вас уже есть сгенерированная картинка, которая вас устраивает всем, кроме слишком ярких цветов. Вы хотели бы сохранить сцену как есть, без изменений, но понизить яркость.
Для этой цели можно использовать новую функцию телеграм-бота — "Перенос стиля", которая недоступна (по крайней мере, пока) на других платформах с "Кандинским".
При выборе инструмента "Перенос стиля" вам предлагается два варианта его использования: перенос с картинки и перенос из текста. Выбирайте первый.
Затем отправляйте боту ту картинку, насыщенность цвета на которой вы хотите убавить. Следующий шаг — отправить картинку в спокойных тонах, цвета и общий стиль которой вы хотите взять за образец. Лучшие результаты переноса получаются тогда, когда на обеих картинках изображено примерно одно и то же. Поэтому второе, неяркое изображение просто сгенерируйте с модификаторами вроде тех, о которых рассказано выше.
Вот пример, на котором я превращаю солнечный осенний день в парке в пасмурный и серый. Основное изображение создано по запросу "осенний парк", вспомогательное — по тому же запросу с уточнением "приглушённые тона, низкая насыщенность". Сцена на вспомогательной картинке отличается от основной, но меня это не беспокоит — мне нужна только цветовая гамма.
Результат переноса стиля:
Заметьте: это практически та же самая аллея с теми же самыми деревьями, что и на первой картинке (мелкие различия считать не будем, ведь каждое изображение у нейросетей уникально). Изменился только стиль.
Бонусная плюшка этого варианта: если вам нравится палитра и в целом художественный стиль, который использовала предыдущая версия модели, вы вполне можете генерировать картинки в стиле "Кандинского" 2.1.
Заметным минусом версии 2.1 было однообразие: она всегда генерировала примерно одно и то же по одному и тому же запросу. Используя версию 2.2, чьё воображение гораздо богаче, вы гарантируете себе разнообразие вариантов. Из них можно выбрать понравившийся, после чего применить к нему стиль версии 2.1. Как говорится, возьмём лучшее от обоих миров.
Но где взять картинку с таким же сюжетом, сгенерированную устаревшей версией нейросети?
1. На сайте ruDALL-E. В меню сайта в верхней части страницы есть пункт "Предыдущие модели". Все они до сих пор работают. Выберите Kandinsky 2.1.
2. Через меню телеграм-бота. Меню открывается при нажатии на голубую кнопку слева от поля ввода текста. Найдите в меню пункт "Изменить версию модели" и выберите версию 2.1. Альтернативный способ: отправьте боту команду /model, а затем выберите модель 2.1.
После этого введите запрос без изменений и получите (с высокой долей вероятности) фирменную сизо-бурую цифровую живопись. А потом просто используйте её как вспомогательное изображение.
Вот примеры:
А вот тот самый тронный зал:
Последний результат мне особенно нравится.
Есть ещё третий способ победить переизбыток цвета, но он ненадёжен и результаты могут быть непредсказуемы. Он заключается в использовании той же функции "Перенос стиля", но не с картинки, а из текста. То есть вместо того чтобы показывать нейросети, что вы от неё хотите, вы ей об этом рассказываете.
В этом случае модель некстати проявит фантазию и в дополнение к изменённому цвету изменит и саму сцену, и не факт, что вам это понравится. Вот, например, во что превратился когда-то роскошный тронный зал после добавления текста "приглушённые тона, низкая насыщенность":
Впрочем, и эту особенность можно творчески использовать. Например, так мог бы выглядеть зал дворца через сто лет запустения после того, как Спящая красавица укололась веретеном.
Надеюсь, эта длинная статья каким-нибудь образом окажется вам полезной. А я продолжу экспериментировать с нейросетями. Найду больше интересных особенностей и неявных возможностей редактирования — обязательно вам расскажу. Спасибо, что дочитали!