1 3D snímání: Metody a snímače Nejprve je potřeba definovat, že se v rámci tohoto předmětu budeme zabývat pouze bezkontaktními metodami zisku hloubkové informace. Metody pro 3D snímání lze dělit v podstatě do dvou základních skupin a to na aktivní a pasivní metody. Jako aktivním označujeme takové metody, kdy je do scény přidána nějaká dodatečná informace a zpravidla je kromě samotného snímače (fotoaparátu/ kamery) použité další zařízení. Naopak pasivní metody jsou takové, ve kterých je jediným zařízením stereosnímač (fotoaparát/kamera). V současné době je aktuální otázka použití kombinace aktivní a pasivní metody. Současně s dělením na aktivní a pasivní metody zisku 3D informace můžeme metody dělit na metody vhodné pro 3D TV a nevhodné pro 3D TV. Jak bylo vysvětleno v první kapitole pro zobrazení 3D videa či obrázku na 3D televizoru potřebujeme mít k dispozici klasické stereo snímky, které jsou poté v zobrazovači navzájem diskriminovány pomocí jednoho ze systému popsaných v kapitole 4. Jedinou metodou, jejímž přímým výstupem jsou stereo snímky je pasivní metoda s normálním postavením kamer. Výstupem všech ostatních metod je ovšem hloubková mapa pomocí, které lze druhý snímek dopočítat. Z toho vyplívá, že zejména aktivní metody snímání se překrývají s pojmem „metody pro tvorbu hloubkové mapy“.
1.1 Aktivní metody Základním znakem je přidání dodatečné informace do scény. Informace může být přidána pomocí laseru, infra zářiče či projektoru. O těchto metodách lze mluvit jako o optických metodách měření vzdálenosti. Optické měření jsou takové, které se provádí určitým světelným paprskem. Optické metody můžeme dále dělit na koherentní a nekoherentní. Obecným principem koherentních metod je interference. Naopak nekoherentní metody jsou založeny na triangulaci [1], vždy se v měřicí soustavě vyskytuje projektor, měřený povrch a detektor. Výhodou koherentních metod je možnost rozlišit výškové rozdíly v řádu mikrometrů i méně. Principiálním problémem koherentních metod je složitost realizace měření větší scény. Tento problém je však již v dnešní době řešitelný a praktický zástupcem je například herní systém KINECT (kapitola 2.1.1). Následně se budeme věnovat metodám koherentním, které jsou většinou založeny na promítání nějaké optické struktury na měřený předmět a následném vyhodnocení deformací této struktury způsobené profilem předmětu vedoucí ke zjištění výškové distribuce. Měřící proces spočívá v postupném promítání vzoru na předmět (resp. Referenční rovinu) a následném zachycení obrazu kamerou. Proužkový vzor je tvořen horizontálně se opakujícím se sinusovým signálem. Fáze tohoto signálu se při dopadu na objekt mění v závislosti na tom, na tom v jaké vzdálenosti se objekt nachází. Následné rozpoznávání fáze lze obecně rozdělit na dva způsoby. Jeden ze způsobů bere při určování fáze v bodě do úvahy i okolní body obrazu předmětu. Ten druhý využívá pouze hodnotu intenzity v daném bodě, ale je jasné, že pouze z této jedné hodnoty fázi určit nelze. Při tomto způsobu je třeba více obrazů předmětu, kdy je mezi jednotlivými snímky posunuta promítající se periodická optická struktura o přesně definovanou hodnotu. Z jednotlivých intenzit v tomto bodě již fázi určit lze. Prvního způsobu pro zjištění fáze využívá tzv. Fourierovská profilometrie zatímco druhého Phase-shifting profilometrie. Tyto dva zástupce nekoherentní optických metod si v následujících kapitolách popíšeme podrobněji Výstupem k dispozici Rendering. metodu na
pasivních metod je zpravidla hloubková mapa nebo model 3D scény a není dvojce snímků, druhý snímek může být dopočítán pomoci metody Depth Map Z tohoto důvodu nebývají aktivní metody používány při tvorbě 3D videa. Jako pomezí mezi aktivními a pasivními metodami, lze pokládat metodu kdy je do
scény snímané stereo snímačem přidána informace pomocí terčů, které mohou sloužit k nalezení přesných korespondencí mezi obrazy.
1.1.1 Fourierovská profilometrie Jak již název napovídá, metoda využívá pro zjištění fáze Fourierovy transformace (konkrétně její diskrétní podoby). Jednotlivé řádky jsou podrobeny tzv. rychlé Fourierově transformaci (FFT). Poté je ve Fourierově spektru provedena filtrace tak, aby byla zachována pouze první harmonická složka. Následně je provedena zpětná FFT. I přesto, že na vstupu byly čistě reálné hodnoty, zpětná FFT nám již obecně vrací řádek komplexních čísel. Fáze v daném bodě pak odpovídá argumentu komplexního čísla reprezentujícího daný bod. Tento způsob má však řadu nevýhod. Získaná data bývají často zatíženy nezanedbatelným šumem, který způsobí, že spektrální oblast odpovídající první harmonické jé téměř neidentifikovatelná. Nespornou výhodou této metody je ovšem možnost provádění měření v reálném čase. Pokud bude snímací kamera i promítací projektor nehybný, je možno zachytit referenční rovinu jenom jednou a poté již snímat pouze měnící se předmět. Při výkonnosti dnešních počítačů, kdy vyhodnocení obrazů scény trvá zlomky sekundy, se již dá mluvit o měření v reálném čase.
1.1.2 Phase- shifting profilometrie Obecně se zachytí N obrazů předmětu pro N >3 . Mezi jednotlivými obrazy je sinusová mřížka vždy posunuta o 1/N vlnové délky mřížky. Odvození vzorce pro výpočet fáze obecně pro N obrazů je velmi složitý. Pokud ale volíme specielně N = 4 , odvození se značně zjednoduší a také vzorec pro výpočet fáze nabývá jednoduchého tvaru. Proto je ve většině případů voleno právě N = 4 . I odvození v dalším odstavci je kvůli jednoduchosti ukázáno pro N =4 obrazů. Postupně je tedy na referenční plochu a na scénu projektorem promítány čtyři různé obrazy s různou počáteční fází signálu. Výstupem snímání je tedy osm snímků, 4 s promítáním na referenční osu a 4 na postavenou scénu. Následně jsou obrazy zpracovány na PC kde je využito rovnice. I ( x , y ) − I 2 ( x, y ) R ( x, y ) − R 2 ( x , y ) − arctan 1 , . φ m ( x, y ) − φ r ( x, y ) = arctan 1 ( ) ( ) ( ) ( ) I x , y − I x , y R x , y − R x , y 4 4 3 3
Kde Ii reprezentují intenzitní obraz promítání vzoru na předmět (scénu) a Ri reprezentují intenzitní obraz promítání na referenční plochu. Jelikož takový je obor hodnot funkce arcustangens. Matice fáze se skládá s několika oblastí, kde v každé jednotlivé oblasti je průběh fáze spojitý. Tyto oblasti jsou však od sebe odděleny nespojitostmi, kdy při přechodu s jedné oblasti do druhé se fáze mění skokem o hodnotu 2π. Tomuto jevu se obecně říká zabalování fáze nebo wrapping. Naproti tomu proces, který tyto nespojitosti odstraňuje, se nazývá rozbalování fáze neboli unwrapping. Unwrapping, neboli rozbalování fáze, je proces sloužící k odstranění nespojitostí vznikajících při výpočtu fáze z intenzitních obrazů. Na tento algoritmus jsou kladeny vysoké nároky, jelikož nedokonalé rozbalování fáze by mohlo být zdrojem sekundárních chyb vznikajících při zpracování měření. Příčinou těchto chyb bývají např. stíny v intenzitních obrazech. Pro tyto body je totiž vypočtená fáze čistě náhodná a obecně neodpovídá topografii předmětu.
1.1.3 Zástupce koherentních metod Kinec: Infra zářič a infra kamera Firma PrimeSence jejíž technologie tvoří hardwarové řešení senzoru Kinect používá kombinaci dvou aktivních metod. Hloubková mapa je zkonstruována na základě snímání promítaného pseudonáhodného vzoru složeného z primitiv (speckle pattern). Statický pseudonáhodný vzor je promítán v blízkém infračerveném spektru a je snímán CMOS IR kamerou. Pomocí triangulace jednotlivých primitiv vzoru (při známém geometrickém uspořádání masky promítaných bodů, IR projektoru a kamery) lze určit hloubku snímaného bodu. Zde se tedy principiálně metoda neliší od profilometrie popsané v předchozí kapitole. Rozdíl lze však nalézt ve způsobu identifikace a rozlišení bodů. V případě klasické phaseshifting profilometrie je v časovém multiplexu promítána na snímaný objekt sada fázově posunutých vzorů a tedy celá plocha obrazu (kromě případných stínů a okluzí) je snímána kamerou. Tato technika dává po vyhodnocení model spojitého zakřiveného povrchu. Naproti tomu u Kinectu je triangulován každé primitivum struktury zvlášť. V případě klasické profilometrie je každý posunutý bod identifikován specifickou sekvencí fází promítaného vzoru. U Kinectu je tato informace poskytována tvarem snímaných primitiv. Pro promítání jsou totiž záměrně použity astigmatické čočky (Obr. 1 b). Ty jsou tvořeny soustavou dvou cylindrických čoček s různými ohniskovými vzdálenostmi. Promítaný vzor je tedy v závislosti na vzdálenosti od projektoru definovaným způsobem rozostřen a to variantně ve vertikální a horizontální rovině. Je tedy známa závislost impulzní odezvy optického systému na vzdálenosti: PSF = f (z). Z této je získána přibližná hodnota vzdálenosti a tedy nepřímo i identifikace daného primitiva pro klasickou triangulaci. Názorně je metoda demonstrována na Obr.2. V závislosti na hloubce z se liší tvar projekce daného primitiva (46, 48).
a)
b)
Obr 1.1 Kinect: a) Celkový pohled na zařízení
b) Průřez optického svazku astigmatické soustavy čoček [4]
Obr 1.2Demonstrace funkce hloubkové kamery Kinect. [4]
Technické parametry Kinectu udávané výrobcem se vztahují na samotný hardware a lze dokázat jejich prokazatelné zlepšení použitím pokročilých metod zpracování obrazového signálu. Zde je uvádíme tedy pouze orientačně podle výrobce: Nominální rozsah hloubek: 0,8÷3,5 m Přesnost určení hloubky ve vzdálenosti 2 m: 1 cm Prostorové rozlišení (zrno) dloubkové mapy při vzdálenosti 2 m: 2 mm
1.2 Pasivní metody Základním znakem pasivních metod je zisk dvou snímků s různou pozicí kamer. Pasivní metody lze dále rozdělit, podle vzájemné pozice kamer při snímání. V prvním případě se jedná o obecný vztah kamer, kdy mohou být kamery vůči sobě posunuty ve všech třech směrech a mít různě natočenou osu snímání. Ukázka vzhledu získaných snímků je na Obr. 2.X. Při obecné poloze kamer není získán přímo levý a pravý snímek, které jsou potřeba k využití pro 3D video. Tento postup je zpravidla používán spíše při vytváření modelu scény, než pro 3D video. Nicméně i při obecném postavení kamer lze získat hloubkovou mapu a s její pomocí pak využitím metody DIBR vytvořit dva stereo snímky pro 3D video. Postup výpočtu modelu scény a hloubkové mapy budou popsány podrobněji v kapitole 6. V druhém případě se jedná o tzv. normální postavení kamer, kdy se pozice objektivů liší pouze o určitou horizontální vzdálenost a jejich optické osy jsou rovnoběžné. Vzdálenost mezi objektivy je označována jako stereobáze. V tomto případě jsou výstupem snímání přímo stereo snímky použitelné pro zobrazení 3D videa a pozice stejných „objektů“ scény se v obrazech liší pouze o horizontální paralaxu (viz obr. 1.2). V poslední době je stále běžnější situace, kdy jsou dva objektivy sloučeny do jedné kamery či fotoaparátu (viz. Kapitola 7).
C
C
C
C
C
C
Obr 1.3 Ukázka různého vzájemného postavení kamer