Всем привет! Сегодня я хочу поделиться некоторыми ключевыми техниками, которые я узнал, экспериментируя с моделью Flux. За последние несколько дней я сгенерировал около 500 изображений, настраивая промпты и LoRA, чтобы увидеть, как различные структуры промптов могут управлять генерацией изображений и резкостью фона.

В этой статье я расскажу вам об этих методах и покажу, как вы можете использовать их в своих собственных проектах по генерации изображений. Существует несколько способов для генерации изображений с помощью Flux, но на данном этапе я пользуюсь для генерации этим телеграм-ботом, так как у многих сервисов есть определенные ограничения.

1. Управление компоновкой с помощью структуры промпта

Один из самых эффективных способов управления компоновкой изображения - это корректировка описания сцены в промпте. В частности, уровень детализации и порядок описания существенно влияют как на размер объекта в кадре, так и на резкость фона.

Пример 1: Объект имеет приоритет

Рассмотрим следующий промпт:

A fisherman wearing a worn cap and a thick sweater, net slung over his shoulder, face weathered by the sea; a lively harbor at dawn.

В этом примере большая часть деталей посвящена рыбаку, а гавань упоминается лишь вскользь. В результате в кадре главным объектом съемки является рыбак, а фон (гавань) размыт и менее детализирован.

Пример 2: Приоритет фона

Теперь давайте сместим фокус на задний план. Измените промпт следующим образом:

A lively harbor at dawn, with fishing boats rocking in the water, seagulls circling overhead; a fisherman in the distance, wearing a worn cap and sweater, net slung over his shoulder.

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

Ключевой момент

Изменяя расположение описаний и степень детализации каждого элемента в промпте, вы можете контролировать, какая часть изображения занимает центральное место и насколько резким получится фон.


2. Как содержание влияет на резкость фона

На резкость фона в изображении влияет не только уровень детализации в вашем промпте, но и содержание самого фона. Экспериментируя с моделью Flux, я обнаружил, что она ведет себя почти как умный фотограф, автоматически регулируя уровень размытия в зависимости от того, что описано в промпте.

Давайте рассмотрим это на нескольких примерах, которые демонстрируют, как формулировка промпта влияет на фокус и четкость фона.

Пример 1: Высокодетализированный фон, размытый объект

Возьмем следующий промпт:

A snowy alpine village nestled among towering peaks with snow-capped mountains, smoke rising from cozy chalets, skiers carving paths down pristine slopes; evergreen trees dusted with fresh snow, the crisp air filled with laughter and the aroma of hot cocoa; a snowboarder adjusting his goggles, breath forming clouds in the cold air, eyes reflecting excitement.

В этом промпте большинство слов посвящено пейзажу - альпийской деревне, горам и вечнозеленым деревьям. Поскольку пейзаж описан так подробно, на снимке фон получается крупным и очень четким. Сноубордист, напротив, кажется совсем маленьким и отдаленным. Несмотря на то, что в промпте описаны его действия, они не очень хорошо переданы, потому что он занимает очень мало места на изображении.

Это наглядно демонстрирует, как количество деталей, придаваемых фону по сравнению с объектом съемки, напрямую влияет на четкость и размер каждого элемента в кадре. Чем более подробно описан фон, тем более резким и заметным он становится.

Пример 2: Приведение объекта в фокус с помощью простой настройки

Давайте изменим исходный промпт, добавив перед сноубордистом фразу «a closeup shot of»:

A snowy alpine village nestled among towering peaks with snow-capped mountains, smoke rising from cozy chalets, skiers carving paths down pristine slopes; evergreen trees dusted with fresh snow, the crisp air filled with laughter and the aroma of hot cocoa; a closeup shot of a snowboarder adjusting their goggles, breath forming clouds in the cold air, eyes reflecting excitement.

Благодаря этой небольшой настройке изображение кардинально меняется. Сноубордист стал гораздо крупнее и занимает большую часть кадра. Фон остается четким, но сноубордист теперь становится главным объектом, занимая передний план. Однако, несмотря на то что сноубордист стал более заметным, конкретное действие, когда он поправляет очки, все еще передано не полностью.

Это важный момент: добавление «closeup» увеличивает размер объекта, но не обязательно выделяет все его действия, особенно если фон остается относительно детализированным.

Пример 3: Уменьшение детализации фона для выделения действия

Давайте попробуем еще одну модификацию - на этот раз уменьшим описание фона:

a snowy alpine village; a snowboarder adjusting their goggles, breath forming clouds in the cold air, eyes reflecting excitement

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

Однако за это приходится расплачиваться: фон стал гораздо более размытым, поскольку он больше не описывается в деталях. Баланс между резкостью объекта и фона зависит от того, сколько внимания уделено каждому из них в промпте.

Пример 4: Изменение порядка расположения объектов для разных изображений

Давайте продолжим эксперимент, поместив сноубордиста в начало промпта:

a snowboarder adjusting their goggles, breath forming clouds in the cold air, eyes reflecting excitement; a snowy alpine village

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

Сравнение результатов

Сравнивая изображения, полученные с помощью этих разных промптов, вы можете увидеть, как порядок расположения содержания и количество деталей напрямую влияют на резкость фона и размер объекта.

  • В первом примере сноубордист находится далеко и он маленький, а фон резкий и детализированный.

  • Во втором примере сноубордист крупнее, но его действия все равно трудно разглядеть.

  • На третьем примере мы четко видим сноубордиста, поправляющего очки, но фон становится размытым.

  • На четвертом примере сноубордист доминирует в кадре, а фон становится почти второстепенным.

Структура промпта и последовательность описаний играют огромную роль в управлении размером объекта и резкостью фона.

Эта разница может показаться довольно очевидной, поэтому давайте рассмотрим еще несколько пар изображений. Заметили, что порядок расположения объектов по-прежнему оказывает большое влияние на общую компоновку?

Ключевые слова, которые имеют значение

Во всех этих примерах ключевые слова, которые сыграли огромную роль, - это «closeup shot of». Это мощный инструмент для привлечения внимания к объекту съемки, и его использование может значительно изменить композицию изображения. Аналогично, использование таких фраз, как «in the distance» или «foreground», также может изменить акцент между объектом и фоном. Эти фразы позволяют точно настроить перспективу и баланс в создаваемом изображении.

Основные выводы

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


3. Настройка компоновки с помощью ключевых слов

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

Closeup shot of (Снимок крупным планом)

Приближает объект съемки, делая его более крупным и детализированным, в то время как фон становится размытым.

In the distance (На расстоянии)

Перемещает объект съемки на большее расстояние, позволяя сделать фон более заметным и резким.

Bird’s eye view of (Вид с высоты птичьего полета)

Изменяет перспективу на более высокую и отдаленную, захватывая больше фона и уменьшая заметность объекта.

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

4. Управление резкостью фона с помощью LoRA

При создании изображений с помощью модели Flux возникает распространенная проблема: по мере того как объект занимает все больше места в кадре, фон становится слишком размытым. Это может быть проблематично, особенно когда фон играет важную роль в создании сцены или улучшении общего настроения изображения.

Например, посмотрите на эти изображения:

Как же сохранить и четкий объект, и четкий, детализированный фон?

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

Использование LoRA - более эффективное решение

Более эффективный способ контролировать резкость фона, не полагаясь только на промпт, - использовать LoRA (Low-Rank Adaptation). LoRA позволяет точно настроить поведение модели, в частности степень размытия фона, без ущерба для размера или фокусировки объекта.

Принцип работы LoRA

LoRA - это, по сути, облегченная модификация, которая может адаптировать предварительно обученные модели под ваши конкретные нужды, в данном случае для уменьшения размытия фона. Она особенно полезна, когда стандартные результаты модели, такой как Flux, не дают вам достаточного контроля над четкостью фона.

Вот как вы можете использовать LoRA в своем рабочем процессе.

Настройка LoRA в ComfyUI

Чтобы упростить процесс, я создал для вас собственный рабочий процесс в ComfyUI. Вы можете скачать этот рабочий процесс и антиразмыватель Flux LoRA здесь.

Обзор рабочего процесса

В левой части рабочего процесса вы найдете стандартную настройку модели Flux, но с добавлением узла LoRA для управления размытием фона. Ниже описаны шаги по настройке и эффективному использованию LoRA:

  1. Загрузите узел LoRA. В предварительно настроенном рабочем процессе ComfyUI вы увидите модель Flux в качестве базовой модели. Однако я добавил узел LoRA, специально разработанный для уменьшения размытия фона. Вы можете регулировать силу LoRA в зависимости от ваших потребностей. В демонстрационных целях я установил максимальное значение LoRA - 2, но вы можете изменить эту настройку, чтобы найти правильный баланс для ваших изображений.

  1. Использование более эффективного KSampler. Вместо использования традиционного KSampler (который является стандартным методом выборки в рабочих процессах Stable Diffusion) я выбрал более эффективный KSampler. Это помогает упростить процесс и получить более чистые результаты при работе с LoRA.

Рабочий процесс для исправления изображений

В правой части рабочего процесса мы выполняем исправление изображения, чтобы еще больше улучшить резкость и качество результата:

  • Сначала мы используем узел Upscale Latent, чтобы увеличить разрешение изображения, повысив его общую четкость и резкость.

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

Сравнение результатов: с LoRA и без No LoRA

Теперь давайте сравним набор изображений, созданных с использованием LoRA и без нее:

  1. Первое изображение было создано с помощью модели Flux без LoRA. Как вы можете заметить, хотя объект съемки четкий и занимает большую часть кадра, фон довольно размыт.

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

Применяя LoRA вместе с коррекцией, вы получаете более резкий и четкий фон. Это решение обеспечивает практичный и эффективный способ преодоления распространенной проблемы размытия фона при использовании Flux или аналогичных моделей.

Настройка силы LoRA

Одно из преимуществ использования LoRA заключается в том, что вы можете настроить его силу в соответствии с вашими конкретными потребностями. Если вы обнаружите, что фон все еще слишком размыт или слишком резок, регулировка силы узла LoRA даст вам более точный контроль. Такая гибкость позволяет создавать изображения, в которых соблюден идеальный баланс между фокусом на объекте и детализацией фона.

Попробуйте применить LoRA в своем следующем проекте по созданию изображений, и вы увидите, как это изменит ситуацию!

Подводя итог, можно сказать, что вот основные приемы, позволяющие контролировать расположение объектов и их резкость в изображениях, сгенерированных в Flux:

  1. Настройте уровень детализации в промпте, чтобы контролировать размер объекта и резкость фона.

  2. Измените порядок слов в промпте, чтобы сместить фокус между объектом и фоном.

  3. Используйте такие ключевые слова, как «closeup shot of» или «in the distance», чтобы точно настроить расположение и перспективу.

  4. Если фон становится слишком размытым при фокусировке на объекте, используйте LoRA, чтобы повысить резкость фона без ущерба для объекта.

С помощью этих приемов вы получите гораздо больше контроля над композицией своих снимков, что позволит вам создать именно тот визуальный стиль, к которому вы стремитесь.

Надеюсь, эти приемы были вам полезны! Теперь ваша очередь экспериментировать с промптами и посмотреть, что у вас получится.

Комментарии (7)


  1. sokolov_aa
    03.12.2024 17:38

    Я раньше не замечал, что фон flux так генерирует неважно


  1. Andy584
    03.12.2024 17:38

    the crisp air filled with laughter and the aroma of hot cocoa - интересно, зачем это в промпте и как это воспринимаем и обрабатывает нейросеть?


    1. NeyroEntuziast Автор
      03.12.2024 17:38

      Как видите, обрабатывает нормально )


      1. Andy584
        03.12.2024 17:38

        Не вижу. Ни смеха, ни какао.


        1. NeyroEntuziast Автор
          03.12.2024 17:38

          Аромат какао не увидите )


          1. Andy584
            03.12.2024 17:38

            В самом деле? А я-то надеялся.... все высматривал. Вообще, вопрос в переводе на простой и понятный русский звучит так: зачем в промте писать то, что невозможно изобразить?


            1. NeyroEntuziast Автор
              03.12.2024 17:38

              Такое воображение у автора )