Od nekoliko mutnih piksela do čiste fotografije lica

Ako ste oduvijek željeli s pikseliziranih slika niske rezolucije izvući više podataka nego što u njima ima, kao što to čine u CSI serijama, umjetna inteligencija najbolja vam je nada

Sandro Vrbanus utorak, 16. lipnja 2020. u 07:00

Poznata je scena iz kakvog kriminalističkog filma ili serije, a pogotovo u televizijskom serijalu CSI, kada forenzičari uzimaju loše snimke s nadzornih kamera i onda ih uvećavaju sve dok se na njima ne pojavi kristalno čisto lice kriminalca. Svakome tko se bavi digitalnom fotografijom ili nekim sličnim zanimanjem jasno je da takvo što ne funkcionira u stvarnom svijetu – tj. s digitalnih se zapisa ne može dobiti više podataka nego je u njima zapisano. Slika niske rezolucije ne može postati kristalno čista i velika, niti se detalji mogu "izvući" digitalnom manipulacijom ako nisu zabilježeni senzorom kamere.

Ili ipak nije tako? Već smo jednom pisali o primjeru korištenja umjetne inteligencije u svrhe prepoznavanja sadržaja fotografija i umjetnog povećavanja istih, koji je došao s njemačkog Instituta Max Planck. Istom su se idejom sada pozabavili i na američkom sveučilištu Duke, no orijentirali su se na fotografije ljudskih lica i stvorili novi algoritam za njihovo umjetno uvećavanje.

Do 64 puta veća fotografija

Novi algoritam naziva se PULSE (Photo Upsampling via Latent Space Exploration), a radi tako da prilikom "upscalinga" fotografija provjerava rezultat svojih izračuna tako da uvećanu fotografiju ponovno "downscalea" na manju rezoluciju. Kroz iteracije tako dolazi do finalnog rezultata – uvećane fotografije koja nakon smanjivanja najviše nalikuje onoj koja mu je zadana.

Primjer rada PULSE-a
Primjer rada PULSE-a

U usporedbi s dosadašnjim metodama PULSE daje mnogo oštrije rezultate s više detalja koji su se, prema pretpostavci AI algoritma, nalazili i na originalnoj slici više rezolucije. U traženju idealnog kandidata za uvećanu sliku koristi se računalna neuronska mreža tipa GAN (generative adversarial network), sastavljena od dvije mreže trenirane na istom setu fotografija.

Prva od njih radi na tome da predloži "originalnu" fotografiju visoke rezolucije, a druga analizira koliko ista, jednom kada je smanjena, liči na fotografiju koju se uvećava. Mreže tako surađuju i ponavljaju ovaj proces sve dok druga mreža ne može pronaći razlike između originalne i finalne fotografije.

Sustav je trenutačno u stanju od fotografije ljudskog lica veličine 16x16 piksela dobiti fotografiju rezolucije čak 1024x1024 piskela, odnosno uvećati je za čak 64 puta.