Projekt cvičení

Lokalizace kamery vůči vzoru





Navrhněte a realizujte vizuální systém, který provede lokalizaci (pozice) kamery na základě (kamerou snímaného) plošného vzoru.

1) navrhněte plošný vzor

- musí být navržen tak, aby každý pohled byl vhodný k přesnému určení pozice. Každý pohled musí být jedinečný z hlediska určení pozice v plošném vzoru a zároveň vytvořený tak aby určení bylo přesné vůči okolí.

- vzor by měl být také snadno a levně realizovatelný

- Je nutné určit krok vzoru (z něhož plyne přesnost) na základě nejmenší snímané plochy. Čím více plochy snímku vzor zabírá, tím přesněji lze polohu určit, tím dříve ovšem krajní prvky mizí ze snímku při pohybu.

- značky vzoru musí být snadno vyhledatelné a musí být vhodné k přesnému určení polohy

- je nutné určit pozici ve vzoru - každý pohled musí být (nějakým způsobem) jedinečný - odlišený od ostatních

2) Nasnímejte testovací sérii snímků

- snímky musí být vhodné pro otestování všech variant řešení

- snímky vzoru se snímají s osou kamery kolmou/libovolnou na jeho plochu.

3) vytvořte algoritmy pro nalezení prvků vzoru a pro určení umístění snímaného výřezu v celkové ploše

- například vzor je obdélníkový rastr (určený přímkami, šachovnicí, rohovými body), uvnitř rastru je zakódovaná pozice (tvarem, pozicí, počtem, kódem…). Nalezneme body rastru a pozice. Rastr a lokalizační značky mohou být spojeny (rastr může být tvořen, či spojen s unikátním vzorem. Lokalizační značky mohou tvořit vzor.).

4) určete algoritmy/postup pro určení polohy kamery ze které je vzor snímán.

- je-li vzor definovaný (jelikož jsme si ho vytvořili), známe pozice prvků vzoru (a kódu pozice) známe-li pozice bodu a jejich průměty, umíme vypočítat pozici kamery

Prumety=Rotace . Body3D+Posun

Rotace udává natočení kamery (při kolmé ose kamery na vzor by měly dva úhly být "nulové")

Posun udává pozici kamery

Hledáme tedy rotaci a posun. Rovnici bude nutné upravit tak (pokud už není ve správném tvaru) aby posun byl v souřadné soustavě vzoru.

- kamera má souřadnou (3D) soustavu (danou optickou osou a plochou detektoru, počátek v ohnisku) a vzor má (3D) souřadnou soustavu (danou plochou vzoru a kolmicí na něj. S počátkem například v některém bodě této plochy). Souřadné systémy jsou pevné, ale pohybují se vůči sobě. Osy jsou rotované (rotace z jedné soustavy do druhé, či naopak) a počátky jsou vůči sobě posunuté (posun je udáván vůči jedné (či druhé) ze souřadných soustav). Bod vzoru v jeho soustavě 3D se převede (rotace, posun) do soustavy kamery a promítne se na ni.

5) v případě nutnosti navrhněte a realizujte kalibrační proceduru

- patrně bude nutné určit parametry kamery (ohniskovou vzdálenost, která se potom nesmí měnit). Parametry se určí nejlépe tak, že se změří pozice několikrát s definovaným posunem. Alternativou je kalibrace na prostorový (3D) vzor.