5

Prostor: vidění oběma očima

Porovnáním dvou z různých míst pořízených záběrů (ze dvou kamer, popřípadě ze dvou očí) téže scény lze získat informace o prostorovém uspořádání scény.


 


Jediný obraz sám o sobě pouze informuje o směru některého význačného bodu vůči středu čočky kamery a určuje tak jistou přímku, na které bod leží, nikoliv jeho prostorovou polohu. Přímky směrů dvou obrazů téhož bodů však tento bod již určují svým průsečíkem.

Pro uchopení situace budeme nejdříve předpokládat, že obě kamery (oči) jsou stejné konstrukce, jsou ve stejné výšce nad zemí, jsou zamířeny vodorovně bez náklonu a snímají tentýž objekt ve stejné výšce. Za těchto předpokladů můžeme situaci zcela vystihnout půdorysem (tj. průmětem na vodorovnou rovinu, neboli pohledem shora z velké výšky). První kameru můžeme zvolit jako referenční, umístěnou v počátku  a vůči ní určovat všechny další polohy. Druhou kameru určíme jejím posunutím a otočením vůči první kameře.

Grupa isometrií :

Grupa isometrií roviny je tvořena takovými transformacemi roviny, které zachovávají veškeré vzdálenosti. Speciálními isometriemi jsou posunutí (též zvané translace) a otáčení okolo počátku (rotace okolo počátku) a navíc platí, že každou isometrií lze jednoznačně rozložít do rotace a translace:
kde na libovolný bod v rovině tyto transformace působí následujícím způsobem:


    

Obdobné tvrzení platí v .

Je-li vzdálenost středu čočky kamery od snímací plochy a poloha obrazu význačného bodu na snímací ploše, potom je hledaná přímka parametrizovaná dána vztahem

Vůči druhé kameře by platilo totéž, je však výsledek třeba přepočítat vzhledem k jejímu otočení a posunutí vůčí počátku:
Průsečík těchto přímek určuje polohu význačného bodu.

Aby tato metoda byla úspěšná, je třeba rozpoznat, který bod v jednom obraze odpovídá kterému bodu v druhém. To není vždy zřejmé a je potom nutno určovaný bod výrazně vyznačit:


 

Ke kalibraci použité kamery lze použít záběr (originál 640x480 bodů se zobrazí kliknutím na zmenšenou verzi) čtverečkovaného papíru s vyznačenými jednotkami pořízený ze vzdálenosti 10 jednotek:


Data lze z fotek odečíst např. následujícím programem v jazyce Java sestávajícím ze dvou tříd: (MyImagePanel, MyImagesFrame). Výsledky takového (částečného) odečtený vyznačených bodů je v sitData.mw, nebo alternativně v textovém souboru identifiedPoints.txt. Jednotlivými členy tam uvedeného seznamu jsou souřadnice dvojíc bodů identifikovaných jako totožných.
Výpočet průsečíku dvou přímek odpovídající dvoum obrazům jednoho bodu  je (s potlačením vertikálního rozměru) proveden v programu  vypocet.mw (vypocet.html), celkový výpočet na základě zjištěného  pro výše uvedený obrázek  je proveden v programu prostor2.mw (prostor2.html) Pro animaci výsledku lépe znázorňující zjištěná prostorová data klikněte na obrázek níže:




Úloha (27.10.2009): Vykreslete v prostoru body pro dva obrázky téže předlohy. Vaše výsledky zašlete do 10.11.2009, 7:00 hod. přednášejícímu na adresu
 Tomas.Kopf@math.slu.cz