## CSci 6974 and ECSE 6966 Mathematical Techniques for Computer Vision, Graphics and Robotics

Welcome to the mathematical techniques course for the spring semester, 2006. The syllabus is broken into three major topic areas: linear algebra, geometry, and estimation and numerical methods. Certainly, a different course on mathematical techniques for vision, graphics and robotics might cover completely different topics, but I have found these topics to be particularly helpful to students who are just getting started in research. Homework problems are included with the lecture notes.

### Web Resources

Several pointers to resources on the web are included within the breakdown of the lecture notes, but here are a few more general resources.
• Mathworld is a hyperlinked dictionary of mathematical terms and topics.
• Perhaps surprisingly, Wikipedia contains many short articles on topics of mathematical interest as well as on the various application areas we are considering.
• The Matrix Cookbook by Peterson and Pederson is a good reference for problems in matrix manipulation, especially those involving derivatives.

### Linear Algebra

• Lecture 1: Introduction to points, lines, planes and vectors.
• Lecture 2: Matrices, the very basics.
• Lecture 3: The four fundamental spaces associated with the matrix: the row space, the column space, and the two null spaces.
• Lecture 4: The LU decomposition and its use in finding the four fundamental spaces.
• Lecture 5: Orthogonality of vectors and matrices, Gram-Schmidt orthogonalization, and the QR decomposition .
• Lecture 6: Eigenvalues, eigenvalues, and the spectral decomposition.
• Lecture 7: Cholesky factorization and the singular value decomposition.
• Lecture 8: Application to least-squares methods, including both ordinary and orthogonal regression.
• Lecture 9: Continuation of least-squares methods, as well as eigenimage and other PCA methods. Here are a few of the many web resources available on eigenimage and PCA methods:

### Geometry

• Lecture 10: An introduction to projective geometry in two dimensions.
• Lecture 11: Similarity, affine and projective transformations in 2d.
• Lecture 12: Extension to 3d of the discussion of 2d projective geometry and transformations.
• No separate notes for lecture 13. We are a little behind.
• Lecture 14: Introduction to the perspective camera based on what has been covered in projective geometry.
• Lectures 15 and 16: Representing and estimating 3d rotations using quaternions and small angle approximations.
Here are two test files for the programming assignment:
• rotation_test1.txt was generated using the rotation matrix
```0.958027 -0.0387198 -0.28405
0.139454 0.928646 0.343756
0.250472 -0.36894 0.895068
```
and the true rotation produces an error of about 0.496 (changed 2006-03-26)

• rotation_test2.txt was generated using the rotation matrix
```0.862312 0.504004 -0.04897
-0.502093 0.838452 -0.211898
-0.0657383 0.207309 0.976064
```
and the true rotation produces an error of about 1.15 (changed 2006-03-26)
• Lecture 17: Introduction to differential geometry of curves
• Lecture 18: Introduction to differential geometry of surfaces

### Estimation and Numerical Methods

• Lecture 19 and 20: Introduction to estimation techniques.
• Lecture 21: Estimation of planar homographies, including a discussion of algebraic distance, geometric distance, Sampson error and normalization.
• The data sets for the programming assignment are available: homography_test1.txt and homography_test2.txt. The root mean square Euclidean distance errors after applying the correct transformation are around 1.55 and 1.57 units, respectively. The first data set includes substantial projective effects.
• Lecture 22: Robust estimation: M-estimators, LMS and RANSAC
• The problem from these notes does not need to be turned in until Thursday April 27.
• Lecture 23 and 25: Introduction to non-linear estimation methods
• Lecture 24: Professor Trinkle's introduction to linear programming methods.

### End of Semester Announcements

• The Linear Programming homeworks are graded (by Prof. Trinkle) and are available outside my office door. A number of people lost substantial credit on the 2nd problem for not doing a careful experimental analysis.
• The 3rd test will be Thursday May 4, 1-3pm in CII 4034.
• The formulation of the affine transformation of the x variables and the linear scaling and shift in the y values given in class on Monday does indeed produce an affine transformation of the estimated parameters with a scaling of the errors by 1/b.