Luento-ohjelma | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
Näillä kolmella ehdolla
varmistutaan siitä, että
kiertomatriisin (kohteesta kuvalle) rivivektorit kuvaavat
yksikkövektoreita
(normality constraints). Vastaavat ehdot ovat voimassa myös
sarakkeille (vastaa kiertomatriisin rivejä kuvalta kohteeseen).
Jokaisen rivin ja sarakkeen elementtien neliöiden summa on siis
yksi.
Näillä kolmella ehdolla
varmistutaan siitä, että
kiertomatriisin (kuvalta kohteeseen) rivivektorit säilyvät
muunnoksen
aikana
kohtisuorassa toisiinsa nähden (othogonality constraints).
Vastaavat ehdot ovat voimassa myös sarakkeille (vastaa
kiertomatriisin rivejä kohteesta kuvalle).
Koska ortogonaliteettiehdot ovat voimassa kiertomatriisille, sen käänteismatriisi on sama kuin transpoosi (paljon helpompi laskea) R-1= RT.
Kiertomatriisit suuntakosinein kohteelta kuvalle (RT)
ja kuvalta kohteelle(R).
Vektorin s projisiointi karteesisen 2-D koordinaatiston koordinaattiakseleille.
Kuvavektorin s projisiointi XY koordinaatistoon tai xy-koordinaatistoon.
Kuvavektorin s projisiointi xy-koordinaatistoon koordinaatiston XY kautta.
Osakiertomatriisit omega, fii ja kappa
kohteesta kuvalle. Kaikki kierrot ovat
myötäpäivään ja koordinaatisto on
oikeakätinen. Huomaa: jos kierrot (tai joku kierto)
päätettäisiin tehdä vastapäivään tai
käytössä olisi vasenkätinen koordinaatisto, tulos
olisi toinen. Erilaisista kiertomatriisin määrityksistä
johtuvat suurimmat väärinkäsitykset muunnoksissa.
Esimerkiksi konenäössä suositaan usein
vasenkätistä koordinaatistoa.
Kuvakoordinaatiston kierto XY-koordinaatistosta xy-koordinaatistoon suuntakosinenin ilmaistuna.
Kuvakoordinaatiston kierto xy-koordinaatistosta XY-koordinaatistoon suuntakosinenin ilmaistuna.
Osakiertomatriisit omega, fii ja kappa kohteesta kuvalle. Kolmas
ulottuvuus on otettu mukaan jo tässä vaiheessa, jotta
yhdistäminen onnistuisi oikein.
Kohde ja kohdekoordinaatisto.
Kameran orientointi määritellään tässä
kuvanottopaikan O1 ja kuvaussuuntaan
sijaitetun
tähtäyspisteen T mukaan. Kamerakoordinaatisto xyz
sijoitetaan kuvanottopaikkaan ja projektiokeskus O1
on
origona. Kuvataso toimii koordinaatiston xy-tasona
ja kuvasivu asetetaan horisontin suuntaan. Tällöin x-akseli
suuntautuu kuvaussuuntaan nähden oikealle pisteeseen O2
ja y-akseli ylös. Koska
koordinaatisto
on oikeakätinen, z-akseli
osoittaa kuvaussuunnasta kohteesta kameraan eli katsojaan päin.
Oheisessa
piirroksessa kameramallina on stereokamera O1O2,
kameravakio c ja kuvakanta B.
Kuvausgeometria vastaa stereokuvauksen normaalitapausta.
Seuraavassa taulukossa esitettyjen merkintöjen selvennys. Kuva ei
täysin vastaa taulukon lukuarvoja, mutta periaate on sama.
Vektoreiden yksikkövektoreita on merkitty taulukoissa
pienellä u-kirjaimella.
Sekä kamera- että kohdekoordinaatisto
määrittyvät
kolmessa yhteisessä pisteessä T, O1
ja O2. Selvitetään ensin
pisteiden O1 ja
T välinen vektori. Tarkastellaan
tämän vektorin vaakaprojektiota kohdekoordinaatiston
XY-tasossa.
Jakamalla vektori pituudellaan saadaan sen
yksikkövektori (pituus siis on yksi). Kuvausjärjestelyn
mukaan kuvasivu asetettiin horisontin suuntaiseksi. Tällä
perusteella voidaan todeta, että tähtäysvektorin
tasoprojektio on suorassa kulmassa kameran x-akselin
suhteen. Näin
on saatu selville x-akselin
suunta yksikkövektorina. Kertomalla
x-akselin
suuntainen yksikkövektori kannan pituudella saadaan selville
suhteellinen vektori pisteiden O1
ja O2
välille (suunta ja pituus oikeat). Lopuksi toisen kuvan
projektiopiste O2 muutetaan
kohdekoordinaatistoon lisäämällä O1O2 O1:een. Tähtäyspisteen T
etaisyys kamerakoordinaatistossa (x,y,z)
projektiokeskusksesta O1 saadaan
laskemalla vektorin O1T pituus.
Etäisyys on negatiivinen, koska kameran z-akseli
kasvaa kuvaussuunnasta poispäin.
Kohde- ja kamerakoordinaatistojen välinen yhteys voidaan kuvata lausumalla vektorien O1O2, TO1xO1O2, ja TO1 suuntaiset yksikkövektorit kummassakin koordinaatistossa. Tällöin kohteen yksikkövektorit ijk vastaavat koordinaatistojen välistä kiertomatriisia Robject-to-camera ja kameran yksikkövektorit sen kantavektoreita ijk. Vektori TO1xO1O2 on siis kohtisuorassa vektorien O1O2 ja TO1 virittämän xz-tason suhteen.
Likimääräisen kiertomatriisin esittäminen kohteelta kuvalle. Huomaa, että koordinaatistot ovat vasenkätisiä, millä ei tässä tarkastelussa ole merkitystä. Koordinaatistokuvasta nähdään, että X- ja x-koordinaattiakselit kasvavat samaan suuntaan. Tällöin uudet x-koordinaatit saavat arvot suoraan vanhoista X-koordinaateista eli kiertomatriisin vasen yläalkio saa arvon 1. Uudet y-koordinaatit saavat arvoikseen vanhojen Z-koordinaattien vastaluvut eli oikea keskirivin alkioista saa arvon -1. Uusiksi z-koordinaateiksi tulevat vanhat Y-koordinaatit sellaisenaan eli keskimmäinen alarivin alkioista saa arvon 1. Loput alkiot ovat nollia.
Sama kiertomatriisi laskettuna tarkoista kulmasuureista. Kiertomatriisi R* vastaa yllä esitettyä likimääräistä kiertomatriisia kohteelta kuvalle.
Kiertokulmien arvot voidaan laskea kiertomatriisin alkioista. Kulmien likiarvoja on vaikea päätellä kuvasta, mutta ne saadaan yllä esitetyn likiarvoisen kiertomatriisin kautta.
Joissain tapauksissa kuvan ulkoisen orientoinnin kulmat
esitetään
kuvakierron (kappa) sekä suurimman kallistuksen suunnan (alpha) ja
suuruuden (nyy) avulla. Myös nämä voidaan laskea
kiertomatriisin
alkioista.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |