7. Расширение области видимости изображений с помощью нейросетей: расширение кадра, изменение соотношения сторон с добавлением новой информации (outpainting)

Как генерировать фото, видео, музыку и 3D модели с помощью нейросетей на своём компьютере (руководство по ComfyUI). Полное оглавление

  1. Как использовать нейросети для создания изображений, видео и музыки на своём компьютере — что для этого нужно и какой результат можно получить
  2. Как установить ComfyUI в Windows и Linux
  3. Виды ИИ (нейросетей) для генерации картинок и видео. Основные термины
  4. Лучшие ИИ (нейросети) для генерации картинок, видео, музыки и 3D моделей (краткое описание готовых шаблонов ComfyUI для генерации фото и видео на своём компьютере)
  5. Знакомство с ComfyUI
  6. Основы генерации изображений из текстовых запросов на своём компьютере
  7. Расширение области видимости изображений с помощью нейросетей (расширение кадра, изменение соотношения сторон с добавлением новой информации — outpainting)

7.1 Что такое Outpainting

7.2 Какие модели поддерживают Outpainting

7.3 Промпты для Outpainting

7.4 Настройка Outpainting в ComfyUI

7.5 Ограничения на размер изображения при Outpainting’е

7.6 Что делать если размер изображения уже больше 4 Мп

7.7 Как делать Outpainting в Qwen Image

7.8 Как делать Outpainting в Flux.1 Dev OneReward

7.9 Как делать Outpainting в Flux Outpaint (fill)

7.10 Outpainting при редактировании изображения нейросетевыми редакторами изображений. Как делать Outpainting в Flux.2 Dev

7.11 Как добавлять большие области при Outpainting’е

7.12 Популярные проблемы при Outpainting

7.13 Альтернативы Outpainting. Когда вместо Outpainting лучше использовать другой вариант I2I

  1. Замена, удаление и добавление объектов на изображение с помощью ИИ — редактирование по маске (inpainting)
  2. Редактирование изображения с помощью нейросетей (I2I)
  3. Междоменный перевод изображений (преобразование между различными типами изображений)
  4. Превращение нефотографических изображений в фотографии (фотореалистичные изображения) с помощью ИИ
  5. Ускорение создания и редактирования изображений с помощью дистиллированных моделей нейросетей
  6. Генерация изображений с текстом. Добавление текста на изображение и редактирование текста с помощью нейросетей
  7. Использование одного или нескольких референсов для генерации картинок: изменение фона, изменение и дорисовка объектов и персонажей, замена стиля, расширение кадра, перенос стиля между картинками, объединение нескольких изображений в одно
  8. Восстановление и улучшение изображений с помощью ИИ: устранение повреждений фотографий, превращение чёрно-белой фотографии в цветную, улучшение и усиление цветов, увеличение размера изображения
  9. Редактирование изображений через декомпозицию сцены
  10. Генерация изображений из других изображений с применением ControlNet, IP-Adapter и IP-Control
  11. Физически правдоподобное редактирование изображений с ChronoEdit 14B (Physics-driven image editing)
  12. Основы создания видео из текстовых запросов на своём компьютере
  13. Основы генерации видео из изображений на своём компьютере
  14. Создание видео из первого и последнего кадров
  15. Редактирование видео с помощью нейросетей — замена и удаление элементов (генерация видео из видео)
  16. Создание видео с контролем камеры
  17. Создание видео с контролем движений
  18. Методы создания длинных видео с помощью ИИ
  19. Создание музыки по словесному описанию. Создание песен из ваших стихов. Редактирование существующих песен (стиля и слов)
  20. Создание 3D моделей из изображений
  21. Продвинутые техники написания промптов
  22. Детальное управление жанром, кадровкой, ракурсом, композицией, расположением камеры, освещением, скоростью съёмки, движениями камеры, позиционированием и пластикой тела и прочим в промптах
  23. Типы моделей нейросетей. Квантование. Общие принципы использования дообученных модулей нейросетей
  24. Детальное понимание рабочего процесса (workflow) в ComfyUI. Узлы ComfyUI
  25. Настройки workflow при генерации изображений, видео, музыки и 3D моделей в ComfyUI
  26. Улучшение качества изображений и видео с помощью перехода на модели полной точности (неквантованные модели)
  27. Уменьшение потребления VRAM и ускорение вычислений за счёт перехода на квантованные модели
  28. Модификация workflow для использования дообученных моделей в ComfyUI
  29. Создание новых workflow в ComfyUI с нуля
  30. Как использовать модели в формате GGUF в ComfyUI
  31. Как делать апскейлинг (upscale) изображений и видео с помощью ИИ
  32. Опции и настройки для экономии видеопамяти (VRAM). Как создавать HD видео на обычном компьютере
  33. Есть ли цензура в локальных ИИ. Почему результаты не соответствуют запросам. Глубокое понимание работы нейросетей. Как полностью снять все запреты с локальных ИИ
  34. Коммерческие ИИ (нейросети) для создания и редактирования картинок, видео, 3D, озвучивания текста и прочего (краткое описание готовых шаблонов ComfyUI доступных по API)
  35. Обзор популярных кастомных моделей
  36. Обзор популярных дообученных модулей (LoRA-адаптеров)
  37. Обзор ИИ-моделей для генерации аниме-артов
  38. Обзор дообученных модулей (LoRA-адаптеров) для аниме-изображений
  39. Генерация изображений в аниме-стиле с помощью нейросетей

……………..

……………..

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


7.1 Что такое Outpainting

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

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

Таким способом можно горизонтальную картинку превратить в вертикальную, или наоборот, взять исходное вертикальное изображение и сделать его горизонтальным.

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

Популярным устоявшимся термином для этого является Outpainting, но иногда можно встретить термин Generative fill (Генеративное заполнение).

И, конечно же, кроме изображений, outpainting также может применяться и для видео.

Итак, Outpainting расширяет сцену за пределы исходного кадра, создавая продолжение окружения и персонажей.

К примеру, можно взять картинку:

И расширить её вниз, чтобы увидеть человека в полный рост:

Или расширить в сторону, чтобы увидеть других присутствующих:

Или взять такую картинку:

И расширить её сразу во все стороны:

Ещё бывает смотришь на человека и думаешь, как он был одет в этот прохладный день?

И благодаря нейросетям это легко можно реконструировать — не удивительно, что она мёрзла!

Перенесёмся опять в тепло:

И добавим ей чуть менее помятую подружку:

Или уберём подружку и просто осмотримся — атмосферное местечко:

Можно взять романтический пейзаж:

И расширить его романтичность:

Конечно, можно расширять не только искусственные сгенерированные картинки, но и реальные фотографии:

Исходное фото (оригинал взят отсюда):

Расширенная панорама фотографии:

Более экстремальное расширение:

И ещё один пример реальной фотографии (оригинал взят отсюда):

Расширенная панорама фотографии:

Это всё и есть примеры outpainting.

Строго говоря, outpainting это частный случай inpainting (только с маской снаружи картинки), но поскольку мы с вами ещё не рассматривали inpainting, возможно вам это не добавило ясности.

Смотрите также: Варианты I2I

7.2 Какие модели поддерживают Outpainting

Модели предназначенные для аутпейнтинга:

  • Qwen Image (в дополнении с ControlNet моделью)
  • Flux.1 Dev OneReward
  • Flux Outpaint (fill)
  • SD1.5 Outpaint (устарела)

Все эти нейросети специально настроены для outpainting и работают с указанными пользователем областями для расширения изображения.

В Flux.2 Dev на данный момент нет специальной версии для outpainting, но при этом Flux.2 Dev настолько мощный, что неплохо справляется с задачей расширения изображения. При этом данный процесс уже не является классическим outpainting, а является генерацией нового изображения на основе исходного изображения и промпта — что именно это означает для пользователя мы поговорим в этой главе чуть ниже.

Все эти модели в разной степени справляются с задачами outpainting. На мой взгляд самыми сильными являются Qwen Image и Flux.1 Dev OneReward. Нейросеть Flux Outpaint (fill) слабее первых двух, но тоже может выдавать хороший результат при расширении кадра.

SD1.5 Outpaint больше подходит для тех, кто генерирует изображения в SD1.5 и SD3.5, в целом это скорее устаревший вариант — даже ссылки в ComfyUI ведут на несуществующий репозиторий файлов.

И особняком стоит Flux.2 Dev — с одной стороны это инструмент без поддержки outpainting (во всех других моделях под капотом составляется маска и дополнение изображений выполняется по строго установленной маске), но на практике это весьма мощная нейросеть которую можно использовать для преобразования изображения, в том числе для outpainting.

7.3 Промпты для Outpainting

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

Тем не менее промпт я указываю — чуть ниже дано объяснение.

Я использую одинаковые универсальные промпты для каждой модели. Позитивный промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.

Негативный промпт (если предусмотрен):

seams, visible edges, artifacts, different lighting, color shifts, distorted reflections, unrealistic water, compressed quality, blurry boundaries, frames, borders, sub-images, panels, multiple separate scenes, picture-in-picture layouts, collage-style compositions, duplicated subjects, repeated characters, mismatched lighting, mismatched perspective, mismatched color temperature, inconsistent textures, artificial seams, visible edges, distorted continuation, broken background continuity, multiple camera angles

Если мне нужно указать что-то определённое для добавления, то я просто дописываю описание новой части сцены после основной части промпта.

Как уже было сказано, пустой промпт также работает и даёт примерно такие же результаты. Но если вы хотите описать что должно быть в новой сцене, то есть риск, что вместо расширения области видимости, модель вставит новую сцену как отдельную картинку. Приведённая выше постоянная часть промпта призвана уменьшить эту проблему, хотя и не является 100% гарантией что нейросесть не создаст нескольких отдельных кадров.

7.4 Настройка Outpainting в ComfyUI

Все модели работают с нодой Pad Image for Outpainting.

В этой ноде нужно указать, на сколько пикселей в какую сторону или стороны вы хотите расширить исходное изображение:

  • left — расширить изображение влево на указанное количество пикселей
  • top — расширить изображение вправо на указанное количество пикселей
  • right — расширить изображение вверх на указанное количество пикселей
  • bottom — расширить изображение вниз на указанное количество пикселей

Также в этой ноде имеется настройка feathering — это размытие маски для плавного сшивания с исходным изображением. Эта настройка может уменьшить видимость шва между исходным изображением и новой областью. Для больших изображений и областей вы можете немного увеличить это значение — разумными максимальными значениями считаются 80-120.

Для Flux рекомендуется использовать feathering, а для Qwen это значение установлено на 0 — рекомендуется не менять его, поскольку Qwen борется со швом своими собственными методами.

7.5 Ограничения на размер изображения при Outpainting’е

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

При аутпэйнтинге с использованием Flux.1 и Flux.2 лучше не превышать размер изображения в 4 Мп. Для этих моделей при редактировании прямоугольных изображений, ограничений на длину какой-либо из сторон я не заметил. То есть, к примеру, можно без проблем использовать размер 2048×2048 для квадратных изображений, или 2560×1600 для прямоугольных, или 4000×1000 для ультрашироких — все эти и другие размеры работают.

В Qwen Image если какая-либо из сторон превышает 3072, то модель может потеряться и выдать бессмыслицу, при таком размере это происходит не всегда, но часто. При максимальном размере любой из сторон 2048 модель справляется лучше. Я тестировал изображений в Qwen Image ​до 6 Мп — в целом это работает, но без необходимости не устанавливайте такие большие размеры — требуется больше VRAM и времени на генерацию, но при этом модель может потеряться и выдать бессмысленной изображение.

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

Обратите внимание, что имеются ввиду не размеры добавляемой области. Здесь говориться о размере конечного изображения, то есть о полном размере изображения (исходное + новые области).

7.6 Что делать если размер изображения уже больше 4 Мп

Если размер исходной картинки уже равен или больше 4 Мп, то самый простой вариант, это масштабировать (уменьшить размер) изображения без его обрезки. Например, в GIMP для этого перейдите в меню Image → Scale Image. В открывшемся окне убедитесь, что включена защёлка которая меняет высоту и ширину одновременно, измените (уменьшите) любую из сторон и нажмите кнопку Scale.

Затем экспортируйте (сохраните) изображение с уменьшенным размером.

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

При работе с Flux.1 и Flux.2 хотя и нужно ориентироваться на 4 Мп как на максимальный размер, на практике модели вполне справлялись и с чуть большими (до 5 Мп) изображениями. То есть если вам к картинке в 4 Мп нужно дорисовать совсем небольшую область, есть шанс, что это удастся сделать без масштабирования. Ну или немного масштабируйте, чтобы увеличить шансы на успех.

7.7 Как делать Outpainting в Qwen Image

В ComfyUI имеется workflow для выполнения аутпэйнтинга в Qwen и вы можете им пользоваться. Но если он у вас (тоже) не заработал, то вот ссылка на мои рабочие и настроенные workflow:

Примечание: чтобы в ComfyUI найти нужный workflow в меню шаблонов введите в поиск и выберите «Qwen-Image InstantX Inpainting ControlNet». Там outpainting сделан в виде второго, по умолчанию отключённого workflow. Когда вы активируете этот workflow, то содержимое сабграфов оказываются неактивированным и весь workflow в результате нерабочий. То есть если вы хотите пользоваться дефолтным workflow, то не забывайте активировать содержимое сабграфов.

Особенности моего workflow для Qwen:

  • использует модели с полной точностью (не квантованные) qwen_image_bf16.safetensors и qwen_2.5_vl_7b.safetensors. Квантованные версии qwen_image_fp8_e4m3fn.safetensors и qwen_2.5_vl_7b_fp8_scaled.safetensors также будут работать
  • не использует ускорители и генерация выполняется в 50 шагов для максимального качества (вы можете использовать LoRA и меньшее количество шагов для ускорения)
  • значения shift 2, cfg 4 (можете настроить под себя)
  • установлен максимальный размер любой из сторон на 2048 пикселей (вы можете изменить и эту настройку, но помните, что при больших размерах могут быть проблемы, например, в моих тестах при 3072 пикселях модель часто выдавала бессмыслицу)

Ссылки на необходимые файлы:

Примечание: пусть вас не смущает «Inpainting» в названии ControlNet модели — аутпэйнтинг по сути это частный случай импэйнтинга, только с маской по краю изображения.

Примечание 2: если вы знаете про Qwen Image Edit (модель qwen_image_edit_2509_bf16.safetensors) то нет, я не перепутал — в данном случае используется именно qwen_image, а не qwen_image_edit.

Квантованные версии (только если не хватает VRAM):

И для тех, кто хочет использовать ускоритель и генерировать в 4 шага:

Примечание: для мультяшных и абстрактных сцен ускоритель и меньшее количество шагов будут давать почти не отличимые результаты по сравнению с 50 шагами.

При желании, измените размер максимальной длины любой из сторон (размер другой стороны будет подогнан автоматически для сохранения пропорций). Не рекомендуется устанавливать слишком большие значения. А при более маленьких значениях файл будет генерироваться быстрее и его содержимое может быть более согласованным. В комментариях в workflow рекомендуется устанавливать это значение не более 3000.

Если вы выбрали workflow под названием I2I — Qwen — Outpainting — MAX size in MP.json, то здесь вы можете указать максимальный размер нового изображения в мегапикселях:

Примеры Outpainting сделанные в полной, неквантованной Qwen Image (qwen_image_bf16.safetensors и qwen_2.5_vl_7b.safetensors), 50 шагов:

Если промпт не указан, значит использован пустой промпт или стандартный промпт из раздела выше.

Развернуть

Исходное изображение (Ref_1):

Источник оригинальной фотографии: https://suay.ru/?p=12831

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_2):

Источник оригинальной фотографии: https://suay.ru/?p=12814

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_3):

Источник оригинальной фотографии: https://suay.ru/?p=12831

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_4):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_7):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_8):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_10):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Add a school girl. She is a young, beautiful teenage girl, the school girl is wearing short skirts and white stockings above the knee. The school girl is shorter. She school girl has medium-sized breasts

Исходное изображение (Ref_11):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
The girl is wearing a short coat, we can see the girl's beautiful thighs in high stockings. The girl is wearing only underwear. The girl's panties are visible. Her panties are white and lacy.

Исходное изображение (Ref_12):

Примеры расширения кадра (outpainting):

Промпт:

Extend the image by seamlessly continuing the scene with same patterns, reflections, and lighting. The image should remain completely unchanged. Generate relevent textures, maintain the same lighting and color temperature. Add elements if appropriate. Ensure perfect blending at the edges with no visible seams or artifacts.

The girl wears a short dress that barely covers her panties. The girl's bare thighs are beautiful and perfect. She wears high sheer white stockings. Her dress has short sleeves.

She lifts her skirt with her hands. She shows off her little white panties.

Исходное изображение (Ref_13):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_14):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_22):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_23):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Extend the scene into a modern private clinic reception area. Add a clean, bright, high-end medical interior with glossy white surfaces, soft ambient lighting, and subtle contemporary medical details. Position the woman from the original image standing naturally at the reception desk, fitting seamlessly into the expanded environment. Ensure she appears attractive, confident, and fully integrated into the same visual style, with matching perspective, shadows, and color temperature.

Исходное изображение (Ref_24):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_26):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

The girl is wearing white high stockings

Исходное изображение (Ref_27):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_28):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Add a small turtle crawling on the grass. The girl is looking at the turtle.

Исходное изображение (Ref_29):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

A teenage girl stands nearby, looking at the woman in the frame with great surprise. The girl's mouth is slightly open in surprise.

Исходное изображение (Ref_31):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_33):

Примеры расширения кадра (outpainting):

7.8 Как делать Outpainting в Flux.1 Dev OneReward

В ComfyUI этот шаблон называется «Flux.1 Dev OneReward». Outpainting там сделан в виде второго, по умолчанию отключённого workflow. Вам нужно отключить первый и включить второй workflow. Чтобы не делать это каждый раз, рекомендуется сохранить сделанные изменения как новый шаблон.

Смотрите также: Как сохранять изменения в шаблонах ComfyUI

Для себя я добавил автоматическую подгонку изображения под заданный размер в мегапикселях — очень удобно, не нужно с калькулятором высчитывать, насколько уменьшить исходное изображение, чтобы потом прибавить стороны нужного размера, но при этом уложиться, например, в 4 Мп.

Также в моём workflow генерация выполняется в 50 шагов и используются модели полной точности, если вам это интересно, то вы можете скачать мой I2I — Outpaint — Flux.1 Dev OneReward — MAX size in MP.json.

В моём workflow я использую flan_t5_xxl_TE-only_FP32.safetensors, но вы можете использовать дефолтные t5xxl_fp16.safetensors (разницы практически никакой) или t5xxl_fp8_e4m3fn_scaled.safetensors (лучше вместо него использовать t5xxl_fp16.safetensors и переключить устройство на CPU).

Смотрите также: Перенос модели CLIP-энкодера в RAM и обработка на CPU

Примечание: если вы захотите как и я использовать flan_t5_xxl_TE-only_FP32.safetensors, то помните, что для этого кроме указания самой модели FP32 также нужно запускать ComfyUI с опцией —fp32-text-enc для хранения весов текстового энкодера в fp32, иначе всё равно будет считаться в fp16 даже при использовании модели FP32. Такая особенность имеется только для текстовых энкодеров, в других случаях ComfyUI правильно определяет точность вычислений в зависимости от используемой модели. И, на самом деле, проще пользоваться t5xxl_fp16.safetensors — разница с FP32 самая минимальная.

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

Примеры Outpainting сделанные в полной, неквантованной Flux.1 Dev OneReward (flux.1-fill-dev-OneReward-transformer_fp16.safetensors, 50 шагов):

Если промпт не указан, значит использован пустой промпт или стандартный промпт из раздела выше.

Развернуть

Исходное изображение (Ref_2):

Источник оригинальной фотографии: https://suay.ru/?p=12814

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_4):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_6):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_7):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_8):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_9):

Примеры расширения кадра (outpainting):

Промпт:

Three young Asian women in an East Asian courtyard with wooden architecture, greenery, and flowers. Central girl in the middle, flanked by left: slightly shorter slender girl, long light chestnut wavy hair with silver pins, soft round face, wide eyes, shy smile, wearing flowing light blue traditional outfit with silver sakura embroidery, pale inner layer, grey belt; right: slightly taller very slim girl, shoulder-length dark chocolate wavy hair with gold ornament, sharp elongated face, confident smile, wearing deep burgundy traditional outfit with golden chrysanthemum patterns, cream inner layer, green belt. Distinct faces, hair, expressions, height, and silhouettes, harmonious lighting, consistent style and detail, perfectly integrated for outpainting, girls clearly positioned on left and right sides.

Исходное изображение (Ref_10):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_11):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.

The girl is wearing a short coat, we can see the girl's beautiful thighs in high stockings. The girl is wearing only underwear. The girl's panties are visible. Her panties are white and lacy

Исходное изображение (Ref_12):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_13):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_14):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_15):

Примеры расширения кадра (outpainting):

Промпт:

The girl is wearing white transparent stockings that reach just below the knee. There's a bra on the windowsill. The bra hangs slightly over the sill.

Исходное изображение (Ref_16):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_17):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_18):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_20):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_23):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Extend the scene into a modern private clinic reception area. Add a clean, bright, high-end medical interior with glossy white surfaces, soft ambient lighting, and subtle contemporary medical details. Position the woman from the original image standing naturally at the reception desk, fitting seamlessly into the expanded environment. Ensure she appears attractive, confident, and fully integrated into the same visual style, with matching perspective, shadows, and color temperature.

Исходное изображение (Ref_24):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_25):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_26):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_28):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Add a small turtle crawling on the grass. The girl is looking at the turtle.

Исходное изображение (Ref_29):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_31):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_32):

Примеры расширения кадра (outpainting):

7.9 Как делать Outpainting в Flux Outpaint (fill)

Этот workflow вы можете найти в меню по имени «Flux Outpaint».

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

Также вы можете увеличить количество шагов до 50 если вам нужна более качественная картинка.

Для себя я сделал версию с автоматическим подгоном размера изображения под указанное количество мегапикселей с сохранением соотношения сторон: I2I — Outpaint — Flux Fill — MAX size in MP.json

Если вас не устраивают результаты полученные с помощью Flux Outpaint (fill), то обязательно попробуйте другие описанные здесь модели — Flux Outpaint (fill) хотя и может иногда приятно удивлять, делая лучшие расширения кадра из всех моделей, но чаще даёт плохие результаты.

Примеры Outpainting сделанные в полной, неквантованной Flux Outpaint (fill) (flux1-fill-dev.safetensors, 50 шагов):

Если промпт не указан, значит использован пустой промпт или стандартный промпт из раздела выше.

Развернуть

Исходное изображение (Ref_2):

Источник оригинальной фотографии: https://suay.ru/?p=12814

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_4):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_6):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_7):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_8):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_9):

Примеры расширения кадра (outpainting):

Промпт:

Three young Asian women in an East Asian courtyard with wooden architecture, greenery, and flowers. Central girl in the middle, flanked by left: slightly shorter slender girl, long light chestnut wavy hair with silver pins, soft round face, wide eyes, shy smile, wearing flowing light blue traditional outfit with silver sakura embroidery, pale inner layer, grey belt; right: slightly taller very slim girl, shoulder-length dark chocolate wavy hair with gold ornament, sharp elongated face, confident smile, wearing deep burgundy traditional outfit with golden chrysanthemum patterns, cream inner layer, green belt. Distinct faces, hair, expressions, height, and silhouettes, harmonious lighting, consistent style and detail, perfectly integrated for outpainting, girls clearly positioned on left and right sides.

Исходное изображение (Ref_10):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_11):

Примеры расширения кадра (outpainting):

  

Исходное изображение (Ref_12):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_13):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_14):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_15):

Примеры расширения кадра (outpainting):

Промпт:

The girl is wearing white transparent stockings that reach just below the knee. There's a bra on the windowsill. The bra hangs slightly over the sill.

Исходное изображение (Ref_16):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_17):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_18):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_23):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_24):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_25):

Примеры расширения кадра (outpainting):

 

Исходное изображение (Ref_26):

Примеры расширения кадра (outpainting):

7.10 Outpainting при редактировании изображения нейросетевыми редакторами изображений. Как делать Outpainting в Flux.2 Dev

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

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

Мой workflow для используемый в примерах для этого раздела: I2I — Flux2 — Outpainting.json

Смотрите также:

  • 9. Редактирование изображения с помощью нейросетей (I2I)
  • 10. Превращение мультяшной картинки в фото с помощью ИИ
  • 11. Генерация изображений с текстом. Добавление текста на изображение и редактирование текста с помощью нейросетей
  • 12. Использование одного или нескольких референсов для генерации картинок: изменение фона, изменение и дорисовка объектов и персонажей, замена стиля, расширение кадра, перенос стиля между картинками, объединение нескольких изображений в одно
  • 13. Восстановление и улучшение изображений с помощью ИИ: устранение повреждений фотографий, превращение чёрно-белой фотографии в цветную, улучшение и усиление цветов, увеличение размера изображения

Flux.2 Dev пока не имеет специальной модели для Inpainting / Outpainting. Но Flux.2 Dev может делать I2I и при этом хорошо следует промптам. Думаю, идея напрашивается сама собой — делать редактировать изображения с промптом нацеленным на Outpainting.

Минусы такого подхода:

  • трудно контролировать точное расположение добавляемых областей — только с помощью промпта и немного с помощью нового размера изображения
  • нейросеть даже при чётком запрете делать это может немного изменить исходный кадр — просто потому что посчитает что «так лучше»
  • новая картинка может быть совершенно другой — результат не всегда предсказуем

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

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

К примеру, я использую I2I в Flux.2 Dev со следующими промптами:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.

Перевод: Расширь сцену с помощью непрерывного фона, соответствующего исходным цветам, текстурам, освещению и перспективе.

Комментарий: этот простой промпт хорошо срабатывает в целях outpainting в том смысле, что исходный кадр оказывается неизменным. Минусы: очень маленький контроль над тем, как именно будет раздвинут кадр и что будет в новых областях. Фактически, мы контролируем только соотношение сторон (через размер) нового изображения.

Если в новых картинках исходное изображение обрезается, то можно чуть дополнить промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective. Do not crop the original content.

К этому базовому промпту я добавляю желаемое действие, к примеру, чтобы показать персонажа в полный рост:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
Expand the frame downward and outward to show the character in full body while maintaining natural and realistic proportions and perfect blending at the edges.

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

Если в новом изображении изменена цветовая гамма, то иногда это предотвратить удаётся с помощью следующего дополнения:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
Keep the original image fully preserved and unchanged.

Для ультрашироких панорам (4:1) имеется тенденция помещать исходный кадр не в центр, а в левую часть новой картинки и при этом зачем-то её немного кадрировать. Для исправления кадрирования хорошо работает добавление к промпту

Do not crop the original content.

Что касается неравномерного отступа от краёв, как вы сможете увидеть на примера ниже, мне эту проблему решить не удалось, указание в промпте отступать на равные расстояния от краёв не дали результатов, но добавили других проблем.

Чтобы расширить кадр в определённом направлении можно использовать конструкцию вида:

Extend the scene to the WHERE with a continuous background that matches the original colors, textures, lighting, and perspective. Do not crop the original content.

Где в качестве WHERE укажите один из следующих вариантов:

  • the left — Расширение влево
  • the right — Расширение вправо
  • downward — Расширение вниз
  • upward — Расширение вверх
  • the left and downward — Расширение влево и вниз
  • the right and downward — Расширение вправо и вниз
  • the left and upward — Расширение влево и вверх
  • the right and upward — Расширение вправо и вверх

В моих тестах результат был скорее косметическим.

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

Любые добавления к промпту повышают шанс того, что исходный кадр будет изменён (обычно немного и часто в лучшую сторону, но всё же изменён).

К примеру, исходный кадр:

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
The girl is wearing a short dress. The girl has beautiful, slender legs. The girl is wearing stockings that go above the knee.

Перевод:

Дополните сцену непрерывным фоном, соответствующим оригинальным цветам, текстурам, освещению и перспективе.
Девушка одета в короткое платье. У неё красивые стройные ноги. На девушке чулки выше колена.

Результат:

На первый взгляд кажется, что всё замечательно — лицо, тело и поза явно похожи на оригинал, даже в фоне угадываются знакомые элементы с первого изображения. Но если присмотреться к фону повнимательнее, то видно, что мини-водопад находится у девушки на уровне плеча слева. А на новой картинке у неё за этим плечом дом. В целом, с точки зрения физики, это может быть более правильным видом с учётом угла съёмки. Если вас устраивают такие небольшие отхождения от оригинала, то вы можете использовать этот метод.

И ещё один пример — исходное изображение:

Промпт (кстати, да, Flux.2 Dev умеет понимать промпты в формате JSON — мы об этом поговорим в одной из глав):

{
  "scene": "Continue the environment, setting, style, and visual atmosphere of the original image. Extend the existing scene outward as one single continuous space, keeping the same architecture, materials, colors, lighting, and perspective without introducing new unrelated elements. Keep the original image fully preserved and unchanged.",
  "subjects": [
    {
      "description": "The central girl from the reference is preserved exactly as she is, with unchanged appearance, clothing, lighting, and all original details.",
      "position": "center",
      "action": "standing naturally"
    },
    {
      "description": "A young Asian woman standing to the left of the central girl. Slightly shorter and slender, with long light-chestnut wavy hair decorated with silver hairpins. Her face is soft and rounded, with wide eyes and a shy, bashful expression. She wears a traditional light-blue outfit with silver sakura embroidery, pale inner layer, long flowing sleeves, and a deep grey embroidered belt. Her appearance is gentle and airy, distinct from the central girl. Her breasts are very large and protrude strongly from the dress.",
      "position": "left side of the frame near the central girl",
      "action": "standing calmly, looking toward the center"
    },
    {
      "description": "A young Asian woman standing to the right of the central girl. Slightly taller and very slim, with dark chocolate-brown shoulder-length wavy hair and a single gold ornament. Her facial features are sharper and more elongated, with narrow eyes and a confident smile. She wears a traditional deep-burgundy outfit with gold chrysanthemum-leaf patterns, a cream inner layer, and a dark-green belt with a gold clasp. Her appearance is dynamic and richer in contrast to the shy demeanor of the girl on the left. Her breasts are very large and protrude strongly from the dress.",
      "position": "right side of the frame near the central girl",
      "action": "standing with confident posture"
    }
  ]
}

Суть промпта — добавить двух женщин по бокам и дано их описание.

Полученный результат:

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

В Flux.2 Dev мы не можем расширять определённые стороны изображения на заданную величину как мы это делали с предыдущими моделями. Тем не менее, мы можем определять соотношение сторон с помощью размера изображений. Максимальный поддерживаемый размер 4 Мп и я привожу размеры сторон чтобы полностью использовать эти 4 Мп. Но необязательно делать картинки именно такого размера — вы можете сами выбирать любой размер из диапазона 0.5-5 Мп, подгоняя размеры сторон.

Размеры которые я использую в своих примерах ниже (все ≈4 Мп):

  • 2560×1600 — горизонтальный кадр
  • 1600×2560 — вертикальный кадр
  • 2048×2048 — квадратный кадр
  • 3000×1300 — широкий кадр
  • 4000×1000 — ультра широкий кадр

Примеры Outpainting сделанные в Flux.2 Dev (flux2_dev_fp8mixed.safetensors, 50 шагов):

Я буду указывать промпты для этих примеров — если промпта нет, значит использовался дефолтный промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
Keep the original image fully preserved and unchanged.

Развернуть

Исходное изображение (Ref_1):

Источник оригинальной фотографии: https://suay.ru/?p=12831

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_2):

Источник оригинальной фотографии: https://suay.ru/?p=12814

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_3):

Источник оригинальной фотографии: https://suay.ru/?p=12831

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_4):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_5):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_7):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_8):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_9):

Примеры расширения кадра (outpainting):

Промпт:

{
  "scene": "Continue the environment, setting, style, and visual atmosphere of the original image. Extend the existing scene outward as one single continuous space, keeping the same architecture, materials, colors, lighting, and perspective without introducing new unrelated elements. Keep the original image fully preserved and unchanged.",
  "subjects": [
    {
      "description": "The central girl from the reference is preserved exactly as she is, with unchanged appearance, clothing, lighting, and all original details.",
      "position": "center",
      "action": "standing naturally"
    },
    {
      "description": "A young Asian woman standing to the left of the central girl. Slightly shorter and slender, with long light-chestnut wavy hair decorated with silver hairpins. Her face is soft and rounded, with wide eyes and a shy, bashful expression. She wears a traditional light-blue outfit with silver sakura embroidery, pale inner layer, long flowing sleeves, and a deep grey embroidered belt. Her appearance is gentle and airy, distinct from the central girl. Her breasts are very large and protrude strongly from the dress.",
      "position": "left side of the frame near the central girl",
      "action": "standing calmly, looking toward the center"
    },
    {
      "description": "A young Asian woman standing to the right of the central girl. Slightly taller and very slim, with dark chocolate-brown shoulder-length wavy hair and a single gold ornament. Her facial features are sharper and more elongated, with narrow eyes and a confident smile. She wears a traditional deep-burgundy outfit with gold chrysanthemum-leaf patterns, a cream inner layer, and a dark-green belt with a gold clasp. Her appearance is dynamic and richer in contrast to the shy demeanor of the girl on the left. Her breasts are very large and protrude strongly from the dress.",
      "position": "right side of the frame near the central girl",
      "action": "standing with confident posture"
    }
  ]
}

Исходное изображение (Ref_10):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a seamless continuation of the original background, preserving consistent colors, textures, lighting, and perspective. Expand the frame downward and outward to show the character in full body while maintaining natural and realistic proportions and perfect blending at the edges. Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Add a schoolgirl next to the woman in the frame. The school girl is a young, beautiful teenage girl, the school girl is wearing short skirts and white stockings above the knee. The school girl is shorter than the woman in the frame. She school girl has medium-sized breasts

Исходное изображение (Ref_11):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
Expand the frame downward and outward to show the character in full body while maintaining natural and realistic proportions and perfect blending at the edges. 

The girl's coat is open, we can see the girl's beautiful thighs in high white stockings. The girl is wearing only underwear. The girl's panties are visible. Her panties are white and lacy

Исходное изображение (Ref_13):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_14):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_15):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

The girl is wearing white transparent stockings that reach just below the knee. There's a bra on the windowsill. The bra hangs slightly over the sill.

Исходное изображение (Ref_16):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_17):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_18):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective. Do not crop the original content.
Expand the frame downward and outward to show the character in full body while maintaining natural and realistic proportions and perfect blending at the edges. 

The woman in the photograph has large breasts and a slender body. She is wearing a short skirt. The woman has shapely hips. She is wearing over-the-knee white stockings.

Исходное изображение (Ref_20):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
The girl stuck her tongue to a frosty pole. The girl has large breasts. The girl is wearing a short skirt. The girl is wearing stockings that go above the knee.

Исходное изображение (Ref_22):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_23):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene into a modern private clinic reception area. Add a clean, bright, high-end medical interior with glossy white surfaces, soft ambient lighting, and subtle contemporary medical details. Position the woman from the original image standing naturally at the reception desk, fitting seamlessly into the expanded environment. Ensure she appears attractive, confident, and fully integrated into the same visual style, with matching perspective, shadows, and color temperature.

Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Исходное изображение (Ref_25):

Примеры расширения кадра (outpainting):

    

Исходное изображение (Ref_26):

Примеры расширения кадра (outpainting):

Промпт:

Extend the scene with a continuous background that matches the original colors, textures, lighting, and perspective.
Expand the frame downward and outward to show the character in full body while maintaining natural and realistic proportions and perfect blending at the edges.
She wears white stockings above her knees.

Исходное изображение (Ref_28):

Примеры расширения кадра (outpainting):

Промпт:

Extend the original image outward as one single continuous scene and add a small turtle crawling on the grass. The girl is looking at the turtle.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.
Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.
Integrate any added elements naturally into the same environment with matching scale, lighting, and style.

Исходное изображение (Ref_29):

Примеры расширения кадра (outpainting):

Промпт:

Add a teenage girl standing nearby, looking at the woman in the frame with great surprise. The girl's mouth is slightly open in astonishment.

Extend the original image outward as one single continuous scene.
Produce a unified photograph with one coherent background, one composition, and one camera viewpoint.

Continue the environment with consistent lighting, reflections, shadows, perspective, and color temperature.
Maintain seamless continuation of textures, surfaces, and background structures with perfect blending at the edges and invisible transitions.
Keep the original image fully preserved and unchanged.

Integrate all added elements naturally into the same environment with matching scale, lighting, and style.
Ensure that all characters stand on the same continuous ground plane, with aligned horizon and perspective lines.
Ensure that the heights, proportions, and spatial positions of all subjects are physically consistent, respecting real-world scale and distance.
Ensure that shadows, contact points with the floor, and footing surfaces match the original environment, without floating or misaligned elements.

Исходное изображение (Ref_30):

Примеры расширения кадра (outpainting):

Исходное изображение (Ref_32):

Примеры расширения кадра (outpainting):

7.11 Как добавлять большие области при Outpainting’е

Если нужно добавить большую область к маленькой картинке, то вариантов два:

1) добавлять области постепенно — понемногу с каждого края или по кругу для каждого края;

2) добавить всю область одновременно

При своей теоретической привлекательности первого варианта (модели проще додумывать небольшие фрагменты), на практике я получил следующий опыт:

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

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

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

7.12 Популярные проблемы при Outpainting

Самая большая попаболь при outpainting это полосы на стыке старой и новой области. Они могут быть хорошо видны на светлом однородном фоне. В этом случае можно попробовать увеличить (до разумных пределов) feathering, но это не всегда помогает.

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

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

Это наглядный пример демонстрирующий указанную проблему — outpainting был сделан в несколько стадий и вы можете видеть прямоугольники с другим оттенкам цвета которые появились при каждом расширении кадра:

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

Такая же проблема иногда возникает во Flux.1 при использовании вертикальных картинок для сильного расширения — вы можете видеть, что общий цветовой тон изображения в центре отличается от других частей:

Непонятно с чем это связано — я пробовал использовать вырезанную от краёв область, но это ничего не изменило. При этом Qwen прекрасно расширяет эти же картинки.

7.13 Альтернативы Outpainting. Когда вместо Outpainting лучше использовать другой вариант I2I

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

Если вам нужно добавить человека в определённой позе, то к этому на этапе генерации персонажей нужно ещё подключать и ControlNet, IP-Adapter и IP-Control. Об этом будет рассказано в ближайших главах.

Смотрите продолжение: 8. Замена, удаление и добавление объектов на изображение с помощью ИИ — редактирование по маске (inpainting)

Рекомендуется Вам:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *