CPC G02C 13/003 (2013.01) [G06T 7/55 (2017.01); G06T 7/73 (2017.01); G06T 7/80 (2017.01); G06T 11/60 (2013.01); G06T 19/20 (2013.01); G06V 10/751 (2022.01); G06V 40/171 (2022.01); G06T 2207/10024 (2013.01); G06T 2207/10028 (2013.01); G06T 2207/30201 (2013.01); G06T 2219/2016 (2013.01)] | 22 Claims |
1. A system, comprising:
a processor configured to:
determine an event associated with updating a current model of a user's face;
in response to the event, use a set of historical recorded frames of the user's face to update the current model of the user's face;
obtain a newly recorded frame of the user's face;
use the current model of the user's face to generate a corresponding image of a glasses frame;
determine a set of computed bridge points, wherein determining the set of computed bridge points comprises:
determining a face normal vector using at least three points from the current model of the user's face;
determining a bridge shift value based on two internal eyebrow points and two internal eye corners from the current model of the user's face; and
determining the set of computed bridge points based on the face normal vector and the bridge shift value;
present the image of the glasses frame over the newly recorded frame of the user's face in an initial placement based on the set of computed bridge points; and
modify the initial placement of the glasses frame over the newly recorded frame of the user's face based on a determined set of morphed nose curve points, the morphed nose curve points determined by moving a predetermined set of points along a nose curve of a generic face model to match corresponding locations on the current model of the user's face; and
a memory coupled to the processor and configured to provide the processor with instructions.
|