Human Segmentation
Mask people, clothes, or faces automatically
- image
- image
- mask
- bbox
Point it at an image of a person and it hands back a mask of exactly the part you asked for - the whole body, just the clothes, just the hair, just the face, individual limbs. No brush, no manual masking. It runs a purpose-trained human-parsing model that already knows what a person is made of, so you get a clean, semantically-correct mask in one node.
The clothes and body-parts models here are built on the ComfyUI_Human_Parts work (metal3d); Easy-Use bundles several parsing models behind one interface.
Why you'd reach for it
Masking is the gateway to half the interesting workflows, and masking humans by hand is tedious. This automates the common asks:
- Change the outfit. Mask the clothing, inpaint something new, leave the person untouched.
- Swap or clean the background. Mask the whole person, invert, and you've isolated the background for replacement or removal.
- Targeted fixes. Mask just the face or just the hair to detail or recolor one region without disturbing the rest.
It's the "select the person" step that feeds inpainting, IP-Adapter regional conditioning, background compositing, and anything else that needs to treat a human (or one part of them) separately from the scene.
The inputs and outputs
image(IMAGE) - the picture to segment.method- which parsing model to run, and this is the main decision. The choices target different jobs:selfie_multiclass_256x256andhuman_parts (deeplabv3p)for broad body/person parsing,human_parsing_lipfor detailed body-part labels,segformer_b3_clothesandsegformer_b3_fashionfor garment segmentation, andface_parsingfor facial regions. Pick the model that matches what you're trying to isolate.mask_components- which of the selected model's parts to fold into the output mask. This is how you go from "the model can see 20 parts" to "give me a mask of these ones" - e.g. select just the upper-body clothing, or hair plus face.confidence(default 0.4) - the detection threshold. Raise it for a tighter, more conservative mask; lower it if parts are being missed.crop_multi- an expansion/crop factor around the detected region.
Outputs: image (the segmented result), mask (the actual mask you'll feed to inpainting or compositing), and bbox (the bounding box of the detected region).
Installing it
ComfyUI Manager: search ComfyUI Easy Use, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/yolain/ComfyUI-Easy-Use
then install the requirements (install.bat on Windows, else pip install -r ComfyUI-Easy-Use/requirements.txt) and restart.
Common issues
- First run stalls while it downloads a model. Each
methodhas its own segmentation model, and Easy-Use fetches it on first use - so the initial run of a given method can hang for a bit while it pulls the weights. Watch the console; a network hiccup mid-download leaves a broken file that you may need to clear and re-fetch. - The mask grabs the wrong parts. That's the
methodplusmask_componentscombination - the model has to actually label the region you want. A clothes model won't give you a clean face mask;face_parsingwill. Match the model to the target. - Ragged edges or missed limbs. Nudge
confidencedown to catch more, or up to trim noise, and usecrop_multito pad the region slightly before you inpaint into it. The pack has shipped fixes for this node more than once, so if it errors outright, update Easy-Use first.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| method | COMBO | 6 options: selfie_multiclass_256x256, human_parsing_lip, human_parts (deeplabv3p), segformer_b3_clothes, segformer_b3_fashion, face_parsing | |
| confidence | FLOAT | 0.400.05–0.95 | — |
| crop_multi | FLOAT | 0.0000–10 | — |
| mask_components | COMBO | 1 options: [object Object] |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| mask | MASK | — |
| bbox | BBOX | — |