1. A method for tracking three-dimensional (3D) human motion comprising steps of: receiving a two-dimensional (2D) image sequence, each image in the image sequence having first human motion data represented using a high dimensional space; receiving a prediction model from an offline learning stage; reducing the dimensionality of the first human motion data to generate second human motion data represented using a low dimensional space based at least in part on the prediction model; and generating 3D tracking data based at least in part on the second human motion data and the 2D image sequence.