1. A method, comprising: generating a model of an unclothed human body, the model capturing a shape or a pose of the unclothed human body; determining two-dimensional contours associated with the model; computing deformations by aligning a contour of a clothed human body with a contour of the unclothed human body; based on the two-dimensional contours and the deformations, generating a first two-dimensional model of the unclothed human body, the first two-dimensional model factoring the deformations of the unclothed human body into one or more of a shape variation component, a viewpoint change, and a pose variation; and learning an eigen-clothing model using principal component analysis applied to the deformations, wherein the eigen-clothing model classifies different types of clothing, to yield a second two-dimensional model of a clothed human body.