We present an unsupervised learning technique for modeling human locomotion styles, such as distinct related activities (e.g. running and striding) or variations of the same motion performed by different subjects. Modeling motion styles requires identifying the common structure in the motions and detecting stylespecific characteristics. We propose an algorithm that learns a hierarchical model of styles from unlabeled motion capture data by exploiting the cyclic property of human locomotion. We assume that sequences with the same style contain locomotion cycles generated by noisy, temporally warped versions of a single latent cycle. We model these style-specific latent cycles as random variables drawn from a common ”parent” cycle distribution, representing the structure shared by all motions. Given these hierarchical priors, the algorithm learns, in a completely unsupervised fashion, temporally aligned latent cycle distributions, each modeling a specific locomotion style, and computes for each example the style label posterior distribution, the segmentation into cycles, and the temporal warping with respect to the latent cycles. We demonstrate the flexibility of the model by illustrating its performance on several application problems such as style clustering, animation, style blending, and filling in of missing data.
Learning Styles from CMU Dataset
We selected 39 sequences from the CMU motion capture database, and used them as input for our algorithm. Our method learns, in an unsupervised manner, a hierarchical generative model of the locomotion styles present in the data set. The video below shows the learned styles. Results obtained with competing methods are available here .
Blending Motions
Our algorithm learns time-synchronized style-specific motion cycles. Thus, two or more learned styles can be linearly interpolated to generate new in-between styles. Here we show the result of blending pairs of learned motion styles by varying smoothly the interpolation coefficients.
- From walking to jogging.
- From walking to striding.
Filling Missing Data
Our learned model can be used to fill in missing data such as marker dropouts, i.e. markers lost by a motion capture system due to occlusion or noise.
Original sequence with missing information (48 joint angles were erased in the second half of the sequence) | |
Filling missing data with our algorithm | |
Filling missing data with nearest neighbour |