FaceDetailer (Impact Pack)-Node in ComfyUI
FaceDetailer findet Gesichter (oder Hände, Augen) mit einem YOLO-Detektor, schneidet jedes einzeln aus, rendert es mit deinem Modell und Prompt in voller Auflösung neu und fügt es wieder ein, um die kleinen, verschwommenen Gesichter in Weitwinkelaufnahmen zu verbessern.
Was FaceDetailer (Impact Pack) macht
FaceDetailer aus Dr. Lt. Data's ComfyUI-Impact-Pack automatisiert die manuelle Routine „Gesicht in höherer Auflösung übermalen“. Ein Ultralytics-Detektor (face_yolov8m.pt, hand_yolov8s.pt) findet die Bereiche, SAM verfeinert optional die Maske, jeder Bereich wird mit guide_size ausgeschnitten, hochskaliert, mit Denoise 0,4-0,5 gesampelt und mit weichen Kanten wieder zusammengesetzt. Der Node bündelt die ganze Pipeline: Detektor, Sampler-Einstellungen und Zusammensetzen an einem Ort.
Er nimmt dasselbe Modell, Clip, VAE und Conditioning wie dein Hauptsampler, plus einen BBOX_DETECTOR vom UltralyticsDetectorProvider und optional ein SAM_MODEL. Die Ausgaben sind das korrigierte Bild, die ausgeschnittenen und verfeinerten Vorschauen und die Masken, was praktisch ist, um zu sehen, was erkannt wurde. Für mehrere Durchgänge (erst Gesicht, dann Hände) kannst du zwei FaceDetailer-Nodes hintereinander schalten.
Eingänge
Name | Typ | Bedeutung |
|---|---|---|
image | IMAGE | Das gerenderte Bild. |
model / clip / vae / positive / negative | MODEL, CLIP, VAE, CONDITIONING | Wie beim Hauptsampler. |
bbox_detector | BBOX_DETECTOR | Vom UltralyticsDetectorProvider mit face_yolov8m.pt oder ähnlichem. |
sam_model_opt | SAM_MODEL | Optional SAM für genauere Masken. |
guide_size / max_size | INT | Der Ausschnitt wird auf guide_size (384-512 für SD1.5, 1024 für SDXL) hochskaliert und bei max_size begrenzt. |
seed / steps / cfg / sampler / scheduler / denoise | sampler settings | Denoise 0,35-0,5 ist typisch. |
feather / noise_mask / force_inpaint | INT / BOOLEAN | Kantenverlauf und Verhalten beim Übermalen. |
bbox_threshold / bbox_dilation / bbox_crop_factor | FLOAT / INT | Erkennungs-Schwelle, Maskenvergrößerung und Kontext um das Gesicht (crop_factor 3 empfohlen). |
Ausgänge
Name | Typ | Bedeutung |
|---|---|---|
image | IMAGE | Das Bild mit verfeinerten Gesichtern. |
cropped_refined | IMAGE | Jeder verfeinerte Ausschnitt zur Kontrolle. |
cropped_enhanced_alpha | IMAGE | Ausschnitte mit Alphakanal. |
mask | MASK | Die kombinierte Erkennungsmaske. |
detailer_pipe | DETAILER_PIPE | Gesammelte Einstellungen für verkettete Detailer. |
So verwendest du FaceDetailer (Impact Pack)
- Installiere ComfyUI-Impact-Pack (und Impact Subpack für den Ultralytics-Provider) über den ComfyUI Manager.
- Füge UltralyticsDetectorProvider hinzu und wähle face_yolov8m.pt (wird in models/ultralytics/bbox heruntergeladen).
- Füge FaceDetailer hinzu; verbinde image vom VAE Decode, model/clip/vae/positive/negative aus dem Hauptgraphen, bbox_detector vom Provider.
- Setze guide_size auf 512 (SD1.5) oder 1024 (SDXL), denoise auf 0,45, crop_factor auf 3, feather auf 5.
- Verbinde den Bild-Ausgang mit Save Image; überprüfe cropped_refined mit Preview Image.
Einstellungen und Tipps
- Nutze einen Prompt, der sich auf das Gesicht konzentriert ("detailliertes Gesicht, scharfe Augen") über einen separaten CLIP Text Encode, wenn der Hauptprompt die Szene beschreibt.
- Bei vielen kleinen Gesichtern erhöhe bbox_threshold, um den Hintergrund auszublenden, oder senke ihn, wenn ein Gesicht nicht erkannt wird.
- Für Hände: hand_yolov8s.pt mit Denoise 0,5 und einem "perfekte Hände"-Prompt; die Ergebnisse variieren.
- Verkette FaceDetailer -> FaceDetailer mit dem detailer_pipe-Ausgang, um erst das Gesicht, dann die Augen zu bearbeiten.
- Ein LoRA für die Figur im Gesichtsdurchgang sorgt für eine konsistente Identität.
Fehlerbehebung bei FaceDetailer (Impact Pack)
Kein Gesicht erkannt, Bild wird unverändert durchgereicht
Warum es passiert
bbox_threshold zu hoch, das Gesicht ist winzig oder das Detektormodell wurde nicht heruntergeladen.
So behebst du es
Senke bbox_threshold auf 0,3, stelle sicher, dass face_yolov8m.pt in models/ultralytics/bbox liegt, und skaliere das Bild vor dem Detailer hoch.
Das neue Gesicht passt nicht zum Körper (Farbe oder Stil)
Warum es passiert
Denoise zu hoch oder ein anderer Prompt/LoRA im Gesichtsdurchgang.
So behebst du es
Denoise 0,3-0,45, crop_factor 3 für Kontext und dasselbe Modell und LoRAs wie im Hauptdurchgang.
Sichtbarer Kasten um das Gesicht
Warum es passiert
Feather zu niedrig oder noise_mask aus bei harter Maske.
So behebst du es
Feather 10-20, noise_mask an, bbox_dilation 10.
ModuleNotFoundError: ultralytics / Impact Subpack fehlt
Warum es passiert
UltralyticsDetectorProvider ist im Impact Subpack, das bei neuen Versionen separat installiert wird.
So behebst du es
Installiere ComfyUI-Impact-Subpack über den Manager und starte neu.
Gesichter bekommen ein zweites Paar Augen oder sehen anders aus
Warum es passiert
Denoise 0,6+ malt das Gesicht neu aus dem Prompt statt es zu verfeinern.
So behebst du es
Denoise senken; nutze einen FaceID IP-Adapter oder einen Charakter-LoRA für die Identität.
Fragen zu FaceDetailer (Impact Pack)
Ist FaceDetailer dasselbe wie ADetailer?
Es ist das ComfyUI-Äquivalent zur A1111 ADetailer-Erweiterung, mit denselben Detektormodellen.
Funktioniert es mit Flux?
Ja, mit cfg 1.0 und Flux Guidance im positiven Prompt. Nutze guide_size 1024.
Kann es Hände verbessern?
Es kann Hände mit dem Handdetektor verfeinern; die Ergebnisse hängen vom Modell ab. MeshGraphormer Hand Refiner in ControlNet Aux ist eine Alternative.
Verwandte Nodes
KSampler
ComfyUI core
KSampler führt die Denoising-Schleife aus: Es nimmt das Modell, die Prompts und ein Latent und erzeugt das fertige latente Bild, gesteuert durch Seed, Schritte, cfg, Sampler, Scheduler und Denoise.
Upscale Image (using Model)
ComfyUI core
Bild hochskalieren (mit Modell) nutzt einen ESRGAN-ähnlichen Upscaler (4x-UltraSharp, RealESRGAN, 4x_NMKD-Siax, 4x_foolhardy_Remacri) auf ein BILD und gibt es vergrößert mit dem festen Faktor des Modells und zusätzlichen Details zurück.
IPAdapter (IP-Adapter Plus)
ComfyUI_IPAdapter_plus
Die IPAdapter-Knoten füttern ein Referenzbild als "Bild-Prompt" ins Modell ein, um Stil, Komposition oder ein Gesicht zu übertragen, ohne sie in Worten zu beschreiben; IPAdapter Unified Loader zusammen mit IPAdapter Advanced sind das übliche Duo.
Grow Mask, Feather Mask and Invert Mask
ComfyUI core
Die Kern-Maskenwerkzeuge erweitern (Grow Mask), weichen ab (Feather Mask) und drehen um (Invert Mask) eine MASKE, damit die übermalten Bereiche nahtlos ins Bild übergehen.
ReActor Fast Face Swap
ComfyUI-ReActor
ReActor tauscht ein Gesicht von einem Quellfoto auf das generierte Bild mit InsightFace aus, mit optionaler Wiederherstellung (GFPGAN, CodeFormer) und Gesicht-Boosting, für konsistente Charaktere ohne LoRA-Training.
Weitere ComfyUI-Nodes
CLIP Text Encode (Prompt)
ComfyUI core
CLIP Text Encode wandelt einen Textprompt mit dem Modell-Textencoder in CONDITIONING um. Ein Node hält den positiven Prompt, ein zweiter den negativen Prompt.
ComfyUI Manager
ComfyUI-Manager
ComfyUI Manager ist die Erweiterung, die benutzerdefinierte Node-Pakete und Modelle direkt in der Oberfläche installiert, aktualisiert und repariert, fehlende Nodes in importierten Workflows erkennt und deine Einrichtung sichert.
Load Checkpoint
ComfyUI core
Load Checkpoint (CheckpointLoaderSimple) öffnet eine .safetensors- oder .ckpt-Modell-Datei und liefert die drei Teile, die jeder Workflow braucht: das Diffusions-MODELL, den CLIP-Textencoder und das VAE.
Save Image
ComfyUI core
Save Image speichert den IMAGE-Tensor als PNG in ComfyUI/output und bettet den gesamten Workflow in die Dateimetadaten ein, sodass das Bild zurück in ComfyUI gezogen werden kann, um den Graph wiederherzustellen.
VAE Decode
ComfyUI core
VAE Decode wandelt den gesampelten LATENT mit dem VAE in ein Pixel-BILD um; VAE Decode (Tiled) macht das Gleiche in Kacheln für sehr große Bilder.
Empty Latent Image
ComfyUI core
Empty Latent Image erstellt die leere latente Leinwand (Breite, Höhe, batch_size), von der das Text-zu-Bild-Sampling startet; die Dimensionen müssen Vielfache von 8 sein und zur Modellfamilie passen.
