
PhotoProcessor 3000
Wsadowe przygotowanie fotografii produktowej: tło, wyostrzenie, kadr 3000 × 3000.
- PROJECT
- AI-040
- MODEL
- BiRefNet_HR
- GPU
- CUDA, MIN. 6 GB VRAM
- CZAS / ZDJĘCIE
- 1–3 s (GPU)
- WYJŚCIE
- 3000 × 3000 px
- STATUS
- UKOŃCZONY
- DATA
- 23 sierpnia 2026
Desktopowa aplikacja Windows, która usuwa tło lokalnym modelem AI, wyostrza obraz, eksportuje w oryginalnej rozdzielczości, a następnie wykrywa obrys produktu, skaluje go proporcjonalnie i centruje na kwadracie 3000 × 3000 px z marginesem 30 px. Po jednorazowym pobraniu modelu działa bez internetu.
Kadr po lewej to zdjęcie ze studia — produkt na jasnym tle. Maska przesuwa się po nim od lewej do prawej i odsłania to, co zostaje po odjęciu tła: przezroczystość widoczna jako szachownica. Pionowy jasny pas na korpusie to odbicie softboxu — model musi rozpoznać je jako produkt, nie jako tło, i to jest w tej domenie najtrudniejsze.
PROBLEM
Sklep internetowy wymaga zdjęć w jednym formacie: ten sam kwadrat, ten sam margines, to samo tło. Ręczne doprowadzenie do tego stanu kilkuset zdjęć z sesji to praca mechaniczna i — co gorsza — niepowtarzalna. Po dwóch dniach kadrowania margines zaczyna „pływać”.
POMYSŁ
Zamknąć całą sekwencję w jednym programie i wyznaczyć kadr algorytmicznie, nie na oko: obrys produktu liczony z kanału alfa, skalowanie proporcjonalne, centrowanie, stały margines. Wtedy zdjęcie zrobione za pół roku wygląda w katalogu identycznie jak dzisiejsze.
PROJEKT
Kolejność operacji jest przemyślana. Najpierw usunięcie tła modelem BiRefNet_HR, bo dopiero bez tła da się wyliczyć rzeczywisty obrys produktu. Wyostrzanie działa jako maska nieostrości na kanale luminancji, nie na wszystkich kanałach — dzięki temu nie podbija szumu kolorowego na gładkich powierzchniach.
Eksport dzieli się na dwa etapy. Najpierw wersje _bg w oryginalnej rozdzielczości, które są materiałem archiwalnym. Dopiero z nich powstają wersje _3000px w trzech formatach: JPG, PNG i WEBP.
Wykrywanie obrysu z kanału alfa ma jeden warunek, który łatwo przeoczyć: maska musi być czysta na krawędziach. Pojedyncze piksele o niezerowej przezroczystości poza produktem — pozostałość po niedokładnej segmentacji — rozciągają prostokąt otaczający i psują centrowanie. Dlatego przed liczeniem obrysu maska przechodzi progowanie.
REALIZACJA
Aplikacja pracuje z GPU i bez niego. Bez karty NVIDIA wyniki są identyczne, ale usuwanie tła trwa dziesiątki sekund zamiast jednej do trzech — wskaźnik pokazuje wtedy wprost „CPU MODE”, żeby operator wiedział, dlaczego jest wolno, a nie zgadywał.
Repozytorium zawiera też webservice i skrypt budowania wersji przenośnej, a katalog foto pełni funkcję zestawu roboczego — leżą tam realne pliki wejściowe i wyniki, na których sprawdzana jest jakość obrysu.
Aplikacja ma też wariant usługi sieciowej i skrypt budowania wersji przenośnej. Ten drugi rozwiązuje realny problem organizacyjny: fotograf nie musi mieć skonfigurowanego środowiska Pythona, żeby przetworzyć własną sesję — dostaje katalog, który się uruchamia.
Margines 30 px przy kadrze 3000 px to jeden procent szerokości — wartość dobrana eksperymentalnie. Mniejszy sprawia, że produkt dotyka krawędzi po przeskalowaniu przez sklep; większy niepotrzebnie zmniejsza przedmiot w kafelku wyszukiwarki.
EFEKT
Przygotowanie partii zdjęć skróciło się z godzin do minut, a katalog stał się wizualnie spójny. Najbardziej wartościowy okazał się nie sam czas, tylko powtarzalność marginesu — element, którego przy pracy ręcznej nie da się utrzymać.
GALERIA
02 ZDJĘĆPhotoProcessor 3000 — zdjęcie po usunięciu tła (kanał alfa) · zrzut z projektu
PhotoProcessor 3000 — wynik końcowy 3000 × 3000 px z marginesem · zrzut z projektu
WNIOSKI
Ograniczenie się do jednej, wąskiej domeny (zdjęcia produktowe na jasnym tle) pozwoliło zrezygnować z ustawień. Program nie pyta o parametry, bo dla tego zastosowania istnieje jedna dobra odpowiedź — a każde dodatkowe pole w interfejsie to kolejne miejsce, w którym ktoś wprowadzi inną wartość niż wczoraj.


