-
-
Notifications
You must be signed in to change notification settings - Fork 598
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using BFM in Python with expressions #147
Comments
Hi! Just to clarify. You're using the BFM with the Surrey Face Model 3448-resolution blend shapes? This can and will never work. If you're really running like that, I'm surprised you don't get any errors. Please clarify that point and then I might be able to say more with regards to the rest. |
Thanks for the response and everything else 🍻 |
Any thought on this? |
@tobyclh Sorry for the late reply! It's right before a paper deadline. It seems like two things are at hand here:
Let me know your thoughts. |
No problem, we have all been there ;) Good luck! |
Thank you! :-) Hmm I think there are quite a few papers but they normally only mention it on the very side in a sentence that they have a 3DMM (e.g. in that case the BFM) and for expressions, they used FaceWarehouse to generate an expression basis (more often they create a PCA expression basis, and not blendshapes - eos could work with that as well but would need a few modifications). I'm sorry I don't have any concrete links/papers to hand (if I come across them again or in the future, I'll try to remember and link them here). I'm not sure I remember correctly but I think FaceWarehouse already provide registered scans, in the topology of the BFM? If so, then creating blendshapes for the BFM (same topology) would be super-easy. Otherwise, as a starter, yes, just copy the current I'll be quite busy until end of August but I'm always happy to collaborate, particularly expressions is something I wanted to probably look at anyway as one of possible work items for this autumn. Feel free to email me. |
hi patrikhuber: |
I found similar implementations in High-Fidelity Pose and Expression Normalization for Face Recognition in the Wild |
Hi @oopming, yes, I will be working on things related to this over the next weeks (i.e. check that the BFM works properly and generating expression shapes from FaceWarehouse (but not for the BFM I think). |
BFM2009 and BFM2017 support (with expressions) has been in the |
Hello, I am looking for FaceWarehouse registered scans in the topology of the BFM but haven't got any clew. Do you know where can we find them? |
@zengxianyu Hi, sorry no idea from the top of my head. Maybe the 3DDFA or MOFA papers / repos are a good start to look? If you find them, I am sure people would appreciate it if you posted here what you found. |
I found an issue in 3DDFA repo looking for Facewarehouse meshes in BFM format but unfortunately there is no answer either. |
Hello, @patrikhuber ! Thank you for your great work! I have a question: can I create the same to expression_blendshapes_3448.bin file, but for BFM 2017 model? I understood that BFM 2017 contain expression model, but how I can extract it and covert to list of blendshapes? |
Hi @megahard25, you can't just create blendshapes from a PCA basis, but they're both a linear combination of vectors. I would recommend that you get familiar with the literature on 3DMMs and blendshapes. Also, think about whether you really need blendshapes, perhaps you can also just fit using the PCA expression model, which is the more common approach. |
I found the procedure described here works well in converting mesh into BFM topology. First apply nicp to register the BFM mean face and FWH mean face without expression; then assign the closest triangle on FWH to each vertice of BFM and save the triangle index and the barycentric weight; then for meshes with expressions just apply these weight and corresponded triangle |
Hello,
![image](https://user-images.githubusercontent.com/12501995/28121380-df5ec628-6755-11e7-942b-581773af7208.png)
I've recently switched to using the Python binding of this repo like #140, not exactly getting what I want, but it's rather a minor issue. The real problem comes when am trying to use BFM instead.
Also, the estimated pose is also completely inaccurate.
It could be the fact that I'm using the blend shape of 3448 (because I cannot go without any blendshape), but I would really like to see if it is possible to achieve such thing.
The text was updated successfully, but these errors were encountered: