# Week 3 - Rotations and Kinematics For animation, human figures are usually represented as collections of rigid bodies. This week, we'll focus on the background of these representations. ## Monday (1/30) - Rotations In this lecture, we'll talk about the representation of rotations. Specifically, we'll talk about Quaternions and Exponential maps. Readings: before class, you must read enough to get an overview of what rotations are about. You should (at least) skim through the first (Grassia) paper and get the gist (if not the details) from some reference on quaternions (see #2 and 3): + _Practical Parameterization of Rotations Using the Exponential Map_ F. Febastian Grassia, Journal of Graphics Tools, 1998 Note: this is a nice discussion of the issues in working with rotation, and survey of different rotation representations. Ironically, his discussions of the exponential map are not the best. http://www.cs.cmu.edu/~spiff/moedit99/expmap.pdf file:/p/course/cs838-gleicher/public/Reader/Quaternions/grassiaExpMap.pdf + _Animating rotation with quaternion curves_ Ken Shoemake, SIGGRAPH '85 Note: This paper is of historical interest since it is singlehandedly responsible for introducing quaternions to the graphics community. However, it is a bit dated, and the hacks for quaternion splines are now superceded by some actual math. http://doi.acm.org/10.1145/325334.325242 + Gamasutra - "Rotating Objects Using Quaternions" by Nick Bobick, in Game Developer Magazine Feb '98 Note: This is a nice tutorial on the practical issues in using quaternions. It is sufficient, and easier to read. http://www.gamasutra.com/features/19980703/quaternions_01.htm file:/p/course/cs838-gleicher/public/Reader/Quaternions/gameDevQuaternions.pdf Required Reading After Class (e.g. for wednesday): + _General Construction of Time-Domain Filters for Orientation Data_ Jehee Lee and Sung Yong Shin, TVCG '2001 http://dx.doi.org/10.1109/2945.998665 http://mrl.snu.ac.kr/Papers/TVCG2001.pdf file:/p/course/cs838-gleicher/public/AnimationResources/Papers/Quaternions/leeOrientationFilters.pdf Suggested Readings (more on rotations): + _A General Construction Scheme for Unit Quaternion Curves with Simple High Order Derivatives_ by Myoung-Jun Kim, Myung-Soo Kim, and Sung Yong Shin, SIGGRAPH '95 Note: This paper is valuable since it shows that cubic splines can be built with Quaternions directly (what Shoemake shows is inefficient and wrong). http://doi.acm.org/10.1145/218380.218486 file:/p/course/cs838-gleicher/public/AnimationResources/Papers/Quaternions/kimQuatSpline.pdf ## Wednesday (2/2) - Rotations and Kinematics Today, we'll talk more about rotations and a bit about kinematics and hierarchies. Required Reading for today: the Lee and Shin paper listed under Monday. You might also want to brush up on the hierarchies stuff from your intro graphics class. ## Friday (2/4) - Inverse Kinematics This day will be a brief survey of the problem of trying to determine the angles required to achieve goals, e.g. the problem of Inverse Kinematics. Required Reading (for class): + _Dealing with the Ill-Conditioned Equations of Motion for Articulated Figures_ Anthony Maciejewski in IEEE CG&A, May 1990 Note: this paper is valuable not just because it describes a method for doing IK, but also the geometric and numerical issues involved. http://dx.doi.org/10.1109/38.55154 file:/p/course/cs838-gleicher/public/AnimationResources/Papers/Kinematics/maciejewski.pdf Required Reading (after class - which means for next week's summaries) either one of: + _Footskate Cleanup for Motion Capture Editing_ by Lucas Kovar John Schreiner Michael Gleicher, SCA 2002. http://www.cs.wisc.edu/graphics/Gallery/kovar.vol/Cleanup http://www.cs.wisc.edu/graphics/Papers/Gleicher/Mocap/cleanup.pdf + _Real-time inverse kinematics techniques for anthropomorphic limbs_ by D. Tolani, A. Goswami, and N. Badler, Graphical Models 62 (5), Sept. 2000 http://hms.upenn.edu/2000/0528a.pdf file:/p/course/cs838-gleicher/public/AnimationResources/Papers/Kinematics/tolani.pdf # Week 4 - Motion Capture A general introduction to the topic of motion capture and motion editing is hard to find. The required readings come from a book that I started to write (that has a wierd history). The other big activity for this week is for people to pick projects. ## Monday (2/6) - Motion Capture Intro One of the many problems of my not-yet-written book is that it is out of date. So in addition to reading some old thing that I wrote, you need to do a little web hunting expedition. Required Readings: + One of my introductions. The preferred version is the intro chapter from the not yet written book. While it is longer (15 pages), it is pretty light reading. The Other article is a "short version": - _Animation from Observation_ Chapter 1 of a not yet written book by Mike Gleicher http://www.cs.wisc.edu/graphics/Courses/777-s2006/MocapBook/01-Intro.pdf - _Animation from Observation_ by Michael Gleicher in Computer Graphics 33(4), p51-54. Special Issue on Applications of Computer Vision to Computer Graphics. http://www.cs.wisc.edu/graphics/Papers/Gleicher/Mocap/anim-obs-article.pdf + Go looking around on the web. Get an idea of what motion capture is, what people are doing, ... ## Wednesday (2/8) - Project Ideas Discussion You should be doing some reading to get some ideas as to what you may want to do for a project. Otherwise, I might just assign a project to you. Also, the reading for Friday is a bit long, so you might want to get started. ## Friday (2/10) - Motion Editing Basic ideas in motion editing - mainly signal processing. Sadly, this is one place where the original sources are not a good way to learn it, so the thing to read is my book chapter, which is unfortunately not completely written. Note: the last part of the book chapter (section 1.7, pages 54-70) are about a bunch of methods that I used to work on that (for various reasons that we will discuss) never caught on, and have changed a lot. So reading this is optional (there are better sources). Required Reading (read this before class): + _Techniques for Motion Editing_ pages 1-54 by Mike Gleicher, for an unfinished book http://www.cs.wisc.edu/graphics/Courses/777-s2006/MocapBook/02-Editing.pdf Recommended Readings (for after class): + You might want to go back to the "original sources" for the basic motion editing ideas: - _Motion Signal Processing_ by Armin Brudelin and Lance Williams, SIGGRAPH '95 - _Motion Warping_ by Zoran Popovic and Andrew Witkin, SIGGRAPH '95 + Two early systems made use of a remarkable amount of motion editing technology (given how young it was): - _Real Time Responsive Animation with Personality_ by Ken Perlin, IEEE TVCG (Trans on Visualization and Comp Graphics), 1995 (Vol 1, Issue 1) - _Verbs and Adverbs: Multidimensional Motion Interpolation_ by Charles Rose, Michael F. Cohen, and Bobby Bodenheimer, IEEE Computer Graphics and Applications (CG&A), September 1998.