ComfyUI  >  Workflows  >  Consistente Stijloverdracht met Unsampling

Consistente Stijloverdracht met Unsampling

Deze workflow onderzoekt Unsampling als een methode voor consistente stijloverdracht in Stable Diffusion. Door latente ruis te beheersen, zorgt Unsampling ervoor dat videobeweging en compositie behouden blijven, waardoor stijltransities soepeler en consistenter worden!

ComfyUI Unsampling Workflow

Consistent Style Transfer with Unsampling in Stable Diffusion
Wilt u deze workflow uitvoeren?
  • Volledig operationele workflows
  • Geen ontbrekende knooppunten of modellen
  • Geen handmatige instellingen vereist
  • Kenmerken verbluffende visuals

ComfyUI Unsampling Voorbeelden

ComfyUI Unsampling Beschrijving

Deze Unsampling-gids, geschreven door Inner-Reflections, draagt enorm bij aan het verkennen van de Unsampling-methode voor het bereiken van dramatisch consistente video-stijloverdracht.

1. Inleiding: Beheersing van Latente Ruis met Unsampling

Latente Ruis is de basis voor alles wat we doen met Stable Diffusion. Het is geweldig om een stap terug te doen en na te denken over wat we hiermee kunnen bereiken. Over het algemeen zijn we echter gedwongen om een willekeurig getal te gebruiken om de ruis te genereren. Wat als we het konden beheersen?

Ik ben niet de eerste die Unsampling gebruikt. Het bestaat al heel lang en is op verschillende manieren gebruikt. Tot nu toe was ik echter over het algemeen niet tevreden met de resultaten. Ik heb enkele maanden besteed aan het vinden van de beste instellingen en ik hoop dat je geniet van deze gids.

Door het gebruik van het samplingproces met AnimateDiff/Hotshot kunnen we ruis vinden die onze originele video vertegenwoordigt en daardoor elke vorm van stijltransfer vergemakkelijkt. Het is vooral nuttig om Hotshot consistent te houden gezien zijn contextvenster van 8 frames.

Dit unsampling-proces converteert onze invoervideo in wezen naar latente ruis die de beweging en compositie van het origineel behoudt. We kunnen deze representatieve ruis dan gebruiken als startpunt voor het diffusieproces in plaats van willekeurige ruis. Dit stelt de AI in staat om de doelstijl toe te passen terwijl de temporaliteit behouden blijft.

Deze gids gaat ervan uit dat je AnimateDiff en/of Hotshot hebt geïnstalleerd. Als je dat nog niet hebt gedaan, zijn de gidsen hier beschikbaar:

AnimateDiff: https://civitai.com/articles/2379

Hotshot XL gids: https://civitai.com/articles/2601/

Link naar bron - Als je video's op Civitai wilt plaatsen met deze workflow. https://civitai.com/models/544534

2. Systeemvereisten voor deze Workflow

Een Windows-computer met een NVIDIA grafische kaart met minimaal 12GB VRAM wordt aanbevolen. Op het RunComfy platform, gebruik een Medium (16GB VRAM) of hoger. Dit proces vereist niet meer VRAM dan standaard AnimateDiff of Hotshot workflows, maar het duurt bijna twee keer zo lang, omdat het diffusieproces in wezen twee keer wordt uitgevoerd—een keer voor upsampling en een keer voor resampling met de doelstijl.

3. Uitleg over Nodes en Instellingen Gids

Node: Custom Sampler

Unsampling: Custom Sampler

Het belangrijkste onderdeel hiervan is het gebruik van de Custom Sampler die alle instellingen die je normaal ziet in de reguliere KSampler opsplitst:

Dit is de hoofd-KSampler node - voor unsampling heeft het toevoegen van ruis/zaad geen effect (voor zover ik weet). CFG is belangrijk - over het algemeen geldt dat hoe hoger de CFG in deze stap is, hoe meer de video op je origineel zal lijken. Hogere CFG dwingt de unsampler om nauwer overeen te komen met de invoer.

Node: KSampler Select

Unsampling: KSampler Select

Het belangrijkste is om een sampler te gebruiken die convergeert! Daarom gebruiken we euler in plaats van euler a, omdat de laatste resulteert in meer willekeurigheid/instabiliteit. Ancestrale samplers die bij elke stap ruis toevoegen, voorkomen dat de unsampling schoon convergeert. Als je hier meer over wilt lezen, heb ik altijd  nuttig gevonden. @spacepxl op reddit suggereert dat DPM++ 2M Karras wellicht de nauwkeurigere sampler is, afhankelijk van de gebruikssituatie.

Node: Align Your Step Scheduler

Unsampling: Align Your Step Scheduler

Elke scheduler werkt hier prima - Align Your Steps (AYS) geeft echter goede resultaten met 16 stappen, dus ik heb ervoor gekozen om dat te gebruiken om de rekentijd te verminderen. Meer stappen zullen meer volledig convergeren, maar met afnemende meeropbrengst.

Node: Flip Sigma

Unsampling: Flip Sigma

Flip Sigma is de magische node die ervoor zorgt dat unsampling plaatsvindt! Door het sigma-schema om te keren, keren we het diffusieproces om van een schoon invoerbeeld naar representatieve ruis.

Node: Prompt

Unsampling: Prompt

Prompting is om de een of andere reden behoorlijk belangrijk in deze methode. Een goede prompt kan echt de samenhang van de video verbeteren, vooral hoe meer je de transformatie wilt pushen. Voor dit voorbeeld heb ik dezelfde conditionering aan zowel de unsampler als de resampler doorgegeven. Over het algemeen werkt dit goed - niets houdt je echter tegen om lege conditionering in de unsampler te zetten - ik vind dat dit helpt de stijltransfer te verbeteren, mogelijk met enig verlies van consistentie.

Node: Resampling

Unsampling: Resampling

Voor resampling is het belangrijk om ruis toevoegen uit te schakelen (hoewel het hebben van lege ruis in de AnimateDiff sample-instellingen hetzelfde effect heeft - ik heb beide gedaan voor mijn workflow). Als je ruis toevoegt tijdens resampling, krijg je een inconsistente, ruisachtige uitkomst, althans met standaardinstellingen. Anders stel ik voor om te beginnen met een vrij lage CFG gecombineerd met zwakke ControlNet-instellingen, omdat dit de meest consistente resultaten lijkt te geven, terwijl het de prompt nog steeds toestaat invloed op de stijl uit te oefenen.

Andere Instellingen

De rest van mijn instellingen zijn persoonlijke voorkeur. Ik heb deze workflow zo veel mogelijk vereenvoudigd terwijl ik nog steeds de belangrijkste componenten en instellingen heb opgenomen.

4. Workflow Informatie

De standaardworkflow gebruikt het SD1.5 model. Je kunt echter overschakelen naar SDXL door eenvoudigweg het checkpoint, VAE, AnimateDiff model, ControlNet model en stap schema model te veranderen naar SDXL.

5. Belangrijke Opmerkingen/Problemen

  • Flikkering - Als je kijkt naar de gedecodeerde en voorvertoonde latents die zijn gemaakt door unsampling in mijn workflows, zul je enkele met duidelijke kleurafwijkingen opmerken. De exacte oorzaak is mij onduidelijk, en over het algemeen hebben ze geen invloed op de eindresultaten. Deze afwijkingen zijn vooral duidelijk bij SDXL. Ze kunnen echter soms flikkering in je video veroorzaken. De belangrijkste oorzaak lijkt gerelateerd te zijn aan de ControlNets - het verminderen van hun sterkte kan helpen. Het wijzigen van de prompt of zelfs het enigszins aanpassen van de scheduler kan ook een verschil maken. Ik kom dit probleem nog steeds af en toe tegen - als je een oplossing hebt, laat het me dan weten!
    • DPM++ 2M kan soms de flikkering verbeteren.

6. Waar Vanaf Hier?

Dit voelt als een geheel nieuwe manier om videoconsequentie te beheersen, dus er is veel te verkennen. Als je mijn suggesties wilt:

  • Probeer ruis van verschillende bronvideo's te combineren/maskeren.
  • Voeg IPAdapter toe voor consistente karaktertransformatie.

Over de Auteur

Inner-Reflections

  • https://x.com/InnerRefle11312
  • https://civitai.com/user/Inner_Reflections_AI

Wilt u meer ComfyUI Workflows?

RunComfy

© Copyright 2024 RunComfy. Alle Rechten Voorbehouden.

RunComfy is de voornaamste ComfyUI platform, dat biedt ComfyUI online omgeving en diensten, samen met ComfyUI workflows met verbluffende visuals.