CMSC 425Dave Mount & Roger EastmanAbstraction Revisited:We have seen the use of homogeneous matrices before for the purpose ofperforming affine transformations (that is, for moving objects around in space). We are usingthe same mechanism here, but the meaning is quite different. Here the objects are not beingmoved, rather we are simplytranslatingthe names of points and vectors from one coordinatesystem to another. The geometric objects are themselves not moving.You might wonder, “What’s the difference in how you look at it?”Recall that in affinegeometry we defined points and (free) vectors as different abstract objects, that employthe same representation (homogeneous vectors).Here, we are distinguishing two differenttypes of operations (affine transformations versus change-of-coordinates transformations),but using the same representation (homogeneous matrices) for both. Even though the samerepresentation is being used, these should be conceptualized as two very different operations.Joint Transformations:Returning to the problem of skeletal systems, let us assume that weare working in 3-dimensional space, and consider the skeleton in its bind pose. For any twojointsjandk, defineT[k←j]to be the change-of-coordinates transformation that maps a pointin jointj’s coordinate system to its representation ink’s coordinate system. (At this pointwe are not considering joint rotations.)That is, ifvis a column vector in homogeneouscoordinates representing of a point relative toj’s coordinate system, thenv0=T[k←j]·visexactly the same point in space, but it is expressed in coordinates relative tok’s coordinateframe. (In previous lectures I have usedpfor points andvfor free vectors. Since we are usingpfor “parent”, I’ll refer to points by the letterv, but don’t be confused.)Given any non-root jointj, define thelocal-pose transformation, denotedT[p(j)←j], to be anaffine transformation that converts a point inj’s coordinate frame to its representation inits parent’s (p(j)) coordinate frame.Define theinverse local-pose transformation, denotedT[j←p(j)], to be the inverse of this transformation.That is, it converts a point expressedrelative toj’s parent’s frame back toj’s frame.(Recall that these transformations do notchange the position of a point. They simply translate the same point from its representationin one frame to another.)(a)(b)ixykxyvv[k]= (2,0,1)v[j]= (6,0,1)v[i]= (3,6,1)
Lecture 9
5
Spring 2018