Nodes/ComfyUI-Ultimate-Face-Fix/Load Face Fix Parser (SegFace)
ComfyUI Node

Load Face Fix Parser (SegFace)

The model that knows what a face is made of

By Merserk·Created about a month ago·Updated about a month ago· 19
Load Face Fix Parser (SegFace)
    • face_parser
    parser_model

    If the YOLO detector is the eyes of Ultimate Face Fix, the parser is the scalpel. Load Face Fix Parser (SegFace) loads a semantic face-parsing model and hands it out as the face_parser connection - the thing that decides exactly which pixels get re-rendered and which stay original.

    What SegFace does: it's a ConvNeXt-based semantic parser trained on CelebA-512, and it looks at a face crop and labels every pixel - skin, left eyebrow, right eyebrow, left eye, right eye, nose, mouth, lips, and so on. That per-pixel part map is what powers the mask_preset options in the fix and Process nodes: core_face (just the face parts), portrait_safe (adds ears and glasses), and head (adds hair). This is the difference between a mask that hugs the face's actual features and a rough geometry blob - and it's a big reason seams mostly disappear when the parser is connected.

    The node itself is a loader, so it's thin: a parser_model combo that lists files in ComfyUI/models/face_fix/parsers/, and one face_parser output of the custom FACE_FIX_PARSER type. Load it once and share it between the integrated fix node and the Process node - it's patched through ComfyUI's model patcher so it offloads properly instead of squatting in VRAM.

    It's optional, and that's the trap. The face_parser input's own tooltip spells out the fallback: "when omitted, SAM/landmark/geometry fallback masks are used." Those fallbacks work - the pack can build a decent mask from MediaPipe landmarks or a SAM box - but you're leaving the semantic part masks on the table, and the mask presets stop meaning what they say. For the full experience, connect it.

    The interesting install detail: the model ships as a source .pt from kartiknarayan/SegFace on HuggingFace, and the pack's setup script downloads it, verifies the SHA-256, converts it to the runtime segface_convnext_celeba_512.safetensors, and deletes the source to keep the folder clean. If you want the original kept around, run the prepare script with --keep-segface-source. The conversion is part of the shared install - ComfyUI Manager → search Ultimate Face Fix → Install, or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Merserk/ComfyUI-Ultimate-Face-Fix.git
    cd ComfyUI-Ultimate-Face-Fix
    pip install -r requirements.txt
    python scripts/prepare_models.py --comfy-root ../..
    

    Nothing extra to click; the parser conversion just makes first run take a bit longer, since SegFace is the biggest of the three model downloads.

    Where you'd reach for it: any serious face-repair workflow. It's a one-node add that changes output quality more than most of the numeric knobs, because a semantically correct mask is what makes the re-rendered face blend into the original like it was never touched.

    Categoryultimate face fix

    Inputs (1)

    NameTypeDefaultDescription
    parser_modelCOMBO1 options: segface_convnext_celeba_512.safetensors

    Outputs (1)

    NameTypeDescription
    face_parserFACE_FIX_PARSER