KJNodes/maskinggenerated

Split Bboxes(SplitBboxes)

이 노드는 BBOX 타입의 리스트를 입력으로 받고 정수 인덱스 값을 받아들입니다

Split Bboxes

bboxes
bboxes_a
bboxes_b
index
0
KJNodes

Split Bboxes 노드는 BBOX 타입의 리스트를 입력받고 정수 인덱스 값을 받아들이는 노드입니다.

Split Bboxes 노드는 바운딩 박스 리스트를 처리하는 도구 노드입니다. 핵심 기능은 지정된 인덱스 위치를 기준으로 입력된 바운딩 박스 리스트를 앞뒤 두 개의 독립적인 하위 리스트로 분할하는 것입니다. 이 작업은 간단하고 직관적이며, 워크플로에서 감지된 객체를 그룹화하거나 선택적으로 처리하는 데 유용합니다.

노드 기능

이 노드는 BBOX 타입의 리스트를 입력받고 정수 인덱스 값을 받아들입니다. 내부적으로 Python의 리스트 슬라이싱 연산을 사용하여 원본 리스트를 인덱스 위치에서 두 부분으로 나눕니다: 인덱스 이전(인덱스 위치는 제외)의 요소들은 첫 번째 출력 리스트를 구성하고, 인덱스부터 이후의 요소들은 두 번째 출력 리스트를 구성합니다. 임의 길이의 BBOX 리스트를 지원하며, 인덱스 값은 리스트의 유효한 범위 내에 있어야 합니다.

노드 파라미터 설명 - Split Bboxes

연결 입력 (Inputs)

파라미터 이름데이터 타입필수기본값범위/옵션설명
bboxesBBOX--bboxes (입력 파라미터): 입력된 바운딩 박스 리스트, 분할될 모든 바운딩 박스 정보를 포함합니다.

컨트롤 파라미터 (Parameters)

파라미터 이름데이터 타입필수기본값범위/옵션설명
indexINT00 - 99999999 (간격: 1)index (입력 파라미터): 분할 위치의 인덱스로, 0부터 99999999까지 범위이며 간격은 1입니다. 리스트는 이 인덱스에서 분할됩니다.

출력 (Output)

파라미터 이름데이터 타입설명
bboxes_aBBOXbboxes_a (출력 파라미터): 분할 후 얻은 첫 번째 하위 리스트로, 원본 리스트의 인덱스 이전에 위치한 모든 바운딩 박스를 포함합니다.
bboxes_bBBOXbboxes_b (출력 파라미터): 분할 후 얻은 두 번째 하위 리스트로, 원본 리스트의 인덱스부터 끝까지의 모든 바운딩 박스를 포함합니다.

사용 시나리오

구체적인 응용에서, 이 노드는 객체 감지 모델(예: YOLO)의 출력 뒤에 연결할 수 있습니다. 예를 들어, 여러 사람과 객체가 감지되었을 때, 이 노드를 사용하여 인덱스를 설정함으로써 '사람'과 '배경 객체'의 바운딩 박스를 분리한 후, 각각 다른 후속 노드로 전달하여 차별화된 처리를 할 수 있습니다. 예를 들어 사람에게는 고해상도 복원을, 객체에게는 스타일화를 적용하는 등의 작업이 가능합니다.

주의사항

사용 시 주의할 점은, 제공된 인덱스 값이 입력 리스트의 길이보다 크거나 같으면 첫 번째 출력 리스트가 모든 요소를 포함하게 되고, 두 번째 출력 리스트는 빈 리스트가 됩니다. 반대로, 인덱스가 0이면 첫 번째 리스트는 비어 있고 두 번째 리스트가 모든 요소를 포함하게 됩니다.

Split Bboxes 노드 소스 코드 링크

Split Bboxes 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.

댓글

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

댓글을 불러오는 중…