ComfyUI  >  Przepływy pracy  >  Konsekwentny transfer stylu z Unsampling

Konsekwentny transfer stylu z Unsampling

Ten workflow bada Unsampling jako metodę do konsekwentnego transferu stylu w Stable Diffusion. Poprzez kontrolowanie ukrytego szumu, Unsampling zapewnia, że ruch wideo i kompozycja są zachowane, co sprawia, że przejścia stylu są płynniejsze i bardziej spójne!

ComfyUI Unsampling Przepływ pracy

Consistent Style Transfer with Unsampling in Stable Diffusion
Chcesz uruchomić ten przepływ pracy?
  • W pełni funkcjonalne przepływy pracy
  • Brak brakujących węzłów lub modeli
  • Brak wymaganego ręcznego ustawiania
  • Cechuje się oszałamiającymi wizualizacjami

ComfyUI Unsampling Przykłady

ComfyUI Unsampling Opis

Ten przewodnik po Unsampling, napisany przez Inner-Reflections, znacznie przyczynia się do badania metody Unsampling w celu osiągnięcia dramatycznie spójnego transferu stylu wideo.

1. Wprowadzenie: Kontrola ukrytego szumu z Unsampling

Ukryty szum jest podstawą wszystkiego, co robimy w Stable Diffusion. Jest niesamowite zrobić krok wstecz i pomyśleć, co jesteśmy w stanie osiągnąć dzięki temu. Jednak ogólnie rzecz biorąc, jesteśmy zmuszeni używać losowej liczby do generowania szumu. Co jeśli moglibyśmy to kontrolować?

Nie jestem pierwszym, który używa Unsampling. Istnieje od bardzo dawna i był używany na różne sposoby. Do tej pory jednak ogólnie nie byłem zadowolony z wyników. Spędziłem kilka miesięcy na znalezieniu najlepszych ustawień i mam nadzieję, że spodoba ci się ten przewodnik.

Używając procesu próbkowania z AnimateDiff/Hotshot, możemy znaleźć szum, który reprezentuje nasze oryginalne wideo, co ułatwia jakikolwiek transfer stylu. Jest to szczególnie pomocne, aby zachować spójność Hotshot, biorąc pod uwagę jego 8-okienkowy kontekst.

Ten proces unsampling zasadniczo przekształca nasze wejściowe wideo w ukryty szum, który utrzymuje ruch i kompozycję oryginału. Następnie możemy użyć tego reprezentacyjnego szumu jako punktu wyjścia do procesu dyfuzji zamiast losowego szumu. Pozwala to AI na zastosowanie docelowego stylu, zachowując spójność czasową.

Ten przewodnik zakłada, że zainstalowałeś AnimateDiff i/lub Hotshot. Jeśli jeszcze tego nie zrobiłeś, przewodniki są dostępne tutaj:

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

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

Link do zasobów - Jeśli chcesz zamieszczać filmy na Civitai korzystając z tego workflow. https://civitai.com/models/544534

2. Wymagania systemowe dla tego workflow

Zalecany jest komputer z systemem Windows z kartą graficzną NVIDIA, która ma co najmniej 12 GB VRAM. Na platformie RunComfy użyj maszyny Medium (16 GB VRAM) lub wyższej. Ten proces nie wymaga więcej VRAM niż standardowe workflow AnimateDiff lub Hotshot, ale zajmuje prawie dwa razy więcej czasu, ponieważ zasadniczo wykonuje proces dyfuzji dwa razy - raz dla upsampling i raz dla resampling z docelowym stylem.

3. Wyjaśnienia węzłów i przewodnik ustawień

Węzeł: Custom Sampler

Unsampling: Custom Sampler

Główna część tego to użycie Custom Sampler, który dzieli wszystkie ustawienia, które zwykle widzisz w regularnym KSampler, na części:

To jest główny węzeł KSampler - dodanie szumu/ziarna w unsampling nie ma żadnego efektu (o ile mi wiadomo). CFG ma znaczenie - ogólnie rzecz biorąc, im wyższy CFG na tym etapie, tym bardziej wideo będzie przypominać oryginał. Wyższy CFG zmusza unsampler do bliższego dopasowania wejścia.

Węzeł: KSampler Select

Unsampling: KSampler Select

Najważniejsze jest użycie próbnika, który się zbiega! Dlatego używamy euler zamiast euler a, ponieważ ten ostatni prowadzi do większej losowości/niestabilności. Próbkowniki ancestral, które dodają szum na każdym kroku, uniemożliwiają czyste zbieganie się unsampling. Jeśli chcesz przeczytać więcej na ten temat, zawsze uznaję za przydatny. @spacepxl na reddit sugeruje, że DPM++ 2M Karras jest być może dokładniejszym próbnikiem w zależności od przypadku użycia.

Węzeł: Align Your Step Scheduler

Unsampling: Align Your Step Scheduler

Każdy scheduler będzie działał dobrze tutaj - Align Your Steps (AYS) jednak daje dobre wyniki przy 16 krokach, więc wybrałem to, aby skrócić czas obliczeń. Więcej kroków będzie się bardziej zbiegać, ale z malejącymi zwrotami.

Węzeł: Flip Sigma

Unsampling: Flip Sigma

Flip Sigma to magiczny węzeł, który powoduje wystąpienie unsampling! Odwracając harmonogram sigma, odwracamy proces dyfuzji, aby przejść od czystego obrazu wejściowego do reprezentacyjnego szumu.

Węzeł: Prompt

Unsampling: Prompt

Prompting ma duże znaczenie w tej metodzie z jakiegoś powodu. Dobry prompt może naprawdę poprawić spójność wideo, zwłaszcza jeśli chcesz mocniej przekształcić wideo. W tym przykładzie podałem to samo warunkowanie zarówno unsampler, jak i resampler. Zwykle działa to dobrze - nic jednak nie powstrzymuje cię przed umieszczaniem pustego warunkowania w unsampler - uważam, że pomaga to poprawić transfer stylu, być może z pewną utratą spójności.

Węzeł: Resampling

Unsampling: Resampling

Dla resampling ważne jest, aby wyłączyć dodawanie szumu (chociaż posiadanie pustego szumu w ustawieniach próbkowania AnimateDiff ma ten sam efekt - zrobiłem obie rzeczy w moim workflow). Jeśli dodasz szum podczas resampling, uzyskasz niespójny, szumiący wynik, przynajmniej przy domyślnych ustawieniach. W przeciwnym razie sugeruję rozpoczęcie od dość niskiego CFG w połączeniu ze słabymi ustawieniami ControlNet, ponieważ to wydaje się dawać najbardziej spójne wyniki, jednocześnie pozwalając na wpływ prompta na styl.

Inne Ustawienia

Pozostałe moje ustawienia to preferencje osobiste. Uprościłem ten workflow tak bardzo, jak to możliwe, jednocześnie uwzględniając kluczowe elementy i ustawienia.

4. Informacje o Workflow

Domyślny workflow używa modelu SD1.5. Możesz jednak przełączyć na SDXL, po prostu zmieniając checkpoint, VAE, model AnimateDiff, model ControlNet i model harmonogramu kroków na SDXL.

5. Ważne Uwagi/Problemy

  • Migotanie - Jeśli spojrzysz na zdekodowane i podglądane latencje utworzone przez unsampling w moich workflow, zauważysz niektóre z oczywistymi anomaliami kolorów. Dokładna przyczyna jest dla mnie niejasna i ogólnie nie wpływają one na końcowe wyniki. Te anomalie są szczególnie widoczne w SDXL. Mogą jednak czasami powodować migotanie w twoim wideo. Główną przyczyną wydaje się być związana z ControlNets - więc zmniejszenie ich siły może pomóc. Zmiana prompta lub nawet niewielka zmiana harmonogramu również może mieć znaczenie. Nadal napotykam ten problem od czasu do czasu - jeśli masz rozwiązanie, proszę daj mi znać!
    • DPM++ 2M może czasami poprawić migotanie.

6. Co dalej?

To wygląda jak zupełnie nowy sposób na kontrolowanie spójności wideo, więc jest wiele do odkrycia. Jeśli chcesz moje sugestie:

  • Spróbuj łączyć/maskować szumy z kilku źródłowych filmów.
  • Dodaj IPAdapter dla spójnej transformacji postaci.

O Autorze

Inner-Reflections

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

Chcesz więcej przepływów pracy ComfyUI?

RunComfy

© Prawa autorskie 2024 RunComfy. Wszelkie prawa zastrzeżone.

RunComfy jest wiodącą ComfyUI platformą, oferującą ComfyUI online środowisko i usługi, wraz z przepływami pracy ComfyUI cechującymi się oszałamiającymi wizualizacjami.