Hvad er PuLID?
PuLID (Pure and Lightning ID customization) er en ny metode til tuning-fri identitets (ID) tilpasning i tekst-til-billede genereringsmodeller. Det sigter mod at indlejre en specifik ID (f.eks. en persons ansigt) i en forudtrænet tekst-til-billede model uden at forstyrre modellens oprindelige kapaciteter. Dette muliggør generering af billeder af den specifikke person, mens man stadig kan ændre attributter, stilarter, baggrunde osv. ved hjælp af tekstprompter.
PuLID inkorporerer to nøglekomponenter:
- En "Lightning T2I" gren, der hurtigt genererer høj-kvalitets billeder betinget af ID i kun få denoising trin, sammen med den standard diffusion gren. Dette muliggør beregning af et præcist ID tab for at forbedre troværdigheden af det genererede ansigt.
- Kontrastive tilpasningstab mellem Lightning T2I stierne med og uden ID betingelse. Dette instruerer modellen i, hvordan man indlejrer ID informationen uden at forurene modellens oprindelige prompt-følgende og billedgenereringskapaciteter.
Hvordan PuLID virker
PuLID's arkitektur består af en konventionel diffusionstræningsgren og den nye Lightning T2I gren:
- I diffusion grenen følger PuLID den standard diffusionstræningsproces af iterativ denoising. ID-betingelsen beskæres fra målbilledet til træning.
- Lightning T2I grenen udnytter nyere hurtige prøveudtagningsmetoder til at generere et høj-kvalitets billede betinget af ID prompten i kun 4 denoising trin, startende fra ren støj.
- Inden for Lightning T2I grenen konstrueres to stier - en betinget kun af tekstprompten, den anden betinget af både ID og tekstprompt. UNET funktionerne af disse stier tilpasses ved hjælp af kontrastive tab:
- Et semantisk tilpasningstab sikrer, at modellens respons på tekstprompten er ens med og uden ID betingelse. Dette bevarer modellens oprindelige prompt-følgende evne.
- Et layout tilpasningstab opretholder konsistensen af det genererede billedlayout før og efter ID indsættelse.
- Lightning T2I grenen muliggør beregning af et præcist ID tab mellem den genererede ansigtsindlejring og den rigtige ID indlejring, da den producerer et rent, denoised output ansigt. Dette forbedrer troværdigheden af den genererede ID.
Sådan bruger du ComfyUI PuLID
Brug af ComfyUI PuLID workflow til at anvende ID tilpasning til en model involverer flere nøgleparametre i "Apply PuLID" noden:
- model: Den grundlæggende tekst-til-billede diffusion model til at tilpasse med den specifikke ID. Dette er typisk en forudtrænet model som Stable Diffusion.
- pulid: De indlæste PuLID modelvægte, som definerer, hvordan ID informationen indsættes i grundmodellen. Forskellige PuLID vægtfiler kan trænes til at prioritere enten ID troværdighed eller bevarelse af modellens oprindelige genereringsstil.
- eva_clip: Den indlæste Eva-CLIP model til at kode ansigtstræk fra ID referencebilledet/billederne. Eva-CLIP producerer en meningsfuld ansigtstræk indlejring.
- face_analysis: Den indlæste InsightFace model til at genkende og beskære ansigtet i ID referencebilledet/billederne. Dette sikrer, at kun relevante ansigtstræk kodes.
- image: Referencebilledet eller billederne, der viser den specifikke ID, der skal indsættes i modellen. Flere billeder af den samme identitet kan leveres for at forbedre ID indlejringen.
- method: Vælger ID indsættelsesmetode, med mulighederne "fidelity", "style" og "neutral". "fidelity" prioriterer maksimal lighed med ID reference selvom genereringskvaliteten forringes. "style" fokuserer på at bevare modellens oprindelige genereringskapaciteter med en lavere ID troværdighed. "neutral" balancerer de to.
- weight: Kontrollerer styrken af ID indsættelsen, fra 0 (ingen effekt) til 5 (ekstremt stærk). Standard er 1. Højere vægt forbedrer ID troværdighed, men risikerer at overskrive modellens oprindelige generering.
- start_at: Denoising trinnet (som en procentdel fra 0 til 1) for at starte anvendelsen af PuLID ID tilpasning. Standard er 0, startende ID indsættelsen fra det første denoising trin. Kan øges for at starte ID indsættelsen senere i denoising processen.
- end_at: Denoising trinnet (som en procentdel fra 0 til 1) for at stoppe anvendelsen af PuLID ID tilpasning. Standard er 1, anvendelse af ID indsættelse indtil slutningen af denoising. Kan reduceres for at stoppe ID indsættelse før de sidste denoising trin.
- attn_mask: Et valgfrit gråtone maske billede til rumligt at kontrollere, hvor ID tilpasningen anvendes. Hvide områder af masken modtager den fulde ID indsættelseseffekt, sorte områder er uberørte, grå områder modtager delvis effekt. Nyttig til at lokalisere ID til kun ansigtsområdet.
"Apply PuLID" Outputs:
- MODEL: Inputmodellen med PuLID ID tilpasning anvendt. Denne tilpassede model kan bruges i andre ComfyUI noder til billedgenerering. De genererede billeder vil afbilde ID'en, mens de stadig kan kontrolleres via prompt.
Justering af disse parametre tillader finjustering af PuLID ID indsættelsen for at opnå den ønskede balance mellem ID troværdighed og genereringskvalitet. Generelt giver en vægt på 1 med metoden "neutral" et pålideligt udgangspunkt, som derefter kan justeres baseret på resultaterne. Start_at og end_at parametrene giver yderligere kontrol over, hvornår ID træder i kraft i denoising, med mulighed for at lokalisere effekten via en attn_mask.
For mere information, besøg venligst github