Nodes/comfyui_face_parsing/ImageListSelect(FaceParsing)
ComfyUI Node

ImageListSelect(FaceParsing)

Pull one image out of a batch by index

By Ryuukeisyou·Created 3 years ago·Updated about a year ago· 193
ImageListSelect(FaceParsing)
  • images
  • IMAGE
index0

A plain, small utility: given a batch or list of images, grab the one at a specific index. In this pack it shows up most often right after ImageCropWithBBoxList, which crops every detected face into one combined output - if you then need to work on one specific face individually (different processing settings, a preview of just that one, whatever), this is how you pull it back out.

The inputs that matter

  • images (IMAGE) - required, the batch or list you're selecting from.
  • index (INT, default 0, min 0) - which image to pull, zero-indexed.

The output is a single IMAGE - just the one at the given index.

Where it fits

Think of it as the image-side equivalent of BBoxListItemSelect (which does the same job for a list of boxes). The two often get used together in a per-face loop: BBoxListItemSelect pulls face N's box, ImageListSelect pulls face N's already-cropped image, or you use one after ImageCropWithBBoxList to split a batch crop back into individual faces for separate handling.

Installing it

Comes with the whole pack:

  • ComfyUI Manager - search "comfyui_face_parsing", install, restart.
  • Manual - cd ComfyUI/custom_nodes && git clone https://github.com/Ryuukeisyou/comfyui_face_parsing.git, restart ComfyUI.

No dependencies beyond the pack itself.

Common issues

The only real failure mode is asking for an index that doesn't exist in the batch - index 3 when only two images came through. There's no bounds protection built in, so if your workflow needs to handle a variable number of detected faces per input image, check the actual count (the count output from BBoxDetect is the natural source of truth) before assuming a given index is valid, rather than hardcoding an index that happens to work on your test image but breaks on the next one.

It's also worth being deliberate about when you actually need this node versus just letting a batch flow through as-is. If every face in the image is getting the same treatment - same mask settings, same smoothing amount - there's no reason to split them out at all; just run FaceParse and the rest of the chain on the whole batch together and let it composite back in one pass. Reach for ImageListSelect specifically when face-by-face decisions genuinely differ, not as a default first move in every multi-face workflow.

Categoryface_parsing

Inputs (2)

NameTypeDefaultDescription
imagesIMAGE
indexINT0

Outputs (1)

NameTypeDescription
IMAGEIMAGE