cs 395/495-26: spring 2003 ibmr: week 3 b finish conics, & svd review jack tumblin...
Post on 20-Dec-2015
213 views
TRANSCRIPT
CS 395/495-26: Spring 2003CS 395/495-26: Spring 2003
IBMR: Week 3 B IBMR: Week 3 B
Finish Conics,Finish Conics,& SVD Review& SVD Review
Jack TumblinJack [email protected]@cs.northwestern.edu
““Circular Points’:Circular Points’:
No solutions to No solutions to xxTT C* C*x =0x =0
except 2except 2 complexcomplex xx vectors: and vectors: and
1 1 i i 0 0
1 1 -i -i 0 0
Recall: Degenerate ConicsRecall: Degenerate Conics
xxTT C x = 0 C x = 0 oror
• General form of point conic:General form of point conic:aaxx22 + b + bxyxy + c + cyy22 +d +dxx +e +eyy +f = 0 (or) +f = 0 (or)
aaxx1122 + b + bxx11xx22 + c + cxx22
22 +d +dxx11xx33 +e +exx22xx33 + f + fxx3322 = 0 = 0
• Very special ‘degenerate’ conic Very special ‘degenerate’ conic CC = = C*C*
gives angle gives angle between transformed lines between transformed lines L’,m’L’,m’::
aa b/2 d/2 b/2 d/2
b/2 c e/2 b/2 c e/2 d/2 e/2d/2 e/2 f f
xx11
xx22
xx33 = 0 = 0
xx11 x x22 x x33
11 0 0 0 0
0 1 0 0 1 0 0 0 00 0 0
(L(LTT C*C*’’ m) m)
(L(LT T C*C*’’ L’)(m L’)(mT T C*C*’’ m) m)cos(cos() = ) =
C*C* = C*= C*==
Undoing H: Metric RectificationUndoing H: Metric Rectification
• TransformedTransformed C* C* C* C*’ ’ has only 4DOFhas only 4DOF
• We can convert We can convert C*C*’ to ’ to (H(HA A HHPP) matrix!) matrix!
• Task is: Task is: ‘find ‘find C*C*’’, then find , then find HHA A HHPP from it… from it…
2D world space 2D world space
2D image 2D image space space
HHSS HHA A HHPP
C*C*== C*C*’’==11 0 0 0 0
0 1 0 0 1 0 0 0 00 0 0
LL MMmmLL
00
Compare HCompare HAA and H and HPP
(recall)(recall)H = H = HHSS H HA A HHP P ==
2D world space 2D world space
2D image 2D image space space
HHAALL MM
mm
2D image 2D image space space
HHPP
mmLL
LL (parallelogram)(parallelogram)
(quadrilateral)(quadrilateral)
(square)(square)(K matrix, 2DOF)(K matrix, 2DOF)
( v vector)( v vector)
K K 00
00T T 11
ssR R tt
00T T 11
I I 00 vvT T vv
? But how do we find ? But how do we find C*C*’ ?’ ?
One Answer: use perpendicular linesOne Answer: use perpendicular lines
– (Recall) we defined ‘world space’ (Recall) we defined ‘world space’ C*C* as as
– We know 2 world-space lines We know 2 world-space lines LL and and mm are are
perpendicularperpendicular iff iff LLTT C* C* m = 0 m = 0
– Also true for Also true for transformedtransformed L, mL, m and and C* C* : :
perpendicularperpendicular iff iff L’L’TT C* C*’’ m’ = 0 m’ = 0
11 0 0 0 0
0 1 0 0 1 0 0 0 00 0 0
? But how do we find ? But how do we find C*C*’ ?’ ?
• H = HH = HSS H HA A HHP P ==
• Book shows how to write transformed Book shows how to write transformed C*C*
as:as:
C*C*’ =’ =
where where KK is 2x2 symmetric (affine part: 2DOF) is 2x2 symmetric (affine part: 2DOF) vv is 2x1 vector, (projective part: 2DOF) is 2x1 vector, (projective part: 2DOF)
ssRR tt
00TT 11
II 00
vvTT vv
KK 00
00TT 11
KKKKT T KvKv
vvTTKK 00
? But how do we find ? But how do we find C*C*’ ?’ ?
• H = HH = HSS H HA A HHP P ==
• Book shows how to write transformed Book shows how to write transformed C*C*
as (simple, tedious):as (simple, tedious):
C*C*’ =’ =
where where KK is 2x2 symmetric (affine part: 2DOF) is 2x2 symmetric (affine part: 2DOF) vv is 2x1 vector, (projective part: 2DOF) is 2x1 vector, (projective part: 2DOF)
ssRR tt
00TT 11
II 00
vvTT vv
KK 00
00TT 11
KKKKT T KvKv
vvTTKK 00
!!!BUT DERIVATION & !!!BUT DERIVATION & RESULT IS WRONG!!! RESULT IS WRONG!!!
SKIP SKIP
‘‘Metric Rectification I’ pg 35,36!Metric Rectification I’ pg 35,36!
Method 2: Rearrange, ‘flatten’ Method 2: Rearrange, ‘flatten’ C*C*’ ’ constraint:constraint:
• Choose Choose 55 line pairs ( line pairs (LL11,M,M11) … () … (LL55,M,M55))
• For each one, For each one, LLT T C*C*’’ M = 0 M = 0 or: or:
• ‘‘flatten’ to one equation:flatten’ to one equation:
Undo H: Metric Rectification 2Undo H: Metric Rectification 2
C*C*’ ’ == H C*H C* H HT T = =
mm11
mm22
mm33
ll11 l l22 l l33= 0= 0
aa b/2 d/2 b/2 d/2
b/2 c e/2 b/2 c e/2 d/2 e/2d/2 e/2 f f
aa b/2 d/2 b/2 d/2
b/2 c e/2 b/2 c e/2 d/2 e/2d/2 e/2 f f
(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))
aabbccddeeff
= 0= 0
Method 2: Rearrange, or ‘flatten’ Method 2: Rearrange, or ‘flatten’ C*C*’’
• stack for all 5 line pairs:stack for all 5 line pairs:
• Solve for Solve for a,b,c,d,e,fa,b,c,d,e,f with SVD (null space; Ax=0)with SVD (null space; Ax=0)• Extract Extract HHAAHHpp from from C*C*’ ’ using SVD using SVD
Undoing H: Metric Rect. 2Undoing H: Metric Rect. 2
C*C*’ ’ == H C*H C* H HT T = = aa b/2 d/2 b/2 d/2
b/2 c e/2 b/2 c e/2 d/2 e/2d/2 e/2 f f
aabbccddeeff
= 0= 0
(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))(l(l11mm11) (l) (l22mm11+l+l11mm22) (l) (l22mm22) (l) (l33mm11+l+l11mm33) (l) (l22mm33+l+l33mm22) (l) (l33mm33))
SVD Review: What is it?SVD Review: What is it?
• Matrix Multiply: Ax = bMatrix Multiply: Ax = b– x and b are column vectorsx and b are column vectors– A has m rows, n columnsA has m rows, n columns
• N-dim. input spaceN-dim. input spaceM-dim. output spaceM-dim. output space– Rows of A = ARows of A = A11,A,A22,A,A33,... = new coordinate axes,... = new coordinate axes
– Ax = a dot product for each new axisAx = a dot product for each new axis
xx11
……xxnn
aa11 11 … a … a1n1n
…… … … aam1m1 … … a amnmn
= = bb11
……bbmm
xx11
xx22
AA22
AA11 AA33
bb33
bb22
bb11Ax=bAx=bxx bb
Input (N dim) Input (N dim) (2D)(2D) Output (M-dim) Output (M-dim) (3D)(3D)
• Sphere of all unit-length Sphere of all unit-length xx output ellipsoid output ellipsoid
• Its axes form orthonormal basis vectors Its axes form orthonormal basis vectors UUii::
SVD(A) = SVD(A) = UUSVSVTT columns of U = columns of U = OUTPUTOUTPUT basis vectors basis vectors
SVD Review: What is it?SVD Review: What is it?
xx11
xx22
bb33
bb22
bb11Ax=bAx=b11
Input (N dim.)Input (N dim.) Output (M dim.)Output (M dim.)
uu11uu22
xx11
ellipsoid (disk)ellipsoid (disk)
SVD Review: What is it?SVD Review: What is it?
• For each For each UUii , make a matching , make a matching VVii that: that:
– Transforms to Transforms to UUii (with scaling (with scaling ssii) : ) : ssii (A V (A Vii) = U) = Uii
– Forms an orthonormal basis of input spaceForms an orthonormal basis of input space
SVD(A) = USSVD(A) = USVVTT columns of V = columns of V = INPUTINPUT basis vectors basis vectors
xx11
xx22
Ax=bAx=bxx
Input (N dim.)Input (N dim.)
bb33
bb22
bb11
Output (M dim.)Output (M dim.)
uu11uu22
vv22
vv11
SVD Review: What is it?SVD Review: What is it?
• Finish: Finish: SVD(A) = SVD(A) = USVUSVTT
– add ‘add ‘missingmissing’ ’ UUii or or VVii, define these , define these ssii=0=0..
– Singular matrix Singular matrix SS: diagonals are : diagonals are ssii : ‘v-to-u scale factors’ : ‘v-to-u scale factors’
– Matrix Matrix UU, Matrix , Matrix VV have columns have columns UUii and and VVii
xx11
xx22
Ax=bAx=bxx
Input (N dim.)Input (N dim.)
bb33
bb22
bb11
Output (M dim.)Output (M dim.)
uu11
uu33
uu22
vv22
vv11
A = A = USVUSVT T ‘Find Input & Output Axes, Linked by Scale’‘Find Input & Output Axes, Linked by Scale’
‘‘Let SVDs Explain it All for You’Let SVDs Explain it All for You’– cool! U and V are Orthonormal! cool! U and V are Orthonormal! UU-1-1 = U = UTT, V, V-1-1 = V = VTT
– Rank(A)?Rank(A)? == # of non-zero singular values == # of non-zero singular values ssii – ‘‘ill conditioned’?ill conditioned’? Some Some ssii are nearly zero are nearly zero– ‘‘Invert non-square A’ ?Invert non-square A’ ? A=USV A=USVTT; A VS; A VS-1-1UUTT = I; = I;
so so AA-1 -1 == VV SS-1 -1 UUTT
xx11
xx22
Ax=bAx=bxx
Input (N dim.)Input (N dim.)
bb33
bb22
bb11
Output (M dim.)Output (M dim.)
uu11
uu33
uu22
vv22
vv11
A = A = USVUSVT T ‘Find Input & Output Axes, Linked by Scale’‘Find Input & Output Axes, Linked by Scale’
‘‘Solve for the Null Space’ ASolve for the Null Space’ Axx=0=0
– Easy! x is the Easy! x is the VVii axis axis that doesn’t affect the output (that doesn’t affect the output (ssii = 0 = 0))– are are allall ssii nonzero? then the only answer is nonzero? then the only answer is x=0.x=0.– Null ‘space’ because VNull ‘space’ because Vii is a DIMENSION--- x = Vi * a is a DIMENSION--- x = Vi * a– More than 1 zero-valued sMore than 1 zero-valued sii? null space >1 dimension? null space >1 dimension
... ... x = ax = aVVi1i1 + b + bVVi2i2 + … + …
xx11
xx22
Ax=bAx=bxx
Input (N dim.)Input (N dim.)
bb33
bb22
bb11
Output (M dim.)Output (M dim.)
uu11
uu33
uu22
vv22
vv11
A = A = USVUSVT T ‘Find Input & Output Axes, Linked by Scale’‘Find Input & Output Axes, Linked by Scale’
‘‘Let SVDs Explain it All for You’Let SVDs Explain it All for You’
SVD finds H for you (?) SVD finds H for you (?) (pg 35) (pg 35)
Book’s Method for finding Book’s Method for finding HHAAHHPP from from C*C*’ :’ :
– C*C*’’ = H C*= H C* H HTT is symmetric; is symmetric;
– Assume SVD(Assume SVD(C*C*’) = USV’) = USVTT = ( = (U S ) I ( S VU S ) I ( S VTT ) )
= ( H ) C*= ( H ) C*
( H( HTT) ) – BUT THIS DOESN’T WORK!BUT THIS DOESN’T WORK!
– ( Recall C*( Recall C* = ) = )A = A = USVUSVT T ‘Find Input & Output Axes, Linked by Scale’‘Find Input & Output Axes, Linked by Scale’
11 0 0 0 0
0 1 0 0 1 0 0 0 00 0 0
More on SVDs: HandoutMore on SVDs: Handout
• See Appendix 3, pg 556 (cryptic)See Appendix 3, pg 556 (cryptic)
• Linear Algebra booksLinear Algebra books• Good online introduction: (your handout)Good online introduction: (your handout)
Leach, S. “Singular Value Decomposition – A Leach, S. “Singular Value Decomposition – A primer,” Unpublished Manuscript, Department of primer,” Unpublished Manuscript, Department of Computer Science, Brown University. Computer Science, Brown University. http://www.cs.brown.edu/research/http://www.cs.brown.edu/research/aiai/dynamics/tutorial/Postscript//dynamics/tutorial/Postscript/
• Google on Singular Value Decomposition...Google on Singular Value Decomposition...
Polar Lines and Pole PointsPolar Lines and Pole Points
• Line Conic Line Conic CC’s tangent line ’s tangent line LLtt at point at point xxtt by: by:
C xC xtt = L = Ltt (given (given xxtt is on the conic: is on the conic: xxttT T C xC xtt=0=0))
xxtt
LLttCC
(You can skip this)(You can skip this)
Polar Lines and Pole PointsPolar Lines and Pole Points
• Line Conic Line Conic CC’s tangent line ’s tangent line LLtt at point x at point xtt by: by:
C xC xtt = L = Ltt (given (given xxtt is on the conic: is on the conic: xxttT T C xC xtt=0=0))
• But if But if xx is is NOTNOT on the conic? try on the conic? try CxCxpp = L = Lpp
xxppLLppCC
(You can skip this)(You can skip this)
Polar Lines and Pole PointsPolar Lines and Pole Points
• Line Conic Line Conic CC’s tangent line ’s tangent line LLtt at point x at point xtt by: by:
C xC xtt = L = Ltt (given (given xxtt is on the conic: is on the conic: xxttT T C xC xtt=0=0))
• But if But if xx is is NOTNOT on the conic? try on the conic? try CxCxpp = L = Lpp
• ‘‘Polar line’ Polar line’ LLpp = conic at = conic at pp11, p, p22 (find them?ugly!) (find them?ugly!)
xxppLLppCC
pp11
pp22
(You can skip this)(You can skip this)
Polar Lines and Pole PointsPolar Lines and Pole Points
• Line Conic Line Conic CC’s tangent line ’s tangent line LLtt at point x at point xtt by: by:
C xC xtt = L = Ltt (given (given xxtt is on the conic: is on the conic: xxttT T C xC xtt=0=0))
• But if But if xx is is NOTNOT on the conic? try on the conic? try CxCxpp = L = Lpp
• ‘‘Polar line’ Polar line’ LLpp = conic at = conic at pp11, p, p22 (to find them?ugly!) (to find them?ugly!)
• pp11, p, p22 tangent lines meet at ‘Pole point’ tangent lines meet at ‘Pole point’ xxpp
xxppLLppCC
pp11
pp22
(You can skip this)(You can skip this)
Polar Lines and Pole PointsPolar Lines and Pole Points
• Line Conic Line Conic CC’s tangent line ’s tangent line LLtt at point x at point xtt by: by:
C xC xtt = L = Ltt (given (given xxtt is on the conic: is on the conic: xxttT T C xC xtt=0=0))
• But if But if xx is is NOTNOT on the conic? try on the conic? try CxCxpp = L = Lpp
• ‘‘Polar line’ Polar line’ LLpp = conic at = conic at pp11, p, p22 (to find them?ugly!) (to find them?ugly!)
• pp11, p, p22 tangent lines meet at ‘Pole point’ tangent lines meet at ‘Pole point’ xxpp
xxppLLppCC
pp11
pp22
Interesting, But Interesting, But why does book why does book
show it?show it?
Eigen -values,-vectors, Fixed pt & lineEigen -values,-vectors, Fixed pt & line
• Formalizes ‘invariant’ notion:Formalizes ‘invariant’ notion:– if x is ‘fixed’ for H, then Hx only scales xif x is ‘fixed’ for H, then Hx only scales x
H x =H x = xx (( is a constant scale factor) is a constant scale factor)
– xx is an ‘eigenvector’, is an ‘eigenvector’, is its ‘eigenvalue’is its ‘eigenvalue’
– again, SVD helps you find them.again, SVD helps you find them.
• Elaborate topic (but not hard). Skip for now.Elaborate topic (but not hard). Skip for now.
• NEXT CLASS: NEXT CLASS: – The last of PThe last of P22: Find H from 4 point pairs: Find H from 4 point pairs– skip ahead to Chapter 3skip ahead to Chapter 3
(You can skip this)(You can skip this)
Book Errata Website:Book Errata Website:http://www.robots.ox.ac.uk/~az/HZbook/HZerrata.htmlhttp://www.robots.ox.ac.uk/~az/HZbook/HZerrata.html
pg. 35, eqn. 1.22 is dubious / erroneous;pg. 35, eqn. 1.22 is dubious / erroneous;
C*C*’ = HC*’ = HC*HHTT = (H = (HSSHHAAHHPP) C*) C* (H(HSSHHAAHHPP))TT
is the transformed line conic, but book uses is the transformed line conic, but book uses C* C*’ = (H’ = (HPPHHAAHHSS) C*) C* (H(HPPHHAAHHSS))TT instead, AND has instead, AND has
error:error:
==
But I get: But I get:
C*C*’ = ’ =
KKKKT T KvKv
vvTTKK ??
(book: (book: ?=0?=0; ; errata website: errata website: ??
=v=vTTKKKKTTvv))
KKKKT T KKKKTTvv
vvTTKKKKTT vvTTKKKKTTvv
Dubious Book Aggravations:Dubious Book Aggravations:
– Similarity transform Similarity transform HHSS leaves leaves C*C* unchanged:unchanged:
C*C* == HHSS C* C* H HSST T
– HH transforms transforms C*C* to image space to image space C*C*’’ by: by:
C*C*’’ == H C*H C* H HTT = ( = (HHSS H HA A HHPP) C*) C* ((HHSS H HA A HHPP))TT
– Book claims to derive Book claims to derive
C*C*’ = ’ = (H(HP P HHAA) C*) C* ((HHP P HHAA))T T (!?!?!)(!?!?!)
Then errs in simplifying to:Then errs in simplifying to:
11 0 0 0 0
0 1 0 0 1 0 0 0 00 0 0
KKKKT T KvKv
vvTTKK 00**
SVDs and ConicsSVDs and Conics
• Conics (both C and C*) are symmetric;Conics (both C and C*) are symmetric;
• SVD of any symmetric A is also symmetric:SVD of any symmetric A is also symmetric:SVD(A) = USUSVD(A) = USUTT !Not Always! !Not Always!
• All conics’ singular values All conics’ singular values ssii =0,1, or –1. =0,1, or –1.
• Singular values classify conic type: Singular values classify conic type: (pg 40)(pg 40)
SSii values | Equation | Type . values | Equation | Type .
(1, 1, 1)(1, 1, 1)(1, 1,-1)(1, 1,-1)(1, 1, 0)(1, 1, 0)(1,-1, 0)(1,-1, 0)(1, 0, 0)(1, 0, 0)
xx22 + y + y22 + w + w22 = 0 = 0xx22 + y + y22 - w - w22 = 0 = 0 xx22 + y + y22 = 0 = 0xx22 - y - y22 = 0 = 0xx2 2 = 0 = 0
imaginary-only imaginary-only circle/ellipse circle/ellipse single real point (0,0,1)single real point (0,0,1)2 lines: x+/- y2 lines: x+/- y2 co-located lines: x=0 2 co-located lines: x=0
•(recall)(recall)H = H = HHSS H HA A HHP P ==
• Tedious algebraTedious algebra** (pg35)(pg35) shows symmetry: shows symmetry:
C*C*’ ’ == H C*H C* H HT T ==
where where KK is 2x2 symmetric ( is 2x2 symmetric (affine partaffine part: 2DOF): 2DOF)
vv is 2x1 vector, ( is 2x1 vector, (projective partprojective part: 2DOF): 2DOF)• ?But what do ?But what do KK and and VV really control? really control?
KKKKT T KvKv
vvTTKK 00**
K K 00
00T T 11
Undoing H: Metric RectificationUndoing H: Metric Rectification
ssR R tt
00T T 11
I I 00 vvT T vv
*==error?!?*==error?!?
•(recall)(recall)H = H = HHSS H HA A HHP P ==
• Tedious algebra Tedious algebra (pg35)(pg35) shows symmetry: shows symmetry:
C*C*’ ’ == H C*H C* H HT T ==
where where KK is 2x2 symmetric ( is 2x2 symmetric (affine partaffine part: 2DOF): 2DOF)
vv is 2x1 vector, ( is 2x1 vector, (projective partprojective part: 2DOF): 2DOF)• ?But what do ?But what do KK and and VV really control? really control?
KKKKT T KvKv
vvTTKK ??
K K 00
00T T 11
Undoing H: Metric RectificationUndoing H: Metric Rectification
ssR R tt
00T T 11
I I 00 vvT T vv
(book: (book: ?=0?=0; ; errata website: errata website: ??
=v=vTTKKKKTTvv))
Undoing H: Metric RectificationUndoing H: Metric Rectification
• OK, then how do we find OK, then how do we find KK and and vv??
• (book: (book: ?=0?=0; ; errata website: errata website: ?=v?=vTTKKKKTTvv))
• Choose known-perpendicular line pairsChoose known-perpendicular line pairs ((LLii, , mmii)),,
then compute by:then compute by:– Method 1a: Method 1a: (pg 36)(pg 36) Assume v=0, solve for KAssume v=0, solve for K– Method 1b: Method 1b: (NOT in book)(NOT in book)Assume K=I, solve for v Assume K=I, solve for v
– Method 2:Method 2: Rearrange, solve for full Rearrange, solve for full C*C*’’then get Hthen get HAAHHPP using SVD. using SVD.
KKKKTT KvKv
vvTTKK ??C*C*’ ’ == H C*H C* H HT T ==
Method 1a: Method 1a: (pg 36)(pg 36) Assume v=0, solve for KAssume v=0, solve for K
• Choose 2 Choose 2 line pairs ( line pairs (LLaa,m,maa) and () and (LLbb,m,mbb))
• Both pairs satisfy Both pairs satisfy LLT T C*C*’’ m = 0 m = 0 or: or:• (note x(note x33 term is ignored!) term is ignored!)
• ‘‘flatten’ to one equation:flatten’ to one equation:
Undoing H: Metric Rect. 1aUndoing H: Metric Rect. 1a
KKKKT T KvKv
vvTTKK 00C*C*’ ’ == H C*H C* H HT T = =
KKKKT T 00
00 00
s1 s2 0s1 s2 0s2 s3 0s2 s3 0
0 00 0 00
mm11
mm22
mm33 ll11 l l22 l l33 =0=0
ll11mm11 l l22mm11+l+l11mm22 l l22mm22
ss11
ss22
ss33 = 0= 0
Method 1a: Method 1a: (pg 36)(pg 36) Assume v=0, solve for KAssume v=0, solve for K
• ‘‘Stack’ to combine both line pairs;Stack’ to combine both line pairs;
• Solve for Solve for ss by SVD: find ‘input null space’ ( by SVD: find ‘input null space’ (Ax=0Ax=0) ) • From From ss make make C*C*’’ = = KKKKTT, then extract , then extract HHAAHHPP using using
SVD: SVD: recall recall C*C*’ ’ == H C*H C* H HTT , , it is symmetric…it is symmetric…
Undoing H: Metric Rect. 1aUndoing H: Metric Rect. 1a
KKKKT T KvKv
vvTTKK 00C*C*’ ’ == H C*H C* H HT T = =
s1 s2 0s1 s2 0s2 s3 0s2 s3 0
0 00 0 00
lla1a1mma1a1 l la2a2mma1a1+l+la1a1mma2a2 l la2a2mma2a2ss11
ss22
ss33 = 0= 0
llb1b1mmb1b1 l lb2b2mmb1b1+l+lb1b1mmb2b2 l lb2b2mmb2b2
Method 1b: Method 1b: (not in book)(not in book) Assume K=I, solve for vAssume K=I, solve for v
• Choose 2 Choose 2 line pairs ( line pairs (LLaa,m,maa) and () and (LLbb,m,mbb))
• These satisfy These satisfy LLT T C*C*’’ m = 0 m = 0 or: or:
• ‘‘flatten’ to one equation flatten’ to one equation (messy)(messy), stack, solve for , stack, solve for vv11,v,v22
• Extract Extract HHpp from from C*C*’ ’ using SVDusing SVD
Undoing H: Metric Rect. 1bUndoing H: Metric Rect. 1b
KKKKT T KvKv
vvTTKK 00C*C*’ ’ == H C*H C* H HT T = =
I I vv
vvTT 00
1 0 v11 0 v10 1 v20 1 v2v1 v2v1 v2 ??
mm11
mm22
mm33 ll11 l l22 l l33 =0=0