Updated: 5/27/2024
Hej där! I denna guide ska vi dyka in i den spännande världen av ControlNet i ComfyUI. Låt oss utforska tillsammans vad den erbjuder och hur den kan krydda dina projekt!
Vi kommer att täcka:
Om du är intresserad av att utforska ControlNet-arbetsflödet, använd följande ComfyUI web. Den är fullt utrustad med alla nödvändiga kundnoder och modeller, vilket möjliggör sömlös kreativitet utan behov av manuella inställningar. Börja få praktisk erfarenhet genom att experimentera med ControlNets funktioner omedelbart, eller fortsätt med denna handledning för att lära dig hur du använder ControlNet effektivt.
ControlNet är en transformativ teknik som avsevärt förbättrar kapaciteten hos text-till-bild-diffusionsmodeller, vilket möjliggör en oöverträffad rumslig kontroll i bildgenerering. Som en neuralt nätverksarkitektur integreras ControlNet sömlöst med storskaliga, förtränade modeller som Stable Diffusion. Den utnyttjar den omfattande träningen av dessa modeller—byggt på miljarder bilder för att introducera rumsliga villkor i bildskapelseprocessen. Dessa villkor kan variera från kanter och mänskliga poser till djup- och segmenteringskartor, vilket gör det möjligt för användare att styra bildgenereringen på sätt som tidigare inte var möjliga med bara textpromptar.
Genialiteten i ControlNet ligger i dess distinkta metodik. Inledningsvis säkrar den de ursprungliga modellparametrarna, vilket säkerställer att den grundläggande träningen förblir oförändrad. Därefter introducerar ControlNet en klon av modellens kodningslager för träning, genom att använda "zero convolutions." Dessa specialdesignade konvolutionslager börjar med nollvikter, noggrant integrerande nya rumsliga villkor. Denna metod förhindrar att störande brus ingriper, bibehåller modellens ursprungliga skicklighet samtidigt som nya inlärningsbanor initieras.
Traditionellt använder stabila diffusionsmodeller textpromptar som konditioneringsmekanism för att styra genereringen av bilder, vilket justerar utfallet med specifikationerna i textprompten. ControlNet introducerar en ytterligare form av konditionering till denna process, vilket förbättrar kapaciteten att styra den genererade bilden mer exakt enligt både textuella och visuella ingångar.
Detta steg integrerar ControlNet i ditt ComfyUI-arbetsflöde, vilket möjliggör tillämpning av ytterligare konditionering till din bildgenereringsprocess. Det lägger grunden för att tillämpa visuell vägledning tillsammans med textpromptar.
Positiv och negativ konditionering: Dessa ingångar är avgörande för att definiera de önskade resultaten och de aspekter som ska undvikas i den genererade bilden. De bör kopplas till "Positive prompt" och "Negative prompt" respektive, i linje med den textuella konditioneringsdelen av processen.
ControlNet Model: Denna ingång bör vara ansluten till utgången av "Load ControlNet Model"-noden. Detta steg är nödvändigt för att välja och inkorporera antingen en ControlNet- eller T2IAdaptor-modell i ditt arbetsflöde, vilket säkerställer att diffusionsmodellen drar nytta av den specifika vägledning som tillhandahålls av din valda modell. Varje modell, oavsett om det är en ControlNet eller en T2IAdaptor, är rigoröst tränad för att påverka bildgenereringsprocessen enligt vissa datatyper eller stilistiska preferenser. Eftersom funktionerna hos många T2IAdaptor-modeller nära överensstämmer med de hos ControlNet-modeller, kommer vårt fokus huvudsakligen att vara på ControlNet-modeller i vår efterföljande diskussion. Vi kommer dock också att lyfta fram några av de mer populära T2IAdaptorerna för fullständighetens skull.
Preprocessor: "image"-ingången måste vara ansluten till en "ControlNet Preprocessor"-nod, vilket är avgörande för att anpassa din bild för att uppfylla de specifika kraven hos den ControlNet-modell du använder. Det är nödvändigt att använda rätt preprocessor anpassad till din valda ControlNet-modell. Detta steg säkerställer att den ursprungliga bilden genomgår nödvändiga modifieringar — såsom justeringar i format, storlek, färg eller tillämpning av specifika filter — för att optimera den för ControlNets riktlinjer. Efter denna förbehandlingsfas ersätts den ursprungliga bilden med den modifierade versionen, som ControlNet sedan använder. Denna process garanterar att dina ingångsbilder är exakt förberedda för ControlNet-processen.
"Apply ControlNet"-noden genererar två viktiga utgångar: Positiv och negativ konditionering. Dessa utgångar, fyllda med de nyanserade effekterna av ControlNet och visuell vägledning, spelar en avgörande roll i att styra diffusionsmodellens beteende i ComfyUI. Därefter presenteras du med ett val: fortsätt till KSampler för samplingsfasen för att ytterligare putsa den genererade bilden, eller, för dem som strävar efter en ännu högre nivå av detalj och anpassning i sin skapelse, fortsätt att lägga till ytterligare ControlNets. Denna avancerade teknik att integrera fler ControlNets möjliggör en mer detaljerad manipulation av bildens attribut, vilket erbjuder ett förbättrat verktyg för skapare som strävar efter att uppnå oöverträffad precision och kontroll i sina visuella utgångar.
strength: Denna parameter bestämmer intensiteten av ControlNets effekt på den genererade bilden i ComfyUI. Ett värde på 1,0 innebär full styrka, vilket betyder att ControlNets vägledning kommer att ha maximal påverkan på diffusionsmodellens utgång. Omvänt innebär ett värde på 0,0 ingen påverkan, vilket i praktiken inaktiverar ControlNets effekt på bildgenereringsprocessen.
start_percent: Denna parameter specificerar startpunkten, som en procentandel av diffusionsprocessen, där ControlNet börjar påverka genereringen. Till exempel, att ställa in en startprocent på 20% innebär att ControlNets vägledning börjar påverka bildgenereringen från 20%-märket av diffusionsprocessen och framåt.
end_percent: Analogt med "Start Percent", definierar parametern "End Percent" punkten där ControlNets påverkan upphör. Till exempel, en slutprocent på 80% skulle innebära att ControlNets vägledning slutar påverka bildgenereringen vid 80% färdigställandemärke av diffusionsprocessen, vilket lämnar de sista faserna opåverkade.
Timestep Keyframes i ControlNet erbjuder sofistikerad kontroll över beteendet hos AI-genererat innehåll, särskilt när timing och progression är avgörande, såsom i animationer eller utvecklande visuella effekter. Här är en detaljerad genomgång av de viktigaste parametrarna för att hjälpa dig använda dem effektivt och intuitivt:
prev_timestep_kf: Tänk på prev_timestep_kf som att länka händer med keyframen som kommer före i en sekvens. Genom att koppla ihop keyframes skapar du en smidig övergång eller en storyboard som vägleder AI genom genereringsprocessen, steg för steg, vilket säkerställer att varje fas flyter logiskt in i nästa.
cn_weights: cn_weights är användbara för att finjustera utgången genom att justera specifika funktioner inom ControlNet under olika faser av genereringsprocessen.
latent_keyframe: latent_keyframe gör det möjligt att justera hur starkt varje del av AI-modellen påverkar slutresultatet under en viss fas av genereringsprocessen. Till exempel, om du genererar en bild där förgrunden ska bli mer detaljerad när processen utvecklas, kan du öka styrkan för de aspekter (latents) av modellen som ansvarar för förgrundsdetaljer i senare keyframes. Omvänt, om vissa funktioner ska tona bort i bakgrunden över tid, kan du minska deras styrka i efterföljande keyframes. Denna nivå av kontroll är särskilt användbar vid skapande av dynamiska, utvecklande visuella effekter eller i projekt där exakt timing och progression är avgörande.
mask_optional: Använd uppmärksamhetsmasker som strålkastare, fokusera ControlNets påverkan på specifika områden av din bild. Oavsett om det handlar om att framhäva en karaktär i en scen eller betona ett bakgrundselement, kan dessa masker antingen appliceras jämnt eller variera i intensitet, och rikta AI:s uppmärksamhet exakt dit du vill.
start_percent: start_percent markerar signalen för när din keyframe kommer i spel, mätt som en procentandel av den totala genereringsprocessen. Att ställa in detta är som att schemalägga en skådespelares entré på scenen, vilket säkerställer att de dyker upp vid precis rätt ögonblick i föreställningen.
strength: strength ger en hög nivå av kontroll över den övergripande påverkan av ControlNet.
null_latent_kf_strength: För alla skådespelare (latents) som du inte explicit har regisserat i denna scen (keyframe), fungerar null_latent_kf_strength som en standardinstruktion och talar om för dem hur de ska agera i bakgrunden. Det säkerställer att ingen del av genereringen lämnas utan vägledning, vilket upprätthåller en sammanhängande utgång även i områden du inte specifikt har adresserat.
inherit_missing: Att aktivera inherit_missing tillåter din nuvarande keyframe att anta alla ospecificerade inställningar från sin föregångare, som en yngre syskon som ärver kläder. Det är en användbar genväg som säkerställer kontinuitet och sammanhang utan att behöva upprepa instruktioner.
guarantee_usage: guarantee_usage är din garanti för att, oavsett vad, den nuvarande keyframen kommer att få sin tid att lysa i processen, även om det bara är för ett kort ögonblick. Det säkerställer att varje keyframe du har satt upp har en påverkan, och hedrar din detaljerade planering i att vägleda AI:s kreativa process.
Timestep Keyframes erbjuder den precision som behövs för att noggrant vägleda AI:s kreativa process, vilket gör det möjligt för dig att utforma berättelsen eller den visuella resan exakt som du föreställer dig den. De fungerar som ett kraftfullt verktyg för att orkestrera utvecklingen av visuella effekter, särskilt i animation, från öppningsscenen till avslutningen. Här är en närmare titt på hur Timestep Keyframes kan tillämpas strategiskt för att hantera progressionen av en animation, vilket säkerställer en sömlös övergång från den initiala ramen till den slutliga, perfekt i linje med dina konstnärliga mål.
Eftersom funktionerna hos många T2IAdaptor-modeller nära överensstämmer med de hos ControlNet-modeller, kommer vårt fokus huvudsakligen att vara på ControlNet-modeller i vår efterföljande diskussion. Vi kommer dock också att lyfta fram några av de mer populära T2IAdaptorerna för fullständighetens skull.
Preprocessor: Openpose eller DWpose
Tile Resample-modellen används för detaljförbättring i bilder. Den är särskilt användbar i kombination med en uppskalare för att förbättra bildupplösningen samtidigt som den lägger till finare detaljer, ofta använd för att skärpa och berika texturer och element inom en bild.
Preprocessor: Tile
Canny-modellen tillämpar Canny edge detection-algoritmen, en flerfasprocess för att detektera ett brett spektrum av kanter i bilder. Denna modell är fördelaktig för att bevara de strukturella aspekterna av en bild samtidigt som den förenklar dess visuella komposition, vilket gör den användbar för stiliserad konst eller förbearbetning innan ytterligare bildmanipulation.
Preprocessor: Canny
Depth-modeller tolkar djupinformation från en 2D-bild, översätter upplevt avstånd till en gråskalad djupkarta. Varje variant erbjuder en annan balans mellan detaljupptagning och bakgrundsbetoning:
Preprocessors: Depth_Midas, Depth_Leres, Depth_Zoe, Depth_Anything, MeshGraphormer_Hand_Refiner. Denna modell är mycket robust och kan arbeta på verkliga djupkartor från renderingsmotorer.
Lineart-modeller konverterar bilder till stiliserade linjeteckningar, användbara för konstnärliga tolkningar eller som en bas för vidare kreativt arbete:
Preprocessor kan generera detaljerade eller grova linjeteckningar från bilder (Lineart och Lineart_Coarse)
Scribble-modeller är designade för att omvandla bilder till en klotterliknande framtoning, som simulerar utseendet av handritade skisser. De är särskilt användbara för konstnärlig omformning eller som ett preliminärt steg i ett större designarbetsflöde:
Preprocessors: Scribble, Scribble_HED, Scribble_PIDI, och Scribble_XDOG
Segmenteringsmodeller kategoriserar bildpixlar i distinkta objektklasser, var och en representerad av en specifik färg. Detta är ovärderligt för att identifiera och manipulera individuella element inom en bild, såsom att separera förgrund från bakgrund eller differentiera objekt för detaljerad redigering.
Acceptabla preprocessorer: Sam, Seg_OFADE20K (Oneformer ADE20K), Seg_UFADE20K (Uniformer ADE20K), Seg_OFCOCO (Oneformer COCO), eller manuellt skapade masker.
Shuffle-modellen introducerar ett nytt tillvägagångssätt genom att slumpmässigt ändra attributen hos ingångsbilden, såsom färgscheman eller texturer, utan att ändra kompositionen. Denna modell är särskilt effektiv för kreativa utforskningar och generering av variationer av en bild med bibehållen strukturell integritet men förändrade visuella estetiker. Dess slumpmässiga natur innebär att varje utgång är unik, påverkad av det frövärde som används i genereringsprocessen.
Preprocessor: Shuffle
Inpainting-modeller inom ControlNet möjliggör förfinad redigering inom specifika områden av en bild, bibehåller övergripande sammanhang samtidigt som betydande variationer eller korrigeringar introduceras.
För att använda ControlNet Inpainting, börja med att isolera området du vill regenerera genom maskering. Detta kan göras genom att högerklicka på den önskade bilden och välja "Open in MaskEditor" för modifieringar.
Till skillnad från andra implementationer inom ControlNet, kringgår Inpainting behovet av en preprocessor på grund av de direkta modifieringar som tillämpas på bilden. Det är dock viktigt att vidarebefordra den redigerade bilden till latentutrymmet via KSampler. Detta säkerställer att diffusionsmodellen fokuserar enbart på att regenerera det maskerade området, bibehåller integriteten hos de omaskerade områdena.
M-LSD (Mobile Line Segment Detection) fokuserar på att detektera raka linjer, idealisk för bilder med starka arkitektoniska element, interiörer och geometriska former. Den förenklar scener till deras strukturella essens, vilket underlättar kreativa projekt som involverar människoskapade miljöer.
Preprocessor: MLSD.
Normalmaps möjliggör simulering av komplexa ljus- och texteffekter genom att modellera orienteringen av ytor i en visuell scen, snarare än att förlita sig på färgdata ensam. Detta är kritiskt för 3D-modellering och simulering.
Preprocessors: Normal BAE, Normal Midas
ControlNet Soft Edge är designad för att generera bilder med mjukare kanter, med fokus på detaljkontroll och naturligt utseende. Den använder avancerade neurala nätverkstekniker för precis bildmanipulation, vilket erbjuder större kreativ frihet och sömlösa blandningsmöjligheter.
Robusthet: SoftEdge_PIDI_safe > SoftEdge_HED_safe >> SoftEdge_PIDI > SoftEdge_HED
Maximal resultatkvalitet: SoftEdge_HED > SoftEdge_PIDI > SoftEdge_HED_safe > SoftEdge_PIDI_safe
Med tanke på avvägningen rekommenderar vi att använda SoftEdge_PIDI som standard. I de flesta fall fungerar det mycket bra.
Preprocessors: SoftEdge_PIDI, SoftEdge_PIDI_safe, SoftEdge_HED, SoftEdge_HED_safe.
ControlNet IP2P (Instruct Pix2Pix)-modellen utmärker sig som en unik anpassning inom ControlNet-ramverket, skräddarsydd för att utnyttja Instruct Pix2Pix-datasetet för bildtransformationer. Denna ControlNet-variant skiljer sig genom att balansera mellan instruktionpromptar och beskrivningspromptar under sin träningsfas. Till skillnad från det konventionella tillvägagångssättet i officiell Instruct Pix2Pix, inkorporerar ControlNet IP2P en 50/50-mix av dessa prompttyper, vilket förbättrar dess mångsidighet och effektivitet i att generera önskade utgångar.
t2iadapter color: t2iadapter_color-modellen är specifikt designad för att förbättra färgrepresentation och noggrannhet i genererade bilder när man använder text-till-bild-diffusionsmodeller. Genom att fokusera på färganpassning, tillåter denna modell en mer exakt och levande färgpalett, nära anpassad till beskrivningarna som ges i textpromptarna. Den är särskilt användbar för projekt där färgtrohet och specificitet är avgörande, vilket tillför en ny nivå av realism och detalj till de genererade bilderna.
t2iadapter style: t2iadapter_style-modellen riktar sig mot de stilistiska aspekterna av bildgenerering, vilket möjliggör modifiering och kontroll över den konstnärliga stilen i utgångsbilderna. Denna adapter tillåter användare att styra text-till-bild-modellen mot att generera bilder som följer specifika konstnärliga stilar eller estetik som beskrivs i textpromptarna. Det är ett ovärderligt verktyg för kreativa projekt där bildens stil spelar en avgörande roll, vilket erbjuder ett sömlöst sätt att blanda traditionella konststilar med moderna AI-kapaciteter.
För dessa segment kommer vi att ägna separata artiklar för att ge en grundlig introduktion till var och en, med tanke på den omfattande mängden information vi vill dela.
Att använda flera ComfyUI ControlNets i ComfyUI innebär en process av lager- eller kedjeanslutning av ControlNet-modeller för att förfina bildgenereringen med mer precisa kontroller över olika aspekter som pose, form, stil och färg.
Således kan du bygga ditt arbetsflöde genom att tillämpa en ControlNet (t.ex. OpenPose) och sedan mata dess utgång till en annan ControlNet (t.ex. Canny). Denna lagerapplikation möjliggör detaljerad anpassning av bilden, där varje ControlNet applicerar sina specifika transformationer eller kontroller. Processen möjliggör en förfinad kontroll över den slutliga utgången, integrerande flera aspekter guidade av olika ControlNets.
Om du är intresserad av att utforska ControlNet-arbetsflödet, använd följande ComfyUI web. Den är fullt utrustad med alla nödvändiga kundnoder och modeller, vilket möjliggör sömlös kreativitet utan behov av manuella inställningar. Få praktisk erfarenhet och bekanta dig med ControlNets funktioner nu!
© Copyright 2024 RunComfy. Alla Rättigheter Förbehållna.