'How does faceeffect decide where to attach the 3dmesh? e.g attach the axis to the nose

Looking into below Mediapipe's faceeefect module's graph definition

  node_options: {
[type.googleapis.com/mediapipe.SwitchContainerOptions] {
  contained_node: {
    calculator: "FaceGeometryEffectRendererCalculator"
    node_options: {
      [type.googleapis.com/mediapipe.FaceGeometryEffectRendererCalculatorOptions] {
        effect_texture_path: "mediapipe/graphs/face_effect/data/axis.pngblob"
        effect_mesh_3d_path: "mediapipe/graphs/face_effect/data/axis.binarypb"
      }
    }
  }

I further checked the calculator code of FaceGeometryEffectRendererCalculator, I couldn't pinpoint the code where it determines the exact location the renderer render the axis. Maybe I don't understand the OpenGL well which leads to the misunderstanding.

Can someone help shed some lights where should I look for?

Thanks!



Solution 1:[1]

By digging into the document and paper I get to understand that the estimated face geometry is aligned with the canonical face model. You can refer the pager https://arxiv.org/pdf/1907.06724.pdf and the explanation here

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 kai yang