Closed KirtoXX closed 4 years ago
Hi @KirtoXX,
Thanks for the nice words!
The shape-to-landmarks fitting of eos uses a scaled orthographic / affine projection model. I would suggest you read O. Aldrian & W. Smith, Inverse Rendering of Faces with a 3D Morphable Model, PAMI 2013 (from the Readme), to get a better overview about it. I would also suggest that you get more familiar with projection models (i.e. scaled orthographic, perspective) from a graphics text book.
You can also have a look at fit-model-ceres
to get some inspiration of how to use non-linear fitting to estimate focal length. Though it's a highly underconstrained problem, in particular if trying to estimate it from a single image.
Potentially you could get depth (z) values from the estimated mesh?
Hi @patrikhuber , Thanks for ur answer. I have get familiar with scaled projection models with your tips.Now I know that why your choise projection models to slove P_affrine. Could your pls give me some tips about how to slove scale factor of projection models? Cause I want to ues scale factor to build mat P and R T. In paper,lmks and shape model are norm to sqrt(2) and sqrt(3) by mat T and mat U, could we use it to solve scale?
@KirtoXX Actually eos estimates camera parameters with a scaled orthographic projection (SOP) model, and gives you R, T and s. See here: https://github.com/patrikhuber/eos/blob/master/include/eos/fitting/orthographic_camera_estimation_linear.hpp. You can look more closely at this algorithm, it's quite neat. All the references are given in the code comments for further reading.
@patrikhuber I have read https://github.com/patrikhuber/eos/blob/master/include/eos/fitting/affine_camera_estimation.hpp for a long time,thanks a lot!
Actually I think the file affine_camera_estimation.hpp
could be / should be removed - I can see that it still uses OpenCV, which has been removed as a dependency from eos a long time ago. I don't think this code is used anywhere anymore. Thanks for pointing me to it. I've opened #303 to track this.
Hi @patrikhuber I have saved full_projection_3x4 mat by render param which store view_model,ortho_projection,but when i dot it by mesh, I find that face not in image center,could u pls give me some tips?
@KirtoXX Please search the other issues (including closed ones), there is some comments and code on how to use the parameters to project the mesh to an image in Python.
Hi patrikhuber Amazing work! I am a new beginner of eos. Casue i want to generate depth img of a face,but it is hard to do it while i can not get focal length,i gase it is a const value in your code. where can i find it?