Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Fotoškola  |  Seriály
Fotoaparáty  |  Objektivy
Fotomobily  |   Software
Příslušenství  |  Ostatní
Svět hardware  |  TV Freak
Svět mobilně

Jak na time-lapse v 8K s Nokií 808 PureView a multiexpozicí

7.7.2015, Milan Šurkala, článek
Dnes se pomalu začíná rozšiřovat 4K rozlišení, mnozí výrobci ale už nyní mluví o rozlišení 8K. Pojďte se s námi podívat, jak se dá 8K time-lapse motion-blur video natočit se starším smartphonem Nokia 808 PureView a technikou multiexpozice.
Vysoká rozlišení jsou dnes v módě. Sotva se přešlo na Full HD, už se objevují první fotoaparáty, televize a kamery se 4K rozlišením. Panasonic pak hovoří o tom, že v roce 2020 přijde ve větším dokonce 8K rozlišení a YouTube už tato videa dokonce podporuje. Můžete se na ně i podívat, byť drtivá většina z nás v nějakém nižším rozlišení, protože 8K televizi asi jen tak někdo nemá. Redakce Digimanie nezůstane pozadu a přispějeme naším prvním 8K videem, na které se můžete už dnes podívat (pro 8K rozlišení je potřeba se dívat z prostředí YouTube). Jde o motion-blur time-lapse video soumraku jednoho zamračeného letního dne nad sídlištěm v Havířově-Šumbarku. Jak ale uvidíte, skládání snímků pro vylepšení kvality obrazu si vyžádalo mnoho hodin práce.


8K time-lapse video pořízené smartphonem Nokia 808 PureView.

Otázkou je, čím takové video natočit a na čem zobrazit. Se zobrazením bude problém, protože 8K zobrazovací technologii zatím nemám k dispozici. Fotoaparát, který by natáčel 8K video, také ne, ale pro time-lapse video složené z fotografií už to nebude takový problém. 8K rozlišení je na každou stranu dvakrát tolik co 4K, takže ve výsledku neuvěřitelných 7680×4320 pixelů. To je 33,2 MPx! Ze všech fotoaparátů, které mám aktuálně k dispozici, tuto podmínku splňuje jediný přístroj, a to přes 3 roky starý smartphone Nokia 808 PureView se 41MPx čipem. Při poměru stran 16:9 fotí v rozlišení necelých 34 MPx, přesněji 7728×4354 pixelů. To je přesně to, co bylo potřeba. O pár desítek pixelů na stranu více, to bude stačit.

Nokia 808 PureView na stativu

Nokia 808 PureView má navíc velmi pěknou funkci intervalového snímání, které lze nastavit až na 1500 snímků. Interval může být nastaven na 5, 8, 10, 15, 30, 60, 300, 600 nebo dokonce 1800 sekund. Při 1500 snímcích a 5sekundové prodlevě to dělá 7500 sekund, tedy 2 hodiny a 5 minut. Snímání jsem zahájil 21. června při nejdelším dni v roce ve 20:01 a skončilo ve 22:06. Manuálně bylo nastaveno vyvážení bílé a citlivost na nejnižší hodnotu ISO 50. Protože se ale po přechodu na noc prodlužovala expozice až na 2,7 sekundy (maximum, co 808 PureView podporuje) a spolu s ukládáním a zpracováním snímků se nestíhal 5sekundový interval, smartphone byl za ony 2 hodiny a 5 minut schopen vyfotit pouze 1257 fotografií, což ve výsledku znamená necelých 50 sekund videa. Celkem to bylo 8,33 GB dat. Teď si ukážeme, jak jsem vylepšoval kvalitu záznamu (snižoval šum).

Zdrojová scéna ve 20 hodin
záznam ve 20:01, klikněte pro zvětšení


Zdrojová scéna ve 21 hodin
záznam ve 21:09, klikněte pro zvětšení


Zdrojová scéna ve 22 hodin
záznam ve 22:06, klikněte pro zvětšení


Jak je vidět, zdrojové snímky jsou docela tmavé v krajině, obloha je exponována správně. Noční snímky se s maximálním expozičním časem 2,7 sekundy nepodařilo dostatečně exponovat. Pokud bychom chtěli takový snímek prosvětlovat, je jasné, že z JPEGu bychom velmi rychle narazili na problém extrémně velkého šumu.


Tady vidíte 1:1 výřezy ze snímků. Šum sice není nějak extrémní, nicméně přítomen je, a když se podíváte na noční snímek, je jasné, že z takového JPEGu nic moc nevytáhnete. Využil jsem tedy myšlenku multiexpozice, kdy skládáním snímků přes sebe snížím šum a v důsledku toho zvýším i dynamický rozsah fotografie, neboť ve stínech bude mnohem méně šumu a tedy více užitečného signálu. Po dlouhém rozmýšlení jsem zvolil informaticky kulaté číslo 32 expozic sloučených do sebe. To znamená něco přes 2,5 minuty do jednoho snímku. Ve výsledku byl tedy první snímek videosekvence tvořen sloučením snímků 1-32, druhý snímek sloučením snímků 2-33, třetí 3-34 a tak dále.

Tím se dramaticky snížil šum, rozšířil dynamický rozsah ve stínech a výrazně se snížily i jakékoli jasové odlišnosti mezi snímky. Vedlejším efektem slučování je pohybové rozmazání, tzv. motion blur (to může být chtěný, ale někdy i nechtěný efekt - v tomto případě jsem multiexpozici zvolil kvůli eliminaci šumu a možnosti upravovat noční snímky, vedlejší produkt v podobě motion blur "nevadil"). Pokud tedy multiexpozici chcete dělat u videa, hledejte funkci "motion blur". Z dražších programů umí motion blur např. Adobe After Effects pro Adobe Premiere Pro, kde lze volit počet sloučených snímků a údajně umí i export do 16bitových TIFFů, což se může hodit. Zdarma jej umí třeba VirtualDub (efekt "motion blur"), ale umí slučovat pouze dva snímky. Pro toto video jsem však použil vlastní aplikaci, kterou jsem si k tomuto účelu slučování naprogramoval. Podívejme se, co tedy taková multiexpozice provedla s výsledky.


původní snímek

sloučenina 32 expozic

Tady krásně vidíte, jak sloučení 32 snímků do sebe nádherně eliminovalo v podstatě veškerý šum. Vše je zahlazeno a zůstala jen "pravda", která byla původně zakryta šumem. Ideální by bylo pochopitelně použít RAWy, ale 808 PureView bohužel RAWy neumí.


původní snímek

sloučenina 32 expozic

Také noční snímek je o něco hladší, ale tady jde vidět, že odšumování bohužel rozmývá některé části obrazu, takže sloučenina může být rozmytá ještě o to více. Možná si teď ale říkáte, proč se vlastně "drbat" s nějakým odšumováním pomocí slučování. Vtip je v tom, že obrázky, které jsou sloučené, mají eliminován šum a tím vzniká větší prostor pro další úpravy. Hned vysvětlím. Pokud vezmete noční snímek a budete jej chtít prosvětlit třeba o 1 EV, 8bitová hloubka JPEGu vám velmi rychle ukáže stopku. V podstatě okamžitě vyleze neakceptovatelný šum.

Pokud sloučíte 32 expozic a uložíte je opět do 8bitového JPEGu, budete na tom sice o něco lépe, ale rozsah jasů 0-255 pro každý barevný kanál znovu bude znamenat, že v editoru i relativně malé změny způsobí silnou degradaci obrazu (např. banding). Proto byly snímky slučovány do 16bitových TIFF snímků. Část multiexpozice se tak spotřebovala na potlačení šumu, další část na zjemnění barevné informace, kde by tyto malé změny už 8 bitů nepobralo. Tento problém si podrobněji vysvětlíme v některém z dalších článků. Nyní si jako důkaz ukážeme, co se stane, pokud o 1,5 EV zvýšíme expozici a stíny prosvětlíme o +40 v Camera Raw. To provedu u původního snímku v JPEG, sloučeniny v 8bitovém JPEG a sloučeniny v 16bitovém TIFF formátu.


Úprava původního snímku v JPEG
původní JPEG (+1,5 EV, +40 stíny), klikněte po zvětšení


Úprava multiexpozice v JPEGu
32expozice JPEG (+1,5 EV, +40 stíny), klikněte po zvětšení


Úprava multiexpozice v TIFFu
32expozice 16bitový TIFF (+1,5 EV, +40 stíny), klikněte po zvětšení


Vidíte ty rozdíly? Původní JPEG po prosvětlení ukazuje velmi nepěkné řádkování, mnoho pixelů v obraze bylo totálně černých a prosvětlení pak vytváří škaredé černé ustřelené pixely a plochy (zejména ve stromech a na střeše obchodu). Sloučenina uložená ve formátu JPEG zahlazuje řádkování (šum byl pokaždé jinde, a tak tyto struktury dokázal trochu "rozprášit"), nicméně obloha stále obsahuje velmi nepříjemný banding. Holt 8 bitů prostě nedokáže při prosvětlení nabídnout dostatečnou jemnost prokreslení. Stejně tak jsou vidět podpálené oblasti ve stínech.

Pokud např. 29 snímků z celkových 32 fotografií na jednom místě (určité pozici pixelu) obsahuje nulu a tři snímky jedničku (z rozsahu 0-255), pak sloučenina bude mít pořád nulu (3*1 / 32 = 0,094 po zaokrouhlení pořád nula). Naproti tomu stejná situace se už v 16bitovém snímku projeví. Zde je rozsah 0-65535, tedy 8bitová jednička z původního JPEGu je v 16 bitech číslo 256. Výsledkem je 3*256 / 32 = 24.

To v tak velkém rozsahu 0-65535 není mnoho, je ale jasné, že zatímco číslo 0,094 v 8bitovém celočíselném rozsahu 0-255 prostě nijak nerozlišíme, číslo 24 už v 16bitovém celočíselném rozsahu 0-65535 rozlišit lze. Díky tomu na snímcích převedených z TIFFu nevidíme žádný banding v obloze a také prosvětlená střecha obchodu je s relativně přijatelným šumem. Převedené TIFFy zabraly na disku 117 GB a vzorový TIFF si můžete také stáhnout. Pokud nepotřebujete dělat velké úpravy, všechny tyto kroky s 16 bity si klidně můžete odpustit a pracovat jen v 8 bitech pro dosažení motion blur efektu a snížení šumu.

Sloučení 32 expozic znamená dávání dohromady snímky z průběhu více než 2,5 minuty, tedy vytváří již zmíněný motion blur efekt. Proto je jasné, že toto se nedá použít pro dynamické děje, kde jde o každý jednotlivý okamžik. Zde to nevadilo, v podstatě jsme vytvořili 2,5minutovou expozici, což např. rozmazalo mraky, viz snímky níže. Auta pak vytváří pomalu se objevující a mizící duchy (nejprve se objeví na jednom snímku ze 32 sloučených, pak na dvou, třech,...).

Původní snímek
původní snímek


Multiexpozice s pohybovým rozmazáním
sloučenina 32 expozic


Když už jsem tedy měl přes 1200 TIFFů s 16bitovou baevnou hloubkou, ty jsem otevřel v RAW konvertoru Camera Raw (ten lze použít i jako filtr po JPEG nebo TIFF snímky) a na všechny snímky aplikoval stejné úpravy. Díky 16bitové barevné hloubce jsem si mohl dovolit i výrazné úpravy, spokojil jsem se ale s jemnějšími. Těmi byly lehká změna vyvážení bílé do teplejších tónů kvůli denním snímkům, zvýšení expozice o +0,8 EV, stažení světel po minimalizaci přepalů v obloze, prosvětlení stínů, zvýraznění černé, zvýšení zřetelnosti a zvýšení ostrosti.

Následně vzniklo přes 1200 upravených JPEG snímků, které byly konvertovány do 8K videosekvence ve formátu MOV. Výsledný videosoubor má 5,7 GB a můžete se na něj podívat na YouTube. Nyní si zrekapitulujeme postup prací a jejich význam:
  • Pořízení přes 1200 snímků intervalovým snímáním pomocí smartphonu Nokia 808 PureView s 5sekundovým intervalem. Nastaveno manuálně ISO 50 a denní vyvážení bílé, aby u nočních snímků nebyl zbytečně vysoký šum a snímky měly relativně stálou barevnost.
  • Zkopírování snímků do PC a jejich hromadné přejmenování (to mohou, ale nemusí vyžadovat další softwary, které budou použity).
  • Spuštění vlastního programu (naprogramovaného v C++ a OpenCV), který vyříznul 8K snímek a sloučil jej se 31 dalšími, uložil jej jako 16bitový TIFF, aby se s ním dalo výrazněji hrát v grafickém editoru. Toto platí pro všech více než 1200 snímků. Pro toto lze použít třeba After Effects.
  • Úprava všech více než 1200 TIFF snímků v Camera Raw se stejným přednastavením do formátu JPEG. Tím je zajištěno, že mezi snímky nedochází ke skokům v barvách nebo jasu.
  • Export těchto 1200 JPEG snímků do videa do formátu MOV, který podporoval 8K rozlišení.

Celkově toto vše zabralo zhruba 25-30 hodin snímání a procesorového času. Na to, že 8K video bylo pořízeno jen smartphonem, je jeho technická kvalita v oblasti šumu poměrně slušná. Pochopitelně, multiexpozice se nedá použít vždy a všude (spíše skoro nikdy a nikde), má však svá pozitiva, která se u tohoto videa projevila. V budoucnu se hodláme multiexpozici věnovat podrobněji a už nyní mohu slíbit, že její výsledky jsou někdy vskutku hodně zajímavé.


Autor: Milan Šurkala
Vystudoval doktorský program v oboru informatiky a programování se zaměřením na počítačovou grafiku. Nepřehlédněte jeho seriál Fotíme s Koalou o základech fotografování.