Giter VIP home page Giter VIP logo

Comments (10)

filby89 avatar filby89 commented on June 3, 2024 1

Hey, thanks for your interest. Yes, it is possible if you only transfer the predicted expression and jaw pose parameters (i.e. pose[:,3:6]). You can find an example of that in the original DECA (https://github.com/YadiraF/DECA/blob/master/demos/demo_transfer.py).

from spectre.

ujjawalcse avatar ujjawalcse commented on June 3, 2024

@filby89 , What is value range of expression data predicted by Spectre model?
Since, It's based on FLAME face model, Their value range is (-3,3) i think. How can i map these value to lower range having same effect.

from spectre.

filby89 avatar filby89 commented on June 3, 2024

Hey @ujjawalcse. Yes it follows the FLAME model. I have tested the ranges of DECA, EMOCA, and SPECTRE and found out that generally the values of expression in EMOCA and SPECTRE are much large than DECA. On a small subset of videos I have found that the maximum value of DECA for the first component is around 3.5, EMOCA 6.5 and SPECTRE 9. However, in some other components SPECTRE can be as large as 35 in some cases (although I have not seen how this component affects the output specifically).
Can you list more details regarding what you wanna do ?

from spectre.

ujjawalcse avatar ujjawalcse commented on June 3, 2024

Sure @filby89 ,
Actually, I wanna assign these expressions values to a FLAME model in 3D software (like Blender) so that the mesh can be deformed and exported into AR/VR friendly format. But when I checked with the Spectre expression values, sometimes it's deforming the mesh too much such that the faces are looking awkward.

from spectre.

filby89 avatar filby89 commented on June 3, 2024

@ujjawalcse Can you post an example of parameters ?

from spectre.

ujjawalcse avatar ujjawalcse commented on June 3, 2024

Sure,
Please find the below .zip file containing one .npy file.
https://drive.google.com/file/d/1zrlIj0pNktoYkwFZ2MH3f9HOdyndcmPR/view?usp=sharing

It contains all the parameters saved after adding Spectre predicted parameter with the DECA initials parameters.

Spectre

Here you can see,how i saved them.
Line no. 192, Just keep appending the final parameters to one empty list codedicts defined outside the loop.
Line 197, Saved the updated list to a .npy file.
While checking this .npy file, First 2 frames and last 2 frames had unusual values as they are corresponding to the padded frames i think, so I removed them.

from spectre.

filby89 avatar filby89 commented on June 3, 2024

Hey,
you are correct, first 2 and last frames correspond to padded frames and contain garbage. I reconstructed the .npy file and got the following result:

v_grid.mp4

I guess that the problems you are talking about are frames like the next one ?

vlcsnap-2022-09-09-22h35m29s567

We have found out that this happens in a minority of videos and it is due to DECA, not estimating correctly the camera parameters. Because SPECTRE only predicts the expression parameters and jaw, it relies on DECA for the camera matrix and if DECA fails, artifacts like this can appear.

I am not sure if that will fix the problem, but you could tweak a little the scale parameter in the dataset class and zoom out a bit. We have it fixed at 1.6 for testing, but during training we use a range from [1.4,1.8].

from spectre.

ujjawalcse avatar ujjawalcse commented on June 3, 2024

Thanks @filby89 for your clear expression.
The scale parameter in DECA is 1.25.
Should I test with 1.6 or any value between 1.4 and 1.8 ?

from spectre.

filby89 avatar filby89 commented on June 3, 2024

@ujjawalcse I would suggest running the demo in this repository with multiple values (either 1.25 or between 1.4 and 1.8) and see which one fits your case :).

from spectre.

ujjawalcse avatar ujjawalcse commented on June 3, 2024

Right! Thanks, @filby89.

from spectre.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.