Nodo FaceDetailer (Impact Pack) in ComfyUI
FaceDetailer trova volti (o mani, occhi) con un rilevatore YOLO, ritaglia ciascuno, lo rigenera a piena risoluzione con il tuo modello e prompt, e lo incolla di nuovo, sistemando i volti piccoli e sfocati nelle inquadrature larghe.
Cosa fa FaceDetailer (Impact Pack)
FaceDetailer, dal ComfyUI-Impact-Pack di Dr. Lt. Data, automatizza la routine manuale di "ritoccare il volto a risoluzione più alta". Un rilevatore Ultralytics (face_yolov8m.pt, hand_yolov8s.pt) trova le aree, SAM opzionalmente perfeziona la maschera, ogni area viene ritagliata con guide_size, ingrandita, campionata con denoise 0.4-0.5 e ricomposta con sfumatura. Il nodo include tutta la pipeline: rilevatore, impostazioni del campionatore e composizione in un unico posto.
Prende lo stesso modello, clip, vae e conditioning del tuo campionatore principale, più un BBOX_DETECTOR da UltralyticsDetectorProvider e opzionalmente un SAM_MODEL. Gli output includono l’immagine corretta, le anteprime ritagliate e perfezionate e le maschere, utili per vedere cosa è stato rilevato. Per più passaggi (volto, poi mani) collega due nodi FaceDetailer.
Ingressi
Nome | Tipo | Cos'è |
|---|---|---|
image | IMAGE | L’immagine renderizzata. |
model / clip / vae / positive / negative | MODEL, CLIP, VAE, CONDITIONING | Uguale al campionatore principale. |
bbox_detector | BBOX_DETECTOR | Da UltralyticsDetectorProvider con face_yolov8m.pt o simile. |
sam_model_opt | SAM_MODEL | SAM opzionale per maschere più precise. |
guide_size / max_size | INT | Il ritaglio viene ingrandito a guide_size (384-512 per SD1.5, 1024 per SDXL) e limitato a max_size. |
seed / steps / cfg / sampler / scheduler / denoise | sampler settings | Denoise tipico 0.35-0.5. |
feather / noise_mask / force_inpaint | INT / BOOLEAN | Sfumatura ai bordi e comportamento dell’inpainting. |
bbox_threshold / bbox_dilation / bbox_crop_factor | FLOAT / INT | Confidenza del rilevamento, espansione maschera e contesto attorno al volto (crop_factor 3 consigliato). |
Uscite
Nome | Tipo | Cos'è |
|---|---|---|
image | IMAGE | L’immagine con i volti rifiniti. |
cropped_refined | IMAGE | Ogni ritaglio rifinito, per controllare. |
cropped_enhanced_alpha | IMAGE | Ritagli con canale alpha. |
mask | MASK | La maschera di rilevamento combinata. |
detailer_pipe | DETAILER_PIPE | Impostazioni raggruppate per detailer concatenati. |
Come usare FaceDetailer (Impact Pack)
- Installa ComfyUI-Impact-Pack (e Impact Subpack per il provider Ultralytics) dal ComfyUI Manager.
- Aggiungi UltralyticsDetectorProvider e scegli face_yolov8m.pt (scaricato in models/ultralytics/bbox).
- Aggiungi FaceDetailer; collega image da VAE Decode, model/clip/vae/positive/negative dal grafico principale, bbox_detector dal provider.
- Imposta guide_size 512 (SD1.5) o 1024 (SDXL), denoise 0.45, crop_factor 3, feather 5.
- Collega l’output image a Save Image; controlla cropped_refined con Preview Image.
Impostazioni e consigli
- Usa un prompt focalizzato sul volto ("volto dettagliato, occhi nitidi") con un CLIP Text Encode separato quando il prompt principale riguarda la scena.
- Per molti volti piccoli alza bbox_threshold per saltare lo sfondo affollato, o abbassalo se manca qualche volto.
- Mani: usa hand_yolov8s.pt con denoise 0.5 e un prompt "mani perfette"; i risultati variano.
- Concatena FaceDetailer -> FaceDetailer con l’output detailer_pipe per prima il volto e poi gli occhi.
- Un LoRA per il personaggio nel passaggio volto mantiene l’identità coerente.
Risoluzione dei problemi di FaceDetailer (Impact Pack)
Nessun volto rilevato, immagine passa senza modifiche
Perché succede
bbox_threshold troppo alto, il volto è minuscolo, o il modello del rilevatore non è stato scaricato.
Come risolverlo
Abbassa bbox_threshold a 0.3, assicurati che face_yolov8m.pt sia in models/ultralytics/bbox, e ingrandisci l’immagine prima del detailer.
Il volto nuovo non corrisponde al corpo (colore o stile)
Perché succede
denoise troppo alto, o prompt/LoRA diversi nel passaggio volto.
Come risolverlo
denoise 0.3-0.45, crop_factor 3 per il contesto, e stesso modello e LoRA del passaggio principale.
Quadrato visibile attorno al volto
Perché succede
feather troppo basso o noise_mask spento con maschera dura.
Come risolverlo
feather 10-20, noise_mask attivo, bbox_dilation 10.
ModuleNotFoundError: ultralytics / Impact Subpack mancante
Perché succede
UltralyticsDetectorProvider è nell’Impact Subpack, che si installa separatamente nelle versioni nuove.
Come risolverlo
Installa ComfyUI-Impact-Subpack dal Manager e riavvia.
I volti hanno un secondo paio di occhi o sembrano persone diverse
Perché succede
Denoise 0.6+ ridisegna il volto dal prompt invece di rifinirlo.
Come risolverlo
Abbassa denoise; usa FaceID IP-Adapter o un LoRA per il personaggio per mantenere l’identità.
Domande su FaceDetailer (Impact Pack)
FaceDetailer è uguale a ADetailer?
È l’equivalente ComfyUI dell’estensione A1111 ADetailer, con gli stessi modelli di rilevamento.
Funziona con Flux?
Sì, con cfg 1.0 e Flux Guidance nel positivo. Usa guide_size 1024.
Può sistemare le mani?
Può rifinire le mani con il rilevatore mani; i risultati dipendono dal modello. MeshGraphormer hand refiner in ControlNet Aux è un’alternativa.
Nodi correlati
KSampler
ComfyUI core
KSampler esegue il ciclo di denoising: prende il modello, i prompt e un latente e produce l'immagine latente finita, controllata da seed, passi, cfg, sampler, scheduler e denoise.
Upscale Image (using Model)
ComfyUI core
Upscale Image (using Model) esegue un upscaler in stile ESRGAN (4x-UltraSharp, RealESRGAN, 4x_NMKD-Siax, 4x_foolhardy_Remacri) su un'IMAGE e la restituisce ingrandita del fattore fisso del modello con dettagli aggiunti.
IPAdapter (IP-Adapter Plus)
ComfyUI_IPAdapter_plus
I nodi IPAdapter inseriscono un'immagine di riferimento nel modello come "prompt immagine", trasferendo stile, composizione o un volto senza descriverli a parole; IPAdapter Unified Loader più IPAdapter Advanced sono la coppia più usata.
Grow Mask, Feather Mask and Invert Mask
ComfyUI core
Gli strumenti base per le maschere espandono (Grow Mask), ammorbidiscono (Feather Mask) e capovolgono (Invert Mask) una MASCHERA così che le aree ritoccate si fondano con l'immagine intorno senza bordi visibili.
ReActor Fast Face Swap
ComfyUI-ReActor
ReActor scambia un volto da una foto di origine sull'immagine generata usando InsightFace, con restauro opzionale (GFPGAN, CodeFormer) e potenziamento del volto, per personaggi coerenti senza dover addestrare un LoRA.
Altri nodi ComfyUI
CLIP Text Encode (Prompt)
ComfyUI core
CLIP Text Encode trasforma un prompt di testo in CONDITIONING usando l'encoder testuale del modello. Un nodo contiene il prompt positivo, un altro quello negativo.
ComfyUI Manager
ComfyUI-Manager
ComfyUI Manager è l’estensione che installa, aggiorna e sistema i pacchetti di nodi personalizzati e i modelli direttamente dall’interfaccia, risolve i nodi mancanti nei workflow importati e salva la tua configurazione.
Load Checkpoint
ComfyUI core
Load Checkpoint (CheckpointLoaderSimple) apre un file modello .safetensors o .ckpt e fornisce le tre parti di cui ogni workflow ha bisogno: il MODEL di diffusione, l'encoder testuale CLIP e il VAE.
Save Image
ComfyUI core
Save Image salva il tensore IMAGE in ComfyUI/output come PNG, con tutto il flusso di lavoro incorporato nei metadati del file così puoi trascinare l'immagine di nuovo in ComfyUI per ripristinare il grafico.
VAE Decode
ComfyUI core
VAE Decode trasforma il LATENT campionato in un'immagine a pixel usando il VAE; VAE Decode (Tiled) fa lo stesso a pezzi per immagini molto grandi.
Empty Latent Image
ComfyUI core
Empty Latent Image crea la tela latente vuota (larghezza, altezza, batch_size) da cui parte il campionamento testo-immagine; le dimensioni devono essere multipli di 8 e corrispondere alla famiglia del modello.
