II dio računalne fotografije: Računarski senzori i optika: Pregled digitalne fotografije

Napomena urednika: Ovo je drugi članak u trodijelnom nizu, gostujući saradnik Vasily Zubarev. Prvi i treći dio možete pronaći ovdje:

Možete posetiti Vasilijeva web stranica gde takođe demistificira druge složene predmete. Ako smatrate da je ovaj članak koristan, ohrabrujemo ga da mu date mala donacija kako bi mogao pisati o drugim zanimljivim temama.


Računarski senzor: Plenoptička i svjetlosna polja

Pa, naši senzori su sranje. Jednostavno smo se navikli i pokušavamo dati sve od sebe sa njima. Nisu se mnogo promijenili u dizajnu od početka vremena. Tehnički proces bio je jedino što se poboljšalo – smanjili smo udaljenost između piksela, borili se sa bukom čitanja, povećali brzinu čitanja i dodali određene piksele za faze automatskog fokusiranja sa detekcijom faze. Ali čak i ako snimimo najskuplju kameru kako bismo pokušali fotografirati mačku koja trči u zatvorenom svjetlu, mačka će pobijediti.

Već duže vrijeme pokušavamo izmisliti bolji senzor. Možete u Google pretraživati ​​mnoštvo istraživanja u ovom polju upitima “računarskog senzora” ili “ne-Bayerovog senzora”. Čak se i primjer pomicanja piksela može nazvati pokušajem poboljšanja senzora proračunima.

Ipak, najperspektivnije priče posljednjih dvadeset godina stižu nam s plenoptičnih kamera.

Da bih smirio osjećaj predstojeće dosadne matematike, dodaću vam insidersku notu – posljednja kamera Google Piksela pomalo je plenoptična. Sa samo dva piksela u jednom, još uvijek je dovoljno za izračunavanje prilične optičke dubine karte polja bez da imate drugu kameru kao i svi drugi.

Plenoptici su moćno oružje koje još nije pucalo.

Plenoptična kamera

Izumljen 1994. godine. Prvi put je sastavljen na Stanfordu 2004. Prvi potrošački proizvod – Lytro, objavljen 2012. godine. VR industrija sada aktivno eksperimentira sa sličnim tehnologijama.

Plenoptična kamera razlikuje se od uobičajene po samo jednoj modifikaciji. Njegov senzor prekriven je mrežom sočiva od kojih svaka pokriva nekoliko pravih piksela. Ovako nešto:

Ako rešetku i senzor postavimo na pravoj udaljenosti, vidjet ćemo oštre pikselske grozdove koji sadrže mini verzije izvorne slike na završnoj RAW slici.

Očigledno, ako iz svakog klastera uzmete samo jedan središnji piksel i napravite sliku samo iz njih, to se neće razlikovati od onog snimljenog standardnom kamerom. Da, pomalo gubimo u razlučivosti, ali samo ćemo zatražiti da Sony u sljedeći senzor ubaci više megapiksela.

Tu započinje zabavni deo. Ako iz svakog klastera uzmete još jedan piksel i izradite sliku ponovo, dobivate standardnu ​​fotografiju, samo kao da je snimljena kamerom pomaknutom za jedan piksel u prostoru. Tako sa klasterima 10×10 piksela dobijamo 100 slika iz „malo“ različitih uglova.

Što je veća veličina klastera, to više slika imamo. Međutim, rezolucija je niža. U svijetu pametnih telefona sa 41-megapiksela senzori, sve ima granicu, iako možemo malo zanemariti razlučivost. Moramo održati ravnotežu.

U redu, imamo plenoptičnu kameru. Šta mi možemo učiniti s tim?

Pošteno preusmjeravanje

Značajka o kojoj su se svi zujali u člancima koji pokrivaju Lytro je mogućnost podešavanja fokusa nakon snimanja. “Pošteno” znači da ne koristimo algoritme za vraćanje debljine, već samo dostupne piksele, odabir ili prosječenje u ispravnom redoslijedu.

RAW fotografija snimljena plenoptičnom kamerom izgleda čudno. Da biste iz njega izvukli uobičajeni oštar JPEG, prvo ga morate sastaviti. Rezultat će se razlikovati ovisno o tome kako odaberemo piksele iz RAW-a.

Što je klaster udaljeniji od tačke udara izvorne zrake, to je zrak više defokusiran. Jer optika. Da bismo sliku pomaknuli u fokusu, samo moramo odabrati piksele na željenoj udaljenosti od originala – bilo bliže ili dalje.

Slika bi trebala biti pročitana s desna na lijevo dok nekako uspostavljamo sliku, znajući piksele na senzoru. Odozgo dobijamo oštru originalnu sliku, a ispod izračunavamo šta je stajalo iza nje. Odnosno, računski pomjeramo fokus.

Proces pomicanja fokusa prema naprijed malo je složeniji jer u tim dijelovima klastera imamo manje piksela. U početku, programeri kompanije Lytro zbog toga nisu ni želeli pustiti korisnika da se fokusira ručno – kamera je sama odlučila pomoću softvera. Korisnicima se to nije svidjelo, pa je ova značajka dodata u kasnijim verzijama kao “kreativni način”, ali s vrlo ograničenim refokusom upravo iz tog razloga.

Karta dubine i 3D pomoću jednog objektiva

Jedna od najjednostavnijih operacija u plenoptici je dobiti dubinska karta. Trebate samo prikupiti dvije različite slike i izračunati kako se predmeti pomeraju između njih. Što je pomak više – to je udaljenija od kamere od objekta.

Google je nedavno kupio i ubio Lytro, ali je upotrijebio njihovu tehnologiju za svoj VR i … Pixelovu kameru. Počevši od Pixela 2 kamera je postala “malo” plenoptična, iako sa samo dva piksela po klasteru. Kao rezultat toga, Google ne mora instalirati drugu kameru kao i sva druga cool djeca. Umjesto toga, pomoću jedne fotografije mogu izračunati kartu dubine.

Slike koje vide gornji i donji podpikseli kamere Google Pixel. Prava je animirana radi jasnoće (kliknite za uvećanje i pogledajte animaciju). Izvor: Google
Karta dubine dodatno se obrađuje s neuronskim mrežama kako bi pozadina postala zamagljena. Izvor: Google

Karta dubine izrađena je na dva snimka pomaknuta za jedan pod-piksel. Ovo je dovoljno za izračunavanje rudimentarne karte dubine i odvajanje prednjeg plana od pozadine kako biste ga zamaglili nekim modernim bokehom. Rezultat ove stratifikacije je i dalje uglađen i “poboljšan” neuronskim mrežama koje su obučene za poboljšanje mapa dubina (umjesto da promatraju, kako mnogi ljudi misle).

Trik je u tome što smo dobili pametne telefone gotovo bez naknade. Već jesmo staviti leće na ovim sićušnim senzorima da povećaju svjetlosni tok barem nekako. Neki patenti iz Googlea sugeriraju da bi budući telefoni Pixel mogli ići dalje i prekrili četiri fotodiode objektivom.

Rezanje slojeva i predmeta

Ne vidite svoj nos, jer vaš mozak kombinira konačnu sliku iz oba oka. Zatvorite jedno oko i na rubu ćete vidjeti ogromnu egipatsku piramidu.

Isti učinak može se postići i u plenoptičnoj kameri. Sastavljanjem pomaknutih slika s piksela različitih klastera možemo na objekt gledati kao iz nekoliko točaka. Isto kao i naše oči. Daju nam dvije sjajne mogućnosti. Prvo možemo procijeniti približnu udaljenost do objekata, što nam omogućava lako odvajanje prednjeg plana od pozadine kao u životu. I drugo, ako je objekt mali, u potpunosti ga možemo ukloniti sa fotografije jer možemo efikasno gledati oko objekta. Kao nos. Samo ga klonirajte. Optički, za stvarno, bez Photoshopa.

Pomoću toga možemo izrezati drveće između kamere i objekta ili ukloniti padajuće konfete, kao u donjem videozapisu.

“Optička” stabilizacija bez optike

Iz plenoptičnog RAW-a možete napraviti stotinu fotografija s pomicanjem nekoliko piksela na cijelom području senzora. U skladu s tim, imamo cev prečnika leće unutar koje možemo slobodno kretati točku snimanja, čime se kompenzira tresenje slike.

Tehnički gledano, stabilizacija je i dalje optička, jer ne moramo ništa izračunavati – samo odabiremo piksele na pravim mjestima. S druge strane, svaka plenoptična kamera žrtvuje broj megapiksela u korist plenoptičkih mogućnosti, a bilo koji digitalni stabilizator djeluje na isti način. Lijepo je imati ga kao bonus, ali koristiti ga samo radi sebe skupo je.

Što su senzori i sočiva veći, to je veći prozor za kretanje. Što su više mogućnosti kamere, to će više ozonskih rupa imati ovaj cirkus za napajanje električnom energijom i hlađenjem. Da, tehnologija!

Borba s Bayerovim filterom

Bayer filter je i dalje potreban čak i uz plenoptičnu kameru. Nismo smislili nijedan drugi način za dobijanje živopisne digitalne slike. I koristeći plenoptički RAW, možemo prosječiti boju ne samo po grupi obližnjih piksela, kao u klasičnom demosaicingu, već i koristeći desetak njegovih kopija u susjednim klasterima.

U nekim se člancima to naziva „izračunava super rezolucija“, ali bih je doveo u pitanje. U stvari, smanjujemo stvarnu razlučivost senzora u ovih desetak puta prvo da bismo ga ponovo mogli ponosno vratiti. Morate se jako potruditi da ga prodate nekome.

Ali tehnički je još zanimljivije od tresenja senzora u spazmu koji se pomiče u pikselu.

Računarski otvor (bokeh)

Oni koji vole pucati bokeova srca oduševit će se. Budući da znamo kako upravljati refokusom, možemo krenuti dalje i uzeti samo nekoliko piksela iz nefokusirane slike i ostale iz normalne. Tako možemo dobiti otvor bilo kojeg oblika. Jej! (Ne)

Mnogo više trikova za video

Dakle, da se ne odmaknemo previše od teme fotografije, svi koji su zainteresirani trebaju provjeriti veze iznad i ispod. Sadrže oko pola tuce drugih zanimljivih aplikacija plenoptičke kamere.

Svetlosno polje: Više od fotografije, manje od VR

Objašnjenje plenoptika počinje sa svjetlosnim poljima. I da, iz naučne perspektive, plenoptična kamera snima svjetlosno polje, a ne samo fotografiju. Plenus dolazi od latinskog „punog“, tj. Prikuplja sve informacije o zrakama svjetlosti. Baš kao i plenarna sjednica parlamenta.

Idemo do dna toga da shvatimo što je svjetlosno polje i zašto nam treba.

Tradicionalne fotografije su dvodimenzionalne. Kada zrak pogodi senzor, na fotografiji će se pojaviti odgovarajući piksel koji jednostavno bilježi svoj intenzitet. Fotoaparat ne zanima odakle je zrak došao, je li slučajno pao sa strane ili se odbio od drugog predmeta. Fotografija bilježi samo točku sjecišta zrake s površinom senzora. Dakle, nekako je 2D.

Slike svjetlosnog polja su slične, ali s novom komponentom – porijeklom i uglom svake zrake. Niz mikrolena ispred senzora kalibriran je tako da svaki objektiv uzorkuje određeni dio otvora glavne leće, a svaki piksel iza svakog objektiva uzorkuje određeni skup kutova zraka. A budući da svjetlosne zrake koje proizlaze iz objekta s različitim kutovima padaju preko različitih piksela na senzor kamere svjetlosnog polja, možete izgraditi razumijevanje svih različitih dolaznih uglova svjetlosnih zraka iz ovog objekta. To znači da kamera učinkovito snima vektore zraka u 3D prostoru. Poput izračunavanja osvjetljenja videoigre, ali obrnuto – pokušavamo uhvatiti scenu, a ne stvarati. Svetlosno polje je skup svih svetlosnih zraka u našoj sceni – hvataju i informacije o intenzitetu i kutu o svakom zraku.

Postoji puno matematičkih modela svjetlosnih polja. Evo jednog od najreprezentativnijih.

Svetlosno polje je u osnovi vizuelni model prostora oko njega. Mi lako matematički možemo izračunati bilo koju fotografiju unutar ovog prostora. Tačka gledišta, dubina polja, otvor blende – sve su to također izračunate; me oneutim, moţe se samo toliko preložiti stajalište koje odre determineduje ulazna zjenica glavne leće. Odnosno, količina slobode kojom možete promijeniti vidno polje ovisi o širini perspektiva koje ste uhvatili, a to je nužno ograničeno.

Volim crtati analogiju sa gradom ovdje. Fotografija je kao vaša omiljena staza od vašeg doma do šanka kojeg se uvijek sjećate, dok je svjetlosno polje mapa cijelog grada. Pomoću karte možete izračunati bilo koju rutu od točke A do B. Na isti način, znajući svjetlosno polje, možemo izračunati bilo koju fotografiju.

Za jednu običnu fotografiju to je pretjerano, slažem se. Ali evo VR, gdje su svjetlosna polja jedno od najperspektivnijih područja razvoja.

Imajući model objekta ili sobe sa svjetlosnim poljem omogućava vam da vidite ovaj objekt ili sobu iz više perspektiva, sa paralaksa pokreta i druge znakove dubine poput realnih promjena teksture i osvjetljenja dok pomičete glavu. Možete čak i putovati kroz svemir, iako u ograničenom stepenu. Čini se kao virtualna stvarnost, ali više nije potrebno graditi 3D model sobe. Možemo ‘jednostavno’ uhvatiti sve zrake unutar nje i iznutra izračunati mnogo različitih slika. Jednostavno, da. Za to se borimo.


Vasily Zubarev je berlinski programer Python-a te hobistički fotograf i bloger. Da biste vidjeli više njegovih djela, posjetite njegov veb stranica ili ga pratite dalje Instagram i Twitter.

Leave a Reply

Your email address will not be published. Required fields are marked *