KJNodes/imagegenerated

Преобразование изображения KJ(ImageTransformKJ)

Интерактивный узел преобразования изображения: обрезка, изменение размера, добавление отступов и поворот. Подключите вход изображения: предпросмотр появляется автоматически. Обрезка: Нажмите и перетащите, чтобы нарисовать область обрезки. Перетащите внутрь, чтобы переместить, перетащите края/углы для изменения размера. Правой кнопкой мыши — удалить область. Ctrl — привязка к сетке. Shift + изменение размера — сохранение соотношения сторон. Alt + изменение размера — симметричное изменение размера. Отступы: Shift + перетащите для настройки позиции отступа. Кнопка Поворот включает крест поворота (перетащите для поворота; правой кнопкой — сброс). Установите target_width/height для изменения размера вывода (0 = оставить оригинал). Используйте keep_proportion для управления тем, как изображение вписывается в цель. Используйте extra_padding для добавления отступов с цветом или заполнением краев (clamp/repeat/mirror).

Image Transform KJ

image
mask
keep_proportion
extra_padding
invert_crop
cropped
cropped_mask
bbox
bbox_mask
width
height
target_width
0
target_height
0
upscale_method
lanczos
divisible_by
2
bboxes
STRING
pad_x
0.50
pad_y
0.50
edge_mode
clamp
pad_x
0.50
pad_y
0.50
width_mult
1.00
height_mult
1.00
edge_mode
clamp
edge_mode
clamp
KJNodes

Описание

Узел Image Transform KJ предоставляет интерактивный интерфейс в предпросмотре для обрезки, изменения размера, добавления отступов и поворота изображений (и опциональных масок).
Подключите вход изображения, и предпросмотр появится автоматически, позволяя рисовать области обрезки, настраивать расположение отступов и применять поворот непосредственно в предпросмотре.

Обрезка:

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

Отступы:

  • Удерживайте Shift и перетащите содержимое внутри предпросмотра, чтобы настроить позицию отступа (эквивалентно изменению pad_x и pad_y).

Поворот:

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

Входы

ИмяТипПо умолчаниюПодсказка / Описание
imageIMAGE / MATCHTYPEИзображение (или тензор, совместимый с маской) для преобразования.
maskMASKoptionalОпциональная маска для преобразования вместе с изображением.
target_widthINT0Целевая ширина вывода. 0 = сохранить оригинальную ширину.
target_heightINT0Целевая высота вывода. 0 = сохранить оригинальную высоту.
upscale_methodCOMBOlanczosМетод интерполяции для изменения размера: nearest-exact, bilinear, area, bicubic, lanczos.
keep_proportionDYNAMICCOMBOУправляет тем, как содержимое вписывается в целевые размеры (например, сохранение соотношения сторон, растяжение и т.д.). Параметры зависят от бэкенда: настройте в соответствии с вашим рабочим процессом.
divisible_byINT2Гарантирует, что размеры вывода делятся на это значение (0 = без ограничений; макс. 512).
extra_paddingDYNAMICCOMBOВключает дополнительные отступы вокруг обрезанного содержимого. Когда активно, используются pad_x, pad_y и edge_mode.
invert_cropDYNAMICCOMBOКогда включено, область обрезки инвертируется (область вне обрезки сохраняется/обрабатывается).
bboxesSTRING""Опциональные существующие границы (например, от узла детекции) для применения или изменения.
pad_xFLOAT0.5Горизонтальное положение содержимого внутри области с отступом (0 = слева, 0.5 = по центру, 1 = справа). Также настраивается интерактивно с помощью Shift+перетаскивания содержимого.
pad_yFLOAT0.5Вертикальное положение содержимого внутри области с отступом (0 = сверху, 0.5 = по центру, 1 = снизу). Также настраивается интерактивно с помощью Shift+перетаскивания содержимого.
edge_modeCOMBOclampКак заполнять области отступов: clamp (расширение краевых пикселей), repeat (замостить изображение), mirror (замостить с зеркалированием).
width_multFLOAT1.0Умножить ширину обрезки на этот коэффициент. Диапазон [0.01, 16], шаг 0.05.
height_multFLOAT1.0Умножить высоту обрезки на этот коэффициент. Диапазон [0.01, 16], шаг 0.05.

Примечание: Интерактивный предпросмотр обновляется в реальном времени. Изменения pad_x, pad_y, width_mult, height_mult и поворота отражаются немедленно.

Выходы

Выход #ТипОписание
1IMAGE (того же типа, что и вход)Преобразованное изображение после обрезки, изменения размера, отступа и поворота.
2MASKПреобразованная маска (если был предоставлен вход маски; в противном случае пустая маска).
3BBOXКоординаты границ (Bounding Box) примененной области обрезки (формат зависит от бэкенда, обычно [x1, y1, x2, y2] или аналогично).
4MASKМаска, соответствующая обрезанной области (полезна для композиционирования или дальнейшей обработки).
5INTШирина итоговой области обрезки.
6INTВысота итоговой области обрезки.

Замечания по использованию

  • Интерактивная обрезка является основным рекомендуемым рабочим процессом: предпросмотр позволяет интуитивно выбирать области обрезки. Вход bboxes можно использовать для программного предоставления или переопределения области.
  • Поведение изменения размера: Когда и target_width, и target_height равны 0, выход сохраняет размер обрезки/отступа без дополнительного увеличения разрешения. Чтобы изменить размер до конкретного разрешения, установите одну или обе цели и выберите upscale_method. Опция keep_proportion определяет, будет ли изображение растянуто, обрезано для вписывания или дополнено отступами для заполнения цели.
  • Отступы применяются только когда extra_padding активен. Используйте pad_x / pad_y для позиционирования содержимого, а edge_mode для управления заполнением области отступа.
  • Поворот применяется после обрезки и до изменения размера/отступов. Крест поворота в предпросмотре дает точный контроль; поворот хранится внутренне и может быть настроен для каждого сеанса.
  • Параметр divisible_by полезен для выравнивания размеров до дружественных модели размеров (например, кратных 8, 16, 32). Установка значения 0 отключает ограничение.
  • Привязка координат: Удерживайте Ctrl при рисовании или перемещении прямоугольника обрезки, чтобы привязать его положение и размер к сетке (шаг сетки определяется внутренним шагом узла). Это помогает выравнивать обрезки по регулярной сетке.

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

Комментарии

Войдите через GitHub, чтобы участвовать в обсуждении.

Загрузка комментариев…
Преобразование изображения KJ (ImageTransformKJ) - ComfyUI-KJNodes | ComfyUI Wiki