next up previous
Next: Scaling the Data Up: Method Previous: Importing the Data

Transforming the Data to local Coordinates

The process of converting the data to local face coordinates is fairly simple in theory. When we captured the data four points on a flat card were always placed on the subject's forehead. These points were guaranteed to remain a constant distance apart and were ideal for determining the head's orientation. The vectors between each of the four corners were computed, and then the cross products of each pair gave the normal vector of the card. The center of the four points were used to determine the overall movement of the head. By moving the center of the points to the origin we then have all head movement expressed as rotation. I made the assumption that the neck and body would remain mostly fixed, and that all head motion would be a result of rotation around the neck joint. By rotating the normal vector back to the starting position we then have a consistent space in which to measure changes of the facial features, as well as the rotation angles on the neck joint.

All calculations are taken from a base frame that is most closely showing the face in it's rest pose. Deviations from this position are calculated, and that what is actually sent to Maya.


next up previous
Next: Scaling the Data Up: Method Previous: Importing the Data
Adam Hupp 2002-05-16