System and method for guiding eyebrow shaping with projection light
By using canvas image and light projection technology in the light projection system, the problem of difficulty in effectively plasticizing eyebrows in the existing technology is solved, and the precise design and application of eyebrow geometry is achieved, and the accuracy and efficiency of plastic surgery are improved.
Patent Information
- Application Number
- CN202380049340.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-05-19
- Filing Date
- 2023-05-19
- Publication Date
- 2025-02-14
AI Technical Summary
The prior art is difficult to effectively utilize light projection systems to guide and plasticize eyebrows, and lacks a systematic and precise method for designing and applying new eyebrow geometry.
By using canvas images in the light projection system, accessing and projecting images including vertical face centerline, target eyebrow geometry and reference curve segments, positioning and mirroring relative to user eyebrow features, realizing accurate projection of eyebrow geometry and Adjustment.
Real-time visualization and adjustment of new eyebrows geometry on the user's face is achieved, improving the accuracy and efficiency of eyebrow plastic surgery, making it easier for operators to enhance or modify eyebrows after user confirmation.
Smart Images

Figure CN119451596A_ABST
Abstract
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 63 / 343,738, filed on May 19, 2022, which is incorporated by reference in its entirety. Technical Field
[0002] The present invention relates generally to the field of light projection systems and, more particularly, to new and useful systems and methods in the field of light projection systems for guiding eyebrow shaping with projected light. BRIEF DESCRIPTION OF THE DRAWINGS
[0003] Figure 1A and Figure 1B is a flowchart representation of the method; and Figure 2A , Figure 2B , Figure 2C is a flowchart representation of a method. Description of Embodiments
[0004] The following description of the embodiments of the present invention is not intended to limit the present invention to these embodiments, but to enable those skilled in the art to make and use the present invention. The variations, configurations, implementations, example implementations, and examples described herein are optional and are not limited to the variations, configurations, implementations, example implementations, and examples they describe. The present invention described herein may include any and all combinations of these variations, configurations, implementations, example implementations, and examples.
[0005] 1. Approach: Defect detection and repair followed by treatment like Figure 1A , Figure 1B , Figure 2A , Figure 2B and Figure 2C As shown, the method S100 for guiding eyebrow shaping includes accessing a canvas image in block S110, the canvas image including a vertical facial centerline, a target first eyebrow geometry, and a target second eyebrow geometry. The target first eyebrow geometry is arranged on a first side of the vertical facial centerline; and includes a first set of curve segments geometrically referenced to the vertical facial centerline. The target second eyebrow geometry is arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry; and includes a second set of curve segments geometrically referenced to the vertical facial centerline and the first set of curve segments.
[0006] Method S100 also includes, during the annotation period: in box S140, projecting the canvas image via the projection system onto the user's face located on a headrest facing the projection system; in box S130, aligning a vertical facial centerline of the canvas image with the center of the user's face; in box S130, positioning a curved segment in a first set of curved segments of a target first eyebrow geometry in the canvas image relative to features of the user's first eyebrow; and in box S132, mirroring a curved segment in a second set of curved segments of a target second eyebrow geometry in the canvas image projected onto the user's face across the vertical facial centerline.
[0007] 1.1. Method: Confirmation + Alignment Mark exist Figure 1A , Figure 1B , Figure 2A , Figure 2B and Figure 2C In one variation of the method S100 shown, the target first eyebrow geometry is arranged on a first side of a vertical facial centerline and includes a first set of curve segments geometrically referenced to the vertical facial centerline. The target second eyebrow geometry is arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry and includes a second set of curve segments geometrically referenced to the vertical facial centerline and the first set of curve segments.
[0008] This variation of method S100 includes during an annotation period: in box S140, projecting a canvas image via a projection system onto a user's face located on a headrest coupled to the projection system; in box S130, aligning a vertical facial centerline of the canvas image projected onto the user's face with a center of the user's face; in box S130, positioning a curved segment in a first set of curved segments of a target first eyebrow geometry in the canvas image projected onto the user's face relative to features of the user's first eyebrow; and in box S132, mirroring a curved segment in a second set of curved segments of a target second eyebrow geometry in the canvas image projected onto the user's face across the vertical facial centerline.
[0009] This variation of method S100 also includes, in response to receiving confirmation of the target first eyebrow geometry and the target second eyebrow geometry, in the canvas image projected onto the user's face: in box S150, projecting a set of alignment marks onto the user's face adjacent to the canvas image; in box S152, generating a prompt to temporarily apply a set of marks on the user's face that coincide with the set of alignment marks, and while maintaining the set of marks coincident with the set of alignment marks, outlines of the target first eyebrow geometry and the target second eyebrow geometry onto the user's face; and in box S154, providing a prompt to an operator near the user.
[0010] 1.2. Method: Facial landmark detection + automatic alignment exist Figure 1A and Figure 1B In a variation of the method S100 shown, the target first eyebrow geometry is arranged on a first side of a vertical facial centerline and includes a first set of curve segments geometrically referenced to a set of facial landmarks. The target second eyebrow geometry is arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry and includes a second set of curve segments geometrically referenced to the set of facial landmarks.
[0011] This variation of method S100 includes, during the annotation period: in block S110, accessing a set of images captured via a left optical sensor and a right optical sensor facing a user's face located on a headrest; in block S112, compiling the set of images into a three-dimensional facial representation of the user's face; in block S114, detecting the set of facial landmarks in the three-dimensional facial representation; and in block S120, virtually projecting a canvas image aligned with facial landmarks in the set of facial landmarks onto the three-dimensional facial representation; in block S141, based on the images from the three-dimensional facial representation, In box S140, the left canvas image is projected onto the stored field of view of a left light projector adjacent to the left optical sensor to generate a left canvas image; in box S142, a right canvas image is generated based on the projection of the canvas image from the three-dimensional facial representation onto the stored field of view of a right light projector adjacent to the right optical sensor; in box S140, the left canvas image is projected onto the user's face via the left light projector; and in box S140, the right canvas image is projected onto the user's face via the right light projector.
[0012] 2. Application In general, the blocks of method S100 may be performed by a facial projection system (hereinafter referred to as the "system") to project new target eyebrow geometries onto a user's face, such as in white light or other visible light, so as to: enable the user to intuitively perceive these new target eyebrow geometries on her own face before deciding to adopt these new target eyebrow geometries; and enable an operator (e.g., an aesthetician) to draw these projected target eyebrow geometries on the user's face after the user confirms them, and then microblading, applying ombre, nanostroking, tattooing, dyeing, waxing, tweezing, threading, transplanting, or otherwise enhancing or modifying the user's eyebrows within these drawn boundaries. In particular, system 100 may include: a headrest configured to support a user's head; a projection system including a light projector or a group of light projectors facing the headrest; and a mirror adjacent to the projection system and facing the headrest. Thus, the system 100 can interface with an operator to define new target eyebrow geometries based on, for example, a user's preferred eyebrows, a combination of aesthetic qualities of two eyebrows preferred by the user, or other eyebrow preferences of the user (e.g., thicker, thinner, wider, flatter eyebrows); project the new target eyebrow geometries onto the user's face; and then, based on additional input from the operator (such as in response to feedback from a user viewing the projected eyebrow geometries through a mirror), update these new target eyebrow geometries projected onto the user's face.
[0013] Therefore, the system 100 can execute the frame of method S100 to enable the operator and the user to: design new eyebrow geometries for the user; and visualize these new eyebrow geometries on the user's face in real time. The system 100 can also execute the frame of method S100 to enable the operator to quickly draw the new eyebrow geometry confirmed by the user before microneedling, applying gradient color, nano-tattooing, tattooing, dyeing, waxing, tweezing, threading, transplanting or otherwise enhancing or modifying the user's existing eyebrows.
[0014] In one embodiment, the system 100 may execute the blocks of method S100 to: access a canvas image that defines a vectorized map of facial references (e.g., a vertical facial centerline, a horizontal eye line, left and right vertical inner eye lines) and human eyebrow geometry geometrically linked to these facial references (e.g., a vertex between a set of arc segments); project the canvas image onto a user's face located on a headrest via a projection system facing the headrest; adjust the human eyebrow geometry in the canvas image when the canvas image is projected onto the user's face based on manual adjustments input by an operator; and then project a set of alignment marks on the user's face adjacent to the canvas image once the operator confirms the eyebrow geometry represented in the canvas image. The operator may then mark the alignment marks on the user's face, such as with a temporary makeup pen; and trace the human eyebrow geometry in the canvas image projected onto the user's face, such as with a temporary makeup pen, onto the user's face, while maintaining alignment between the temporary marks on the user's face and the alignment marks projected onto the user's face. Upon disabling system 100 or moving the user away from system 100, the operator may then microneedle, apply gradients, nano-tattoo, tattoo, dye, wax, tweeze, thread, transplant, or otherwise enhance or modify the user's eyebrows within these delineated boundaries.
[0015] Additionally or alternatively, the system 100 may include an integrated imaging system, such as an integrated imaging system including one or a pair of color cameras. Thus, the system 100 may execute the blocks of method S100 to: capture an image of the user via the imaging system (e.g., a two-dimensional photographic image, a three-dimensional composite image, or a depth map); automatically detect facial landmarks in the image; automatically align facial references in the canvas image with corresponding facial landmarks (e.g., by aligning a vertical facial centerline with the center of the user's face, aligning horizontal eyelines with the user's pupils, and positioning left and right vertical inner eyelines on the user's left and right caruncles); automatically adjust eyebrow geometry in the canvas image according to predefined geometric links to these facial references; and project the canvas image (thus the canvas image modified according to the facial landmarks detected in the image of the user) onto the user's face. Thus, in this embodiment, the system 100 may autonomously adjust the canvas image based on the facial landmarks on the user's face to define an initial target eyebrow geometry onto the user's face. The system 100 may then interface with the operator to modify the initial target eyebrow geometry based on feedback from the user.
[0016] Additionally or alternatively, an application executed on a user's mobile device (e.g., a smartphone, tablet) can interface with the user to generate a new target eyebrow geometry prior to the annotation session (e.g., prior to the user arriving at the salon or meeting with the operator). In particular, the application can execute the blocks of method S100 to: capture an image of the user's face (e.g., a two-dimensional photographic image); project a canvas image onto the image depicting the user's face; present the image augmented with the canvas image on a display of the mobile device; and implement the aforementioned methods and techniques to adjust the position of the facial reference and / or target eyebrow geometry defined in the canvas image, such as based on manual input from the user or based on the position of facial landmarks automatically detected by the application in the image. Once confirmed by the user, the application can store the final target eyebrow geometry set by the user, such as in a user profile associated with the user and in a remote database. Later, once the user arrives at the system 100 (e.g., arrives at the salon and places her head on the headrest of the system 100), the system 100 can: access the user profile; load the canvas image from the user profile; capture an image of the user's face (e.g., a two-dimensional photographic image, a three-dimensional depth map); detect facial landmarks in the image; align the canvas image with those facial landmarks; project the canvas image onto the user's face; and then interface with an operator to further adjust the canvas image based on feedback from the user.
[0017] Method S100 is described herein as being performed by system 100 to project a target eyebrow geometry that is different from one or both eyebrows of the user onto the user's face in preparation for enhancing or modifying the user's eyebrows, such as by microneedle eyebrow tattooing, applying gradient colors, nano-eyebrow tattooing, tattooing, or dyeing. However, method S100 may additionally or alternatively be performed by system 100 to project new target geometries of other facial features onto the user's face in preparation for enhancement or modification. For example, system 100 may implement similar methods and techniques to: project a target lip geometry onto a user's face in preparation for lip blushing; project a target beard geometry onto a user's face in preparation for beard styling; project a target bangs geometry onto a user's face in preparation for hair styling or bangs trimming; project a target hairline geometry onto a user's face in preparation for scalp micropigmentation, hair transplantation, or alignment (e.g., at a barber shop); project an eyeliner geometry onto a user's face in preparation for applying eyeliner; and / or project a target freckle constellations onto a user's face in preparation for freckle enhancement; and so on.
[0018] 3. System Usually, if Figure 1A As shown, system 100 includes: a base 110; a headrest 120; an optics support 130; an imaging system 140; a projection system 150; a mirror; and / or a controller 170.
[0019] The imaging system 140 is disposed on the optics support 130; and includes a set of optical sensors 142, such as one or a pair of laterally offset color cameras (eg, a left camera and a right camera).
[0020] The projection system 150 is arranged on the optics support 130 ; and includes one or a pair of laterally offset light projectors 152 .
[0021] The mirror 160 is arranged on the optics support 130 adjacent to the projection system 150 and faces the headrest 120 .
[0022] The controller 170 is configured to execute the blocks of the method S100 .
[0023] 3.1 Structure Base 110: may be configured to rest on a horizontal bench surface; or include a bench clamp configured to be positioned over and clamped onto the edge of a horizontal surface.
[0024] The headrest 120 is supported on the base 110 and includes a chin support 122 , a left temple support 124 (eg, a vertical filler column) extending upward from the left side of the chin support 122 , and a right temple support 126 extending upward from the right side of the chin support 122 .
[0025] The optics support 130 is supported on the base 110 or extends longitudinally from the headrest 120 .
[0026] In one embodiment, the base 110 includes an injection molded plastic structure defining a pair of front post receptacles and a rear post receptacle. The headrest 120 may include a pair of front posts configured to be inserted into the front post receptacles. The chin support 122 may: be disposed across and extend between the pair of front posts; and define a rigid or compliant (e.g., foam-backed) concave surface configured to receive and support the user's chin. The left temple support 124 and the right temple support 126 may: extend upwardly above the chin support 122 and may be laterally offset from the chin support 122; and define a rigid or compliant protrusion configured to abut against the user's head, such as abutting near the user's temples. Thus, the chin support and the temple support may cooperate to constrain the user's head above the base 110.
[0027] In this embodiment, the optics support 130 may include a third post configured to be inserted into the rear post receptacle and define a frame or shelf configured to position the mirror 160 above the base 110, such as at a height above the base 110 that is similar to the height of the chin support 122 above the base 110.
[0028] Additionally, the imaging system 140, the projection system 150, and the controller 170 may occupy a common electronic device housing that is disposed on the optics support 130 and faces the headrest 120. For example, the common electronic device housing may be disposed on the optics support 130 above the base 110 and the mirror 160, with the field of view of the optical sensor 142 and the light projector 152 in the imaging and projection system 150 facing the headrest 120.
[0029] 3.2 Imaging + Projection System In one embodiment, the system 100 includes a left color camera that is: arranged near the left side of the common electronic device housing; defines a field of view that is biased toward the left temple support 124; and is therefore configured to capture an image depicting the front of the user's face and a portion of the left side of the user's head (such as the user's left temple, left cheek, and left jawline). In this embodiment, the system 100 may also include a left light projector 152 that defines a field of view that (primarily) intersects the field of view of the left color camera. Thus, the system 100 can project an image (e.g., structured light, eyebrow geometry) onto the left side of the user's face to enable the system 100 to capture three-dimensional data representing the left side of the user's face via the left color camera during the setup cycle, and to visually annotate the left side of the user's face (e.g., the user's left eyebrow) with a light-based marker (hereinafter referred to as a "canvas image").
[0030] In this embodiment, the system 100 may similarly include a right color camera that is: arranged near the right side of the common electronic device housing; defines a field of view that is biased toward the right temple support 126; and is therefore configured to capture an image depicting the front of the user's face and a portion of the right side of the user's head (such as the user's right temple, right cheek, and right jawline). In this embodiment, the system 100 may also include a right light projector 152 that defines a field of view that (primarily) intersects the field of view of the right color camera. Thus, the system 100 can project an image onto the right side of the user's face to enable the system 100 to capture three-dimensional data representing the right side of the user's face via the right color camera during the setup period, and visually annotate the right side of the user's face (e.g., the user's right eyebrow) with a canvas image.
[0031] In this embodiment, during a setup period prior to the annotation period: the left light projector 152 may project a first sequence of structured light features (primarily) onto the left side of the user's face; the left color camera may capture a first sequence of images (primarily) depicting the left side of the user's face; the right light projector 152 may project a second sequence of structured light features (primarily) onto the right side of the user's face; and the right color camera may capture a second sequence of images (primarily) depicting the right side of the user's face. The system 100 may then implement structured light techniques to derive a three-dimensional representation of the left and right sides of the user's face based on these sequences of structured light features, these images, and the known offsets and / or characteristics between the fields of view of the left and right color cameras and the left and right light projectors 152. Later, during the annotation period: the left light projector 152 may project the left half of the canvas image onto the left side of the user's face; and the right light projector 152 may project the right half of the canvas image onto the right side of the user's face.
[0032] Alternatively, the imaging system 140 may include a single optical sensor 142 (e.g., color camera, depth sensor) that defines a field of view facing the headrest 120 and centered on the headrest 120; and the projection system 150 may include a single light projector 152 that defines a field of view similarly facing the headrest 120 and centered on the headrest 120. In this embodiment, during a setup period prior to the annotation period: the light projector 152 may project a first sequence of structured light features onto the user's face; and the optical sensor 142 may capture a sequence of images depicting the user's face illuminated with structured light. The system 100 may then implement structured light techniques to derive a three-dimensional representation of the user's face based on these images and the known offsets and / or characteristics between the fields of view of the optical sensor 142 and the light projector 152.
[0033] Thus, in the aforementioned embodiments, the system 100 may construct a two-dimensional or three-dimensional facial representation of the user's face based on the images captured by the imaging system 140 and / or the structured light projected onto the user's face by the projection system 150. The system 100 may then automatically align the canvas image and / or reposition the facial references in the canvas image based on the facial landmarks detected in the facial representation, thereby reducing the operator's setup time or initial adjustment time.
[0034] Still alternatively, the system 100 may include a single light projector 152 and not include the imaging system 140. Thus, the system 100 may interface with an operator to manually align the canvas image to the user's facial features and / or reposition facial references in a canvas image projected onto the user's face to the user's facial features.
[0035] 3.3 Controller + User Interface In one embodiment, the system 100 also includes a user interface, such as a user interface including a set of input buttons, a trackpad, or a touch screen disposed on a common electronic device housing.
[0036] Additionally or alternatively, the system 100 may include or interface with an external physical user interface, such as a wired or wireless mouse or trackpad.
[0037] 3.3.1 Virtual Interface exist Figure 1B and Figure 2A In one embodiment shown, in addition to or in lieu of a physical user interface, the projection system 150 is configured to project a virtual user interface (such as a virtual user interface including a set of virtual graphics or icons) onto a user's face (e.g., the user's forehead) or onto an adjacent projection surface of the system 100 (e.g., below the chin support 122) during operation. In this embodiment, the imaging system 140 captures images of the user and / or the projection surface during operation. The controller 170: scans these images to determine whether there is a human finger, stylus, or other object that intersects a virtual icon in the virtual user interface projected onto the user or the projection surface; and in response to detecting such presence of a human finger, stylus, or other object that intersects a corresponding virtual icon in the virtual user interface, registers an input to the system 100.
[0038] Thus, in this embodiment, the projection system 150 can: project structured light onto the user to enable the system 100 to capture three-dimensional data representing the user's facial morphology during a setup period; project a canvas image onto the user's face during an annotation period; and project a virtual user interface onto the user's face and / or elsewhere on an adjacent projection surface of the system 100 to enable an operator to control the system 100 without diverting her attention away from the user, without docking with another device, and without touching a common electronic device housing, which might otherwise interfere with the alignment between the projection system 150 and the user's face.
[0039] 4. Manual operation + real-time eyebrow design exist Figure 2A , Figure 2B and Figure 2C In one embodiment shown, the projection system includes a single light projector, and the system interfaces with an operator to manually align facial references in a canvas image with the user's facial features, and the system 100 "designs" new target left eyebrow geometries and target right eyebrow geometries for the user in real-time, such as without the user's prior knowledge or existing target eyebrow geometries stored in the user's profile.
[0040] 4.1 Initial Configuration In this embodiment, once the user arrives at the system 100 (eg, in a salon) and places her face against the chin support and temple support, the operator may activate the system and initiate a setup cycle at the system 100 .
[0041] The system 100 then projects a pair of eye markers onto the user's face at low light intensity via the projection system, and prompts the operator to align the eye markers with the user's eyes. For example, the system 100 may: project a pair of low light intensity circles with diameters approximating (e.g., 120%) the common or average diameter of a human iris; prompt the operator via the user interface to move the circles laterally and vertically to align with the user's left and right pupils; and update the positions of the circles projected by the projection system based on subsequent input from the operator. Once the operator confirms that the circles are aligned with the user's eyes, the system 100 may store the areas within and / or around the circles (e.g., areas spanning the user's entire left and right eyes) as keepout projection zones. During subsequent operation, the system 100 may mute or otherwise avoid projecting light within the keepout projection zones. System 100 may be further adapted to project higher intensity light onto the user's face, thereby enabling the operator to more easily and / or in greater detail view elements of the canvas image projected onto the user's face without causing visual discomfort to the user.
[0042] Thus, during a setup period, the system 100 may: project a set of eye markers onto a user's face; provide prompts to an operator to align the set of eye markers with the user's eyes; reposition the set of eye markers projected onto the user's face based on input received from the operator to align the set of eye markers with the user's eyes; and silence elements of a canvas image projected onto the user's face that intersect the set of eye markers.
[0043] 4.2Canvas image + canvas alignment Block S110 of the method states that a canvas image is accessed; and block S140 of the method S100 states that the canvas image is projected onto a user's face located on a headrest facing the projection system via a projection system. Generally, in block S110, the system 100 may access a canvas image that includes: a set of facial references (e.g., lines, vertices); and a set of arcs that define a target left eyebrow geometry and a target right eyebrow geometry that are geometrically linked to the set of facial references. In block S140, the system 100 may project the canvas image onto the user's face via the projection system.
[0044] In one embodiment, the canvas image defines a target left eyebrow geometry, which includes: a left inner eyebrow vertex; a left outer eyebrow vertex; a left upper eyebrow arc (e.g., a spline, a Bezier curve) extending between the left inner eyebrow vertex and the left outer eyebrow vertex; a left upper eyebrow arc point intersecting a horizontal tangent of the left upper eyebrow arc; a left lower eyebrow arc extending below the left upper eyebrow arc between the left inner eyebrow vertex and the left outer eyebrow vertex; and a left lower eyebrow arc point intersecting a horizontal tangent of the left lower eyebrow arc. In this embodiment, the canvas image also defines a target right eyebrow geometry, which includes: a right inner vertex; a right outer vertex; a right upper arc extending between the right inner vertex and the right outer vertex; a right upper arc point intersecting a horizontal tangent of the right upper arc; a right lower arc extending below the right upper arc between the right inner vertex and the right outer vertex; and a right lower arc point intersecting a horizontal tangent of the right lower arc.
[0045] In this embodiment, upon initiation of an enhancement period, the system 100 may: retrieve a nominal canvas image from a local memory or a remote database; and trigger the projection system to project the nominal canvas image onto the user's face.
[0046] 4.2.1 Link Elements Furthermore, elements of the target eyebrow geometry defined in the canvas image can be linked to the facial reference in the canvas image via geometric rules. In particular, these geometric rules can define length ratios and / or angles between these arcs and lines.
[0047] In one embodiment, the canvas image includes a left vertical inner eye line and a left outer eyebrow vertex. In this embodiment, the canvas image also includes a left vertical inner eyebrow line, which is disposed between the vertical facial centerline and the left vertical inner eye line; laterally offset from the vertical facial centerline by a first distance; and laterally offset from the left vertical inner eye line by a second distance, the second distance being related to the left distance in a nominal ratio (e.g., 1.62 or the "golden ratio"). In this embodiment, the canvas image also includes a left upper eyebrow arc point, which is disposed between the left vertical inner eyebrow line and the left outer eyebrow vertex; laterally offset from the left vertical inner eyebrow line by a third distance; and laterally offset from the left outer eyebrow vertex by a fourth distance, the fourth distance being related to the third distance in a nominal ratio. In this embodiment, the canvas image also includes a target left eyebrow geometry, the target left eyebrow geometry including a set of left curve segments extending between the vertical inner eyebrow line, the left outer eyebrow vertex, and the left upper eyebrow arc point.
[0048] Thus, in response to manual manipulation of any of these elements of the canvas image, the system 100 may update the positions or geometries of other elements in the canvas image according to these geometric rules, such as including a target left eyebrow geometry and a target right eyebrow geometry defined in the canvas image.
[0049] However, canvas images may define collaborations to define a set of facial reference and target eyebrow geometries and / or any other collection of vertex, line and curve elements linked according to any other geometric rules.
[0050] 4.3 Manual canvas image alignment and manipulation Block S130 of method S100 states: aligning a vertical facial centerline of the canvas image with a center of the user's face; and positioning a curved segment in a first set of curved segments of a target first eyebrow geometry in the canvas image relative to features of a first eyebrow of the user. Typically, in block S130, an operator is interfaced to manually align feature references in the canvas image with facial features of the user, thereby customizing the canvas image to the unique face of the user.
[0051] In one of the above embodiments, the canvas image defines a target left eyebrow geometry, which includes: a left inner eyebrow vertex; a left outer eyebrow vertex; a left upper eyebrow arc extending between the left inner eyebrow vertex and the left outer eyebrow vertex; a left upper eyebrow arc point intersecting with a horizontal tangent of the left upper eyebrow arc; a left lower eyebrow arc extending below the left upper eyebrow arc between the left inner eyebrow vertex and the left outer eyebrow vertex; and a left lower eyebrow arc point intersecting with a horizontal tangent of the left lower eyebrow arc. In this embodiment, the canvas image also defines a target right eyebrow geometry, which includes: a right inner vertex; a right outer vertex; a right upper arc extending between the right inner vertex and the right outer vertex; a right upper arc point intersecting with a horizontal tangent of the right upper arc; a right lower arc extending below the right upper arc between the right inner vertex and the right outer vertex; and a right lower arc point intersecting with a horizontal tangent of the right lower arc. In this embodiment, the system 100 may: receive a lateral position input from an operator via a user interface; and move the canvas image laterally based on the lateral position input to align the vertical facial centerline of the canvas image with the center of the user's face. Similarly, the system 100 may: receive a first position input from an operator via a user interface; reposition the left inner eyebrow vertex of a target left eyebrow geometry projected onto the user's face based on the first lateral input to align the left inner eyebrow vertex in the canvas image with the inner edge of the user's left (e.g., preferred) eyebrow; receive a second position input from an operator via a user interface; and reposition the left outer eyebrow vertex of a target left eyebrow geometry projected onto the user's face based on the second lateral input to align the left outer eyebrow vertex in the canvas image with the outer edge of the user's left (e.g., preferred) eyebrow. aligning; receiving a third position input from an operator via a user interface; repositioning an upper left eyebrow arc point of a target left eyebrow geometry projected onto the user's face based on the third lateral input to align the upper left eyebrow arc point in the canvas image with the peak of the upper edge of the user's left (e.g., preferred) eyebrow; receiving a fourth position input from the operator via the user interface; and repositioning a lower left eyebrow arc point of the target left eyebrow geometry projected onto the user's face based on the fourth lateral input to align the lower left eyebrow arc point in the canvas image with the peak of the lower edge of the user's left (e.g., preferred) eyebrow.
[0052] In a similar embodiment described above, the canvas image includes a left vertical inner eye line and a left outer eyebrow vertex. In this embodiment, the canvas image also includes a left vertical inner eyebrow line, which is: arranged between the vertical facial centerline and the left vertical inner eye line; laterally offset from the vertical facial centerline by a first distance; and laterally offset from the left vertical inner eye line by a second distance, the second distance being related to the left distance in a nominal ratio (e.g., 1.62 or a "golden ratio"). In this embodiment, the canvas image also includes a left upper eyebrow arc point, which is: arranged between the left vertical inner eyebrow line and the left outer eyebrow vertex; laterally offset from the left vertical inner eyebrow line by a third distance; and laterally offset from the left outer eyebrow vertex by a fourth distance, the fourth distance being related to the third distance in a nominal ratio. In this embodiment, the canvas image also includes a target left eyebrow geometry, which includes a set of left curve segments extending between the vertical inner eyebrow line, the left outer eyebrow vertex, and the left upper eyebrow arc point. In this embodiment, the system 100 may: receive a lateral position input from an operator via a user interface; and move the canvas image projected onto the user's face according to the lateral position input to align the vertical facial centerline of the canvas image with the center of the user's face. In this embodiment, the system 100 may also: receive a second lateral position input from the operator via the user interface; reposition the first vertical inner eye line projected onto the user's face according to the second lateral input to align the first vertical inner eye line in the canvas image with the inner edge of the user's first eye; position the first vertical inner eyebrow line between the vertical facial centerline and the first vertical inner eye line according to the nominal ratio; receive a third lateral position input from the operator via the user interface; reposition the first outer eyebrow vertex projected onto the user's face according to the third lateral input to align the first outer eyebrow vertex in the canvas image with the outer edge of the user's first eyebrow; and reposition the first upper eyebrow arc point between the first vertical inner eyebrow line and the first outer eyebrow vertex line according to the nominal ratio.
[0053] 4.4. Example: Eyebrow Design In one embodiment, upon initiation of an enhancement period, the system 100 may: retrieve a nominal canvas image from a local memory or a remote database; and trigger the projection system to project the nominal canvas image onto the user's face.
[0054] For example, the nominal canvas image may include a set of vertical lines representing: the center of the nominal face; the center of the left and right eyes of the nominal face; the left and right boundaries of the left and right eyes of the nominal face; the left and right boundaries of the nominal face; and / or the left and right boundaries of the eyebrows of the nominal face. The nominal canvas image may also include a set of horizontal lines that are configured to intersect with: the pupil of the nominal face; the upper and lower vertical boundaries of the upper edge of the eyebrows of the nominal face; and the upper and lower vertical boundaries of the lower edge of the eyebrows of the nominal face. The nominal canvas image may also include a vertex configured to intersect with the Cupid's bow of the nominal face. The nominal canvas image may also include a set of oblique lines extending from vertices to: the maximum edge of the left and right eyebrows of the nominal face; the horizontal tangents (or peaks, arc points) of the lower edges of the left and right eyebrows of the nominal face; and / or the horizontal tangents (or peaks, arc points) of the upper edges of the left and right eyebrows of the nominal face. The nominal canvas image may also include: a nominal left eyebrow geometry and a nominal right eyebrow geometry, each including a set of arcs and lines; and a set of vertices anchoring the intersections between these vertical lines, horizontal lines, oblique lines, and lines forming the nominal left and right eyebrow geometries of the nominal face. The system 100 then projects the nominal canvas image onto the user's face.
[0055] The system 100 prompts the operator to: align (e.g., by dragging) the cupid's bow vertex of the canvas image to the user's cupid's bow via the user interface; align (e.g., by rotating) the vertical facial centerline of the canvas image to the vertical center of the user's nose and eyebrows; align (e.g., by dragging) the horizontal and vertical lines of the canvas image to align with the center of the user's pupil, the edge of the user's eye caruncle, and / or the edge of the user's face, etc. Then, as described above, the system 100 updates the positions of other elements in the canvas image according to the stored geometric rules; and projects the updated canvas image onto the user accordingly.
[0056] The user indicates a preferred (e.g., left) eyebrow to the operator. Accordingly, the operator drags (or scrolls, moves) an element of the canvas image via the user interface to position a target left eyebrow geometry (e.g., eyebrow perimeter or boundary) in the canvas image projected onto the user's face directly over the user's existing left eyebrow. System 100: in response to these inputs from the operator, updates the positions of vertices, lines, and / or arcs within the canvas image; and projects the updated canvas image onto the user's face in real time.
[0057] In particular, in this embodiment, the operator manually aligns the left vertical inner eye line with the user's left caruncle. Then, the system 100 positions the inner vertical brow line between the vertical center line and the left vertical inner eye line according to the nominal ratio, thereby defining the inner corner or edge of the target left eyebrow geometry.
[0058] The operator then manually adjusts the vertical position of the horizontal brow line to intersect the inner lower corner of the left eyebrow, thereby manually setting the vertical position of the inner lower corner of the target left eyebrow geometry.
[0059] The operator further manually moves the outer left eyebrow vertex to align with the outer corner of the user's left eyebrow. Then, the system 100 positions the left upper eyebrow arc point (or vertex, horizontal tangent) of the target left eyebrow geometry between the inner vertical eyebrow line and the outer left eyebrow vertex according to the above nominal ratio, thereby defining the lateral position of the peak of the upper edge of the target left eyebrow geometry.
[0060] Then, the operator drags the vertices on the upper and lower curves of the target left eyebrow geometry to align with the upper and lower edges of the user's left eyebrow. The operator further drags or otherwise adjusts the radius of the arcs forming the upper and lower curves of the target left eyebrow geometry to match the contour of the user's left eyebrow.
[0061] Additionally or alternatively, the operator can drag or otherwise move these vertices, lines, and / or arcs within or outside the outline of the user's left eyebrow to deviate the target left eyebrow geometry from the current aesthetics of the user's left eyebrow to: define a thicker or thinner target left eyebrow geometry; define a flatter or more curved target left eyebrow geometry; define a wider or narrower target left eyebrow geometry; or define a more or less tapered target left eyebrow geometry. The system updates the canvas image and projects the updated canvas image onto the user's face accordingly in real time.
[0062] 4.5 Image unlock Block S132 of method S100 states that a curve segment in a second set of curve segments of a target second eyebrow geometry in a canvas image projected onto the user's face is mirrored across a vertical facial centerline. Typically, in block S132, the system 100 may mirror the target left eyebrow geometry across the vertical facial centerline to define a target right eyebrow geometry while the operator adjusts the target left eyebrow geometry in the canvas image (or vice versa) such that the target left eyebrow geometry and the target right eyebrow geometry are identical and equally positioned across the centerline.
[0063] For example, system 100 may mirror a target right eyebrow geometry from a target left eyebrow geometry across a vertical facial centerline by: mirroring the right inner vertex of the target right eyebrow geometry from the left inner eyebrow vertex of the target left eyebrow geometry across the vertical facial centerline; mirroring the right outer vertex of the target right eyebrow geometry from the left outer eyebrow vertex of the target left eyebrow geometry across the vertical facial centerline; mirroring the right upper arc of the target right eyebrow geometry from the left upper eyebrow arc of the target left eyebrow geometry across the vertical facial centerline; and mirroring the right lower arc of the target right eyebrow geometry from the left lower eyebrow arc of the target left eyebrow geometry across the vertical facial centerline.
[0064] Thus, as the operator moves the vertices, lines, and arcs that define the target left eyebrow geometry, the system 100 can maintain symmetry of the target right eyebrow geometry across the centerline of the canvas image (and vice versa).
[0065] 4.6 Constraint Unlock In one embodiment, the system 100: receives a symmetry deactivation input from an operator via a user interface; and accordingly disables the symmetry of the left eyebrow geometry and the right eyebrow geometry across the vertical facial centerline. Subsequently, in response to receiving a repositioning input from the operator via the user interface to modify the position of an element of the target right eyebrow geometry, the system 100: repositions the element of the target right eyebrow geometry projected onto the user's face according to the repositioning input without modifying the position of the corresponding element of the target left eyebrow geometry on the opposite side of the vertical facial centerline.
[0066] Thus, in response to a symmetry deactivation input from the operator, the system 100 may unlock the symmetry constraints, thereby enabling the operator to define asymmetrical target left and right eyebrow geometries.
[0067] Similarly, in response to input from the operator, the system 100 can disable geometric rules that define relative positions of elements of the canvas image, thereby enabling the operator to define target left and right eyebrow geometries that deviate from (ie, are independent of) these geometric rules.
[0068] 4.7 Eyebrow Design Confirmation + Alignment Marking Then, in response to receiving confirmation from the operator of the target left eyebrow geometry and the target right eyebrow geometry defined in the canvas image projected onto the user's face, the system 100 can project a set (e.g., two, three) of alignment marks (e.g., "dots") onto the user's face (e.g., forehead) adjacent to the canvas image. The system 100 can also generate a prompt: temporarily apply a set of marks on the user's face that coincide with the set of alignment marks; and then trace the outline of the target left eyebrow geometry and the target right eyebrow geometry onto the user's face while keeping the set of marks coincident with the set of alignment marks. The system 100 can provide a prompt to the operator near the user to complete the enhancement period.
[0069] In particular, once the operator confirms the target left eyebrow geometry and the target right eyebrow geometry, the system 100 can: lock the vertices, lines and / or arcs defined in the canvas image; project a set of alignment marks (e.g., two points) onto the user's face adjacent to the projected canvas image; and prompt the user to annotate the user's face at the alignment marks, such as by applying a "point" directly over each alignment mark with a temporary marker. The system 100 then prompts the operator to outline the target left eyebrow geometry and the target right eyebrow geometry currently projected onto the user's face via the projection system while keeping the temporary annotations on the user's face aligned with the alignment marks.
[0070] Once the operator has completely outlined the target left eyebrow geometry and the target right eyebrow geometry, the system 100 can disable the projection system. The user can then move her face away from the headrest. The operator (or other beautician) can then microneedle, apply gradients, nano-tattoo, tattoo, dye, wax, tweeze, thread, transplant, or otherwise enhance or modify the user's eyebrows within these outlines to enhance the user's existing eyebrows according to the target rule eyebrow geometry previously confirmed by the user and the operator. Additionally or alternatively, the operator can wax, pluck, thread, or otherwise remove the hair outside of these outlines.
[0071] 5. Autonomous operation + pre- / remote eyebrow design Figure 1AA variation of the method S100 shown in includes, at a mobile device accessed by a user and before an annotation period: in box S160, accessing a two-dimensional photographic image of a user's face captured by a camera in the mobile device; in box S162, projecting a canvas image onto the two-dimensional photographic image; in box S164, presenting the two-dimensional photographic image annotated with the canvas image on a display of the mobile device; in box S166, receiving an input sequence from the user via the mobile device; in box S168, adjusting a target first eyebrow geometry and a target second eyebrow geometry of the canvas image projected onto the two-dimensional photographic image according to the input sequence; and in box S170, in response to confirmation of the target first eyebrow geometry and the target second eyebrow geometry from the user, storing the canvas image in an electronic profile associated with the user. In this variation, the system 100 may later retrieve the canvas image from the electronic profile in box S110.
[0072] Typically, in this variation, a user may access a web or native application executing on her computing device (e.g., a smartphone, tablet, laptop) and initiate a design session, and a new target eyebrow geometry is captured in the application. The application then: initiates or accesses a user profile associated with the user, such as from a remote user database; captures an image of the user (hereinafter referred to as a "design image"); extracts a cluster of two-dimensional and / or three-dimensional facial features representing the user's face from the image; presents the design image annotated with the target left eyebrow geometry and the target right eyebrow geometry on a display of the computing device; interfaces with the user via the computing device to adjust the target left eyebrow geometry and the target right eyebrow geometry according to the user's preferences; defines the positioning (i.e., location and orientation) of these target left eyebrow geometry and the target right eyebrow geometry relative to the cluster of facial features; and writes the target left eyebrow geometry and the target right eyebrow geometry and their positioning relative to the cluster of facial features to a canvas image; and stores the canvas image in the user profile.
[0073] Later, once the user enters a salon (or other physical location) occupied by the system 100, an operator in the salon enters identifying user information linked to the user profile, such as via a user interface. The system 100 then: accesses the user profile based on the identifying user information; and loads a canvas image from the user profile that defines a target left eyebrow geometry and a target right eyebrow geometry relative to a cluster of facial features of the user.
[0074] The user then places her face on the chin support and temple support. The system 100 then: captures images of the user via a camera in an imaging system; detects facial features in the images; computes a transformation that maps the facial features detected in the images to a cluster of facial features that defines the locations of target left and right eyebrow geometries in a canvas image; transforms (e.g., scales, skews, distorts) the canvas image based on the transformation and a known offset between the camera and a light projector in a projection system; projects the canvas image (the canvas image thus aligned with the user's facial features) onto the user's face; and prompts the operator to trace the outlines of the target left and right eyebrow geometries thereby projected onto the user's face.
[0075] The operator (or other beautician) can then microneedle, apply gradients, nanotattoo, tattoo, dye, wax, tweeze, thread, transplant, or otherwise enhance or modify the user's eyebrows within these drawn outlines to enhance the user's existing eyebrows according to the target rule eyebrow geometry previously confirmed by the user and the operator. Additionally or alternatively, the operator can wax, pluck, thread, or otherwise remove hair outside of these drawn outlines.
[0076] 5.1 Facial landmarks in design images exist Figure 1A In one illustrated embodiment, during a design session, an application executing on a user's computing device prompts the user to capture (or select) an image of the user's face.
[0077] The application then: detects clusters of facial landmarks in the design image, such as by implementing a facial landmark model or other computer vision or artificial intelligence technology to detect the presence and location of facial landmarks in the design image, including: the center of the user's pupil; the inner and outer corners of the user's left and right eyes; the inner and outer corners of the user's left and right eyebrows; the upper and lower arc points (or horizontal tangent vertices) of the user's left and right eyebrows; the top center of the user's upper lip (or Cupid's bow); points or splines along the user's nose; points or splines along the edges of the user's face; points or splines along the user's jawline; and / or the vertical facial centerline of the user's face.
[0078] 5.2 Canvas Image Alignment The application then retrieves the aforementioned nominal canvas image, which includes linked or intersecting vertices, lines and / or arcs that define the relative positions of facial references and target eyebrow geometries; and automatically aligns these facial references in the canvas image with corresponding facial landmarks detected in the design image.
[0079] For example, the application may autonomously: align the vertices of the Cupid's bow of the canvas image with the Cupid's bow of the user detected in the design image; rotate the canvas image so that the vertical facial centerline of the canvas image is centered between facial landmarks representing the user's nose detected in the design image; and snap horizontal and vertical lines in the canvas image to the user's pupils, the corners of the user's eyes, and / or the edges of the user's face detected in the design image.
[0080] 5.3 Target Left Eyebrow Geometry and Target Right Eyebrow Geometry + Eyebrow Design Options The application then generates an initial target left eyebrow geometry and a target right eyebrow geometry on a design image based on the current outline of the user's left eyebrow (or, for example, a right eyebrow selected by the user) (e.g., on a design image matched to the current outline) by: aligning vertices, lines and / or arcs defining the target left eyebrow geometry in the canvas image with facial landmarks detected in the design image; and maintaining symmetry between the target left eyebrow geometry and the target right eyebrow geometry across a vertical facial centerline of the canvas image.
[0081] For example, the application can automatically: align the vertical left inner eye line defined in the canvas image with the inner left corner (or left caruncle) of the user's left eye detected in the design image; offset the inner vertical line of the target left eyebrow geometry in the canvas image from the vertical left inner eye line according to a fixed, predefined ratio; align the left inner horizontal eyebrow line in the canvas image with the inner lower corner of the left eyebrow detected in the design image; align the left outer eyebrow vertex in the canvas image with the outer corner of the left eyebrow detected in the design image; and A predefined nominal ratio is used to horizontally offset the upper left eyebrow arc point (or vertex, horizontal tangent line) of the target left eyebrow geometry defined in the canvas image between the left outer eyebrow vertex and the inner vertical line of the target left eyebrow geometry; align the upper left eyebrow arc point in the canvas image to the interpolation spline between the facial landmarks representing the upper edge of the left eyebrow of the user in the design image; and align the lower left eyebrow arc point of the target left eyebrow geometry in the canvas image to the interpolation spline between the facial landmarks representing the lower edge of the left eyebrow of the user in the design image.
[0082] Thus, the application can automatically define the target left eyebrow geometry in the canvas image based on predefined rules (e.g., ratios) of linear and / or angular offsets between vertices, lines and / or arcs in the canvas image and facial landmarks detected in the design image.
[0083] The application may then: mirror the geometry of the target left eyebrow geometry across the centerline to define a target right eyebrow geometry; and store the target left eyebrow geometry and the target right eyebrow geometry as a first eyebrow design option.
[0084] In one variation, the application repeats the aforementioned process for the right eyebrow to: define a target left eyebrow geometry and a target right eyebrow geometry based on the current outline of the user's right eyebrow; and store these target left eyebrow geometry and target right eyebrow geometry as a second eyebrow design option. The application may also implement similar methods and techniques to define a target left eyebrow geometry and a target right eyebrow geometry that are similar to the current outline of the user's left or right eyebrow, but are wider, narrower, thicker, thinner, flatter, or more curved, etc., than the current outline of the user's left or right eyebrow detected in the design image; and store these target left eyebrow geometry and target right eyebrow geometry as additional eyebrow design options.
[0085] Thus, the system 100 may implement deterministic or procedural eyebrow definition to generate a set of eyebrow design options based on facial landmarks, eyebrow contours, or other facial features detected in a design image.
[0086] 5.4 Eyebrow design options display + selection like Figure 1A As shown, the application can then: project the first eyebrow design option on the design image; present the design image annotated with the first eyebrow design option on the display of the computing device; and prompt the user to confirm, discard or modify the first eyebrow design option. If the user confirms the first eyebrow design option, the application can: store the target left eyebrow geometry and the target right eyebrow geometry defined in the first eyebrow design option in the user profile; and discard the remaining eyebrow design options.
[0087] Alternatively, if the user discards the first eyebrow design option, the application may: project a second eyebrow design option onto the design image; present the design image now annotated with the second eyebrow design option on the display of the computing device; and repeat the foregoing process in response to confirmation, discarding, or modification of the second eyebrow design option.
[0088] Additionally, alternatively, if the user chooses to modify the first eyebrow design option, the application may: further enhance the design image with a complete canvas image (such as a canvas image including vertices, lines, and arcs aligned with facial landmarks detected in the design image); interface with the user via a display to modify the target left eyebrow geometry and the target right eyebrow geometry defined in the canvas image based on position changes to the vertices, lines, and arcs in the canvas image presented on the design image as described above; and repeat the foregoing process in response to confirmation, discarding, or modification of the modified eyebrow design option.
[0089] Additionally or alternatively, if the user selects to modify the first eyebrow design option, the application can present a set of virtual sliders, menus, or other input fields to thinner, thicker, flatter, more curved, wider, narrower, or otherwise modify the target left eyebrow geometry and the target right eyebrow geometry; programmatically modify vertices, lines, and arcs in a canvas image presented over the design image (many based on user input to these fields); and update the target left eyebrow geometry and the target right eyebrow geometry accordingly.
[0090] 5.5 Eyebrow Stroke Orientation exist Figure 1A In one variation shown, the application further implements edge detection, line detection, template matching, and / or other artificial intelligence or computer vision techniques to detect individual hairs within the user's left eyebrow detected in the design image. Then, for each hair detected in the target left eyebrow geometry, the application: detects a first end and a second end of the hair; characterizes a first thickness of the hair near the first end; characterizes a second thickness of the hair near the second end; characterizes the length of the hair; in response to the first thickness exceeding the second thickness, identifies the first end as the root end of the hair; defines a hair vector, the hair vector including a vertex located at the first root end of the hair, defining a length corresponding to the length of the hair, and defining an orientation extending between the first end and the second end of the hair; and if the origin of the hair vector falls within the boundaries of the target left eyebrow geometry selected by the user, the hair vector at that position and orientation is positioned within the target left eyebrow geometry.
[0091] In this variation, if the target left eyebrow geometry includes an area that extends beyond the boundaries of the user's left eyebrow, the application further extrapolates the length, orientation, and density of hair within that area of the target left eyebrow geometry based on the hair vectors; and fills that area of the target left eyebrow geometry with extrapolated vectors representing these extrapolated lengths, orientations, and densities of hair.
[0092] Additionally or alternatively, if the user selects thicker eyebrows, such as via a menu within the application, the application can implement similar methods and techniques to: interpolate the lengths, orientations, and densities of additional hairs within the target left eyebrow geometry between the aforementioned hair vectors; and fill the target left eyebrow geometry with interpolated vectors representing these interpolated lengths, orientations, and densities of hairs.
[0093] In a similar variation, the application may: implement edge detection, line detection, template matching, and / or other artificial intelligence or computer vision techniques to detect individual hairs; then group the hairs into hair clusters, such as ten hair clusters total within the target left eyebrow geometry, one hair cluster for every 100 individual hairs, or one hair cluster for every 0.1" x 0.1" area within the target left eyebrow geometry. Then, for each hair cluster defined in the target left eyebrow geometry, the application may implement the above methods and techniques to detect the roots and distal ends of the hairs in the hair cluster; calculate the average root position of the hairs in the cluster; calculate the average length of the hairs in the hair cluster; calculate the average orientation of the hairs in the hair cluster; define a composite vector comprising a vertex at the average root position, defining an average length, and defining an average orientation of the hair cluster; and position the composite vector at the average position and average orientation within the target left eyebrow geometry.
[0094] In this implementation, if the target left eyebrow geometry includes an area that extends beyond the boundaries of the user's left eyebrow, the application can extrapolate the length, orientation, and density of hair within that area of the target left eyebrow geometry based on the composite vectors; and fill the area of the target left eyebrow geometry with extrapolated vectors representing these extrapolated lengths, orientations, and densities of hair.
[0095] The system 100 may repeat the foregoing process separately for a target right eyebrow geometry that is paired with the target right eyebrow geometry (i.e., rather than mirroring the hair vectors from the target left eyebrow geometry to the target right eyebrow geometry) such that the hair vectors within the target right eyebrow geometry reflect the actual hair present in the user's right eyebrow.
[0096] The application can then present, on a display of the user's computing device, a target left eyebrow geometry and a target right eyebrow geometry populated with vectors representing existing hair, interpolated hair or hair patterns, and / or extrapolated hair or hair patterns, thereby enabling the user to further review the density and / or orientation of hair corresponding to the selected eyebrow design option.
[0097] In addition, system 100 can re-interpolate or re-extrapolate vectors representing individual hairs or hair patterns within the target left eyebrow geometry and target right eyebrow geometry in response to changes to the target left eyebrow geometry and target right eyebrow geometry input by the user via the application; present these vectors on the user's mobile device; and store these vectors in the user profile along with the target left eyebrow geometry and target right eyebrow geometry.
[0098] The system 100 may then project the target left and right eyebrow geometries and these vectors onto the user's face to enable the operator to annotate the user's face with the previously designed and user-confirmed eyebrow contours and position, orientation and / or density of eyebrow hairs.
[0099] For example, at the mobile device and before the annotation period, the application may: detect a first eyebrow in a two-dimensional photographic image; and detect a first set of eyebrow hair clusters within the true boundary of the first eyebrow detected in the two-dimensional photographic image. Then, for each eyebrow hair cluster in the first set of eyebrow hair clusters, the application may: interpret a representative length of hair in the eyebrow hair cluster based on features detected in the two-dimensional photographic image; interpret a representative orientation of hair in the eyebrow hair cluster based on features detected in the two-dimensional photographic image; interpret a representative root starting point of hair in the eyebrow hair cluster based on features detected in the two-dimensional photographic image; generate a representative vector of the eyebrow hair cluster based on the representative length and the representative orientation; and locate a representative vector in the set of representative vectors within the true boundary of the first eyebrow according to the first representative root starting point. Then, the application may: extrapolate a set of virtual vectors from the set of representative vectors within the target first eyebrow geometry and outside the true boundary of the first eyebrow; and fill the target first eyebrow geometry in the canvas image with the set of virtual vectors. Then during the annotation period, the system 100 may project the target first eyebrow geometry onto the user's face; and project the set of virtual vectors onto the user's face, the set of virtual vectors being within the target first eyebrow geometry and outside the true boundaries of the user's first eyebrow.
[0100] 5.6 System Operations by Operators Later, once the user enters a salon (or other physical location) occupied by the system 100, an operator in the salon enters identifying user information linked to a user profile, such as via a user interface. The system 100 then retrieves a canvas image that was stored in an electronic profile associated with the user and that was generated at a mobile device separate from the projection system prior to the annotation session.
[0101] The user then places her face on the chin support and temple support. Figure 1BAs shown, the system 100 then: captures images of the user via a camera in an imaging system; detects facial features in these images; computes a transformation that maps the facial features detected in these images to a cluster of facial features that defines the locations of a target left eyebrow geometry and a target right eyebrow geometry in a canvas image; transforms (e.g., scales, skews, distorts) the canvas image based on the transformation and a known offset between a camera and a light projector in a projection system; and projects the canvas image (thereby aligning the canvas image with the user's facial features) onto the user's face.
[0102] 5.6.1 Three-dimensional facial representation exist Figure 1B In one embodiment shown, the system 100 includes: two laterally offset cameras; and two laterally offset light projectors. In this embodiment, the system 100 can: selectively project a structured light sequence onto the user's face via a projection system (e.g., a left light projector and a right light projector) while capturing an image sequence of the user's face via an imaging system (e.g., via a left camera and a right camera, a single camera, and / or a depth sensor as described above); generate a three-dimensional facial representation of the user's face based on the structured light projections detected in the image sequence; and detect a three-dimensional cluster of facial features in the three-dimensional facial representation, for example, by implementing a facial landmark model to detect eyes, eyebrows, nose, lips, and / or jawline features.
[0103] The system 100 then computes a first transformation that projects a two-dimensional cluster of facial landmarks extracted from the design image during the design period and defining the position of the canvas image relative to the user's face onto corresponding facial features in the three-dimensional cluster of facial features detected in the three-dimensional facial representation. More specifically, the system 100 may: select a first facial landmark associated with the position of the canvas image on the user's face in the two-dimensional cluster of facial landmarks detected in the design image; identify the corresponding facial feature in the three-dimensional facial representation of the user; associate the first facial landmark with the corresponding facial feature; and repeat the process for each other facial landmark associated with the position of the canvas image on the user's face. The system 100 then computes a transformation that projects each facial landmark in the two-dimensional cluster of facial landmarks associated with the position of the canvas image on the user's face onto its corresponding facial feature detected on the surface of the three-dimensional facial representation.
[0104] The system 100 then applies a first transformation to the canvas image stored in the user's profile and positioned relative to the two-dimensional cluster of facial landmarks to project the target left eyebrow geometry and the target right eyebrow geometry onto the surface of the three-dimensional facial representation. More specifically, the application defines the two-dimensional target left eyebrow and target right eyebrow geometries relative to the two-dimensional cluster of facial landmarks detected in the design image. Thus, the transformation that projects these two-dimensional facial landmarks onto corresponding three-dimensional facial features on the surface of the three-dimensional facial representation can also project the two-dimensional target left eyebrow geometry and the target right eyebrow geometry defined on the two-dimensional design image during the design session onto the correct area of the three-dimensional surface of the three-dimensional facial representation.
[0105] The system 100 then: positions a known two-dimensional image plane of the left light projector relative to the three-dimensional facial representation, such as based on the known position of the left light projector relative to the left camera and the right camera and / or known properties of the left light projector; projects a three-dimensional target left eyebrow geometry defined on the surface of the three-dimensional facial representation onto the two-dimensional image plane of the left light projector to generate a left canvas image; projects the left canvas image onto the left side of the user's face via the left light projector; and repeats the process for the target right eyebrow geometry and the right light projector to generate a right canvas image via the right light projector and project it onto the right side of the user's face.
[0106] For example, during an annotation period, system 100: projects structured light onto a user's face via a left light projector and a right light projector in a projection system, the right light projector being laterally offset from the left light projector; captures a set of two-dimensional images via a left optical sensor and a right optical sensor facing the user; compiles the set of two-dimensional images into a three-dimensional facial representation of the user's face based on the structured light detected in the set of two-dimensional images; detects a set of facial landmarks in the three-dimensional facial representation; and virtually projects a canvas image onto the three-dimensional facial representation. Then, in box S130, the system centers the vertical facial centerline of the canvas image projected onto the three-dimensional facial representation between a set of facial landmarks; in box S130, locates the curve segment of the target first eyebrow geometry of the canvas image projected onto the three-dimensional facial representation relative to the facial landmarks in the set of facial landmarks; based on the known position of the left light projector, virtually defines the left field of view of the left light projector relative to the three-dimensional facial representation; based on the known position of the right light projector, virtually defines the right field of view of the right light projector relative to the three-dimensional facial representation; projects the canvas image from the three-dimensional facial representation onto the left field of view to define the left canvas image; projects the canvas image from the three-dimensional facial representation onto the right field of view to define the right canvas image; in box S140, projects the left canvas image onto the user's face via the left light projector; and in box S140, projects the right canvas image onto the user's face via the right light projector.
[0107] The system 100 then prompts the operator to edit or confirm the target left eyebrow geometry and the target right eyebrow geometry thus projected onto the user. In response to the operator confirming these target left eyebrow geometry and the target right eyebrow geometry, the system 100 may: project a set of alignment marks (e.g., two dots) onto the user's face adjacent to the projected canvas image; prompt the operator to annotate the user's face at the alignment marks, such as by applying a "dot" directly over each alignment mark with a temporary marker; and then prompt the operator to trace the outlines of the target left eyebrow geometry and the target right eyebrow geometry and / or the annotations therein on the user's face. The operator (or other beautician) may then microneedle, apply gradients, nano-tattoo, tattoo, dye, wax, tweeze, thread, transplant, or otherwise enhance or modify the user's eyebrows within these traced outlines so as to enhance the user's existing eyebrows according to the target law eyebrow geometry previously confirmed by the user and the operator. Additionally or alternatively, the operator may wax, pluck, thread or otherwise remove hair outside of these delineated outlines.
[0108] 5.6.1.1 Real-time design editing In one embodiment, if the operator chooses to edit the target left eyebrow geometry and the target right eyebrow geometry, the system 100 may project the complete canvas image (e.g., including vertices, lines and / or arcs defining the target left eyebrow geometry and the target right eyebrow geometry and the facial references described above) onto the three-dimensional facial representation. The system 100 may then: project the three-dimensional target left eyebrow geometry and the facial references defined on the surface on the left side of the three-dimensional facial representation onto the two-dimensional image plane of the left light projector to generate an enhanced left canvas image; project the enhanced left canvas image onto the left side of the user's face via the left light projector; and repeat the process for the target right eyebrow geometry and the right light projector to generate an enhanced right canvas image via the right light projector and project it onto the right side of the user's face.
[0109] The system 100 can then prompt the operator to manipulate these vertices, lines and / or arcs via a user interface, for example as described above; update the target left and right eyebrow geometries projected onto the three-dimensional facial representation and the position of the facial reference based on input entered by the operator; regenerate enhanced left and right canvas images accordingly; and project these enhanced left and right canvas images onto the user via left and right light projectors.
[0110] As the operator manipulates these projected canvas images, the system 100 may repeat this process, such as until the operator confirms the target left and right eyebrow geometries projected on the user.
[0111] In addition, in response to a change in the target left eyebrow geometry or the target right eyebrow geometry, the system 100 can update interpolated vectors and / or extrapolated vectors representing individual hairs or hair patterns within the target left eyebrow geometry and the target right eyebrow geometry (e.g., within regions of the target left eyebrow geometry and the target right eyebrow geometry that do not intersect with existing eyebrow hairs on the user's face). For example, in response to receiving position input from an operator via a user interface during an annotation period, the system 100 can: modify a position of a target first eyebrow geometry in the canvas image relative to a true boundary of the user's first eyebrow according to the position input; extrapolate a second set of virtual vectors from a set of representative vectors within the target first eyebrow geometry and outside the true boundary of the first eyebrow based on the modification of the position of the target first eyebrow geometry relative to the true boundary of the first eyebrow; replace a set of virtual vectors in the target first eyebrow geometry in the canvas image with the second set of virtual vectors; and project the second set of virtual vectors onto the user's face, the second set of virtual vectors within the target first eyebrow geometry and outside the true boundary of the user's first eyebrow.
[0112] 5.6.2.2 Face tracking + dynamic (live) canvas image In another variation, after generating the three-dimensional facial representation at the beginning of the annotation period, the system 100 may: capture a set of images from the left camera and / or the right camera; implement facial landmark detection and tracking to track a set of facial features, such as the user's eyes, eyebrows, lips and / or jawline, etc., in the set of images; characterize the change in the positions of these facial features from an initial time (at the initial time, the camera captured the sequence of images forming the three-dimensional facial representation) to a current time; derive a change in the position of the user's head relative to the left camera and the right camera based on the change in the position of these facial features; and virtually reorient the three-dimensional facial representation relative to the virtual image planes of the left camera and the right camera based on this change in the position of the user's head.
[0113] The system 100 may then perform the above process to: project the three-dimensional target left eyebrow geometry defined on the surface of the three-dimensional facial representation onto the two-dimensional image plane of the left light projector to generate a left canvas image; project the left canvas image onto the left side of the user's face via the left light projector; and repeat the process for the target right eyebrow geometry and the right light projector to generate a right canvas image via the right light projector and project it onto the right side of the user's face.
[0114] For example, system 100 may: capture a second image via a left optical sensor; detect a second set of facial landmarks in the second image; interpret changes in the orientation of a user's face relative to a left light projector based on differences between the second set of facial landmarks and a set of facial landmarks; update a position of a three-dimensional facial representation relative to a left field of view and a right field of view based on changes in the orientation of the user's face relative to the left light projector; project a canvas image from the three-dimensional facial representation onto the left field of view to define a second left canvas image; project the canvas image from the three-dimensional facial representation onto the right field of view to define a second right canvas image; project the second left canvas image onto the user's face via the left light projector; and project the second right canvas image onto the user's face via the right light projector.
[0115] Thus, system 100 can: track changes in the position of the user's head relative to the light projector after generating the three-dimensional facial representation; update the left canvas image and the right canvas image based on these changes in the position of the user's head; and project these updated left canvas image and right canvas image onto the user's face accordingly to maintain the accurate position of the target left eyebrow geometry and the target right eyebrow geometry projected onto the user's face, even when the user's face moves relative to the projection system.
[0116] 5.6.2 Two-dimensional facial representation In one variation, the system 100 includes: a single camera; and a single light projector. In this variation, the system 100 can implement methods and techniques similar to those described above to: capture a two-dimensional photographic image of a user's face via a camera; detect a set of facial landmarks in the two-dimensional photographic image; calculate a first transformation that aligns a set of facial landmarks in the two-dimensional photographic image with a two-dimensional cluster of facial landmarks extracted from the design image during a design period, the two-dimensional cluster defining the location of the canvas image on the user's face. In this embodiment, the system 100 further: retrieves a second transformation representing a known offset between the camera and the light projector; applies the first transformation and the second transformation to the canvas image to align the target left eyebrow geometry and the target right eyebrow geometry in the canvas image with the user's face in the field of view of the light projector; projects these target left eyebrow geometry and the target right eyebrow geometry onto the user's face via the light projector; interfaces with an operator to modify or confirm the target left eyebrow geometry and the target right eyebrow geometry and update the canvas image; tracks the user's face in the image captured by the camera; and updates the first transformation and the canvas image accordingly.
[0117] 6. Real-time autonomous design of the system exist Figure 2B In one variation shown, system 100 performs the above process to automatically perform the following actions: capture a two-dimensional or three-dimensional design image of the user once the user places her head on the headrest; detect facial landmarks in the image; automatically generate, modify and / or align a canvas image with the user's face based on these facial landmarks; and / or automatically populate a target left eyebrow geometry and a target right eyebrow geometry with interpolated vectors and / or extrapolated vectors that represent individual hairs or hair patterns derived from hair features detected within the user's left and right eyebrows.
[0118] The systems and methods described herein may be at least partially embodied and / or implemented as a machine configured to receive a computer-readable medium storing computer-readable instructions. Instructions may be executed by a computer-executable component integrated with an application, applet, host, server, network, website, communication service, communication interface, hardware / firmware / software element of a user computer or mobile device, a wristwatch, a smart phone, or any suitable combination thereof. Other systems and methods of embodiments may be at least partially embodied and / or implemented as a machine configured to receive a computer-readable medium storing computer-readable instructions. Instructions may be executed by a computer-executable component integrated with a computer-executable component integrated with the above-mentioned types of devices and networks. The computer-readable medium may be stored on any suitable computer-readable medium, such as RAM, ROM, flash memory, EEPROM, optical device (CD or DVD), hard drive, floppy disk drive, or any suitable device. The computer-executable component may be a processor, but any suitable dedicated hardware device may (optionally or additionally) execute instructions.
[0119] As those skilled in the art will recognize from the previous detailed description and from the accompanying drawings and claims, modifications and variations may be made to the embodiments of the invention without departing from the scope of the invention as defined in the appended claims.
Claims
1. A method comprising: - Access a canvas image, which includes: --Vertical facial centerline; --target first eyebrow geometry, wherein the target first eyebrow geometry is: ---arranged on a first side of the vertical facial centerline; --- comprising a first set of curved segments geometrically referenced to the vertical facial centreline; and --target second eyebrow geometry, wherein the target second eyebrow geometry is: ---arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry; and --- comprising a second set of curved segments geometrically referenced to the vertical facial centerline and the first set of curved segments; and -During the annotation period: -- projecting the canvas image onto the face of a user positioned on a headrest facing the projection system via a projection system; --Aligning the vertical facial centerline of the canvas image with the center of the user's face; - positioning a curve segment in the first set of curve segments of the target first eyebrow geometry in the canvas image relative to features of a user's first eyebrow; and -- mirroring, across the vertical facial centerline, curved segments in the second set of curved segments of the target second eyebrow geometry in the canvas image projected onto the user's face.
2. The method according to claim 1, further comprising: In response to receiving confirmation of the target first eyebrow geometry and the target second eyebrow geometry in the canvas image projected onto the user's face: projecting a set of alignment marks onto the user's face adjacent to the canvas image; generating a prompt to temporarily apply a set of marks on the user's face that coincides with the set of alignment marks, and to outline the target first eyebrow geometry and the target second eyebrow geometry onto the user's face while maintaining the set of marks in coincidence with the set of alignment marks; and The prompt is provided to an operator in the vicinity of the user.
3. The method according to claim 1: in, Positioning a curved segment in the first set of curved segments relative to features of the first eyebrow of the user comprises: positioning a curved segment in the first set of curved segments relative to features of the first eyebrow including a left eyebrow, the left eyebrow being identified as a preferred eyebrow of the user; and Wherein, mirroring the curved segments in the second set of curved segments across the vertical facial centerline includes: mirroring the curved segments in the second set of curved segments across the vertical facial centerline to define the target second eyebrow geometry offset from the user's right eyebrow.
4. The method according to claim 1: -in, Accessing the canvas image includes accessing the canvas image including: The target first eyebrow geometry comprises: ---First inner vertex; ---First outer vertex; ---a first upper arc in the first set of curved segments, the first upper arc extending between the first inner vertex and the first outer vertex; ---The first upper arc point intersecting with the horizontal tangent of the first upper arc; ---a first lower arc in the first set of curved segments, the first lower arc extending below the first upper arc between the first inner vertex and the first outer vertex; and ---The first lower arc point intersecting with the horizontal tangent of the first lower arc; The target second eyebrow geometry comprises: ---The second inner vertex; ---The second outer vertex; ---a second upper arc in the second set of curved segments, the second upper arc extending between the second inner vertex and the second outer vertex; ---The second upper arc point intersecting with the horizontal tangent of the second upper arc; --- a second lower arc in the second set of curved segments, the second lower arc extending below the second upper arc between the second inner vertex and the second outer vertex; and ---The second lower arc point intersecting with the horizontal tangent of the second lower arc; - wherein aligning the vertical facial centerline of the canvas image with the center of the user's face comprises: - receiving lateral position input from an operator via a user interface; and -- moving the canvas image projected onto the user's face based on the lateral position input to align the vertical facial centerline of the canvas image with the center of the user's face; - wherein positioning the curve segments in the first set of curve segments relative to the features of the first eyebrow of the user comprises: --receiving a first position input from the operator via the user interface; -- repositioning the first inner vertex of the target first eyebrow geometry projected onto the user's face based on the first lateral input to align the first inner vertex in the canvas image with the inner edge of the user's preferred eyebrow; --receiving a second position input from the operator via the user interface; - repositioning the first outer vertex of the target first eyebrow geometry projected onto the user's face based on the second lateral input to align the first outer vertex in the canvas image with an outer edge of the user's preferred eyebrow; --receiving a third position input from the operator via the user interface; - repositioning the first upper arc point of the target first eyebrow geometry projected onto the user's face based on the third lateral input to align the first upper arc point in the canvas image with the peak of the upper edge of the user's preferred eyebrow; - receiving a fourth position input from the operator via the user interface; and - repositioning the first lower arc point of the target first eyebrow geometry projected onto the user's face based on the fourth lateral input to align the first lower arc point in the canvas image with the peak of the lower edge of the user's preferred eyebrow; and - wherein mirroring the curved segments in the second set of curved segments across the vertical facial centerline comprises mirroring the target second eyebrow geometry from the target first eyebrow geometry across the vertical facial centerline by: -- mirroring the second inner vertex from the first inner vertex across the vertical facial centerline; -- mirroring the second outer vertex from the first outer vertex across the vertical facial centerline; - mirroring the second upper arc from the first upper arc across the vertical facial centerline; and --Mirroring the second lower arc from the first lower arc across the vertical facial centerline.
5. The method according to claim 4, further comprising: receiving a symmetry deactivation input from the operator via the user interface; in response to receiving a mirror deactivation input, unlinking the second inner vertex from the first inner vertex across the vertical facial centerline; receiving a fifth position input from the operator via the user interface; and The second inner vertex of the target first eyebrow geometry projected onto the user's face is repositioned based on the fifth position input and the release of the link with the first inner vertex across the vertical facial centerline.
6. The method according to claim 1: -in, Accessing the canvas image includes accessing the canvas image including: --First vertical inner eye line; --The first vertical inner eyebrow line: ---arranged between the vertical facial center line and the first vertical inner eye line; --- laterally offset from the vertical facial centerline by a first distance; and ---a second distance laterally offset from the first vertical inner eyeline, the second distance being related to the first distance in nominal proportion; --Vertex of the first outer eyebrow; --The first upper eyebrow arc point: ---arranged between the first vertical inner eyebrow line and the first outer eyebrow vertex; --- laterally offset from the first vertical inner eyebrow line by a third distance; and ---a fourth distance laterally offset from the first outer eyebrow vertex, the fourth distance being related to the third distance according to the nominal ratio; --the target first eyebrow geometry includes the first set of curve segments extending between the vertical inner eyebrow line, the first outer eyebrow vertex and the first upper eyebrow arc point; - wherein aligning the vertical facial centerline of the canvas image with the center of the user's face comprises: - receiving lateral position input from an operator via a user interface; and -- moving the canvas image projected onto the user's face based on the lateral position input to align the vertical facial centerline of the canvas image with the center of the user's face; and - wherein positioning the curve segments in the first set of curve segments relative to the features of the first eyebrow of the user comprises: - receiving a second lateral position input from the operator via the user interface; -- repositioning the first vertical inner eye line projected onto the user's face according to the second lateral input to align the first vertical inner eye line in the canvas image with an inner edge of the user's first eye; - positioning the first vertical inner brow line between the vertical facial center line and the first vertical inner eye line according to the nominal ratio; - receiving a third lateral position input from the operator via the user interface; -- repositioning the first outer eyebrow vertex projected onto the user's face according to the third lateral input to align the first outer eyebrow vertex in the canvas image with the outer edge of the user's first eyebrow; and --Repositioning the first upper eyebrow arc point between the first vertical inner eyebrow line and the first outer eyebrow vertex line according to the nominal ratio.
7. The method according to claim 1: -in, Accessing the canvas image includes accessing the canvas image including: --First vertical inner eye line; --The first vertical inner eyebrow line: ---arranged between the vertical facial center line and the first vertical inner eye line; --- laterally offset from the vertical facial centerline by a first distance; and ---a second distance laterally offset from the first vertical inner eyeline, the second distance being related to the first distance in nominal proportion; --Vertex of the first outer eyebrow; --The first upper eyebrow arc point: ---arranged between the first vertical inner eyebrow line and the first outer eyebrow vertex; --- laterally offset from the first vertical inner eyebrow line by a third distance; and ---a fourth distance laterally offset from the first outer eyebrow vertex, the fourth distance being related to the third distance according to the nominal ratio; --the target first eyebrow geometry includes the first set of curve segments extending between the vertical inner eyebrow line, the first outer eyebrow vertex and the first upper eyebrow arc point; - The method further comprises, during the annotation period: -- accessing an image captured by an optical sensor adjacent to the projection system and facing the user; and -- Detecting clusters of facial landmarks in the image; - wherein aligning the vertical facial centerline of the canvas image with the center of the user's face comprises: - centering the canvas image projected onto the user's face within the cluster of facial landmarks in the image; and - wherein positioning the curve segments in the first set of curve segments relative to the features of the first eyebrow of the user comprises: - aligning the first vertical inner eye line projected onto the user's face with the inner edge of the first eye in the cluster of facial landmarks detected in the image; - positioning the first vertical inner brow line between the vertical facial center line and the first vertical inner eye line according to the nominal ratio; - aligning the first outer eyebrow vertex projected onto the user's face with the outer edge of the first eyebrow in the cluster of facial landmarks detected in the image; and --Reposition the first upper eyebrow arc point to: --- between the first vertical inner eyebrow line and the first outer eyebrow vertex line according to the nominal ratio; and ---intersecting with an upper edge of the first eyebrow in the cluster of facial landmarks detected in the image.
8. The method according to claim 1: - the method further comprises, during the annotation period: --projecting structured light onto a user's face via a left light projector and a right light projector in the projection system, the right light projector being laterally offset from the left light projector; -- Capture a set of two-dimensional images via the left optical sensor and the right optical sensor facing the user; -- based on the structured light detected in the set of two-dimensional images, compiling the set of two-dimensional images into a three-dimensional facial representation of a face of a user; -- detecting a set of facial landmarks in the three-dimensional facial representation; and --virtually projecting the canvas image onto the three-dimensional facial representation; - wherein aligning the vertical facial centerline of the canvas image with the center of the user's face comprises centering the vertical facial centerline of the canvas image projected onto the three-dimensional facial representation between the set of facial landmarks; - wherein locating the curve segment of the target first eyebrow geometry relative to the features of the first eyebrow of the user comprises locating the curve segment of the target first eyebrow geometry of the canvas image projected onto the three-dimensional facial representation relative to facial landmarks in the set of facial landmarks; - The method further comprises: --virtually defining a left field of view of the left light projector relative to the three-dimensional facial representation based on a known position of the left light projector; --virtually defining a right field of view of the right light projector relative to the three-dimensional facial representation based on the known position of the right light projector; --projecting the canvas image from the three-dimensional facial representation onto the left field of view to define a left canvas image; and --projecting the canvas image from the three-dimensional facial representation into the right field of view to define a right canvas image; and -Wherein, projecting the canvas image onto the user's face comprises: --projecting the left canvas image onto the user's face via a left light projector; and --Projecting the right canvas image onto the user's face via the right light projector.
9. The method of claim 8, further comprising during the annotation period: capturing a second image via the left optical sensor; detecting a second set of facial landmarks in the second image; interpreting a change in orientation of a user's face relative to the left light projector based on a difference between the second set of facial landmarks and the set of facial landmarks; updating the position of the three-dimensional facial representation relative to the left field of view and the right field of view based on a change in the orientation of the user's face relative to the left light projector; projecting the canvas image from the three-dimensional facial representation into the left field of view to define a second left canvas image; projecting the canvas image from the three-dimensional facial representation into the right field of view to define a second right canvas image; projecting the second left canvas image onto the user's face via a left light projector; and The second right canvas image is projected onto the user's face via the right light projector.
10. The method according to claim 8, wherein: Accessing the canvas image includes retrieving the canvas image, the canvas image being stored in an electronic profile associated with a user and being generated prior to the annotation period at a mobile device separate from the projection system.
11. The method according to claim 8: - The method further comprises, at a mobile device accessed by a user and prior to the annotation period: -- accessing a two-dimensional photographic image of a user's face captured by a camera in the mobile device; --projecting the canvas image onto the two-dimensional photographic image; -- presenting the two-dimensional photographic image annotated with the canvas image on a display of the mobile device; -- receiving an input sequence from a user via the mobile device; --adjusting the target first eyebrow geometry and the target second eyebrow geometry of the canvas image projected onto the two-dimensional photographic image according to the input sequence; and In response to confirmation from the user of the target first eyebrow geometry and the target second eyebrow geometry: ---Storing the canvas image in an electronic profile associated with the user; as well as - wherein accessing the canvas image comprises retrieving the canvas image from the electronic profile.
12. The method according to claim 11: - the method further comprises, at the mobile device and prior to the annotation period: --detecting a first eyebrow in the two-dimensional photographic image; - detecting a first group of eyebrow hair clusters within the true boundary of the first eyebrow detected in the two-dimensional photographic image; --For each eyebrow hair tuft in the first set of eyebrow hair tufts: --- interpreting the representative length of the hair in the eyebrow hair tuft based on the features detected in the two-dimensional photographic image; --- interpreting the representative orientation of the hairs in the eyebrow hair tuft based on the features detected in the two-dimensional photographic image; --- interpreting representative root starting points of hairs in the eyebrow hair tufts based on the features detected in the two-dimensional photographic image; --- Based on the representative length and the representative orientation, generating a representative vector of the eyebrow hair cluster; and ---locating a representative vector in a set of representative vectors within the real boundary of the first eyebrow according to the first representative root starting point; - extrapolating a set of virtual vectors from the set of representative vectors within the target first eyebrow geometry and outside the real boundary of the first eyebrow; and --Fill the target first eyebrow geometry in the canvas image with the set of virtual vectors; and -Wherein, projecting the canvas image onto the user's face comprises: --projecting the target first eyebrow geometry onto the user's face; and --Projecting the set of virtual vectors onto the user's face, the set of virtual vectors being within the target first eyebrow geometry and outside the real boundaries of the user's first eyebrow.
13. The method according to claim 1: - the method further comprises, during the annotation period: - accessing a photographic image captured by an optical sensor adjacent to the projection system and facing the headrest; --detecting a first set of eyebrow hair clusters within the true boundary of the first eyebrow detected in the photographic image; --For each eyebrow hair tuft in the first set of eyebrow hair tufts: --- interpreting the representative length of the hairs in the eyebrow hair tuft based on the features detected in the photographic image; --- interpreting a representative orientation of hairs in the eyebrow hair tuft based on features detected in the photographic image; --- interpreting representative root starting points of hairs in the eyebrow hair tufts based on features detected in the photographic image; --- Based on the representative length and the representative orientation, generating a representative vector of the eyebrow hair cluster; and ---locating a representative vector in a set of representative vectors within the real boundary of the first eyebrow according to the first representative root starting point; - extrapolating a set of virtual vectors from the set of representative vectors within the target first eyebrow geometry and outside the real boundary of the first eyebrow; and --Fill the target first eyebrow geometry in the canvas image with the set of virtual vectors; and -Wherein, projecting the canvas image onto the user's face comprises: ---Projecting the target first eyebrow geometry onto the user's face; --- Projecting the set of virtual vectors onto the user's face, the set of virtual vectors being within the target first eyebrow geometry and outside the real boundary of the user's first eyebrow.
14. The method according to claim 13, further comprising: In response to receiving a position input from an operator via a user interface, Modify the position of the target first eyebrow geometric shape in the canvas image relative to the real boundary of the first eyebrow of the user according to the position input; extrapolating a second set of virtual vectors from the set of representative vectors within the target first eyebrow geometry and outside the true boundary of the first eyebrow based on the modification of the position of the target first eyebrow geometry relative to the true boundary of the first eyebrow; replacing the set of virtual vectors in the target first eyebrow geometry in the canvas image with the second set of virtual vectors; and The second set of virtual vectors is projected onto the user's face, the second set of virtual vectors being within the target first eyebrow geometry and outside the real boundary of the first eyebrow of the user.
15. The method according to claim 1, further comprising: Projecting a set of eye markers onto the user's face; providing a prompt to an operator to align the set of eye markings with the user's eyes; repositioning the set of eye markings projected onto the user's face to align the set of eye markings with the user's eyes based on input received from the operator; and Elements of the canvas image projected onto the user's face that intersect the set of eye markers are silenced.
16. A method comprising: - Access a canvas image, which includes: --target first eyebrow geometry, wherein the target first eyebrow geometry is: ---arranged on a first side of a vertical face centerline; and --- comprising a first set of curve segments geometrically referenced to a set of facial landmarks; and --target second eyebrow geometry, wherein the target second eyebrow geometry is: ---arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry; and --- comprising a second set of curve segments geometrically referenced to the set of facial landmarks; and -During the annotation period: -- accessing a set of images captured via a left optical sensor and a right optical sensor facing a face of a user positioned on a headrest; - compiling the set of images into a three-dimensional facial representation of the user's face; -- detecting the set of facial landmarks in the three-dimensional facial representation; --virtually projecting the canvas image aligned with facial landmarks in the set of facial landmarks onto the three-dimensional facial representation; -- generating a left canvas image based on a projection of the canvas image from the three-dimensional facial representation onto a stored field of view of a left optical projector adjacent to the left optical sensor; -- generating a right canvas image based on projection of the canvas image from the three-dimensional facial representation onto a stored field of view of a right optical projector adjacent to the right optical sensor; --projecting the left canvas image onto the user's face via the left light projector; and --Projecting the right canvas image onto the user's face via the right light projector.
17. The method according to claim 16, further comprising: In response to receiving confirmation of the target first eyebrow geometry and the target second eyebrow geometry in the canvas image projected onto the user's face: --projecting a set of alignment marks onto the user's face adjacent to the canvas image; -- generating a prompt to temporarily apply a set of marks on the user's face that coincides with the set of alignment marks, and to trace the outline of the target first eyebrow geometry and the target second eyebrow geometry onto the user's face while maintaining the set of marks in coincidence with the set of alignment marks; and --Providing the prompt to an operator in the vicinity of the user.
18. The method according to claim 16: - The method further comprises, at a mobile device accessed by a user and prior to the annotation period: -- accessing a two-dimensional photographic image of a user's face captured by a camera in the mobile device; --projecting the canvas image onto the two-dimensional photographic image; -- presenting the two-dimensional photographic image annotated with the canvas image on a display of the mobile device; -- receiving an input sequence from a user via the mobile device; --adjusting the target first eyebrow geometry and the target second eyebrow geometry of the canvas image projected onto the two-dimensional photographic image according to the input sequence; and In response to confirmation from the user of the target first eyebrow geometry and the target second eyebrow geometry: ---Storing the canvas image in an electronic profile associated with the user; as well as - wherein accessing the canvas image comprises retrieving the canvas image from the electronic profile.
19. The method according to claim 18: - the method further comprises, at the mobile device and prior to the annotation period: --detecting a first eyebrow in the two-dimensional photographic image; - detecting a first group of eyebrow hair clusters within the true boundary of the first eyebrow detected in the two-dimensional photographic image; --For each eyebrow hair tuft in the first set of eyebrow hair tufts: --- interpreting the representative length of the hair in the eyebrow hair tuft based on the features detected in the two-dimensional photographic image; --- interpreting the representative orientation of the hairs in the eyebrow hair tuft based on the features detected in the two-dimensional photographic image; --- interpreting representative root starting points of hairs in the eyebrow hair tufts based on the features detected in the two-dimensional photographic image; --- Based on the representative length and the representative orientation, generating a representative vector of the eyebrow hair cluster; and ---locating a representative vector in a set of representative vectors within the real boundary of the first eyebrow according to the first representative root starting point; - extrapolating a set of virtual vectors from the set of representative vectors within the target first eyebrow geometry and outside the real boundary of the first eyebrow; and --Fill the target first eyebrow geometry in the canvas image with the set of virtual vectors; as well as -Wherein, virtually projecting the canvas image onto the three-dimensional facial representation comprises: --projecting the target first eyebrow geometry onto the three-dimensional facial representation; and --Projecting the set of virtual vectors onto the three-dimensional facial representation, the set of virtual vectors being within the target first eyebrow geometry defined by the canvas image and outside the real boundaries of the first eyebrow of the user represented in the three-dimensional facial representation.
20. A method comprising: - Access a canvas image, which includes: --Vertical facial centerline; --target first eyebrow geometry, wherein the target first eyebrow geometry is: ---arranged on a first side of the vertical facial centerline; --- comprising a first set of curved segments geometrically referenced to the vertical facial centreline; and --target second eyebrow geometry, wherein the target second eyebrow geometry is: ---arranged on a second side of the vertical facial centerline opposite to the first target first eyebrow geometry; and --- comprising a second set of curved segments geometrically referenced to the vertical facial centerline and the first set of curved segments; and -During the annotation period: -- projecting the canvas image via a projection system onto a face of a user positioned on a headrest coupled to the projection system; -- aligning the vertical facial centerline of the canvas image projected onto the user's face with the center of the user's face; --locating a curve segment in the first set of curve segments of the target first eyebrow geometry in the canvas image projected onto the user's face relative to features of the user's first eyebrow; -- mirroring across the vertical facial centerline a curved segment in the second set of curved segments of the target second eyebrow geometry in the canvas image projected onto the user's face; and In response to receiving confirmation of the target first eyebrow geometry and the target second eyebrow geometry in the canvas image projected onto the user's face: --projecting a set of alignment marks onto the user's face adjacent to the canvas image; -- generating a prompt to temporarily apply a set of marks on the user's face that coincides with the set of alignment marks, and to trace the outline of the target first eyebrow geometry and the target second eyebrow geometry onto the user's face while maintaining the set of marks in coincidence with the set of alignment marks; and --Providing the prompt to an operator in the vicinity of the user.