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 노드는 이미지에서 마스크로 선택된 영역을 잘라내어 사용자가 정의한 경로를 따라 이동시킬 수 있는 이미지 처리 도구입니다. 이 노드는 주로 물체가 화면에서 특정 궤적을 따라 미끄러지거나 떠다니는 것과 같은 동적 효과를 생성하는 데 사용됩니다. 인페인팅 기능이 활성화된 경우, 잘라낸 영역에 남은 빈 공간을 지능적으로 채울 수도 있습니다.

노드 기능

노드는 먼저 입력된 경로 좌표 문자열을 파싱한 다음, 마스크가 덮는 이미지 영역의 경계를 정확히 인식하여 해당 부분을 잘라냅니다. 잘라낸 이미지 조각은 좌표 시퀀스에 따라 지정된 크기의 캔버스 위에서 변위되고 합성됩니다. 기술적 핵심은 좌표 파싱, 영역 자르기 및 위치 재매핑에 있으며, 표준 IMAGE 및 MASK 텐서 형식을 지원하고 배경 이미지 또는 내장 인페인팅 알고리즘을 선택적으로 사용하여 배경을 처리할 수 있습니다.

노드 파라미터 설명 - Cut And Drag On Path

연결 입력 (Inputs)

파라미터 이름데이터 타입필수기본값범위/옵션설명
imageIMAGE--마스크 영역이 잘려 경로를 따라 이동될 입력 이미지입니다.
maskMASK--이미지에서 잘라낼 영역을 정의하는 마스크입니다. 0이 아닌 픽셀만 고려됩니다.
bg_imageIMAGE아니오--선택적 배경 이미지입니다. 제공된 경우, 인페인팅 알고리즘 대신 이 이미지를 사용하여 빈 영역을 채웁니다.

컨트롤 파라미터 (Parameters)

파라미터 이름데이터 타입필수기본값범위/옵션설명
coordinatesSTRING--이동 경로를 정의하는 좌표 시퀀스 문자열입니다. 특정 형식의 JSON 배열이어야 합니다.
frame_widthINT51216 - 4096 (스텝: 1)출력 이미지의 너비를 설정합니다. 유효 범위는 16부터 4096까지이며, 스텝은 1입니다.
frame_heightINT51216 - 4096 (스텝: 1)출력 이미지의 높이를 설정합니다. 유효 범위는 16부터 4096까지이며, 스텝은 1입니다.
inpaintBOOLEANTrue-잘라낸 후 남은 빈 영역에 대해 지능적인 인페인팅 채우기를 수행할지 여부를 제어하는 논리값 전환입니다. 활성화되고 배경 이미지가 제공되지 않으면, 잘라낸 영역은 cv2 TELEA 알고리즘을 사용하여 채워집니다.

Output 출력

파라미터 이름데이터 타입설명
imageIMAGE처리된 출력 이미지 시퀀스입니다.
maskMASK동일한 경로로 변환된 마스크 시퀀스입니다.

사용 시나리오

간단한 애니메이션이나 특수 효과를 제작할 때 이 노드를 사용할 수 있습니다. 예를 들어, 비디오 프레임 처리 워크플로에서 SAM을 사용하거나 수동으로 그려서 물체의 마스크를 얻은 후, 다른 노드를 통해 운동 경로 좌표를 생성하고, 마지막으로 이 노드에 연결하면 해당 물체가 경로를 따라 이동하는 일련의 이미지 시퀀스를 출력하여 후속 프레임 합성에 사용할 수 있습니다.

주의사항

입력된 좌표 문자열은 특정 JSON 형식 요구 사항을 준수해야 하며, 그렇지 않으면 올바르게 파싱되지 않을 수 있습니다. 또한, 마스크 영역이 완전히 검정색(즉, 어떤 영역도 선택되지 않음)인 경우, 노드는 아무 처리도 수행하지 않고 원본 입력을 직접 반환합니다.

Cut And Drag On Path 노드 소스 코드 링크

Cut And Drag On Path 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.

댓글

GitHub로 로그인하고 토론에 참여하세요.

댓글을 불러오는 중…