V nedávnom blogovom príspevku Google podrobne opísal technológiu, ktorá stojí za novou funkciou Portrait Light, ktorá debutovala s Pixel 5 a Pixel 4a 5G.
Po niekoľkých únikoch a fámach Google konečne začiatkom tohto roka v septembri predstavil Pixel 5 a Pixel 4a 5G. Ako sa očakávalo, zariadenia sa dodávali s množstvom nové funkcie Fotoaparátu Google čím sa odlišujú od ostatných telefónov s Androidom na trhu. Patrí medzi ne Cinematic Pan pre plynulé posúvanie videí, režimy uzamknutia a aktívnej stabilizácie, Noc Podpora zraku v režime Portrét a funkcia Portrait Light na úpravu osvetlenia portrétov automaticky. Niekoľko týždňov po spustení Google uvoľnil väčšinu týchto funkcií pre staršie zariadenia Pixel prostredníctvom aktualizácie Fotiek Google. A teraz sa spoločnosť podelila o niektoré podrobnosti o technológii, ktorá stojí za funkciou Portrait Light.
Podľa nedávneho príspevok v blogu od spoločnosti, funkcia Portrait Light bola inšpirovaná svetlami mimo fotoaparátu, ktoré používajú portrétni fotografi. Zlepšuje portrétne zábery modelovaním premiestniteľného zdroja svetla, ktorý možno pridať do scény. Po automatickom pridaní zdroj umelého svetla automaticky upraví smer a intenzitu tak, aby dopĺňala existujúce osvetlenie fotografie pomocou strojového učenia.
Ako vysvetľuje Google, táto funkcia využíva nové modely strojového učenia, ktoré boli trénované pomocou rôznych dátových súborov fotografií zachytených v Svetelné štádium výpočtový systém osvetlenia. Tieto modely umožňujú dve možnosti algoritmu:
- Automatické umiestnenie smerového svetla: Na základe algoritmu strojového učenia funkcia automaticky umiestni umelé zdroj svetla, ktorý je v súlade s tým, ako by profesionálny fotograf umiestnil zdroj svetla mimo fotoaparátu do skutočnosti sveta.
- Syntetické presvietenie po zachytení: Na základe smeru a intenzity existujúceho svetla v a Pri portrétovom zábere pridáva algoritmus strojového učenia syntetické svetlo, ktoré vyzerá realisticky a prirodzené.
Pre automatické umiestnenie smerového svetla Google vycvičil model strojového učenia na odhadnutie a vysoký dynamický rozsah, profil všesmerového osvetlenia pre scénu založený na vstupnom portréte. Toto nové model odhadu osvetlenia dokáže nájsť smer, relatívnu intenzitu a farbu všetkých svetelných zdrojov na scéne prichádzajúcich zo všetkých smerov, pričom tvár považuje za svetelná sonda. Tiež odhaduje pozíciu hlavy subjektu pomocou a Sieťka na tvár MediaPipe. Na základe vyššie uvedených údajov potom algoritmus určí smer pre syntetické svetlo.
Keď sa určí smer a intenzita syntetického osvetlenia, ďalší model strojového učenia pridá k pôvodnej fotografii zdroj syntetického svetla. Druhý model bol trénovaný pomocou miliónov párov portrétov, s prídavnými svetlami aj bez nich. Tento súbor údajov bol vytvorený fotografovaním sedemdesiatich rôznych ľudí pomocou výpočtového systému osvetlenia Light Stage, čo je sférické osvetľovacie zariadenie, ktoré obsahuje 64 kamier s rôznymi uhlami pohľadu a 331 individuálne programovateľných LED svetla zdrojov.
Každý zo sedemdesiatich subjektov bol zachytený pri osvetlení jedným svetlom za čas (OLAT) každou z 331 LED diód. Toto vygenerovalo ich odrazové polet.j. ich vzhľad, ako je osvetlený diskrétnymi úsekmi sférického prostredia. Odrazové pole zakódovalo jedinečnú farbu a svetlo odrážajúce vlastnosti pokožky, vlasov a oblečenia subjektu a určilo, ako lesklý alebo matný sa každý materiál javí na fotografiách.
Tieto obrázky OLAT boli potom lineárne sčítané, aby sa vykreslili realistické obrázky predmetu tak, ako by sa objavili na akomkoľvek inom osvetľovacie prostredie založené na obrázkoch, s komplexnými javmi transportu svetla ako je podpovrchový rozptyl správne zastúpené.
Potom namiesto toho, aby trénoval algoritmus strojového učenia na predpovedanie výstupných relit obrázkov priamo, Google trénoval model na výstup s nízkym rozlíšením kvocientový obrázok ktoré by sa dali použiť na pôvodný vstupný obraz na vytvorenie požadovaného výstupu. Táto metóda je výpočtovo efektívna a podporuje iba nízkofrekvenčné zmeny osvetlenia bez ovplyvňujúce vysokofrekvenčné detaily obrazu, ktoré sa priamo prenášajú zo vstupného obrazu, aby sa zachovali kvalitu.
Okrem toho spoločnosť Google vycvičila model strojového učenia na emuláciu optického správania svetelných zdrojov odrážajúcich sa od relatívne matných povrchov. Na tento účel spoločnosť vycvičila model na odhadnutie normálov povrchu vzhľadom na vstupnú fotografiu a potom ho aplikovala Lambertov zákon na výpočet "mapy viditeľnosti svetla" pre požadovaný smer osvetlenia. Táto mapa viditeľnosti svetla je potom poskytnutá ako vstup do kvocientového obrazového prediktora, aby sa zabezpečilo, že model bude trénovaný pomocou fyzikálnych poznatkov.
Aj keď sa to všetko môže zdať ako zdĺhavý proces, ktorý by hardvéru strednej triedy Pixel 5 zabral dosť času na spracovanie, Google tvrdí, že funkcia Portrait Light bola optimalizovaná na spustenie pri interaktívnych snímkových frekvenciách na mobilných zariadeniach s celkovou veľkosťou modelu menšou ako 10 MB.