Matlab tutorial and Linear Announcements Algebra Review • Today’s goals: • Class mailing list: send email to • Learn enough matlab to get started. Hyoungjune Yi: aster@cs .umd.edu • Review some basics of Linear Algebra • Homework at the end of class. • Essential for geometry of points and lines. • But also, all math is linear algebra. • Text is on reserve in the CS library. • (ok slight exaggeration). • Powerpoint should be available by • Many slides today adapted from Octavia 10am class day. Camps, Penn State. Starting Matlab Help • help • For PCs, Matlab should be a program. • help command • For Sun’s: Eg ., help plus Numerical • Help on toolbar • demo Analysis and Visualization • Tutorial: http:// amath . colorado . edu / scico /tutorials / matlab / Matlab 6.1 Matlab interpreter Vectors = v ( x , x x ) , , • Many common functions: see help ops • Ordered set of 1 2 n numbers: (1,2,3,4) = n ∑ 2 v x • Example: ( x,y,z ) = i i 1 coordinates of pt in = If 1 , is a unit vecto r v v space. 1
Indexing into vectors Vector Addition + w = + = + + ( , ) ( , ) ( , ) v x x y y x y x y 1 2 1 2 1 1 2 2 V+w v w Scalar Product Operations on vectors • sum = = ( , ) ( , ) • max, min, mean, sort, … a v a x x ax ax 1 2 1 2 • Pointwise : .^ av v Matrices Inner (dot) Product a a a 11 12 1 m Sum: a a a = + v α 21 22 2 m C A B × × × = n m n m n m A a a a = = + × . ( , ).( , ) . n m 31 32 3 m v w x x y y x y x y w = + 1 2 1 2 1 1 2 2 c a b ij ij ij a a a 1 2 n n nm A and B must have the same The inner product is a SCALAR! dimensions = = ⋅ α . ( , ).( , ) || || || || cos v w x x y y v w 1 2 1 2 = 0 ⇔ ⊥ . v w v w 2
Matrices Matrices Product: Transpose: A and B must have × = C A B × = + = + T T T T ( ) × × C A A B A B × n p n m m p compatible dimensions n m m n m ∑ = c = = c a b a T T T ( AB ) B A ij ik kj ij ji ≠ = 1 A B B A k × × × × n n n n n n n n A T = If A A is symmetric 1 0 0 Identity Matrix: 0 1 0 = = = I IA AI A 0 0 1 Matrices Matrices Determinant: Inverse: A must be square A must be square − = − = 1 1 A A A A I × × a a a a × n n n n × = = − n n n n 11 12 11 12 det a a a a 11 22 21 12 a a a a − 1 − 21 22 21 22 a a 1 a a = 11 12 22 12 − − a a a a a a a a 21 22 11 22 21 12 21 11 a a a 11 12 13 a a a a a a = 22 23 − 21 23 + 21 22 det a a a a a a 21 22 23 11 12 13 a a a a a a 32 33 31 33 31 32 a a a 31 32 33 Indexing into matrices Euclidean transformations 3
2D Translation 2D Translation Equation P’ P’ t t = t y P ( x , y ) P P = y t ( t x t , ) y x t x = + + = + P ' ( , ) P t x t y t x y 2D Translation using Matrices Scaling P’ = P’ ( , ) P x y t t y P = ( , ) t t x t y y t P P x t x x + x t 1 0 t → x = x ⋅ ' P y + y t 0 1 t y y 1 Scaling Equation Rotation P’ = s.y P ( , ) P x y = P ' ( sx , sy ) P P’ = s ⋅ y ' P P x s.x sx s 0 x → = ⋅ ' P sy 0 s y S = ⋅ P ' S P 4
Rotation Equations Degrees of Freedom θ − θ ' cos sin x x Counter - clockwise rotation by an angle θ = θ θ ' sin cos y y θ − θ ' cos sin x x = R is 2x2 4 elements P’ θ θ ' sin cos y y Y’ θ BUT! There is only 1 degree of freedom: θ P P' = y R.P The 4 elements must satisfy the following constraints: x X’ ⋅ = ⋅ = T T R R R R I = det( R ) 1 Stretching Equation Stretching = tilting and projecting = (with weak perspective) ( , ) P x y = ' ( , ) P s x s y s P’ x y 0 s x s S y .y x x 0 x → = ⋅ = ⋅ ' x x P s s 0 s y s y y y 0 y s x s x y y P 0 1 → = ⋅ ' x x P s y 0 s y y y y S x S x .x = ⋅ P ' S P Linear Transformation Affine Transformation a b x x → ⋅ ' P SVD c d y a b tx → ⋅ ' P y θ θ ϕ ϕ 0 sin cos s sin cos x = ⋅ c d ty x − θ θ − ϕ ϕ 0 cos sin s cos sin y 1 y s θ θ ϕ ϕ sin cos sin cos x 0 x = ⋅ s s − θ θ − ϕ ϕ cos sin cos sin y y y 0 1 5
Files Functions • Format: function o = test(x,y) • Name function and file the same. • Only first function in file is visible outside the file. Images Debugging • Add print statements to function by leaving off ; • keyboard • debug and breakpoint Conclusions • Quick tour of matlab , you should teach yourself the rest. We’ll give hints in problem sets. • Linear algebra allows geometric manipulation of points. • Learn to love SVD. 6
This document was created with Win2PDF available at http://www.daneprairie.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only.
Recommend
More recommend