Rubikplayer / flame-fitting

Example code for the FLAME 3D head model. The code demonstrates how to sample 3D heads from the model, fit the model to 3D keypoints and 3D scans.
http://flame.is.tue.mpg.de/
722 stars 109 forks source link

What is the eigenvalues of FLAME2020 model #20

Closed Easy-Shu closed 3 years ago

Easy-Shu commented 3 years ago

The FLAME2020 model only provides the principle components (PCs), but where is the corresponding eigenvalues?

TimoBolkart commented 3 years ago

Each FLAME shape and expression components are scaled by the standard deviation. Therefore, varying the shape and expression parameters in the range [-n, n] corresponds to a variation of [-nsigma, nsigma]. In order to get the eigenvalues back, reshape the shapedirs (5023 x 3 x 400) to a matrix of shape 15069 x 400, and get the norm of 15069-dimensional columns of the matrix. This norm corresponds to the standard deviation, which is the square root of the eigenvalue of the covariance matrix. Does this answer your question?

Easy-Shu commented 3 years ago

Thanks for your reply. I think I can calculate the eigenvalue of the covariance matrix.