Hej!
Robimy bardzo dużo zdjęć, a co za tym idzie – wiele z nich jest niechlujnych, z zabałagnionym tłem. Możemy jednak chcieć wykorzystać je do pochwalenia się naszym ryjkiem na jakimś publicznym profilu, gdyż np. naturalne, miękkie światło korzystnie eksponuje naszą facjatę. Podejścia mogą być dwa – albo zdecydujemy się na blur bądź zupełne usunięcie tła i zastąpienie go kolorem, lekkim gradientem, albo pokusimy się o wygenerowanie otoczenia za naszymi plecami, co z pewnością będzie zadaniem bardziej czasochłonnym, jeśli chcemy uzyskać satysfakcjonujące efekty.
Darmowe strony WWW z zaimplementowanym systemem do uploadu i podstawowej edycji zdjęć – w mojej osobistej ocenie – powinniśmy sobie darować. Mają szansę sprawdzić się przy prostych kształtach, fotografii przedmiotu który chcemy wystawić w ogłoszeniu, niekoniecznie chwaląc się hałdą prania na krześle. Prawdziwym wyzwaniem natomiast stają się portrety, ze szczególną uwagą skierowaną na element włosów.
Moje wypracowane, amatorskie workflow obejmuje dwa narzędzia: ComfyUI oraz Photoshopa. Posłużę się tutaj niepodpisanym zdjęciem znalezionym w internecie; przypadek nie ekstremalny, ale na pewno nie trywialny. Zadanie trwało kilka minut. Wymaga chwili uwagi, bo moim zdaniem nie ma obecnie narzędzia, które bez naszej ingerencji zapewni akceptowalną dokładność i realizm fotografiki.
Zacząć należy naturalnie od początku, zatem: Pobrać należy narzędzie ComfyUI. Sposób uruchomienia jak i cały manual dostępny oczywiście w linku. Do tego dołożyć musimy Rembg, który zassać możemy poprzez git clone do folderu custom nodes bądź używając Managera. Zdjęcie źródłowe uploaduje do pierwszego Node’a w interfejsie ComfyUI.
Uruchamiając pierwszy raz GUI, nie będziecie widzieć takiego schematu. To, co pokazałem na screenie, to przykładowe workflow, które zwykłym drag&drop możecie przeciągnąć z folderu narzędzia w custom_nodes/ComfyUI-Inspyrenet-Rembg. Odwrócenie maski, które dodałem od siebie, nie będzie teraz potrzebne. W zasadzie wystarczy tylko kliknąć Queue Prompt, poczekać chwilę na wykonanie zadanie i prawym przyciskiem myszy pobrać zdjęcie z Node’a Save Image.
W tym miejscu przechodzę do Photoshopa – instalacji raczej nie muszę przytaczać, a osoby nie posiadające dostępu do Adobe CC z pewnością mogą posłużyć się 7 dniowym trialem.
Otwieram zdjęcie źródłowe poprzez drag&drop, dzięki czemu nie muszę wymyślać rozdzielczości i innych parametrów projektu. Duplikuję warstwę (w prawym dolnym rogu) poprzez zaznaczenie Warstwa 1 i skrót CTRL+J. Klikając na zdjęcie w obszarze roboczym powinniśmy zobaczyć opcję Usuń tło.
Jak nazwa wskazuje, po kliknięciu AI postara się jak najlepiej oddzielić temat główny naszej fotografii od nienajkorzystniejszego tła.
W tym miejscu, posługując się Odejmij od maski, możemy wymazać pobieżnie pędzlem elementy, które nie powinny znaleźć się w finalnym zdjęciu – w moim przykładzie było to oparcie krzesła.
Ponownie używam CTRL+J, tym razem na już wcześniej skopiowanej warstwie. Robię to po to, by móc wrócić do każdego etapu pracy, jeśli potem coś pójdzie nie tak i efekt będzie niesatysfakcjonujący.
Dalej klikamy LPM na masce aktualnej warstwy
I wybieramy opcję Odwróć.
Tym razem klikamy PPM na masce aktualnej warstwy, aby wybrać Dodaj maskę do zaznaczenia. Powinniście zobaczyć przerywaną linię, oddzielającą tło i wasz obiekt na obszarze roboczym. Sporo już zrobione, także nie poddawać się moi drodzy. Na górnej belce klikamy Zaznaczenie → Zmień → Rozszerzanie. Domyślnie wpisuję wartość 5px, choć przy kiepskich rezultatach można ją zmodyfikować w obie strony.
Teraz gwóźdź programu, czyli Wypełnienie generatywne i nasze nowe tło. Tutaj hamuje Was już tylko fantazja i ewentualna cenzura od Adobe. Frazy mogą być różne: Forest, Blurred forest, blurred forest with warm colors etc. Jeżeli 3 pierwsze propozycje Wam się nie spodobają, możecie generować kolejne wariacje.
Efekt powinien wyglądać co najmniej nienajgorzej, choć mogą zdarzać się artefakty, np. przy dłoniach. Tutaj następuje już freestyle i kreatywność, używanie masek i pędzelka, zmiana wcześniej wspomnianego Rozszerzenia…
Natomiast zauważyć można, że elementy naszej postaci, zwłaszcza włosy, nie wyglądają tak ładnie i dokładnie jak w oryginale.
W tym momencie, znów przez drag&drop, przywołuję pobrane wcześniej zdjęcie z ComfyUI. Nałożone jako najwyższa warstwa, wykorzysta tło wygenerowane w Photoshopie (z uwzględnieniem postaci, dlatego te maski i duplikowanie warstw, tak więc nie powinno być zupełnie odstrzelone od pierwszego planu) i jednocześnie dokładniejszą, moim zdaniem, separację tła od obiektu z ComfyUI.
W tym momencie ostatni punkt programu, dla osób mających z tym styczność po raz pierwszy, pewnie najgorszy i najbardziej żmudny: poprawienie niedoskonałości i obiektów, które nie powinny były być uwzględnione przez algorytmy.
Jak widać na moim przykładzie, jest to krzesło. Mając wybraną najnowszą warstwę, dodajemy jej maskę klikając tutaj:
Wybieramy maskę naszej warstwy, żeby rysować pędzlem po niej, a nie po obrazie:
Wybieramy pędzel (skrót klawiszowy B), wybieramy PPM gdzieś na obrazie i dostosowujemy rozmiar oraz twardość pędzla: twardy kiedy chcemy rozpocząć i wymazać jak najwięcej, odciąć wyraźnie krawędzie, miękki natomiast kiedy chcemy coś pomazać np. w okolicy włosów. Na górze mamy także opcję Przepływ, która odpowiada za intensywność nacisku pędzla (więcej przejazdów, aby osiągnąć takie same krycie). Wybierając czarny kolor pędzla usuwamy, biały – przywracamy,
Oto finalny efekt, jaki udało mi się osiągnąć w kilka minut i nie pochylając się nad kadrem więcej niż przeciętny użytkownik (mimo że potrafiłem obrabiać jedno zdjęcie 12 godzin 🤣), posiadając oczywiście pewne obycie z Photoshopem:
Łokieć nie jest idealny, ale i takie były dane wejściowe. Zaznaczając narzędziem Lasso albo zwykłym Zaznaczeniem prostokątnym, możecie obrysować np. dany łokieć i wówczas wybrać wypełnienie generatywne. Nie podając niczego w prompcie, AI spróbuje odgadnąć i poprawić efekt, krawędź itp. Można też użyć tego, by usunąć zagniecenia na sukience, rozwiane włosy czy inne defekty.
Myślę, że efekt końcowy jest wart poświęcenia paru chwil, porównując uzyskany efekt z gotowymi narzędziami online czy nawet tymi implementowanymi dziś przez producentów bezpośrednio w telefonach. Oczywiście im lepsze zdjęcie oryginalne; ostrość, rozdzielczość, jakość światła, tym lepszy efekt możemy uzyskać.
Pozdrawiam!