C20: Осваиваем преобразование image-to-image в ComfyUI

Введение

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



Что такое преобразование image-to-image?

Преобразование image-to-image использует вариационный автокодировщик (VAE) для кодирования изображения в латентное пространство, где изменения можно вносить с помощью методов диффузии. Затем латентное изображение декодируется обратно в пиксельное пространство, создавая новое изображение, отражающее внесённые изменения. Этот метод особенно полезен для таких задач, как перенос стиля, восстановление изображений и творческие изменения.


Настройка рабочего процесса в ComfyUI

Чтобы создать рабочий процесс image-to-image в ComfyUI, выполните следующие шаги:

Шаг 1. Загрузка изображения

  1. Добавьте Load Image Node:
    • Дважды щёлкните в интерфейсе ComfyUI и введите LOAD.
    • Выберите Load Image Node.
    • Нажмите, чтобы загрузить файл изображения.
    • Перейдите к нужному файлу изображения и нажмите Open. Изображение будет скопировано в папку входных данных ComfyUI.
  2. Проверьте расположение изображения:
    • Проверьте каталог установки ComfyUI в папке input.
    • Периодически удаляйте старые файлы, чтобы поддерживать порядок.

Шаг 2. Масштабирование изображения

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

  1. Добавьте Upscale Image Node:
    • Дважды щёлкните и введите UPSCALE.
    • Выберите Upscale Image Node.
    • Подключите этот узел между Load Image Node и VAE Encode Node.
  2. Задайте параметры разрешения:
    • Добавьте Resolution Selector Node.
    • Преобразуйте виджеты ширины и высоты во входы, щёлкнув по ним правой кнопкой мыши.
    • Укажите нужные значения ширины и высоты.

Шаг 3. Кодирование изображения в латентное пространство

  1. Добавьте VAE Encode Node:
    • Дважды щёлкните и введите VAE.
    • Выберите VAE Encode Node.
    • Подключите латентный выход этого узла к латентному входу изображения узла K-Sampler Node.
  2. Убедитесь, что контрольная точка модели предоставляет необходимую VAE.

Шаг 4. Настройка параметров сэмплера

Узел K-Sampler Node позволяет управлять ключевыми параметрами процесса диффузии:

  • Шаги: увеличьте число шагов для лучшего качества (например, 30 шагов).
  • CFG Scale: задайте шкалу Classifier-Free Guidance (например, 8.0), чтобы сбалансировать следование промпту и латентному изображению.
  • Тип сэмплера: используйте Euler для получения стабильных результатов.
  • Сила шумоподавления: настройте значение шумоподавления, чтобы контролировать, сколько шума добавляется и удаляется в процессе диффузии.

Что означают значения шумоподавления

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

  • 1.00: полностью заменяет исходное изображение сгенерированным содержимым. Это идеально подходит для создания совершенно новых изображений на основе стилевого промпта.
  • 0.5: уравновешивает исходное изображение и стилистические изменения. Это полезно для сохранения ключевых особенностей при внесении художественных изменений.
  • 0.2: минимально изменяет исходное изображение, обеспечивая высокую точность воспроизведения входного изображения и внося едва заметные стилистические улучшения.
  • 0.0: по сути воспроизводит исходное изображение, с незначительными отличиями из-за процессов кодирования и декодирования.

Примеры результатов

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

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

  • Шумоподавление 1.00: создано совершенно новое изображение.
  • Шумоподавление 0.5: создана живописная версия Pinnacles , но с небольшими отклонениями от исходной фотографии.
  • Шумоподавление 0.2: достигнуто близкое соответствие входному изображению при соблюдении стилевого промпта.
  • Шумоподавление 0.0: воспроизведена исходная фотография, хотя и слегка размытая из-за обработки в латентном пространстве.

Советы для достижения оптимальных результатов

  1. Выбор подходящего значения шумоподавления:
    • Для значительных преобразований: используйте значения, близкие к 1.00.
    • Для едва заметных изменений: используйте значения от 0.2 до 0.5.
    • Чтобы сохранить исходное изображение: используйте значения, близкие к 0.0.
  2. Уточнение промпта:
    • Чётко указывайте стилевые инструкции.
    • Избегайте инструкций, связанных с содержанием, если хотите, чтобы исходное изображение доминировало.
  3. Отслеживание смещения обучающих данных:
    • Имейте в виду, что обучающие наборы данных могут влиять на результат. Например, распространённые ракурсы в обучающих данных могут перекрывать уникальные особенности входного изображения.

Сравнение исходного и итогового изображений

После обработки изображения Pinnacles со значением шумоподавления 0.2 результат близко соответствовал исходной фотографии, при этом были внесены художественные улучшения. Это демонстрирует эффективность преобразования image-to-image для сочетания стилевых промптов с входными изображениями.


Заключение

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

2 thoughts on “C20: Mastering Image-to-Image Transformation in ComfyUI”

Оставить комментарий