Chapter 2 Math Fundamentals
Part 3 2.6.1 Kinematic Models of Video Cameras 2.6.2 Kinematic Models of Laser Rangefinders
Mobile Robotics - Prof Alonzo Kelly, CMU RI 1
Outline • 2.6.1 Kinematic Models of Video Cameras • 2.6.2 Kinematic Models of Laser Rangefinders
Mobile Robotics - Prof Alonzo Kelly, CMU RI 2
Outline • 2.6.1 Kinematic Models of Video Cameras
– Perspective Projection
• 2.6.2 Kinematic Models of Laser Rangefinders
Mobile Robotics - Prof Alonzo Kelly, CMU RI 4
Video Cameras • Image formation in cameras follows the perspective
projection. • It is nonlinear. • Unique in two ways:
– reduces the dimension of the input vector by one – it requires a post normalization step to re-establish a unity scale
factor.
5 Mobile Robotics - Prof Alonzo Kelly, CMU RI
xi
yi
zi
wi
1 0 0 00 0 0 00 0 1 0
0 1f--- 0 1
xs
ys
zs
1
=
6
Video Cameras • By similar triangles:
• As a homogeneous transform:
zs
ys
xs
f
(xi,yi) (xs,ys,zs)
xixsf
ys f+-------------
xs1 ys f⁄+--------------------= =
z izsf
ys f+-------------
zs1 ys f⁄+--------------------= =
yi 0=
The nonlinearity culprit
ys
xs
zs
How can you tell this not invertible? Mobile Robotics - Prof Alonzo Kelly, CMU RI
Outline • 2.6.1 Kinematic Models of Video Cameras • 2.6.2 Kinematic Models of Laser Rangefinders
Mobile Robotics - Prof Alonzo Kelly, CMU RI 7
8
Laser Rangefinders • Two kinds
– Scanning devices use actuated mirrors to steer the beam.
– Flash ladars which work like cameras.
• For the former, model what happens when a unit vector is reflected off of all of the mirrors involved.
8 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Configurations
9 9 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Outline • 2.6.1 Kinematic Models of Video Cameras • 2.6.2 Kinematic Models of Laser Rangefinders
– The Reflection Operator – Kinematics of the Azimuth Scanner – Summary
10 10
Mobile Robotics - Prof Alonzo Kelly, CMU RI
Contrast with Robot Kinematics
• Robots -> fundamental operator is a rotation • Mirrors -> fundamental operator is a reflection
11
Link φ u ψ w 0 0 0 ψ1 0 1 0 L1 ψ2 0 2 0 L2 ψ3 0 3 0 L3 0 0
x0,1
y0,1
ψ1
x2
y2
ψ2 x3
y3
ψ3
y4
x4
L1 L2 L3
0
1 2 3
T40
c1 s1– 0 0
s1 c 1 0 0
0 0 1 00 0 0 1
c2 s2– 0 L1
s2 c2 0 0
0 0 1 00 0 0 1
c 3 s3– 0 L2
s3 c3 0 0
0 0 1 00 0 0 1
1 0 0 L3
0 1 0 00 0 1 00 0 0 1
=
11 Mobile Robotics - Prof Alonzo Kelly, CMU RI
12 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Reflection Operator
• Subtract twice the projection of incident ray onto mirror normal.
12
13 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Reflection Operator
Ref n̂( ) I 2 n̂ n̂⊗( )–1 2nxnx– 2n– xny 2n– xnz
2n– ynx 1 2n yny– 2n– ynz
2n– znx 2n– zny 1 2nznz–
= =
Outer Product
Matrix Reflection Operator (Householder Transform)
13
Mirror Gain
• When mirror rotates through angle θ
• Beam rotate through angle of 2θ
14
input
output
2θ θ
input output
14 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Box 2.6 Kinematic Modelling of Rangefinders • 1: Choose coordinates fixed to sensor
housing. • 2: Express beam leaving laser diode as a
unit vector. • 3: Express normal of mirror 1 in terms of
its rotation angle. • 4: Reflect the beam off mirror 1 • 5: Express normal of mirror 2 in terms of
its rotation angle. • 6: Reflect result of step 4 off mirror 2 • 7: Result is the orientation of the beam
expressed in terms of the mirror articulation angles.
15
input
output
mirror 1
mirror 2
15 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Outline • 2.6.1 Kinematic Models of Video Cameras • 2.6.2 Kinematic Models of Laser Rangefinders
– The Reflection Operator – Kinematics of the Azimuth Scanner – Summary
Mobile Robotics - Prof Alonzo Kelly, CMU RI 16
Scanning Mechanisms Azimuth
• Enter along x • Reflect around “z” • Reflect around “y” • Leave along “y”
Elevation
• Enter along z • Reflect around “-x” • Reflect around “xy” • Leave along “y”
17 Mobile Robotics - Prof Alonzo Kelly, CMU RI
18 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Azimuth Scanner
ys
xs Polygon mirror
Nodding mirror
18
19 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Azimuth Scanner
v̂p Ref n̂P( ) v̂m=
v̂m 0 1– 0T=
v̂p 0 sψ– cψT=
19
20 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Azimuth Scanner
α2--- π
4--- θ
2---–=put:
v̂p 0 sψ– cψT=
n̂n sα2--- 0 c
α2---–
T=
v̂n
0sψ–
cψ
2cψcα2---
sα2---
0
cα2---–
+
2cψcα2--- sα
2---
sψ–
cψ 2cψcα2--- cα
2---
–
cψsαsψ–
cψcα–
cψs π2--- θ–
sψ–
cψc π2--- θ–
–
= = = =
v̂n cψcθ[ ] sψ[ ]– cψsθ[ ]–T=
20
21 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Azimuth Scanner
• Equivalent to a rotation about y by θ and then a rotation about the new z axis by -ψ.
Rcosψcosθ
vs
xs
ys
zs
RcψcθRsψ–
R– cψsθ
= =
21
22 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Inverse Kinematics
vs
xs
ys
zs
RcψcθRsψ–
R– cψsθ
= =
Rψθ
xs2 ys
2 zs2+ +
ys– xs2 zs
2+⁄( )atan
z– s xs⁄( )atan
=
22
23 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Image of Flat Terrain
Setup:
23
24 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Image of Flat Terrain
R h cψsθβ( )⁄=
Image Plane
Ground Plane
hyperbola
xg h tθβ⁄=yg htψ sθβ⁄–=
zg 0=
24
25 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Resolution • Linearize fwd kinematics:
• Jacobian Determinant:
• Approximation:
dxg dygh ψsec( )2
sθβ( )3----------------------- dψdθ=
J R3
h------≈
Laser spot size / spacing Grows with
Cube of Range
dxg
dyg
0 h–sθβ( )2
----------------
h ψsec( ) 2–sθ β
-------------------------- htψcθβsθβ( )2
-------------------
dψdθ
×=
Outline • 2.6.1 Kinematic Models of Video Cameras • 2.6.2 Kinematic Models of Laser Rangefinders
– The Reflection Operator – Kinematics of the Azimuth Scanner – Summary
Mobile Robotics - Prof Alonzo Kelly, CMU RI 26
27 Mobile Robotics - Prof Alonzo Kelly, CMU RI
Summary
• Video cameras are modeled by a perspective projection.
• Laser rangefinder models are nonlinear and cannot be represented by a constant homogeneous transform - like a camera.
• However, our mechanism modeling rules apply perfectly (see text) and one can also use a reflection operator to model them.
27