Portrait Light w wykonaniu Google to ciężka praca inżynierów i uczenie maszynowe

Przez lata producenci smartfonów prześcigali się w coraz to nowszych i bardziej udoskonalanych technologiach dotyczących mobilnej fotografii. Część z nich skupiała się na wprowadzaniu najnowocześniejszych dostępnych komponentów, inni z kolei na dopracowywaniu software’u. Do tych drugich z pewnością należy Google, który całą mobilno-fotograficzną magię opiera na oprogramowaniu. Jednym z takich przykładów może być Portrait Light.

Google umie w zdjęcia

Google od wprowadzenia Pixela na rynek, dołączył do miana producentów z jednym z najlepszych aparatów w smartfonach. Na przestrzeni lat wprowadzając na rynek kolejne modele – w tym tegorocznego Pixela 5 i Pixela 4a 5G – nic się nie zmieniło. Jego urządzenia to nadal jedne z lepszych mobilnych fotograficznych urządzeń. Amerykanie nie dołączyli jednak do wyścigu nowinek technologicznych i pogoni za megapikselami, a postanowili oprzeć się na oprogramowaniu.

Google w przeszłości zaskoczył nas już niejednokrotnie. Wprowadzony tryb nocny jest jednym z najlepszych dostępnych na rynku rozwiązań. Jeszcze lepsze wrażenie robi astrofotografia, która – wydłużając czas naświetlania w trybie nocnym – pozwala robić zapierające dech w piersiach zdjęcia nocnego nieba. Znając upodobanie tej firmy do ciągłego rozwijania oprogramowania odpowiedzialnego za fotografię, nie musieliśmy długo czekać na kolejne nowości w postaci Portrait Light.

Światło portretowe nie tylko w profesjonalnym studiu

Profesjonalni fotografowie, tworząc portrety, korzystają ze specjalistycznego sprzętu. Efektem ich pracy są często fascynujące zdjęcia, z których bije profesjonalizm. Nic dziwnego, skoro na ich wyposażeniu są lampy błyskowe, reflektory czy blendy fotograficzne, które pozwalają odbijać i modelować światło.

Nie każdy jednak ma ochotę, czas czy pieniądze, aby móc z usług takiego profesjonalisty skorzystać. Dzisiaj najlepszym fotografem jesteśmy my sami. Mając w kieszeni smartfon jesteśmy wolnymi strzelcami. Kiedy najdzie nas ochota albo nadarzy się okazja, sięgamy po urządzenie mobilne i pstrykamy zdjęcia, a dzięki rozwojowi technologii możemy cieszyć się namiastką profesjonalizmu.

Google jakiś czas temu ogłosił wprowadzenie do swoich urządzeń nowej funkcji nazwanej wymownie Portrait Light. Jak sama nazwa wskazuje, pozwala użytkownikom emulować profesjonalnie wyglądające portrety, dodając do nich symulowane kierunkowe źródło światła.

Zdjęcie przed obróbką (źródło: Google)
Zdjęcie po zastosowaniu Portrait Light (źródło: Google)
Porównanie zdjęcia przed obróbką i po zastosowaniu Portrait Light (źródło: Google)

Niby nic nadzwyczajnego, ale Google nie byłoby sobą, gdyby nie działało to perfekcyjnie. Aby więc Portrait Light mógł być doskonały i robić wrażenie, efekty światła są dodawane w odpowiedni – ustawiony przez algorytmy – sposób. Analizowana jest oryginalna fotografia i brane pod uwagę jej pierwotne oświetlenie. Aby uświadomić wszystkim, jak bardzo to jest zaawansowana technologia, Google postanowiło podzielić się informacjami na temat działania Portrait Light.  

Specjalna platforma i uczenie maszynowe

Fotografowie profesjonalni, tworząc swoje dzieła, polegają na percepcji podczas określania intensywności i kierunkowości światła. Urządzenia mobilne są jednak tego pozbawione, więc do gry muszą wkroczyć inne rozwiązania. W tym przypadku Google opracowało obliczeniowe odpowiedniki sygnałów percepcyjnych.

Pierwszym z nich jest nowatorski model uczenia maszynowego, którego zadaniem jest opracowywanie szerokiego zakresu dynamiki (HDR). Na podstawie portretu wejściowego można stworzyć wielokierunkowy profil oświetlenia sceny. Sztuczna inteligencja jest w stanie dać informacje zwrotne o kierunku, intensywności i kolorze wszystkich źródeł światła występujących w oryginalnej fotografii. Aby było to możliwe traktuje on twarz fotografowanej osoby jako tzw. próbki światła (lights probe). W skrócie wygląda to jak lustrzana kula, która odbija źródła światła.

Light Probe (źródło: Google)
Light Probe (źródło: Google)

Dzięki temu w postprodukcji możliwe jest naturalne oddanie źródła światła na różne obiekty. Mając takie źródło światła – po odpowiednim zmodelowaniu geometrii – można mapować light probe na analizowaną scenę. Właśnie to robi software Google.

Samo wyodrębnienie źródła światła i jego kierunku nie jest jednak wystarczające, aby móc tworzyć zaawansowane oświetlenie studyjne w smartfonach. Potrzebny do tego jest drugi sygnał, a mianowicie kierunkowość światła. Aby móc określić kierunek padania światła i to, jak wpływa na fotografowany obiekt, Google skorzystało ze specjalnej platformy Light Stage.

Platforma Light Stage (źródło: Google)
Platforma Light Stage (źródło: Google)

Ta sferyczny scena oświetleniowa składa się z 64 kamer, z których każda ma inny punkt widzenia. Zestaw wyposażony jest również w 331 indywidualnie programowalnych źródeł światła LED. Mając tak przygotowaną scenerię inżynierowie sfotografowali 70 różnych osób o różnym kształcie twarzy, płci, odcieniu skóry, fryzurze i ubiorze. W efekcie możliwym stało się wygenerowanie ich pola odbicia światła – a co za tym idzie – umiejscowienie obiektu w każdym nowym środowisku oświetleniowym.

Pole odbicia światła (źródło: Google)
Wykonanie serii zdjęć pozwala na stworzenie pola odbicia światła (z lewej).
W efekcie obiekt może zostać osadzony w wirtualnej scenerii zachowując realnie wyglądające oświetlenie całej sceny (z prawej).
(źródło: Google)

Odpowiedni trening AI pozwolił na wypracowanie specjalnych algorytmów pozwalających na wydobywanie tych informacji ze statycznego, pojedynczego zdjęcia. Uczenie maszynowe zostało uwzględnione w procesie obrazowania Google. Po wybraniu miejsca, z którego pochodzi światło portretowe, konieczne jest edytowanie fotografii w taki sposób, aby oświetlenie dobrze komponowało się z unikalnymi rysami twarzy. W oparciu o prawo Lamberta opracowywana jest mapa widzialności światła, która uczestniczy w całym procesie nakładania światła portretowego na fotografię. Tym oto skomplikowanym sposobem możemy cieszyć się funkcją Portrait Light.

Proces nakładania Portrait Light (źródło: Google)
Proces nakładania Portrait Light (źródło: Google)

Całość procesu jest dobrze zoptymalizowana. Na urządzeniach mobilnych efekty działania Portrait Light możemy oglądać na żywo na podglądzie z odpowiednią jakością i płynnością działania. Generowane modele nie zajmują wiele miejsca, Google mówi o rozmiarze poniżej 10 MB. W takich właśnie aspektach widać dbałość o szczegóły, które staje się powoli znakiem rozpoznawalnym Google.

Technologia robi wrażenie, ale tylko na Pixelach

Jak widać ta technologia jest naprawdę dopracowana, a efekty mogą robić wrażenie. Szkoda jednak, że Portrait Light jest póki co dostępne tylko dla urządzeń serii Pixel (funkcja włączana jest po stronie serwera, więc modyfikowane aplikacje Google Camera i Google Photos na niewiele się zdadzą).

Nie wiadomo, czy rozwiązanie to zostanie udostępnione innym urządzeniom. Ja liczę, że jednak tak się stanie. Wielką szkodą byłoby, aby tak zaawansowana i pracochłonna technologia, miałaby nie wylądować na większej liczbie urządzeń. Nie pozostaje nam więc nic innego jak tylko czekać, aż Google ogłosi funkcję Portrait Light dostępną dla wszystkich.

Portrait Light (źródło: Google)
Portrait Light (źródło: Google)