"Медсестры" от Midjourney
"Black & Gold" от Midjourney
"Electric Origami Soul" от Midjourney
Как быстро заменить фон на изображении с помощью Stable Diffusion (Automatic1111) и заставить Габена учиться на одни пятерки
Что нам понадобится?
Во-первых, установленный либо локально, либо в облако Automatic1111. Прикреплю ссылки на лучшие по моему мнению гайды, можете смело пользоваться. В случае проблем готов помочь в чате.
Немаловажным также является наличие Deliberate inpaint, либо другой inpaint модели. Именно благодаря ей мы не будем получать лишних голов и рук.
Также нужно поставить расширение depthmap2mask — устанавливается оно через раздел Extensions.
Собственно, это все, нам нужно лишь расширение и автоматик. Не забудьте нажать кнопку Apply and restart UI перед началом работы.
Перейдем к практике
Изначально я нашел Габена на каком-то выступлении в фиолетовых тонах и с микрофоном в руке — не для того ли он у него, чтобы представить Half-life 3? Эх...
Загрузил короля Game-дева через img2img в Automatic1111 и сразу же выставил Denoising strength на 0, чтобы при работе расширения исходник не менялся. Затем подогнал разрешение генерации под пропорции оригинала и открыл само расширение в разделе Scripts. Модель создания карты глубины нужно скачать самую первую — dpt_beit_large_512.
Также поставьте галочку Invert DepthMap, чтобы главный объект закрасился черным и не менялся в последствии.
Жмем Generate и ожидаем загрузки модели генерации маски. У меня получилась вот такая:
Далее переносимся во вкладку Inpaint upload, где в верхнюю часть загружаем наш исходник, а в нижнюю — маску. В поле для промпта уже можем вводить описание для желаемого фона, а также менять Denoising strength на 0.75. Но не забывайте, что у вас должна быть Inpaint модель.
Скрипт можно отключить, он нам больше не понадобится.
На этом шаге можно сказать, что вы умеете менять фон — и это действительно так. Далее я просто распишу некоторые тонкости, проведу сравнения и расскажу о крутых приемах.
Лайфхаки и волшебные таблетки
Если в процессе генерации вы видите, что маска ложится не идеально, то кликаете по ней ПКМ, копируете и вставляете в раздел Sketch. Там закрашиваете нужную область кистью с черным или белым цветом, а затем с Denoising strength = 0 генерируете и переносите обратно в Inpaint upload.
Я решил закрасить руку, посмотрим, что это даст.
Настройки в разделе Inpaint upload у меня следующие:
Особенность модели Inpaint состоит в том, что она не трогает детали, которые вы не описывали в промпте, поэтому мы и не получаем лишних голов и конечностей. Но такой способ лишает нас вариативности и стилизации, поэтому важно комбинировать версии моделей для достижения лучшего результата.
Посмотрите, как Inpaint версия меняет руку — изменения минимальны. И это при Denoising strength равном 0.75!
А вот что сделал стандартный Deliberate_v2 при тех же настройках. Все превратилось в дачный суп, собранный из всех подручных компонентов. Хоть я и люблю дачный суп, но он часто получается непредсказуемым!
Заменив фон, я дорабатывал его с помощью вкладки Inpaint, чередуя параметр Masked content с Original на Letent noise. Последний может создавать объект на любом цвете или поверхности, режим Original же учитывает изображение под маской, а поэтому не способен создать что-то кардинально новое.
Например, я добавил на стену часы: режим Original бы их никак не сделал, а вот Latent noise справился с этой задачей, однако у него проблемы с добавлением объекта в общую композицию, свет, цвет, поэтому полученные часы я уже доработал с помощью Original и получил идеально вписанный объект.
Вот как книги сгенерились с включенным Latent noise.
А вот они же после доработки режимом Original.
В конце пришлось повозиться в фотошопе, но тут уж никуда не денешься, ибо ради хорошего результата нужно попотеть :3
Да, Габен получился слегка приуменьшенным, но ведь он же еще школьник!)
Congratulations, вы справились!
Теперь кто-то умеет заменять фон с помощью лучшего фреймворка для Stable Diffusion на сегодняшний день. Буду рад обратной связи и вашим комментариям, а также приглашаю в свой телеграм чат, где отвечу на все вопросы касаемо SD.
Буду рад видеть вас в телеграм-канале, где я пишу лучшие гайды по Stable Diffusion!
Подборка картинок на разные темы от Midjourney, все больше реализма
Лучший метод апскейла на сегодняшний день. Или еще один способ использования ControlNet
Ждал когда эта функция заработает с самого релиза версии 1.1, она казалась мне самой интересной. И не зря. За что мы любим контролнет? За то что можем генерировать по образу на высоких уровнях денойза не теряя композицию. С препроцессором tile_resample теперь мы можем делать апскейл с высоким уровнем денойза, а значит его качество и детализация станет еще выше.
Делает он это благодаря тому что может понимать что находится на том тайле который нужно увеличить и детализировать.
Сравнение до и после апскейла всего в два раза:
Инструкция простая (если для вас она такой не кажется то пролистайте до конца статьи, оставлю полезные ссылки). У вас должен быть установлен ControlNet. Я написал про его использование уже около 4 гайдов, для новичков есть вот такой.
Приступим.
Качаем модель для тайлинга вот тут. Нам нужна та которая содержит слово tile и конфиг файл к ней. На данный момент это control_v11f1e_sd15_tile.pth. "e" в названии значит экспериментальная, но она уже неплохо работает. Закидываем к остальным моделям контролнета.
Отправляем картинку для апскейла в img2img.
На моем примере лучшими настройками оказались вот такие:
Больший размер тайла позволил сильно поднять качество уменьшив кол-во артефактов, так как чем больше мы показываем тем лучше он понимает что изображено, тем лучше будет апскейл. И в guess mode я отдал контроль над промптом в руки контролнета.
Так же, в выпадающем меню Scripts, нам нужно активировать сам апскейлер. Тут по желанию, можно тот что идет предустановленным, SD Upscale, либо установить расширение Ultimate SD Upscale.
Я использую апскейлер Siax. Вы можете использовать тот который вам больше нравится. Хорошими апскейлерами, как их установить и другими полезными вещами мы делимся в нашем тг сообществе. В котором скоро будем праздновать 1000 человек. Присоединяйтесь.
В заключение:
Контролнет снова подтвердил звание обязательного к установке расширения. Кроме того что мы можем управлять композицией, светом, позами и другим, теперь он улучшает наш апскейл. Вы можете использовать высокий денойз, судя по отзывам до 0.7, но не забывайте и про размер плитки чтобы у него был контекст. На очень больших разрешениях могут начаться трудности так как видеопамять не резиновая, а контекста в плитку будет попадать все меньше. И самое главное. Мои настройки не единственно верные, для разных сюжетов могут понадобиться разные настройки денойза, выбора апскейлера и размера плитки. Так же не забывайте про существование настроек самого ControlNet такие как вес и гайданс старт и энд.
__
Мой канал с гайдами по нейросетям. Где бесплатно обучаю с нуля и до самостоятельного обучения моделей.
Если хотите быстро влиться, то у меня есть два видео, одно как установить, а второе как настроить и работать с SD.
Поиграем в бизнесменов?
Одна вакансия, два кандидата. Сможете выбрать лучшего? И так пять раз.