KJNodes/imagegenerated

Image Crop By Mask(ImageCropByMask)

Этот узел принимает два типа тензорных входов: `IMAGE` и `MASK`

Image Crop By Mask

image
mask
image
KJNodes

Узел Image Crop By Mask принимает на вход тензоры типов IMAGE и MASK.

Узел Image Crop By Mask - это инструмент для обработки изображений, который автоматически обрезает входное изображение на основе предоставленной пользователем маски (Mask). Его основная функция заключается в определении значимой области на маске, использовании ограничивающего прямоугольника (bounding box) этой области в качестве границ и точном обрезании ненужных частей изображения, сохраняя только содержимое, соответствующее маске.

Функциональность узла

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

Описание параметров узла - Image Crop By Mask

Входы (Inputs)

Имя параметраТип данныхОбязательныйЗначение по умолчаниюДиапазон/ОпцииОписание
imageIMAGEДа--Изображение (входной параметр): исходное изображение для обрезки.
maskMASKДа--Маска (входной параметр): маска, определяющая область для обрезки. Тип — тензор MASK, значение по умолчанию отсутствует, ограничений по диапазону нет.

Выходы (Outputs)

Имя параметраТип данныхОписание
imageIMAGEИзображение (выходной параметр): результат обрезки изображения.

Сценарии использования

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

Важные замечания

Узел требует совместимости входного изображения (image) и маски (mask) по размеру пакета (batch dimension). Если размеры пакетов не совпадают, узел будет использовать последнюю маску через индекс min(b, mask.shape[0]-1), что может быть нежелательным поведением в некоторых случаях. При использовании обратите внимание на выравнивание данных.

Ссылка на исходный код узла Image Crop By Mask

Узел Image Crop By Mask взят из пакета узлов ComfyUI-KJNodes.

Комментарии

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

Загрузка комментариев…