Split Bboxes(SplitBboxes)
このノードは、BBOXタイプのリストを入力として受け取り、整数のインデックス値を受け入れます。
Split Bboxes
Split Bboxes ノードは、BBOX タイプのリストを入力として受け取り、整数のインデックス値を受け入れます。
Split Bboxes ノードは、バウンディングボックスのリストを処理するためのユーティリティノードです。その中核機能は、指定されたインデックス位置に基づいて、入力されたバウンディングボックスのリストを前後の2つの独立したサブリストに分割することです。この操作はシンプルで直接的であり、ワークフロー内で検出されたオブジェクトをグループ分けしたり、選択的に処理したりするのに便利です。
ノード機能
このノードは、BBOX タイプのリストを入力として受け取り、整数のインデックス値を受け入れます。内部では、Pythonのリストスライス操作を使用して、元のリストをインデックスの位置で2つに分割します。インデックスの前(インデックス位置を含まない)の要素が最初の出力リストを構成し、インデックス以降の要素が2番目の出力リストを構成します。任意の長さのBBOXリストをサポートし、インデックス値はリストの有効な範囲内で操作する必要があります。
ノードパラメータ説明 - Split Bboxes
接続入力 (Inputs)
| パラメータ名 | データ型 | 必須 | デフォルト値 | 範囲/オプション | 説明 |
|---|---|---|---|---|---|
bboxes | BBOX | はい | - | - | bboxes(入力パラメータ):分割対象のすべてのバウンディングボックス情報を含む、入力バウンディングボックスリスト。 |
コントロールパラメータ (Parameters)
| パラメータ名 | データ型 | 必須 | デフォルト値 | 範囲/オプション | 説明 |
|---|---|---|---|---|---|
index | INT | はい | 0 | 0 - 99999999 (ステップ: 1) | index(入力パラメータ):分割位置のインデックス。範囲は0から99999999、ステップは1。リストはこのインデックスで分割されます。 |
出力 (Output)
| パラメータ名 | データ型 | 説明 |
|---|---|---|
| bboxes_a | BBOX | bboxes_a(出力パラメータ):分割後に得られる最初のサブリスト。元のリストのインデックスより前のすべてのバウンディングボックスを含みます。 |
| bboxes_b | BBOX | bboxes_b(出力パラメータ):分割後に得られる2番目のサブリスト。元のリストのインデックスから末尾までのすべてのバウンディングボックスを含みます。 |
使用シナリオ
具体的なアプリケーションでは、物体検出モデル(例:YOLO)の出力後にこのノードを接続できます。例えば、複数の人物や物体を検出した場合、このノードを使用してインデックスを設定することで、「人物」と「背景物体」のバウンディングボックスを分離し、その後、それぞれを異なる後続ノードに渡して、人物には高精細修復を、物体にはスタイル化を行うといった差異化処理が可能です。
注意事項
使用時には、指定されたインデックス値が入力リストの長さ以上の場合、最初の出力リストにはすべての要素が含まれ、2番目の出力リストは空のリストになることに注意してください。逆に、インデックスが0の場合、最初のリストは空になり、2番目のリストにはすべての要素が含まれます。
Split Bboxes ノードソースコードリンク
Split Bboxes ノードは ComfyUI-KJNodes ノードパッケージに含まれています。
コメント
GitHubでサインインしてディスカッションに参加しましょう。