Temporal model of human motion
For the purpose of studying the range of motion of the shoulder ball-and-socket joint, several motion capture sessions were held in order to measure all possible rotations of the shoulder compound. These rotations were determined on the basis of optical markers positioned at strategic locations. The rotation data is available in any rotation representation format. Hereunder is the data cloud in quaternion format, displayed in 3D:

Furthermore, we have also performed measures on full body motions, such as walking and jumping, these measures also having been performed through motion capture.
In the specific problem of tracking human body postures in video sequences, we would like to be able to predict the next posture in frame f+1, given that we have already determined the posture in frame f. For this, we should classify the measured data into clusters - the parameters of the data within one cluster are in such a matter confined to a certain range of values. Example of clustering:

Once we have obtained our clusters, we can then determine the set of Gaussian density functions associated to each one of them, yielding the probability that a given data will belong to a given cluster.
Furthermore, due to the fact that the motion capture session provides us with a sequence of motions, we should be able to determine the probability of transition from one cluster to another, supposing of course that the sampling of motion space has been done uniformly, and covers as much as possible all posture transitions.

What's to be done :
1. In order to perform clustering on the data, we suggest to apply the k-means algorithm, that, for a given number of clusters, minimises the square-error of the distance from each data to the centre of its cluster.
2. The EM algorithm (Expectation Maximisation) can then be applied to each individual cluster in order to determine the parameters of its Gaussian density functions.
3. The transition graph between clusters will be constructed, using the number of transitions observed in the motion capture data, from one cluster to another, and normalised by the total number of motions performed.
In order to test the efficiency of the implemented algorithms, we suggest to initially test them on a simple 2D case. The next step will be to apply it to the 3D data for the shoulder range of motion. Last, the algorithms should also function in the n-dimensional case of full body motion.
Reading:
[1] Bilmes J.A., “A gentle tutorial of the EM algorithm and its application to parameter estimation for Gaussian mixture and hidden Markov models”, Technical Report TR-97-021, International Computer Science Institute, Berkeley CA, April 1998.
[2] Fraley, C. and A. E. Raftery, “How many clusters? Which clustering method? Answers via model-based cluster analysis”, Computer Journal, 41, 578--588, 1998.
[3] Jain A., Duin P., and Mao J., “Statistical pattern recognition: A review", IEEE Transactions on PAMI 22(1), pp. 4-37, 2000.
[4] Jain, A.K., Murty M.N., and Flynn P.J. (1999): "Data Clustering: A Review", ACM Computing Surveys, Vol 31, No. 3, 264-323.