KJNodes/imagegenerated

배치에서 무작위 이미지(RandomImageFromBatch)

선택한 인덱스 범위 내에서 이미지 또는 마스크 배치에서 프레임 시퀀스를 선택합니다. 무작위성=0일 때는 범위 내에서 균일한 간격으로 선택되고, 무작위성=1일 때는 비복원 균등 무작위 추출되며, 중간 값은 선형적으로 혼합됩니다. 출력은 항상 배치 인덱스별로 정렬됩니다. 네거티브 인덱스는 끝에서부터 셉니다(-1 = 마지막).

Random Image From Batch

input
output
start_index
0
end_index
-1
num_frames
1
randomness
1.00
min_distance
0
max_distance
0
seed
0
KJNodes

설명

배치에서 무작위 이미지 노드(클래스 RandomImageFromBatch)는 선택한 인덱스 범위 내에서 이미지 또는 마스크 배치에서 프레임 시퀀스를 선택합니다. randomness = 0일 때는 범위 내에서 균일한 간격으로 선택되고, randomness = 1일 때는 비복원 균등 무작위 추출되며, 중간 값은 선형적으로 혼합됩니다. 출력은 항상 배치 인덱스별로 정렬됩니다. 네거티브 인덱스는 끝에서부터 셉니다(-1 = 마지막 프레임).

이 노드는 더 큰 배치에서 제어 가능하고 재현 가능한 프레임 부분 집합을 생성하는 데 유용합니다: 예를 들어, 드문 스킵 프레임 시퀀스를 만들거나 선택된 프레임 사이의 최소 또는 최대 간격으로 무작위 샘플을 선택하는 데 사용할 수 있습니다.

입력

이름유형기본값최소최대도구 설명 / 동작
inputMATCHTYPE샘플링할 이미지 또는 마스크 배치입니다.
start_index정수0-40964096샘플링 범위의 포함 시작점입니다. 네거티브 값은 끝에서부터 셉니다(예: -1은 마지막 프레임).
end_index정수-1-40964096샘플링 범위의 포함 끝입니다. -1은 마지막 프레임을 의미합니다.
num_frames정수114096범위에서 선택할 프레임 수입니다. 범위의 프레임 수보다 작거나 같아야 합니다.
randomness실수10.01.0균일한 간격(0)과 비복원 균등 무작위(1) 사이의 혼합입니다. 중간 값은 지터링된 균일 간격을 생성합니다.
min_distance정수004096연속적인 선택 사이의 최소 간격(프레임 단위)입니다. 0 = 최소 없음. 선택은 이 제약 조건을 만족시키기 위해 앞으로 밀려납니다. 나중 선택은 범위 끝에 고정될 수 있습니다.
max_distance정수004096연속적인 선택 사이의 최대 간격(프레임 단위)입니다. 0 = 최대 없음. 선택은 이를 만족시키기 위해 당겨지며, 시퀀스가 시작 쪽으로 압축될 수 있습니다.
seed정수002^64-1재현 가능한 샘플링을 위한 무작위 시드입니다. randomness0일 때 무시됩니다.

출력

유형설명
MATCHTYPE배치 인덱스별로 정렬된 선택된 프레임(입력과 동일한 유형)입니다.

사용 참고 사항

  • 범위 정의: start_indexend_index는 포함 범위를 정의합니다. start_index > end_index이면 범위가 비어 있고, 프레임이 선택되지 않습니다(출력은 빈 배치가 됩니다). 네거티브 인덱스를 사용하여 마지막 프레임을 편리하게 참조하세요(예: 마지막 프레임의 경우 -1).
  • 프레임 수: num_frames는 범위의 프레임 수를 초과해서는 안 됩니다. 그렇지 않으면 동작이 정의되지 않습니다(노드가 고정하거나 오류를 발생시킬 수 있습니다. 런타임 메시지를 참조하세요).
  • 무작위성 동작:
    • 0.0 → 프레임이 범위 전체에 걸쳐 동일한 간격(선형 간격)으로 선택됩니다. 첫 번째 선택은 시작 부분에, 마지막 선택은 끝 부분에 있습니다.
    • 1.0 → 각 선택은 비복원 균등 무작위(셔플)입니다. 주어진 seed로 결과를 재현할 수 있습니다.
    • 0.5 → 프레임이 균일한 간격의 위치에 배치된 다음, 각 위치가 간격에 비례하는 무작위 오프셋으로 지터링됩니다(혼합).
  • 거리 제약 조건 (min_distance, max_distance):
    • 이 제약 조건은 초기 선택(무작위 또는 균일 간격) 후에 적용됩니다. 제약 조건이 num_frames 및 범위 길이와 충돌하는 경우 노드는 선택을 가능한 한 가깝게 조정하고 범위 경계에 고정합니다.
    • min_distance > 0이면 선택이 분산되도록 합니다. 노드는 나중 선택을 앞으로 밀어냅니다. 마지막 선택이 원래 end_index보다 늦을 수 있습니까? (실제로 설명에는 "선택이 앞으로 밀려나 이를 만족시키고, 나중 선택이 범위 끝에 고정될 수 있습니다"라고 되어 있습니다. 이는 선택이 범위를 넘지 않는다는 의미입니다.)
    • max_distance > 0이면 선택이 가깝게 유지되도록 합니다. 노드는 선택을 시작 쪽으로 당깁니다. 범위가 너무 짧으면 간격이 더 줄어들 수 있습니다.
    • 둘 다 0으로 설정하면(기본값) 거리 제약 조건이 완전히 비활성화됩니다.
  • 시드: seedrandomness > 0일 때만 사용됩니다. 실행 간에 결정론적 결과를 얻으려면 동일한 시드와 무작위성 값을 유지하세요.
  • 출력 정렬: 선택 방식(무작위 또는 순차)에 관계없이 반환된 배치는 항상 프레임 인덱스별로 정렬되므로 이후 노드가 프레임을 순서대로 수신합니다.

예제 사용 사례

  • 저해상도 미리보기 생성: randomness=0으로 설정하고 범위 길이에 적절한 num_frames를 설정하여 N 프레임마다 선택합니다.
  • 학습용 프레임 무작위 샘플링: randomness=1과 큰 num_frames를 설정하고, 필요에 따라 min_distance를 설정하여 거의 동일한 프레임을 피합니다.
  • 지터를 포함한 균일 간격: randomness=0.3으로 설정하여 거칠고 규칙적인 패턴을 깨뜨리면서도 대략 일정한 템포를 유지합니다.

댓글

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

댓글을 불러오는 중…
배치에서 무작위 이미지 (RandomImageFromBatch) - ComfyUI-KJNodes | ComfyUI Wiki