0

I want to make 3d face reconstruction from single image.I googled around and found

https://github.com/mkorunoski/3D-Face-Reconstruction/ .This link uses below values for 3D reconstruction:

const cv::Point3f modelPointsArr[] =
{
    cv::Point3f(-1.030300, -0.41930, -0.38129),
    cv::Point3f(-0.493680, -0.38700, -0.55059),
    cv::Point3f(+1.030300, -0.41930, -0.38129),
    cv::Point3f(+0.493680, -0.38700, -0.55059),
    cv::Point3f(-0.363830, +0.52565, -0.79787),
    cv::Point3f(+0.363830, +0.52565, -0.79787),
    cv::Point3f(-0.599530, +1.10768, -0.71667),
    cv::Point3f(+0.599530, +1.10768, -0.71667),
    cv::Point3f(-0.000002, +1.99444, -0.94946)
};

EDIT: This points are calculated using MeshLab's "Get Info" selector for the images are in workspace of the project as stated in http://www.morethantechnical.com/2012/10/17/head-pose-estimation-with-opencv-opengl-revisited-w-code/.

But I want to obtain 3d face reconstruction with different images. Is there any way to get such 3d points automatically from given image not writing manually for specific image?

1 Answers1

0

If these points are needed by your algorithm exactly as you wrote them in the code, they should find their way some how to your programs. I see two options:

  1. Write them manually as you did.
  2. Read them from some config file

In the second option you just moved the manual writing to other place...

You have to ask your self were those numbers were come from, and implement the algorithm from which they were calculated, and implement it in you code - this will bypass the need to manually write them in your code.

R. Daisy
  • 11
  • 1