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/
714 stars 108 forks source link

Is it possible to fit scan mesh without landmark? #48

Open dragonylee opened 11 months ago

dragonylee commented 11 months ago

Thanks for your work! I am using your code fit_scan.py to fit a mesh with arbitrary topology. It's hard to generate landmarks for all inputs. Is there any way to fit it without landmarks please?

bbakpil commented 4 months ago

Hi, did you get any ideas/solutions?

dragonylee commented 4 months ago

Hi, did you get any ideas/solutions?

No, so when I was comparing them, I explained that their method requires providing landmarks.

TimoBolkart commented 4 months ago

Fitting the model to a scan minimizes follows some iterative closest point scheme, which alternates between computing correspondences between each scan vertex and the FLAME model mean, and minimizing the distance between these points in correspondence. As ICP-based methods converge only locally die to the unknown correspondence, a good initialization is required for this optimization. One common way is to assume the correspondence for few keypoints to be given. Without these keypoints, you will need to find some other way to initialize the optimization to get good initial correspondences for the ICP to work.