ComfyUI Linear Mask Dilation
Twórz oszałamiające animacje wideo, przekształcając swój obiekt (tancerza) i spraw, aby podróżował przez różne sceny za pomocą efektu mask dilation. Ten workflow jest zaprojektowany do użycia z filmami z jednym obiektem.
Jak używać workflow ComfyUI Linear Mask Dilation:
- Prześlij film z obiektem w sekcji Input
- Wybierz żądaną szerokość i wysokość końcowego filmu, a także ile klatek z filmu wejściowego powinno być pominiętych za pomocą “every_nth”. Możesz również ograniczyć całkowitą liczbę klatek do renderowania za pomocą “frame_load_cap”.
- Wypełnij pozytywny i negatywny prompt. Ustaw czasy klatek batcha, aby pasowały do momentów, kiedy mają nastąpić przejścia scen.
- Prześlij obrazy dla każdego z kolorów mask IP Adapter obiektu:
- Biały = obiekt (tancerz)
- Czarny = Pierwsze tło
- Czerwony = Tło czerwonej maski dilation
- Zielony = Tło zielonej maski dilation
- Niebieski = Tło niebieskiej maski dilation
- Załaduj dobry checkpoint LCM (używam ParadigmLCM od Machine Delusions) w sekcji “Models”.
- Dodaj dowolne loras używając Lora stacker poniżej loadera modelu
- Naciśnij Queue Prompt
- Możesz dostosować szerokość, wysokość za pomocą dwóch wejść w lewym górnym rogu
- every_nth ustawia, ile klatek z wejściowego filmu powinno być pominiętych (2 = co druga klatka)
- Pola liczby w lewym dolnym rogu wyświetlają informacje o przesłanym filmie wejściowym: całkowita liczba klatek, szerokość, wysokość i FPS od góry do dołu.
- Jeśli masz już wygenerowany film z maską obiektu (musi być biały obiekt na czarnym tle), możesz odciszyć sekcję “Override Subject Mask” i przesłać film z maską. Opcjonalnie możesz wyciszyć sekcję “Segment Subject”, aby zaoszczędzić czas przetwarzania.
- Czasami segmentowany obiekt nie będzie idealny, możesz sprawdzić jakość maski za pomocą pola podglądu w prawym dolnym rogu widocznym powyżej. Jeśli tak jest, możesz eksperymentować z promptem w nodzie “Florence2Run”, aby celować w różne części ciała, takie jak “głowa”, “klatka piersiowa”, “nogi” itd., i sprawdzić, czy uzyskasz lepszy wynik.
Prompt
- Ustaw pozytywny prompt używając formatu batch:
- np. “0”: “4k, masterpiece, 1girl standing on the beach, absurdres”, “25”: “HDR, sunset scene, 1girl with black hair and a white jacket, absurdres”, …
- Negatywny prompt ma normalny format, możesz dodać embeddings, jeśli chcesz.
Mask Dilations
- Każda kolorowa grupa odpowiada kolorowi maski dilation, która będzie przez nią generowana.
- Możesz ustawić kształt maski, a także prędkość dilation i opóźnienie klatki za pomocą następującego node:
- shape: “circle” jest najdokładniejszy, ale dłużej się generuje. Ustaw to, gdy jesteś gotowy do wykonania końcowego renderowania. “square” jest szybki w obliczeniach, ale mniej dokładny, najlepszy do testowania workflow i decydowania o obrazach IP adapter.
- dilate_per_frame: Jak szybko maska powinna się rozszerzać, większe liczby = szybsza prędkość dilation
- delay: Ile klatek czekać, zanim maska zacznie się rozszerzać.
- Jeśli masz już wygenerowany film z kompozytową maską, możesz odciszyć grupę “Override Composite Mask” i przesłać go. Zaleca się omijanie grup mask dilation, jeśli nadpisujesz, aby zaoszczędzić czas przetwarzania.
Models
- Użyj dobrego modelu LCM dla checkpoint. Polecam ParadigmLCM od Machine Delusions.
- Możesz opcjonalnie określić AnimateLCM_sd15_t2v_lora.safetensors z niską wagą 0.18, aby dodatkowo poprawić końcowy wynik.
- Dodaj dowolne dodatkowe Loras do modelu używając niebieskiego Lora stacker poniżej loadera modelu.
AnimateDiff
- Możesz ustawić inny Motion Lora zamiast tego, którego użyłem (LiquidAF-0-1.safetensors)
- Dostosuj wartość Multival Dynamic float wyżej lub niżej w zależności od tego, czy chcesz, aby wynik miał więcej lub mniej ruchu.
IP Adapters
- Tutaj możesz określić odniesienia obiektów, które będą używane do renderowania tła dla każdej z masek dilation, a także swojego obiektu wideo.
- Kolor każdej grupy reprezentuje maskę, którą celuje:
- Biały = obiekt (tancerz)
- Czarny = Pierwsze tło
- Czerwony = Tło czerwonej maski dilation
- Zielony = Tło zielonej maski dilation
- Niebieski = Tło niebieskiej maski dilation
- Jeśli chcesz, aby końcowy render bardziej dokładnie podążał za obrazami IP adapter wejściowymi, możesz zmienić preset IPAdapter z VIT-G na PLUS w grupie IPA Unified Loader.
ControlNet
- Ten workflow wykorzystuje 5 różnych controlnets, w tym AD, Lineart, QR Code, Depth i OpenPose.
- Wszystkie wejścia do controlnets są generowane automatycznie
- Możesz wybrać nadpisanie filmu wejściowego dla controlnets Depth i Openpose, jeśli chcesz, odciszając grupy “Override Depth” i “Override Openpose” jak pokazano poniżej:
- Zaleca się wyciszenie grup “Generate Depth” i “Generate Openpose”, jeśli nadpisujesz, aby zaoszczędzić czas przetwarzania.
Sampler
- Domyślnie grupa HiRes Fix sampler będzie wyciszona, aby zaoszczędzić czas przetwarzania podczas testowania
- Zalecam omijanie grupy Sampler, gdy próbujesz eksperymentować z ustawieniami mask dilation, aby zaoszczędzić czas.
- Przy końcowych renderach możesz odciszyć grupę HiRes Fix, która podwyższy rozdzielczość i doda szczegóły do końcowego wyniku.
Output
- Są dwie grupy wyjściowe: lewa jest dla standardowego wyjścia sampler, a prawa dla wyjścia HiRes Fix sampler.
- Możesz zmienić miejsce, w którym pliki będą zapisywane, zmieniając string “custom_directory” w nodach “FileNamePrefixDateDirFirst”. Domyślnie ten node zapisuje filmy wyjściowe w katalogu oznaczonym czasem w katalogu “output” ComfyUI
- np. …/ComfyUI/output/240812/
<custom_directory>/<my_video>
.mp4
O Autorze
Akatz AI:
- Strona internetowa:
- https://www.youtube.com/@akatz_ai
- https://www.instagram.com/akatz.ai/
- https://www.tiktok.com/@akatz_ai
- https://x.com/akatz_ai
- https://github.com/akatz-ai
Kontakty:
- Email: akatzfey@sendysoftware.com