This paper describes an approach for autonomous and incremental learning of motion pattern primitives by observation of human motion. Human motion patterns are abstracted into a dynamic stochastic model, which can be used for both subsequent motion recognition and generation. As new motion patterns are observed, they are incrementally grouped together using local clustering based on their relative distance in the model space. The clustering algorithm forms a tree structure, with specialized motions at the tree leaves, and generalized motions closer to the root. The generated tree structure will depend on the type of training data provided, so that the most specialized motions will be those for which the most training has been received. A complete system for online acquisition and visualization of motion primitives from continuous observation of human motion will also be described, allowing interactive training.