Whee am I? Using Vanishing Points
Vanishing point Vanishing line fo hoizon Vanishing point What can vanishing line tell us about me? Hoizon Camea pitch angle (looking down) Camea oll angle (tilted towad ight)
Whee am I w..t. Gound Plane? Camea u v 1 X Y K t C 1 2 3 W Z 1 How to compute?
What can a Vanishing Point tell us about? Camea v
What can a Vanishing Point tell us about? Camea Z 1 v
What can a Vanishing Point tell us about? Camea Z 1 1 C v K 1 2 3 t W 1 v
Single Vanishing Point Camea K -1 v 3 Z 1 1 C v K 1 2 3 t W 1 v K 3 v
Single Vanishing Point Camea K -1 v 3 Z 1 1 C v K 1 2 3 t W 1 v K 3 Kv -1 3-1 because 3 is a unit vecto. Kv Z vanishing point tells us about the suface nomal of the gound plane v
Single Vanishing Point Camea K -1 v 3 Z 1 1 C v K 1 2 3 t W 1 v K 3 Kv -1 3-1 because 3 is a unit vecto. Kv Z vanishing point tells us about the suface nomal of the gound plane Rotation ambiguity v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. 3D spatial otation: a sequence of Eule angle otation (oll/pitch/yaw). v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. Yaw: otation about z axis: R yaw cos -sin sin cos 1 v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. Yaw: otation about z axis: R yaw Pitch: otation about y axis: Rpitch cos -sin sin cos 1 cos sin 1 -sin cos v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. Yaw: otation about z axis: R yaw Pitch: otation about y axis: Rpitch cos -sin sin cos 1 cos sin 1 -sin cos Roll: otation about x axis: R oll 1 cos -sin sin cos v
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. Yaw: otation about z axis: R yaw Pitch: otation about y axis: Rpitch cos -sin sin cos 1 cos sin 1 -sin cos Roll: otation about x axis: R oll 1 cos -sin sin cos v -sin T 1 2 3 yaw pitch oll cos sin R R R cos cos
Single Vanishing Point Camea Kv -1 Kv 3-1 K -1 v 3 Z 1 1 Roll and pitch angle can be computed by the gound plane. -sin T 1 2 3 yaw pitch oll cos sin R R R cos cos Pitch: Roll: tan tan -1 31-1 32 33 2 2 32 33 v
Single Vanishing Point (Execise) ComputeCameaUsingVanishingPoint.m f = 1224; K = [f size(im,2)/2; f size(im,1)/2; 1]; m1 = [2563;25;1]; m2 = [2439;545;1]; m3 = [571;25;1]; m4 = [723;498;1]; l1 = GetLineFomTwoPoints(m1,m2); l2 = GetLineFomTwoPoints(m3,m4); v1 = GetPointFomTwoLines(l1,l2); v1 = v1/v1(3); 3 = inv(k)*v1/nom(inv(k)*v1) pitch = atan(-3(1)/nom(3(2:3))) oll = atan(3(2)/3(3)) 3 = -.736.8959.4381 pitch =.736 oll = 1.116
Two Vanishing Points Camea v Y v X
Two Vanishing Points Camea X 1 v Y v X Y 1
Two Vanishing Points Camea X 1 C v X K 1 2 3 t W X K 1 v Y v X Y 1
v Y Camea Two Vanishing Points v X X Y 1 1 C v X K 1 2 3 t W X K 1 C v Y K 1 2 3 t W Y K 2
v Y Camea Two Vanishing Points 1 X C v X K 1 2 3 t W X 3 K v X Y 1 C v Y K 1 2 3 t W Y K v K v -1-1 X 1, -1 2 K v X -1 1 K 2 3 1 2 K v Y Y : Othogonality constaint
Geometic Intepetation -1 KvX X 1
Geometic Intepetation -1 KvX X 1-1 KvY Y 1
Geometic Intepetation -1 KvX X 1-1 KvY Y 1
Geometic Intepetation K v K v -1-1 X Y -1 KvX X 1-1 KvY Y 1
Geometic Intepetation (Tanslation Ambiguity)
Geometic Intepetation (Tanslation Ambiguity)
Geometic Intepetation (Tanslation Ambiguity)
Two Vanishing Points Camea ComputeCameaUsingTwoVanishingPoints.m f = 4; K = [f size(im,2)/2; f size(im,1)/2; 1]; v Y v X l11 = GetLineFomTwoPoints(m11,m12); l12 = GetLineFomTwoPoints(m13,m14); l21 = GetLineFomTwoPoints(m21,m22); l22 = GetLineFomTwoPoints(m23,m24); v1 = GetPointFomTwoLines(l11,l12); v2 = GetPointFomTwoLines(l21,l22); 1 = inv(k)*v1/nom(inv(k)*v1); 2 = inv(k)*v2/nom(inv(k)*v2); 3 = Vec2Skew(1)*2; R =.2448 -.5178.424 -.1737 -.196 -.6978.9539.8327 -.1379 Not othogonal matix! det(r) =.577 R *R =.3299.294 -.236.294.5555 -.2327 -.236 -.2327 1.6224
Two Vanishing Points f = 1224; K = [f size(im,2)/2; f size(im,1)/2; 1]; ComputeCameaUsingTwoVanishingPoints.m Change focal length l11 = GetLineFomTwoPoints(m11,m12); l12 = GetLineFomTwoPoints(m13,m14); l21 = GetLineFomTwoPoints(m21,m22); l22 = GetLineFomTwoPoints(m23,m24); v1 = GetPointFomTwoLines(l11,l12); v2 = GetPointFomTwoLines(l21,l22); 1 = inv(k)*v1/nom(inv(k)*v1); 2 = inv(k)*v2/nom(inv(k)*v2); 3 = Vec2Skew(1)*2; Othogonal matix! R =.5846 -.8496.58 -.4149 -.3216 -.8367.6972.418 -.545 det(r) =.9948 R *R = 1.662 -.118.25 -.118.9757.285.25.285.953