Batch Crop From Mask Advanced(BatchCropFromMaskAdvanced)
Этот узел принимает изображение (IMAGE) и маску (MASK) в качестве входных данных, определяя область обрезки путем вычисления границ ненулевых пикселей в маске.
Batch Crop From Mask Advanced
Узел Batch Crop From Mask Advanced принимает на вход изображения (IMAGE) и маски (MASK) и определяет область обрезки путем вычисления границ ненулевых пикселей в маске.
Batch Crop From Mask Advanced — это продвинутый узел для обрезки изображений, который может автоматически определять и пакетно вырезать целевые области из исходных изображений на основе предоставленных масок (Mask). Его основная функция — точное извлечение интересующих частей, определённых масками, из набора изображений, с выводом обрезанных изображений и масок, а также предоставлением соответствующей информации об ограничивающих рамках (bounding boxes).
Функциональность узла
Этот узел принимает на вход изображения (IMAGE) и маски (MASK) и определяет область обрезки путём вычисления ограничивающей рамки ненулевых пикселей в маске. Он поддерживает пакетную обработку и включает механизм сглаживания ограничивающих рамок. Параметр bbox_smooth_alpha позволяет регулировать плавность перехода между положением и размером ограничивающей рамки текущего кадра и предыдущего, что очень полезно для поддержания стабильности обрезки при обработке видео или последовательностей изображений. Кроме того, параметр crop_size_mult позволяет пользователю пропорционально увеличивать область обрезки, обеспечивая полное включение целевого объекта.
Описание параметров узла - Batch Crop From Mask Advanced
Входные соединения (Inputs)
| Имя параметра | Тип данных | Обязательный | Значение по умолчанию | Диапазон значений/Опции | Описание |
|---|---|---|---|---|---|
original_images | IMAGE | Да | - | - | original_images (входной параметр): Исходные изображения, из которых будут вырезаны целевые области. Эти изображения передаются на выход без изменений. |
masks | MASK | Да | - | - | masks (входной параметр): Входная последовательность масок, соответствующая исходным изображениям, используется для определения целевых областей, которые необходимо вырезать из каждого изображения. |
Параметры управления (Parameters)
| Имя параметра | Тип данных | Обязательный | Значение по умолчанию | Диапазон значений/Опции | Описание |
|---|---|---|---|---|---|
crop_size_mult | FLOAT | Да | 1.0 | 0.0 - 10.0 (шаг: 0.01) | crop_size_mult (входной параметр): Множитель размера обрезки, используется для пропорционального увеличения исходной ограничивающей рамки, вычисленной на основе маски. Диапазон от 0.0 до 10.0, шаг 0.01. |
bbox_smooth_alpha | FLOAT | Да | 0.5 | 0.0 - 1.0 (шаг: 0.01) | bbox_smooth_alpha (входной параметр): Коэффициент сглаживания ограничивающей рамки, используется для сглаживания изменений положения и размера ограничивающей рамки между последовательными кадрами изображения. Диапазон от 0.0 до 1.0, шаг 0.01. |
Выходные данные (Output)
| Имя параметра | Тип данных | Описание |
|---|---|---|
| original_images | IMAGE | original_images (выходной параметр): Исходные входные изображения выводятся без изменений для удобства соединения в рабочем процессе. |
| cropped_images | IMAGE | cropped_images (выходной параметр): Вывод изображений, обрезанных в соответствии с каждой маской. |
| cropped_masks | MASK | Маски, обрезанные по той же области. |
| combined_crop_image | IMAGE | combined_crop_image (выходной параметр): Вывод единого изображения, полученного путём объединения всех обрезанных изображений. |
| combined_crop_masks | MASK | combined_crop_masks (выходной параметр): Вывод единой маски, полученной путём объединения всех обрезанных масок. |
| bboxes | BBOX | bboxes (выходной параметр): Вывод списка координат ограничивающих рамок, вычисленных для каждого входного изображения. |
| combined_bounding_box | BBOX | combined_bounding_box (выходной параметр): Вывод общей ограничивающей рамки, которая охватывает все отдельные ограничивающие рамки. |
| bbox_width | INT | bbox_width (выходной параметр): Вывод значения ширины combined_bounding_box. |
| bbox_height | INT | bbox_height (выходной параметр): Вывод значения высоты combined_bounding_box. |
Сценарии использования
В практических приложениях этот узел часто используется в рабочих процессах, где требуется извлечь определённый объект из серии изображений для последующей обработки. Например, при создании анимации персонажей или демонстрации продукта можно сначала использовать модель сегментации для создания маски целевого объекта, а затем передать исходные изображения и маски в этот узел, чтобы получить набор обрезанных изображений, содержащих только этот объект и имеющих единый размер. Эти изображения затем можно легко передать в другие узлы для перерисовки, стилизации или композитинга.
Важные замечания
Обратите внимание, что размеры пакетов входных изображений и масок должны совпадать. Если маска полностью пуста (т.е. не содержит ненулевых пикселей), узел вернёт пустую область обрезки. Параметр сглаживания оказывает заметный эффект только при обработке последовательных кадров (например, видео), для одиночных или неупорядоченных изображений его влияние ограничено.
Ссылка на исходный код узла Batch Crop From Mask Advanced
Узел Batch Crop From Mask Advanced взят из пакета узлов ComfyUI-KJNodes.
Комментарии
Войдите через GitHub, чтобы участвовать в обсуждении.