KJNodes/imagegenerated

Cut And Drag On Path(CutAndDragOnPath)

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

Cut And Drag On Path

image
mask
bg_image
image
mask
coordinates
STRING
frame_width
512
frame_height
512
inpaint
KJNodes

Узел Cut And Drag On Path сначала анализирует входную строку с координатами пути, затем точно определяет границы области изображения, покрытой маской, и вырезает её.

Cut And Drag On Path — это инструмент обработки изображений, который вырезает область, выбранную маской на изображении, и перемещает её вдоль определённого пользователем пути. Узел в основном используется для создания динамических эффектов, например, для скольжения или парения объекта по определённой траектории в кадре. Если включена функция восстановления (inpaint), он также может интеллектуально заполнять пустые области, оставшиеся после вырезания.

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

Узел сначала анализирует входную строку с координатами пути, затем точно определяет границы области изображения, покрытой маской, и вырезает её. Вырезанный фрагмент изображения перемещается и компонуется на холсте заданного размера в соответствии с последовательностью координат. Техническая суть заключается в анализе координат, вырезании области и перераспределении позиций. Поддерживаются стандартные форматы тензоров IMAGE и MASK, а также опциональное использование фонового изображения или встроенного алгоритма восстановления для обработки фона.

Описание параметров узла - Cut And Drag On Path

Входные соединения (Inputs)

Название параметраТип данныхОбязательныйЗначение по умолчаниюДиапазон/ОпцииОписание
imageIMAGEДа--Входное изображение, из которого будет вырезана область маски и перемещена по пути.
maskMASKДа--Маска, определяющая область для вырезания из изображения. Учитываются только ненулевые пиксели.
bg_imageIMAGEНет--Необязательное фоновое изображение. Если указано, будет использоваться для заполнения пустых областей вместо алгоритма восстановления.

Параметры управления (Parameters)

Название параметраТип данныхОбязательныйЗначение по умолчаниюДиапазон/ОпцииОписание
coordinatesSTRINGДа--Строка, задающая последовательность координат для пути перемещения. Должна быть JSON-массивом определённого формата.
frame_widthINTДа51216 - 4096 (шаг: 1)Задаёт ширину выходного изображения. Диапазон от 16 до 4096, шаг 1.
frame_heightINTДа51216 - 4096 (шаг: 1)Задаёт высоту выходного изображения. Диапазон от 16 до 4096, шаг 1.
inpaintBOOLEANДаTrue-Логический переключатель, управляющий выполнением интеллектуального восстановления для заполнения пустых областей, оставшихся после вырезания. При включении и отсутствии фонового изображения область вырезания заполняется с помощью алгоритма cv2 TELEA.

Выходные данные (Output)

Название параметраТип данныхОписание
imageIMAGEОбработанная последовательность выходных изображений.
maskMASKПоследовательность масок, преобразованная по тому же пути.

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

Этот узел можно использовать при создании простой анимации или спецэффектов. Например, в рабочем процессе обработки видеокадров: сначала с помощью SAM или ручного рисования получается маска объекта, затем через другие узлы генерируется строка координат пути движения, которая, наконец, подаётся на этот узел. В результате будет выведена последовательность изображений, где объект движется по пути, для последующего синтеза кадров.

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

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

Ссылка на исходный код узла Cut And Drag On Path

Узел Cut And Drag On Path из пакета узлов ComfyUI-KJNodes.

Комментарии

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

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