AaronJackson / vrn

:man: Code for "Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric CNN Regression"
http://aaronsplace.co.uk/papers/jackson2017recon/
MIT License
4.52k stars 747 forks source link

benchmark on AFLW2000-3D #143

Closed ydwen closed 4 years ago

ydwen commented 4 years ago

Hi Aaron,

Thank you so much for sharing the implementation of VRN paper. Currently I am work on the evaluation of 3D face reconstruction on AFLW2000-3D. I read you paper but am still not sure about some details. Thanks in advance for any help you are able to provide.

  1. I saw your discussion with @Jim61C that z axis was scaled by multiplying 0.5. Could you point me to the description about it? Also do you scale z axis when evaluating on AFLW2000-3D dataset?

  2. For 3D face reconstruction on AFLW2000-3D dataset, do you use iterative closest point (icp) to find the correspondence between the predicted and target dense landmarks? If yes, how many iteration do we need? What would be the stop criteria?

Thanks again!

AaronJackson commented 4 years ago

Hi

1) The scaling is applied for all datasets because the model was trained with x2 z scaling.

2) Yes - in order to compute the error on any dataset, there needs to be some way to calculate the correspondence between the two meshes. Since the output is a volume, surface extraction has to be used and this does not output a mesh with a fixed number of points. I'm not actually sure the number of iterations and stopping criteria are so important in this case- we are not using the aligned mesh to compute the error, we are only using it to find correspondence. The moving mesh is discarded once this is done. ICP is just run until it can't find a better fit. I think Matlabs pcregrigid will stop before reaching the max iterations if this occurs. I don't quite remember for sure sorry.

Hope that helps!

ydwen commented 4 years ago

Got it! Thanks for your quick response.