FR3147891A1 - Procédé et appareils d'essayage virtuel de maquillage - Google Patents

Procédé et appareils d'essayage virtuel de maquillage Download PDF

Info

Publication number
FR3147891A1
FR3147891A1 FR2303587A FR2303587A FR3147891A1 FR 3147891 A1 FR3147891 A1 FR 3147891A1 FR 2303587 A FR2303587 A FR 2303587A FR 2303587 A FR2303587 A FR 2303587A FR 3147891 A1 FR3147891 A1 FR 3147891A1
Authority
FR
France
Prior art keywords
face
hue
makeup
glitter
effect
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR2303587A
Other languages
English (en)
Inventor
Edmund Phung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LOreal SA
Original Assignee
LOreal SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LOreal SA filed Critical LOreal SA
Priority to FR2303587A priority Critical patent/FR3147891A1/fr
Priority to EP23840717.5A priority patent/EP4618805A1/fr
Priority to KR1020257024172A priority patent/KR20250125410A/ko
Priority to JP2025538654A priority patent/JP2026506319A/ja
Priority to PCT/EP2023/087763 priority patent/WO2024141513A1/fr
Priority to CN202380093317.1A priority patent/CN120676887A/zh
Priority to CN202380093076.0A priority patent/CN120641005A/zh
Priority to EP23840718.3A priority patent/EP4618806A2/fr
Priority to JP2025538047A priority patent/JP2026500940A/ja
Priority to PCT/EP2023/087764 priority patent/WO2024141514A2/fr
Priority to KR1020257024021A priority patent/KR20250125406A/ko
Priority to US18/396,374 priority patent/US20240215706A1/en
Priority to US18/396,334 priority patent/US20240221061A1/en
Publication of FR3147891A1 publication Critical patent/FR3147891A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • AHUMAN NECESSITIES
    • A45HAND OR TRAVELLING ARTICLES
    • A45DHAIRDRESSING OR SHAVING EQUIPMENT; EQUIPMENT FOR COSMETICS OR COSMETIC TREATMENTS, e.g. FOR MANICURING OR PEDICURING
    • A45D44/00Other cosmetic or toiletry articles, e.g. for hairdressers' rooms
    • A45D44/005Other cosmetic or toiletry articles, e.g. for hairdressers' rooms for selecting or displaying personal cosmetic colours or hairstyle
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00Two-dimensional [2D] image generation
    • G06T11/10Texturing; Colouring; Generation of textures or colours
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)

Abstract

PROCÉDÉ ET APPAREILS D'ESSAYAGE VIRTUEL DE MAQUILLAGE Sont proposés des procédés, systèmes et techniques (par exemple, dans des modes de réalisation) pour le rendre d'effets tels qu’un effet de maquillage qui ajuste une teinte de l’effet en réponse à une teinte dans un environnement. L’effet de maquillage peut être rendu sur une image d’entrée en tant que composante d’une expérience d’essayage virtuel. Les opérations peuvent traiter la sclère d’un œil pour déterminer une teinte de référence et ajuster la couleur de l’effet vers une couleur chaude ou une couleur froide en réponse à la teinte de référence. Figure pour l'abrégé : néant

Description

PROCÉDÉ ET APPAREILS D'ESSAYAGE VIRTUEL DE MAQUILLAGE DOMAINE DE L'INVENTION
Cette divulgation concerne le traitement d’images tel que l’utilisation de réseaux neuronaux et la génération d’images de sortie pour essayer virtuellement un produit ou un service par application d'un effet ou d'effets de simulation sur un ou plusieurs objets détectés dans une image d’entrée.
CONTEXTE
Les techniques d’apprentissage profond sont utiles pour traiter des images, y compris une série de trames vidéo, afin de localiser un ou plusieurs objets dans les images. Dans un exemple, les objets sont des particularités faciales comprenant des portions du visage d’un utilisateur. Les techniques de traitement d’image sont également utiles pour rendre des effets associés à des objets tels que l’augmentation de la réalité pour l’utilisateur. Un exemple d’une telle réalité augmentée est de proposer un essayage virtuel (VTO) qui simule l’application d’un produit (ou d’un service) sur un objet. La simulation de produits dans l’industrie de la beauté comprend la simulation d’effets de maquillage, de cheveux et d’ongles. D’autres exemples peuvent inclure la localisation de l’iris et la simulation d’un changement de couleur de celui-ci, par exemple par une lentille de contact colorée. Ces objets et simulations ainsi que d’autres seront apparents.
Dans de nombreux scénarios VTO, les utilisateurs utilisent leurs propres dispositifs informatiques équipés d’une caméra, tels qu’un smartphone, une tablette ou tout autre dispositif informatique équipé d’une caméra (par exemple, une cybercaméra) pour générer des images d’entrée et ce dans des conditions d’éclairage variées et non commandées.
Des effets simulés plus complexes sont souhaités, par exemple pour mieux simuler des effets de produit réels ou pour augmenter la réalité. Par exemple, un effet de produit réel peut comprendre un effet pailleté ou un effet d’éclairage spécial. Une simulation de réalité augmentée peut comprendre un effet de mise en forme qui simule un changement de forme (par exemple, une déformation) d’une particularité faciale ou l’application d’un filtre de beauté. Le changement de forme peut être le résultat d’une simulation d’un service professionnel (par exemple, un(e) esthéticien(ne) ou un(e) chirurgien(ne) plastique) ou découler d’une activité personnelle telle que les soins personnels ou le divertissement. Il peut s’agir, par exemple, d’une mise en forme de sourcils, d’une mise en forme de nez (amincissement de narine, amincissement d'arête), d’un changement de contour de visage, d’un changement d'yeux ou de paupière (par exemple, agrandissement vertical ou horizontal d'œil), etc.
Des techniques améliorées sont souhaitées pour traiter les images afin de faciliter la fourniture de réalités augmentées, y compris des expériences VTO.
RÉSUMÉ
La présente invention a pour objet un système comprenant :
un pipeline de rendu configuré via une circuiterie pour : traiter une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajuster une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et fournir une image de sortie définie à partir de l’image d’entrée et l’effet de maquillage ajusté pour présentation via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
Selon des modes de réalisation de l’invention le système comprend une ou plusieurs des caractéristiques suivantes, prises isolément, ou suivant toutes les combinaisons techniquement possibles :
  • la teinte de l’effet de maquillage est poussée vers une teinte plus chaude ou une teinte plus froide en réponse à la teinte de référence,
  • le pipeline de rendu traite pour ajuster une luminosité et une saturation de l’effet de maquillage en réponse à une couleur de peau moyenne déterminée par traitement de la peau du visage et en réponse à la luminosité d'yeux déterminée par traitement d'un ou de plusieurs yeux du visage,
  • le pipeline de rendu ajuste la teinte en réponse à une détection d’une présence de la sclère pour ajustement de la teinte,
  • le système comprend en outre un dispositif de suivi de visage configuré via une circuiterie pour traiter l’image à l'aide d'un réseau neuronal profond pour localiser les particularités faciales dans le visage ; et dans lequel la sclère est traitée et l’effet de maquillage est rendu en réponse aux particularités faciales telles que localisées,
  • l’effet de maquillage est associé à un produit de maquillage et le système comprend un composant de recommandation configuré pour fournir, via l’interface utilisateur, une recommandation d’une pluralité de produits de maquillage à essayer virtuellement et pour recevoir une entrée de sélection, l’interface utilisateur, sélectionnant le produit de maquillage pour l’expérience d’essayage virtuel,
  • une entrée de sélection sélectionne une pluralité de produits et le procédé comprend l’ajustement de la teinte de chaque effet de maquillage associé en réponse à la teinte de référence pour le rendu d'une pluralité d’effets de maquillage ajustés sur l’image d’entrée, et
  • le système comprend un composant d’achat pour fournir, via l’interface utilisateur, un service d’achat pour mener une transaction d’achat afin d'acheter un ou plusieurs produits de maquillage.
Sont proposés des procédés, systèmes et techniques (par exemple, dans des modes de réalisation) pour le rendre d'effets tels qu’un effet de maquillage qui ajuste une teinte de l’effet en réponse à une teinte dans un environnement. L’effet de maquillage est rendu sur une image d’entrée d’un visage en tant que composante d’une expérience d’essayage virtuel. Les opérations peuvent traiter la sclère d’un œil pour déterminer une teinte de référence et ajuster la couleur de l’effet vers une couleur chaude ou une couleur froide en réponse à la teinte de référence.
Il est proposé, dans un mode de réalisation, une procédé mis en œuvre par ordinateur comprenant l'exécution par un ou plusieurs processeurs des étapes de : traitement d’une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajustement d’une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et présentation d’une image de sortie définie à partir de l’image d’entrée et de l’effet de maquillage ajusté via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
Il est proposé, dans un mode de réalisation, un système comprenant : un pipeline de rendu configuré via une circuiterie pour : traiter une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajuster une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et fournir une image de sortie définie à partir de l’image d’entrée et de l’effet de maquillage ajusté pour présentation via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
Ces aspects, ainsi que d’autres aspects du procédé et du système, entre autres, seront apparents.
La est une illustration d’une image d’entrée montrant une scène typique pour une expérience VTO.
La est une illustration d’un œil fournissant une sclère comme référentiel conformément à un mode de réalisation ici.
La est une illustration d’un environnement informatique, conformément à un mode de réalisation, tel que pour la pratique d’un ou plusieurs aspects de procédé.
La est une capture d’écran d’une interface utilisateur (UI) pour le réglage de paramètres conformément à un mode de réalisation.
La est un organigramme des opérations , conformément à un mode de réalisation, tel que pour un dispositif informatique de la .
La montre un exemple d’image de visage (par exemple, une image rognée d’un visage) annotée avec des groupes de points de visage.
Les Figures 7A et 7B sont des illustrations d’une construction de déformation de visage 700, conformément à un mode de réalisation, pour déformer un sourcil.
Les Figures 8A et 8B sont des organigrammes d’opérations conformément à un mode de réalisation, tel que pour un dispositif informatique de la .
Les Figures 9A, 9B et 9C sont des illustrations de maillages polygonaux 3D comprenant des maillages pour les yeux et des maillages pour les lèvres pour les particularités faciales liées aux yeux et aux lèvres, conformément à un mode de réalisation.
La est une illustration d’une région d'œil 1000 ayant un masque d'œil 1002 conformément à un mode de réalisation.
La est un organigramme des opérations conformément à un mode de réalisation, tel que pour un dispositif informatique de la .
DESCRIPTION DÉTAILLÉE Adaptation éclairage
Dans un mode de réalisation, une application VTO exécutée par un dispositif informatique comprend un moteur de suivi et un moteur de rendu. Une image d’entrée fournie à une application d’essayage virtuel est considérée comme une scène. Généralement, cette scène est composée d’un visage, d’un environnement (comme un arrière-plan) et de certains autres objets. Une scène comporte également une ou plusieurs sources de lumière qui modifient les couleurs et la luminosité de la scène. La manière dont ces sources modifient la scène dépend de leur nature : naturelle (comme la lumière dirigée par le soleil) ou artificielle (comme une ampoule ou un néon). La modification peut être un changement de nuance (teinte) spécifiquement pour la lumière artificielle, ou des différences de luminosité/d’obscurité, et parfois certains artefacts tels que les ombres. Dans un mode de réalisation, une application VTO peut améliorer le réalisme et la précision du maquillage appliqué sur le visage d’un utilisateur par la prise en compte de ces sources de lumière.
La correction d'éclairage aux fins d’un effet de maquillage ou de peau à appliquer sur une image est décrite dans le document US 10892166 B2, accordé le 12 janvier 2021, et intitulé « System and Method for Light Filed Correction of Colored Surfaces in an Image »(ci-après le « brevet 166). Dans un mode de réalisation, une application VTO emploie la correction de couleur telle que décrite dans le brevet 166 et telle qu’adaptée ultérieurement telle que décrite ici.
Pouvoir déduire le décalage de la teinte et de la luminosité d’une image sans référence aux sources d’éclairage utilisées ou sans référentiel externe est très difficile. Les humains ont tendance à le faire naturellement lorsqu’une image ne se trouve pas dans des conditions normales, et cela peut sembler un problème simple à résoudre. Cependant, pour un ordinateur, la tâche peut sembler très compliquée. Dans un exemple, la montre une illustration d’une image d’entrée 100, où la lumière naturelle froide 102 peut provenir d’une source dans un côté supérieur gauche et être dirigée en diagonale vers un visage central 104. Dans la même image, la lumière chaude artificielle 106 peut provenir d’une source de côté inférieur droit et être dirigée en diagonale vers le haut vers le visage 104. Par conséquent, un changement de teinte et un changement de luminosité tels que représentés par la ligne pointillée diagonale 108 sont présents dans les teints, etc. du visage. Le décalage est représenté par une ligne droite (108), mais il n’est pas nécessaire qu’un tel décalage soit droit ni aussi brusque.
Les algorithmes de recoloration peuvent avoir des difficultés à détecter un changement de teinte et à rendre une couleur réaliste ; souvent, il n'y a pas assez de données pour déduire une tonalité générale, et l’utilisation d’une référence externe (comme l’arrière-plan) peut entraîner des erreurs. Par exemple un arrière-plan (par exemple, des régions 110 en dehors de la région du sujet humain) peuvent être clairement décalées vers des couleurs froides, tandis que le visage 104 peut généralement être éclairé en couleurs chaudes.
Bien que difficile, il n’est pas impossible de déduire le changement de teinte, il existe des techniques. Dans un exemple précédent, la technique nécessite l’utilisation d’un modèle d’apprentissage automatique formé à l’aide d’une vaste base de données d’images de référence où les conditions d’éclairage sont connues. Ensuite, la comparaison d’une image à cet ensemble de références permet à un dispositif d’approximer la lumière dans la scène et d’utiliser la sortie pour adapter le rendu de maquillage. Cette approche présente des similitudes avec le fonctionnement du cerveau humain, par comparaison de la lumière d’une scène à un ensemble de souvenirs et par adaptation de la perception. Toutefois, ces modèles sont coûteux à exploiter et ne sont généralement pas adaptés aux expériences en direct. Dans un mode de réalisation, une cible pour une application VTO est une exécution à plus de 20 FPS (trames par seconde) sur un dispositif mobile tel qu’un smartphone ou une tablette où l’application VTO est basée sur un navigateur Web. Une telle cible est généralement incompatible avec cette technique utilisant une approche d’apprentissage automatique de la couleur.
D’autres techniques pour adapter la luminosité et le changement de teinte requièrent l’utilisation d’un référentiel externe tel qu’une grille de couleurs où les couleurs sont étalonnées et connues à l’avance. C’est ce qu’on appelle un vérificateur de couleur, mais cela n’est pas pratique pour de nombreux scénarios d’utilisation du VTO. Bien que ces techniques fonctionnent très bien et soient rapides à calculer informatiquement, elles exigent que la grille de couleurs soit disponible pendant toute l’expérience (au cas où l’éclairage change), mais surtout, il faut distribuer un tel vérificateur à chaque utilisateur. Comme l’expérience VTO est exécutée par n’importe quel utilisateur, ce type de grille de couleurs n’est pas une option efficace.
Au lieu de s’appuyer sur un vérificateur de couleur et des modèles d’apprentissage automatique, dans un mode de réalisation selon les nouveaux enseignements ici, les opérations de couleur utilisent un référentiel disponible pour tout utilisateur, à savoir la sclère. Comme le montre la fournissant une illustration d'un œil 200, la sclère 202 est la partie blanche des yeux de l’utilisateur à l’extérieur de l’iris 204. La sclère est assez constante entre les origines ethniques, avec une légère teinte jaune pour les tonalités de peau plus foncées telles que les personnes d’origine africaine noire.
Le brevet '166 décrit des opérations d’adaptation d’éclairage comprenant l’échantillonnage de différentes parties du visage pour trouver une couleur de peau moyenne. Dans un mode de réalisation, les opérations d’adaptation d’éclairage réalisent également un échantillonnage pour la couleur moyenne de la peau, mais font également une utilisation ou une évaluation de la sclère dans le but d’améliorer les résultats tout en maintenant des « coûts » raisonnables associés à l’utilisation des ressources du dispositif informatique et au temps de traitement.
Les images d’entrée peuvent comprendre le visage d’un sujet individuel ayant des yeux occlus, par exemple avec des cheveux ou des lunettes foncées. Dans un mode de réalisation, afin d’atténuer ce problème, une pré-étape, effectuée par un détecteur de couverture d'œil, par exemple, comprend la détection du fait que les yeux sont couverts ou non. Dans un tel cas, l’évaluation de la sclère peut être contournée de sorte que les opérations d’adaptation complète d’éclairage ne soient pas effectuées. Dans un mode de réalisation, une adaptation d’éclairage telle que décrite dans le brevet '169, en réponse à des échantillons de couleurs de peau, peut être effectuée.
Application VTO
La est une illustration d’un environnement informatique 300, conformément à un mode de réalisation, tel que pour la pratique d’un ou plusieurs aspects de méthode. L’environnement informatique 300 montre un dispositif informatique utilisateur 302, tel qu’un smartphone, un réseau de communication 304, un serveur 306 et un serveur 308. Le réseau de communication 304 comprend des réseaux câblés et/ou sans fil, qui peuvent être publics ou privés et peuvent comporter, par exemple, Internet. Le serveur 306 comprend un dispositif informatique serveur tel que pour la fourniture d’un site Web. Le serveur 308 comprend un dispositif informatique de serveur tel que pour la fourniture de services de transactions de commerce électronique. Bien que montrés séparément, les serveurs 306 et 308 peuvent comprendre un seul dispositif serveur. L’environnement informatique est simplifié. Par exemple, les passerelles de transaction de paiement et d’autres composants tels que pour effectuer une transaction de commerce électronique ne sont pas montrés.
Le dispositif informatique 302 comprend un dispositif de stockage 310 (par exemple, un dispositif non transitoire tel qu’une mémoire et/ou un disque à circuits intégrés, etc.) pour stocker des instructions qui, lorsqu’elles sont exécutées par un processeur (non montré) tel qu’une unité centrale de traitement (CPU), une unité de traitement graphique (GPU) ou les deux, amènent le dispositif informatique 302 à effectuer des opérations telles qu’un procédé mis en œuvre par ordinateur. Le support 310 stocke un essayage virtuel de l’application 312 comprenant des composants tels que des modules logiciels fournissant, une interface utilisateur 314, un dispositif de suivi de visage 315 avec un réseau neuronal profond (DNN) (par exemple, un détecteur de visage 315A à réseau neuronal convolutif (CNN) fournissant les points de visage 315B, un composant de pipeline de rendu VTO 316, un composant de recommandation de produit 318 avec les données de produit 318A, et un composant d’achat 322 avec un panier d'achat 324 (par exemple, des données d’achat). Dans un mode de réalisation, non montré, l’application VTO est dépourvue d’un composant de recommandation et/ou d’un composant d’achat, par exemple, fournissant un composant de sélection de produit pour sélectionner des produits à visualiser comme effets VTO.
Dans un mode de réalisation, l’application VTO est une application Web telle qu’obtenue à partir du serveur 306. Dans un mode de réalisation, l’application VTO telle que pour une application native est fournie par un réseau de distribution de contenu. Les données de produit 318A peuvent être obtenues à partir d’un système de gestion de contenu 307, associé au serveur 307A. Le système de gestion de contenu 307 comporte un magasin de données 307B qui stocke les données relatives au produit, par exemple les données d’échantillon et les données d’effets de rendu, etc. Les données d’échantillon comprennent généralement une image du produit qui peut être utilisée pour illustrer le produit. Dans un mode de réalisation, les données d’échantillon (par exemple, une image) peuvent être traitées pour en extraire des données. Les données d’échantillon, sous forme de données extraites, peuvent comprendre, par exemple, la couleur ou d’autres propriétés liées à la lumière (par exemple, la luminosité, etc.) des données d’échantillon, etc. Les données de produit (par exemple, couleur, etc.) peuvent être fournies à un serveur d’autres manières, par exemple sous forme de couleur ou d’autres paramètres. Par exemple, les curseurs peuvent fournir une entrée qui est mappée à des valeurs de données. Dans un mode de réalisation, les données de produit peuvent être fournies à un dispositif utilisateur (par exemple, 302) par inclusion dans un paquet d’applications natives et fournies sous forme de mises à jour à une application native telle que par le serveur 306. Les données de produit peuvent ainsi être fournies à partir de différentes sources. Les données d'effets de rendu peuvent comprendre des données pour rendre un effet tel que simuler un maquillage ou d’autres propriétés telles qu’un aspect mat, un aspect brillant, un aspect métallique, un aspect vinyle, ou, comme décrit plus en détail ici, un aspect pailleté sur l’effet de maquillage. Une interface utilisateur 307C vers le système de gestion de contenu 307 (par exemple, voir également la ) peuvent être fournis à un fournisseur de produit tel qu’un propriétaire de marque, pour télécharger des images d’échantillon et fournir des données telles que pour définir des données d’échantillon, des données de produit et/ou des données d’effet de rendu. Dans un mode de réalisation, l’UI 307B est basée sur le Web.
Bien qu’il ne soit pas montré, le dispositif utilisateur 302 peut stocker un navigateur Web pour l’exécution de l’application VTO 312 sur le web. Dans un mode de réalisation (non montré), l’application VTO 312 est une application native conformément à un système d’exploitation (également non montré) et aux exigences de développement logiciel qui peuvent être imposées par un fabricant de matériel, par exemple, du dispositif informatique 302. L’application native peut être configurée pour une communication basée sur le Web ou des communications similaires vers les serveurs 306, 307A et/ou 308, comme on le sait.
La montre diverses données ou informations d’entrée et de sortie associées à une utilisation de l’application VTO 312, par exemple. Ces données d’entrée et de sortie comprennent une image d’entrée 326 de l’utilisateur à traiter pour une expérience VTO, une image de sortie 328 sur laquelle les effets de produit sont simulés fournissant une expérience VTO, une sélection de produit VTO 320 comprenant une entrée utilisateur sélectionnant un ou plusieurs effets de produit à simuler, les options de produits VTO 322 comprenant des options pour les produits à essayer virtuellement, par exemple pour la sélection par un utilisateur de dispositif 302, et les informations de transaction d’achat 324 comprenant les informations d’achat fournies à et/ou reçues d’un utilisateur pour acheter un produit. Comme noté, les modes de réalisation d’application VTO ne comportent pas tous des capacités de commerce électronique.
Dans un mode de réalisation, via une ou plusieurs interfaces utilisateur 314, les options de produit VTO 322 sont présentées pour sélection pour un essayage virtuel par simulation d'effets sur une image d’entrée 326. Dans un mode de réalisation, les options de produit VTO 322 sont dérivées de ou associées aux données de produit 318A. Dans un mode de réalisation, les données de produit peuvent être obtenues à partir du serveur 306 et fournies par le composant de recommandation de produit 318, qui dans un mode de réalisation peut être un analyseur de données de produit où des recommandations basées sur l’utilisateur en soi ne sont pas faites. Au lieu de cela, toutes les données de produit disponibles sont mises à disposition pour la sélection d’utilisation. Bien que non montré, une entrée utilisateur ou autre peut être reçue pour être utilisée afin de déterminer les recommandations de produits. L’utilisateur peut être invité, par exemple via l’une des interfaces 314, à fournir une entrée pour déterminer les recommandations de produits. Dans un mode de réalisation, le composant de recommandation de produit 318 communique avec le serveur 306. Le serveur 306, dans un mode de réalisation, détermine la recommandation sur la base de l’entrée reçue via le composant 318 et fournit des données de produit en conséquence. L’interface utilisateur 314 peut présenter les choix de produits VTO, par exemple, en mettant à jour l’affichage de celle-ci en réponse aux données reçues lorsque l’utilisateur navigue ou interagit autrement avec l’interface utilisateur.
Dans un mode de réalisation, les une ou plusieurs interfaces utilisateur fournissent des instructions et des commandes pour obtenir l’image d’entrée 326, et l’entrée de sélection de produit VTO 320 telle qu’une identification d’un ou plusieurs produits VTO recommandés à essayer. Dans un mode de réalisation, l’image d’entrée 326 est l’image du visage d’un utilisateur, qui peut être une image fixe ou une trame d’une vidéo. Dans un mode de réalisation, l’image d’entrée 326 peut être reçue d’une caméra (non montrée) du dispositif 302 ou d’une image stockée (non montrée). L’image d’entrée 326 est fournie au dispositif de suivi de visage 315, par exemple pour le traitement afin de localiser des particularités (par exemple, des objets) dans l’image du visage à l’aide du réseau neuronal profond 315A.
Dans un mode de réalisation, une sortie de localisation du dispositif de suivi de visage 315 peut comprendre des résultats de classification, des masques de segmentation ou d’autres données de localisation pour un ou plusieurs objets détectés, et est fournie au composant de pipeline de rendu VTO 316. Dans un mode de réalisation, la sortie de localisation comprend des points de visage 315B du dispositif de suivi de visage 315. L’image d’entrée 326 est également fournie (par exemple, mis à disposition) au composant de pipeline 316. La sélection de produits VTO 320 est également fournie au composant de pipeline 316 pour déterminer les effets à rendre. Dans un mode de réalisation lié à la simulation de maquillage, un ou plusieurs effets peuvent être indiqués tels que pour une ou plusieurs des catégories de produits comprenant : lèvres, fard à paupières, ligneur, fard à paupières, etc.
Le composant de pipeline de rendu VTO 316 rend des effets sur l’image d’entrée 326, par exemple par dessin (rendu) d'effets en couches, une couche pour chaque effet de produit, pour produire l’image de sortie 328. Le rendu est conforme aux données de produit 318A sélectionnées par la sélection de produit VTO 320 et est réponse à l’emplacement des objets détectés. Par exemple, une sélection de produits VTO d’un rouge à lèvres, d’un brillant à lèvres ou d’un autre produit lié aux lèvres appelle l’application d’un effet sur un ou plusieurs objets détectés liés à la bouche ou aux lèvres à des emplacements respectifs. De même, une sélection de produits liés aux sourcils appelle l’application d’un effet de produit sélectionné sur les objets de sourcils détectés. En général, pour les aspects symétriques, les mêmes effets de sourcils sont appliqués sur chaque sourcil, le même effet de lèvres sur chaque lèvre ou le même effet d'œil sur chaque région d'œil, mais ce n’est pas nécessairement le cas. Certaines sélections de produits VTO comprennent une sélection de plusieurs produits tels que des produits coordonnés pour les sourcils et les yeux ou d’autres combinaisons d’objets détectés, qui peuvent être étiquetés comme « aspects de produit ». Le composant de pipeline de rendu VTO 316 peut rendre chaque effet, par exemple, un effet de produit par couche à la fois jusqu’à ce que tous les effets soient appliqués. L’ordre d’application peut être défini par des règles ou dans la sélection des produits, par exemple, un rouge à lèvres avant un brillant à lèvres.
Les interfaces utilisateur 314 fournissent l’image de sortie 328. L’image de sortie 328, dans un mode de réalisation, est présentée comme une portion d’un flux en direct d’images de sortie successives (chacune 328 par exemple), comme lorsqu’une vidéo d'autoportrait est augmentée pour présenter une expérience de réalité augmentée. Dans un mode de réalisation, l’image de sortie 328 peut être présentée avec l’image d’entrée 326, comme dans un affichage côte à côte à des fins de comparaison. Dans un mode de réalisation, il peut s’agir d’une interface de comparaison avant/après « en place » où l’utilisateur déplace un curseur pour révéler davantage l’image initiale ou traitée. Dans un mode de réalisation, l’image de sortie 328 peut être enregistrée (non montré) tel que sur le dispositif de stockage 310 et/ou partagée (non montré) avec un autre dispositif informatique.
Dans un mode de réalisation, les images d’entrée (non montrées) comprennent des images d’entrée d’une session de vidéoconférence et les images de sortie comprennent une vidéo partagée avec un autre participant (ou plus d'un) d’une session de vidéoconférence. Dans un mode de réalisation, l’application VTO (qui peut avoir un autre nom) est un composant ou un module d'extension d’une application de visioconférence (non montrée) permettant à l’utilisateur du dispositif 302 de porter du maquillage pendant une visioconférence avec un ou plusieurs autres participants à la conférence.
Dans le mode de réalisation illustré de la , Le composant de pipeline de rendu VTO 316 est configuré pour appliquer une adaptation de l’éclairage à des effets à rendre. Les composants du composant de pipeline de rendu VTO 316 sont illustrés sous forme de flux de processus montrant, par exemple, les opérations (par exemple, les étapes d’un procédé) exécutées par un ou plusieurs processeurs (par exemple, CPU, GPU ou les deux) du dispositif informatique 302. Il est entendu que des modules ou composants logiciels correspondants, par exemple, peuvent mettre en œuvre un tel flux. Il est entendu que d’autres composants pour d’autres adaptations qui peuvent être appliquées avant le rendu ne sont pas montrés par souci de simplicité.
Dans le mode de réalisation et pour au moins certaines fins, la couleur est modélisée à l'aide d'un modèle de teinte, de saturation et de valeur/luminosité (HSV ou HSB). En 316A, les opérations effectuent une détection de la couleur moyenne de peau pour déterminer une couleur de tonalité moyenne de peau. Dans un mode de réalisation, les opérations sont effectuées conformément au brevet '166. Par exemple, les opérations évaluent la peau gauche et droite (joue), la peau du visage (joues et front), la couleur des yeux gauche et droit, la sclère des yeux gauche et droit, la luminosité min/max des yeux et les lèvres. En 316B, les opérations effectuent une détection de couverture d'œil, en déterminant si les yeux sont couverts de manière à ce que la sclère ne soit pas disponible.
En 316C, les opérations ajustent la luminosité et la saturation des données de produit pour qu’un effet soit appliqué à l’image d’entrée en réponse à la sélection de produit 320. La luminosité et la saturation sont ajustées en réponse à la couleur moyenne de la peau et à la luminosité min/max des yeux détectée à 316 A. Si plus d'un effet de produit doit être appliqué, l’étape 316C est alors effectuée pour chacun d’entre eux.
En 316D, la teinte de l’effet à appliquer est adaptée en fonction du blanc de l'œil détecté à partir de la sclère à l’étape 316A, si disponible, (lorsque la disponibilité est détectée à l’étape 316B). Dans un mode de réalisation, les opérations déterminent si la couleur actuelle est décalée vers une tonalité chaude ou une tonalité froide. Les opérations interpolent entre différents H, S et V en fonction de la couleur actuelle de la sclère. Ainsi, la teinte de l’effet est poussée vers une tonalité plus chaude ou plus froide en fonction des conditions détectées. Pour déterminer s’il s’agit d’un tonalité chaude ou froide, les valeurs HSV de la sclère sont examinées. Un exemple d’opérations plus détaillées est décrit plus loin.
En 316E, l’effet de produit tel qu’adapté est rendu dans une couche associée à l’image d’entrée 326 pour définir l’image de sortie 328. Dans un mode de réalisation tel que lorsque plus d'un effet doit être appliqué, les étapes 316D et 316E sont répétées pour chaque effet à appliquer. Une fois les étapes du composant de pipeline 316 terminées, l’image de sortie est fournie, par exemple via l’interface utilisateur 314.
Dans un mode de réalisation, les étapes 316A à 316C sont effectuées par un processeur central ou une CPU (non montrée) tandis que les étapes 316D et 316E sont effectuées par un processeur graphique ou une GPU (non montrée), comme indiqué par la case en pointillés.
Voici un exemple d’opérations plus détaillées concernant l’interpolation en réponse à la tonalité chaude ou froide de la sclère. Les entrées suivantes sont utilisées : désigne la couleur HSV au pixel de peau actuel, chaque canal HSV ayant une valeur allant de 0 à 1 ; désigne la couleur HSV moyenne au niveau de la sclère pour l'œil (l'œil gauche ou l'œil droit est utilisé en fonction de la moitié du visage dans laquelle se trouve le pixel actuel), chaque canal HSV ayant une valeur allant de 0 à 1 ; et désigne la couleur HSV pour la couleur de maquillage cible, chaque canal HSV ayant une valeur allant de 0 à 1.
Une fonction est utilisée tout du long, définie comme une fonction qui interpole en douceur entre 0 et 1, commençant à et se terminant à . Un exemple de mise en œuvre est disponible au moment du dépôt sur en.wikipedia.org/wiki/Smoothstep. Est également utilisé qui est une fonction qui interpole linéairement entre les teintes et basée sur . Cette fonction tient compte du fait que la teinte s’enroule autour. Par exemple, une interpolation entre 0,9 et 0,1 avec t = 0,5 produirait 0,0 en sortie.
Les calculs suivants sont effectués pour déterminer si la peau est dans une tonalité chaude :
Les calculs suivants sont effectués pour déterminer si la sclère est dans une tonalité chaude :
Pour déterminer si l'ajustement sur chaud doit être effectué, toutes les conditions sont multipliées ensemble, formant . L'ajustement se fait à l’aide de :
Un processus similaire est appliqué pour vérifier la présence d’une tonalité froide. Les calculs suivants sont effectués pour déterminer si la peau est dans une tonalité froide :
Les calculs suivants sont effectués pour déterminer si la sclère est dans une tonalité froide :
Pour déterminer si l'ajustement sur froid doit être effectué, toutes les conditions sont multipliées ensemble, formant . L'ajustement se fait à l’aide de :
Dans un aspect de procédé, il existe les modes de réalisation liés à la teinte suivants : Mode de réalisation Teinte 1 : Procédé mis en œuvre par ordinateur comprenant l’exécution par un ou plusieurs processeurs des étapes suivantes : traitement d’une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajustement d’une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et présentation d’une image de sortie définie à partir de l’image d’entrée et de l’effet de maquillage ajusté via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
Mode de réalisation Teinte 2 : Dans le mode de réalisation Teinte 1, la teinte de l’effet de maquillage est poussée vers une tonalité plus chaude ou une tonalité plus froide en réponse à la teinte de référence.
Mode de réalisation Teinte 3 : Dans le mode de réalisation Teinte 1 ou 2, le traitement ajuste une luminosité et une saturation de l’effet de maquillage en réponse à une couleur de peau moyenne déterminée par le traitement de la peau du visage et en réponse à la luminosité des yeux (par exemple, min/max) déterminée par le traitement d’un ou plusieurs yeux du visage.
Mode de réalisation Teinte 4 : Dans l’un quelconque des modes de réalisation Teinte 1 à 3, l’ajustement de la teinte est en réponse à la détection d’une présence de la sclère pour l’ajustement de la teinte. Par exemple, la teinte n’est pas ajustée si la sclère n’est pas présente. La luminosité et la saturation peuvent toujours être ajustées.
Mode de réalisation Teinte 5 : Dans l’un quelconque des modes de réalisation Teinte 1 à 4, le procédé comprend le traitement de l’image à l'aide d'un réseau neuronal profond pour localiser les particularités faciales dans le visage ; et dans lequel la sclère est traitée et l’effet de maquillage est rendu en réponse aux particularités faciales telles que localisées.
Mode de réalisation Teinte 6 : Dans l’un quelconque des modes de réalisation Teinte 1 à 5, l’effet de maquillage est associé à un produit de maquillage et le procédé comprend la fourniture, via l’interface utilisateur, d’une recommandation d’une pluralité de produits de maquillage à essayer virtuellement ; et la réception d’une entrée de sélection, via l’interface utilisateur, sélectionnant le produit de maquillage pour l’expérience d’essayage virtuel.
Mode de réalisation Teinte 7 : Dans le mode de réalisation Teinte 6, l’entrée de sélection sélectionne une pluralité de produits et la méthode comprend l’ajustement de la teinte de chaque effet de maquillage associé en réponse à la teinte de référence pour rendre une pluralité d’effets de fabrication ajustés à l’image d’entrée.
Mode de réalisation Teinte 8 : Dans l’un quelconque des modes de réalisation Teinte 1 à 7, le procédé comprend la fourniture, via l’interface utilisateur, d’un service d’achat pour mener une transaction d’achat (par exemple, via commerce électronique) pour acheter un ou plusieurs produits de maquillage.
Il sera apprécié qu’un aspect de système et un aspect de produit programme d'ordinateur soient chacun divulgués correspondant à chacun des modes de réalisation Teinte 1 à 8.
Par exemple, dans un aspect de système, est proposé le mode de réalisation lié à la teinte suivant : Mode de réalisation Teinte 9 : Un système comprenant un pipeline de rendu configuré (par exemple, via une circuiterie) pour : traiter une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajuster une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et fournir une image de sortie définie à partir de l’image d’entrée et l’effet de maquillage ajusté pour présentation via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
Effet Maquillage avec Paillettes
Les paillettes sont utilisées dans de nombreux produits de maquillage différents, tels que l’ombre à paupières, le rouge à lèvres, mais aussi le fard à joues ou le ligneur. Les paillettes requièrent typiquement de nombreuses variables d’entrée et de nombreux calculs pour calculer des réflexions réalistes, de sorte que la simulation de l’effet est difficile à effectuer correctement.
Au cœur de tout effet pailleté se trouve le calcul d’un ensemble de particules qui seront étalées sur la surface où les particules doivent briller. Le calcul d’une position et d’une réflexion (par exemple, une propriété de particule) pour chaque particule, représentée dans une carte de texture, peut requérir une puissance de calcul trop importante pour être exécutée en mode direct sur un dispositif mobile.
Conformément à un mode de réalisation, tel que pour décharger le calcul pendant le rendu en mode direct, les cartes de texture (position et propriétés des particules) sont pré-générées avant que le rendu ne se produise. Les cartes de texture peuvent être réutilisées pendant le rendu d’un produit avec des paillettes.
Conformément aux techniques et aux valeurs empiriques ici, les textures pré-générées offrent des effets pailletés améliorés lorsqu’elles sont utilisées en temps réel.
Texture de particule : La première étape consiste à calculer informatiquement une texture de particule qui servira à positionner la particule et à stocker les propriétés de chaque particule (par exemple, taille, réflectance, couleur de base, orientation, etc.) Dans un mode de réalisation, la texture est calculée à l’aide d’un diagramme de Voronoi (structure). Un exemple de diagramme Voronoi est disponible sur en.wikipedia.org/wiki/Voronoi_diagram.
La texture Voronoi possède certaines propriétés qui la rendent utile pour définir les particules pailletées à rendre. Une texture Voronoi est créée par génération de points 2D aléatoires et par création de limites entre les points, où les limites sont à égale distance des points les plus proches. Ces régions Voronoi formées à partir des limites définissent les positions des particules pailletées. Il a été déterminé que la manière de générer les points 2D aléatoires peut avoir un effet perceptible. Dans un mode de réalisation, les points 2d aléatoires sont générés conformément à une technique d’échantillonnage en disques de Poisson. L’échantillonnage en disques de Poisson produit des échantillons répartis plus uniformément dans une image que l’échantillonnage uniforme. Une discussion et des exemples sont disponibles dans l’article intitulé « Visualizing Algorithms », Bostock, M., 26 juin 2014, disponible au moment du dépôt sur bost.ocks.org/mike/algorithms.
Dans un mode de réalisation, par exemple, par rapport à une image d’échantillon de produit, il existe deux images de texture (cartes) utilisées pour stocker des informations de particules. L’un stocke les normales des particules et l’autre stocke les centres des particules. Les normales sont des vecteurs normalisés avec leurs angles par rapport à la direction +z échantillonnés aléatoirement (par exemple, à l’aide d’un disque de Poisson) sur une plage déterminée empiriquement et codée en dur. Les centres des particules sont des coordonnées normalisées par les dimensions de l’image. Les cartes de texture définissent les particules pailletées avec un emplacement dans un espace 3D, par exemple à l'aide d'un centre de particule et d'un vecteur normal. Dans un mode de réalisation, le vecteur normal est une direction 3D, et comprend des valeurs x, y, z (où les valeurs x, y sont différentes des emplacements de pixels ou d’autres emplacements liés à la grille (x,y) du centre de la particule).
Ces textures sont échantillonnées à une certaine taille en fonction du paramètre de taille de paillette d’un produit, et elles sont configurées pour être échantillonnées à répétition au-delà des bords. Dans un mode de réalisation, les textures sont échantillonnées à l’aide d’un mipmapping, où différentes résolutions des textures sont pré-générées. Le mipmapping est une technique graphique qui met à l’échelle une image de texture d'origine de haute résolution ou une carte et un filtre, et la met à l’échelle en de multiples cartes de texture de plus petite résolution. Pendant le rendu, les opérations sélectionnent dynamiquement la texture à utiliser en fonction de divers facteurs, tels que la résolution de sortie par rapport à la taille de texture de paillette. Et la texture est mise à l’échelle en fonction de la taille de paillette.
Cartographie d’environnement
Une carte d’environnement pré-générée est utilisée pour définir l’éclairage d’un environnement conformément à une technique d’éclairage basé sur l’image (IBL). Au lieu d’utiliser une carte de l’environnement réel, on constate qu’une commande du scintillement des paillettes est obtenue par génération de la carte d’environnement comme s’il y avait un projecteur à lumière dirigée d’une certaine direction et des anneaux de lumière concentriques autour du projecteur central. Il est à noter que cette carte d’environnement doit uniquement être en niveaux de gris, car seule la luminosité de l’environnement et non les couleurs est préoccupante. Dans un mode de réalisation, la carte d’environnement est stockée sous forme de carte de cube (par exemple, 6 textures qui peuvent être enroulées/pliées pour définir un cube), chaque face de cube étant empilée verticalement en une image. Chaque face de cube correspond à l’apparence du projecteur à lumière dirigée dans une certaine direction si l’on regarde la lumière depuis la face en question.
Rendu pailleté
Pour rendre l’effet pailleté, les opérations trouvent une normale de la particule pailletée, qui peut être transformée par les rotations du visage et de la surface (le cas échéant). Dans un mode de réalisation, un moteur de suivi de visage, par exemple, peut fournir des informations de localisation d’objet telles que pour les yeux, les lèvres et/ou le contour du visage – par exemple, points de visage. Les points (informations de localisation) peuvent être utilisés pour déterminer une rotation du visage (par exemple, par rapport à une norme). Un modèle 3D ou autre peut donner des informations de surface supplémentaires, par exemple sur une surface de la région où les paillettes doivent être appliquées. Les informations de forme 3D sont décrites plus loin ici.
Dans un mode de réalisation, le rendu est appliqué à l'aide de techniques de rendu physique réaliste (PBR) et d’éclairage basé sur l’image (IBL). Les propriétés de matériau de rendu physique réaliste (par exemple, rugosité, F0...) et la direction de vue sont codées en dur (par exemple, précalculées informatiquement et stocké), tandis que la luminosité de l’environnement est trouvée à partir de la carte d’environnement (carte de cube et ses téxels) à l'aide du vecteur normal. Ces données sont utilisées dans le calcul d’éclairage basé sur l’image du PBR pour trouver la luminosité spéculaire de la particule telle que décrite dansLearn OpenGL – Graphics Programming« Specular-IBL », de Vries, Joey, 17 juin 2020, disponible au moment du dépôt sur learnopengl.com/PBR/IBL/Specular-IBL. Il est à noter que, dans un mode de réalisation, un terme diffus (l’un des éléments de l’IBL) est ignoré, car on s'attend à que la particule soit réfléchissante.
Comme noté ici, un effet de maquillage simule l’application d’un produit sur une partie du visage telle que le rouge à lèvres sur les lèvres, l’ombre à paupières sur une région de paupière autour d’un œil, etc. La partie du visage ayant l’effet est superposée sur une image d’entrée, tel que par un GPU. Ainsi, la portion/l’effet comprend des données de pixels qui doivent être déterminées pour l’opération de superposition, telles que l’utilisation de la carte de texture, de la carte d’environnement et des données de rendu, etc. Les pixels de l’effet peuvent alors être considérés comme représentant des particules pailletées et des particules non pailletées. Le fait qu'un pixel particulier, par exemple un pixel actuel, est ou non un pixel de particule pailletée peut être déterminé à l’aide de différents paramètres tels que la distance par rapport au centre d’une particule pailletée (au sein de la carte de texture) et la taille de la particule pailletée particulière. Le centre de la particule pailletée particulière peut servir de germe pour déterminer les paramètres de particule tels que la taille d’une particule (par exemple, dans un générateur de nombres qui détermine la taille dans une plage normalisée) ou la couleur (par exemple, dans un générateur de nombres qui détermine les valeurs dans une plage d’un modèle de couleur).
Dans un mode de réalisation, les particules pailletées sont circulaires et la distance de taille par rapport au centre est utilisée pour dessiner la forme circulaire de la particule et l’éclat alpha (seule la partie centrale des lumières complètes et la lumière s’estompe vers le bord de la particule).
En combinant les résultats de ces calculs, l’éclairage de la particule est rendu.
Une des limites d’une texture Voronoi est qu’elle ne permet pas les chevauchements. Dans un mode de réalisation, pour que l’effet pailleté apparaisse à une densité plus élevée et ait un chevauchement de particules, car les opérations de rendu sont répétées lorsque la carte de texture est utilisée pour définir une pluralité de couches de carte de texture superposées. Les opérations répètent et superposent le rendu pailleté avec les textures de particules (c'est-à-dire la carte de texture) tourné de 90, 180 et 270 degrés. Dans un mode de réalisation, les opérations font varier la densité par attribution d'une probabilité d’existence d’une particule pailletée particulière dans la carte de texture à une couche, et le fait qu’une particule existe ou non dépendra d’une valeur aléatoire supérieure ou inférieure à la probabilité d’existence. C'est-à-dire que si la probabilité d’existence d’une couche est de 0,8, et que la valeur d’une particule est de 0,6, alors elle existera, mais si sa valeur est de 0,9, alors elle n’existe pas (son éclat alpha est fixé à 0, par exemple).
La est une capture d’écran d’une UI 400 pour le réglage des paramètres de paillettes, par exemple pour définir les données d’effet de rendu. L'UI 400 peut être mise à la disposition d’un propriétaire de marque ou d’une autre entité pour définir les caractéristiques d’un effet de maquillage, par exemple pour une expérience VTO. L'UI peut être configurée pour recevoir des données de produits, tel que pour définir l’effet de maquillage sous-jacent ainsi que tous les effets de rendu spéciaux tels que les effets spéciaux d’éclairage ou de paillettes, les formes d’effet de maquillage (par exemple, images de masque), etc. Dans un mode de réalisation, l'UI 400 est un exemple d’UI 307B.
L'UI 400 est utile pour accorder un effet pailleté (par exemple, un aspect pailleté ou un « scintillement ») tel que fourni par une particule scintillante/pailletée d’un effet de maquillage. Un exemple d’effet de maquillage est un effet sur les yeux tel que fourni par un fard à paupières, un effet sur les lèvres tel que fourni par un rouge à lèvres, un effet sur les joues tel que fourni par une poudre pour le visage, etc.
L'UI 400 comprend un ruban d’icônes 402, par exemple pour changer d’interface utilisateur (autres non montrées) pour chacun des différents produits, effets de produit et/ou aspects associés. L’icône 402A se rapporte aux paillettes (« scintillement ») et appelle l'U1 400. L'UI 400 comprend une pluralité de commandes d’entrée (par exemple, 404 à 416) pour la réception d’une entrée afin de définir les propriétés/paramètres d’aspect pailleté respectifs. Les commandes 404 à 416 peuvent prendre différentes formes et une pluralité comprend ici des commandes de curseur. D’autres types de commandes d’entrée pour l'entrée de texte ou de valeurs similaires sont connus et utiles. Les commandes vocales peuvent être utilisées. Les commandes 404 à 416 comprennent :
Couleur 404 : Couleur de base des paillettes (sera modifiée par la réflexion, l’intensité et la variation de couleur) ; l’appel de la commande de couleur 404 peut présenter une autre commande de section de couleur (non montrée) telle qu’une roue des couleurs et/ou une commande de valeur d’entrée rouge, vert et bleu (RVB) pour définir une couleur à l’aide de valeurs de couleur additives RVB.
Réflexion 406 : Dans quelle mesure les paillettes sont réfléchissantes ;
Variation de couleur 408 : 0 signifie qu’il n'y a pas de variation 100 % signifie une variation sur l’ensemble du spectre de couleurs ;
Densité 410 : quel scintillement engendrons-nous ;
Intensité 412 : la quantité de scintillement visible ;
Taille 414 : taille de base du scintillement (peut être modifiée par la variation de taille) ; et
Variation de taille 416 : 0 signifie qu’il n'y a pas de variation, 100 % signifie que la taille de toutes les particules pailletées varie (par exemple, dans une plage normalisée).
Ainsi dans un mode de réalisation, les opérations de rendu rendent d’abord un produit de base (par exemple, dans une forme appliquée à la région du visage associée à une ou plusieurs particularités faciales. Ensuite, les opérations de rendu rendent une ou plusieurs, de préférence une pluralité de couches de particules pailletées qui sont appliquées par-dessus (par exemple, 4 couches au total). Plusieurs couches sont de préférence utilisées afin de permettre aux particules de se chevaucher. Pour une taille aléatoire d’une particule pailletée dans une couche de particules pailletées, les opérations de rendu génèrent une taille aléatoire entre une valeur minimale et maximale codée en dur (qui sont affectées par la taille de paillettes), et interpolent linéairement entre la taille de paillettes de base et la taille aléatoire sur la base d’un paramètre appelé « variation de taille de paillettes ». Si ce paramètre est égal à zéro, il n'y a pas de caractère aléatoire et s’il est de un, la taille est complètement aléatoire. Pour une couleur aléatoire de la particule pailletée, les opérations génèrent une couleur aléatoire dans une certaine plage de saturation et de luminosité de teinte (HSL) (par exemple, dans un mode de réalisation, limitée à des couleurs qui ont une saturation et une luminosité élevées). Comme pour la taille de paillettes, les opérations interpolent linéairement la couleur de base de paillettes et la couleur aléatoire sur la base d’un paramètre appelé « variation de couleur de paillettes ». Si ce paramètre est égal à zéro, il n'y a pas de caractère aléatoire et s’il est de un, la couleur est complètement aléatoire. Les valeurs de pixels de l’effet de maquillage pailleté sont attribuées en réponse à la distance par rapport à un centre de particule pailletée. Si la distance d’un pixel actuel par rapport à un centre est comprise dans la taille de cercle, le pixel actuel est traité comme un pixel pailleté, sinon rien n’est changé pour ce pixel (car le produit de base a déjà été rendu). Puisque chaque pixel de la carte de texture pré-générée contient le centre de la particule la plus proche, il suffit de faire une recherche de texture pour le pixel actuel afin de déterminer la particule la plus proche.
La est un organigramme des opérations 500, conformément à un mode de réalisation, tel que pour un dispositif informatique de la (par exemple, le dispositif 302). Les opérations 500 définissent un procédé mis en œuvre par ordinateur comprenant l’exécution par un ou plusieurs processeurs des étapes d’un procédé. Par exemple, dans un aspect de procédé, sont proposés des modes de réalisation liés aux paillettes suivants :
Mode de réalisation Paillettes 1 : Un procédé mis en œuvre par ordinateur comprend l’exécution par un ou plusieurs processeurs des étapes de : traitement d’un visage d’une image d’entrée pour déterminer un emplacement d’une particularité faciale, l’image d’entrée traitée par un moteur de suivi du visage comprenant au moins un réseau neuronal profond pour localiser les particularités faciales (étape 502) ; rendu d’un effet de maquillage en association avec la particularité faciale, l’effet de maquillage comportant un effet pailleté défini à partir des cartes de texture et d’environnement de lumière précalculées informatiquement pour localisation et éclairage de l’effet pailleté (étape 504) ; et fourniture d'une image de sortie définie à partir de l’image d’entrée et de l’effet de maquillage pour présentation via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel (étape 506). Le moteur de suivi de visage peut comprendre le dispositif de suivi de visage 315 comme décrit précédemment, par exemple. Le rendu (et la fourniture de l’image de sortie) peuvent être fournis par le pipeline de rendu 316 tel qu’adapté pour les enseignements d’effet pailleté ici, par exemple.
Mode de réalisation Paillettes 2 : Dans le mode de réalisation Paillettes 1, l’effet de maquillage comprend un effet de maquillage pour les lèvres, un effet de maquillage pour la région des yeux ou un maquillage pour la région des joues.
Mode de réalisation Paillettes 3 : Dans le mode de réalisation Paillettes 1 ou le mode de réalisation Paillettes 2, l’étape de rendu se fait en réponse aux techniques de rendu physique réaliste pour définir l’effet pailleté.
Mode de réalisation Paillettes 4 : Dans l’un quelconque des modes de réalisation Paillettes 1 à 3 : une carte de texture précalculée informatiquement définit, pour chacune d’une pluralité de particules pailletées, un emplacement de paillettes et un angle de réflexion de paillettes ; une carte d’environnement de lumière simule une source de lumière (par exemple, dans un espace tridimensionnel) pour déterminer une luminosité spéculaire d’une particule pailletée particulière conformément à l’angle de réflectance de la particule pailletée particulière ; et le rendu définit les valeurs de pixel pour les pixels de l’effet de maquillage, l'ajustement de l’éclairage d’un pixel actuel conformément à une distance du pixel actuel par rapport à un emplacement de paillettes d’une particule particulière, de la luminosité spéculaire de la particule pailletée particulière et d’une taille de la particule pailletée particulière. Mode de réalisation Paillettes 5 : Dans le mode de réalisation Paillettes 4, la brillance spéculaire est en outre déterminée en réponse à une forme tridimensionnelle de l’effet de maquillage et à une rotation du visage.
Mode de réalisation Paillettes 6 : Dans le mode de réalisation Paillettes 4 ou 5, une taille de la particule pailletée particulière est attribuée aléatoirement dans une plage normalisée.
Mode de réalisation Paillettes 7 : Dans l’un quelconque des modes de réalisation Paillettes 4 à 6, l’éclairage répond en outre à un éclat alpha de la particule pailletée particulière, définissant un fondu de lumière à partir d’un centre.
Mode de réalisation Paillettes 8 : Dans l'un quelconque des modes de réalisation Paillettes 4 à 7, le rendu colore davantage l’effet de maquillage en réponse à une couleur de paillette de la particule pailletée particulière.
Mode de réalisation Paillettes 9 : Dans l'un quelconque des modes de réalisation Paillettes 4 à 8, la pluralité de particules pailletées est espacée aléatoirement dans la carte de texture sans chevauchement et dans lequel le rendu répète la définition des valeurs de pixel à l'aide de la carte de texture dans une pluralité de couches de carte de texture superposées pour chevaucher les particules pailletées dans l’effet pailleté.
Mode de réalisation Paillettes 10 : Dans le mode de réalisation Paillettes 9, le rendu fait varier une densité de particules pailletées de l’effet pailleté, déterminant aléatoirement si une particule particulière dans la carte de texture existe dans l’une des couches de carte de texture superposées.
Mode de réalisation Paillettes 11 : Dans l’un quelconque des modes de réalisation Paillettes 4 à 10, une normale à l’angle de réflectance (par exemple, défini comme vecteur) est utilisée avec la carte d’environnement de lumière pour déterminer la brillance spectrale.
Mode de réalisation Paillettes 12 : Dans l’un quelconque des modes de réalisation Paillettes 4 à 11, chacun des emplacements de paillettes de la pluralité de particules pailletées est attribué aléatoirement à l’aide d’un échantillonnage en disques de Poisson.
Mode de réalisation Paillettes 13 : Dans l’un quelconque des modes de réalisation Paillettes 1 à 12, le rendu se fait en réponse à un ou plusieurs paramètres d’effets de rendu comprenant des paramètres de couleur, de réflexion, de variation de couleur, de densité, d’intensité, de taille et de variation de taille.
Il sera apprécié qu’un aspect de système et un aspect de produit programme d'ordinateur soient chacun divulgués correspondant à chacun des modes de réalisation Paillettes 1 à 13.
Un autre aspect de procédé lié aux paillettes est divulgué, comme pour un dispositif informatique configuré pour précalculer informatiquement des cartes à utiliser pendant un rendu. Par exemple, est proposé le mode de réalisation Paillettes 14 : Un procédé mis en œuvre par ordinateur comprend l’exécution par un ou plusieurs processeurs des étapes de : précalcul informatique des cartes de texture et d’environnement de lumière pour localisation et éclairage d'un effet pailleté en tant que composante d’un effet de maquillage à rendre en association avec une particularité faciale localisée par un moteur de suivi du visage d’une application d’essayage virtuel de maquillage ; et fourniture des cartes de texture et d’environnement de lumière précalculées informatiquement pour une utilisation par un pipeline de rendu de l’application d'essayage virtuel de maquillage, pour le rendu de l’effet de maquillage avec l’effet pailleté. Mode de réalisation Paillettes 15 : Dans le mode de réalisation Paillettes 14, les cartes de texture et d’environnement de lumière précalculées informatiquement sont définies pour générer l’effet pailleté conformément aux techniques de rendu physique réaliste qui modélisent les particules dans un environnement éclairé. Mode de réalisation Paillettes 16 : Dans le mode de réalisation Paillettes 14 ou 15, une carte de texture est précalculée informatiquement conformément à une technique de diagramme de Voronoi, fournissant des emplacements aléatoires pour une pluralité de particules pailletées concernant l’effet pailleté, et la carte de texture est en outre calculée informatiquement pour comprendre respectivement un angle de réflectance pour chacune de la pluralité de particules pailletées. Mode de réalisation Paillettes 17 : Dans le mode de réalisation Paillettes 16, la carte de l’environnement de lumière est définie pour modéliser une source de lumière, de sorte qu’au moment du rendu, une brillance spéculaire est fournie respectivement pour chacune des pluralités de particules pailletées dans l’effet pailleté, la brillance spéculaire répondant à l’angle de réflectance. Mode de réalisation Paillettes 18 : dans le mode de réalisation Paillettes 16 ou 16, les emplacements des particules pailletées sont attribués à l’aide de la distribution d’échantillonnage en disques de Poisson.
Il sera apprécié que des modes de réalisation supplémentaires liés au procédé adaptés, le cas échéant, de l’un quelconque des modes de réalisation Paillettes 1 à 13 peuvent s’appliquer aux modes de réalisation Paillettes 14 à 18. Il sera apprécié qu’un aspect de système et un aspect de produit programme d'ordinateur sont chacun divulgués correspondant à chacun des modes de réalisation Paillettes 14 à 18 ou tel qu’adapté comme noté. L'un quelconque des modes de réalisation Paillettes peut être combiné avec l'un quelconque ou plusieurs modes de réalisation Teinte, modes de réalisation Mise en forme et modes de réalisation Maillage, par exemple, en combinant des aspects de procédé de ceux-ci, en définissant des aspects de système correspondants, etc.
Mise en forme d'une particularité faciale
En général, le VTO de maquillage applique un effet de produit à une particularité faciale car cette particularité est identifiée par un moteur de suivi de visage, tel que le suivi de visage 315. Le VTO utilise généralement uniquement l’image d’origine et applique une couleur ou une texture de « peinture » sur le dessus pour couvrir les couleurs d’origine de la particularité faciale détectée comme le ferait un maquillage normal. Cependant, pour la catégorie des sourcils, certains des produits de beauté vendus comportent des outils et des produits de mise en forme qui permettent à un utilisateur de changer la forme globale ou locale du sourcil. Une simulation de la remise en forme est souhaitée. En plus de la détection et du rendu de la forme détectée, un ensemble supplémentaire de transformations peut être employé comme décrit ici pour remettre en forme, par exemple pour effectuer une déformation de sourcils.
Dans un mode de réalisation, la déformation de sourcils est une technique de manipulation d’image qui transforme les pixels de l’image d'origine. La transformation de pixels est préférée au remplacement du sourcil d'origine par un sourcil synthétique. Le retrait et le remplacement par une superposition peuvent se révéler difficiles et donner des résultats qui ne sont pas suffisamment réalistes.
Quelques exemples de transformations de sourcils comprennent : rehausse globale de l’arcade sourcilière, diminution ou augmentation de l’épaisseur intérieure, nettoyage supérieur et nettoyage inférieur. Les formes de sourcils peuvent être caractérisées comme ayant une partie interne plus près du nez, une partie médiane et une partie externe, la plus éloignée du nez. Les parties interne, médiane et externe sont situées le long de l’arcade sourcilière ou définissent celle-ci avec une ligne supérieure (le plus près du front) et une ligne inférieure (le plus près de l'œil).
Dans un mode de réalisation, les valeurs du sourcil qui peuvent être transformées (par exemple, paramètres de sourcils) comprennent : Partie externe : alignement horizontal et vertical, épaisseur ; Partie interne : alignement horizontal et vertical, épaisseur ; Arcade : augmentation/diminution locale et globale, pointu de l’arcade ; Partie médiane : épaisseur ; Nettoyage : partie supérieure, inférieure, interne ; et Global : décalage horizontal et vertical.
Dans un mode de réalisation, un dispositif de suivi de visage, tel que le dispositif de suivi 315, peut localiser des particularités faciales et fournir des points de visage tels que représentés sur la . La montre un exemple d’image de visage 600 (par exemple, une image rognée d’un visage 602) annotée avec les groupes 604 de points de visage. La représentation des points sur le visage sert d’illustration. La sortie du dispositif de suivi de visage 315 n’a pas besoin de comprendre une image annotée et la sortie de points de visage et d’un visage rogné, par exemple, peut être des données séparées ou le visage rogné qui ne sont pas fournis en soi.
Dans un mode de réalisation, les groupes 604 de points de visage comprennent les points de visage de contour de visage 604A, les points de visage de sourcils droit et gauche 604B, 604C, les points de visage d'yeux gauche et droit 604D et 604E, les points de visage de nez 604F et deux points de visage de lèvres 604G et 604H. Dans un mode de réalisation, les points de visage de lèvres comprennent un groupe de lèvres externes 604G (autour de la bouche) et un groupe de lèvres internes (entre les lèvres) 604H. Les points de visage d’un groupe individuel sont numérotés (par exemple, 0, 1, 2...) et aide à définir le contour de l’objet détecté. Dans un mode de réalisation, le dispositif de suivi de visage attribue chaque point de sorte qu’il soit placé à des emplacements cohérents par rapport au contour de l’objet qu’il désigne. Par exemple, un point particulier peut toujours se trouver au coin droit de la bouche. Dans un exemple, les points de visage sont des coordonnées de pixels X,Y, par rapport à l’image de visage rognée 602 et sont associés aux objets détectés respectifs à partir des (par exemple, l'un des) réseaux du dispositif de suivi 315.
Dans un mode de réalisation, des opérations telles que pour les composants de dispositif de suivi de visage et de pipeline de rendu d’une application d’essayage virtuel effectuent un procédé mis en œuvre par ordinateur comprenant une ou plusieurs étapes comme suit :
  1. Traitement d'une image d’entrée à l’aide du détecteur de visage, fourniture d'un ou de plusieurs réseaux neuronaux pour localiser les particularités faciales afin d’obtenir les points de visage d'yeux et de sourcils.
  2. Les Figures 7A et 7B sont des illustrations d’une construction de déformation de visage 700, conformément à un mode de réalisation, pour déformer un sourcil (un exemple de particularité faciale). Comme représenté à la , sur chaque sourcil (par exemple, le sourcil gauche 702), définition d'une grille de déformation rectangulaire (704) centrée sur chaque région de sourcil. La taille de cette case (grille) est calculée à partir des tailles et des distances de diverses particularités faciales. La grille est également tournée (via des transformations affines) pour concorder avec la rotation du visage. Par exemple, à l'aide des points de visage 604A de contour de visage, une rotation de visage peut être déterminée par rapport à une position standard. Un système de coordonnées (par exemple, tel que représenté par des points dans la case de grille 704) est défini dans la grille, avec des coordonnées allant de (0, 0) à (1, 1). Cela simplifie les calculs de déformation car ils n’ont plus à se soucier de la rotation du visage ou de la taille des sourcils. Le groupe de points de visage de sourcil et le groupe de points de visage d'œil pour un œil droit ou un œil gauche sont cartographiés dans ce système de coordonnées (dans des grilles respectives déterminées pour chacune de ces paires de particularités faciales), pour être utilisés pendant les calculs de déformation.
  3. La grille de déformation est discrétisée en une grille de points 2D (par exemple, les points illustrés dans la case 704, y compris les points 704A, 704B, 704C, 704D et 704E, où 704C est situé à l’intérieur du sourcil 702 entre les points 704A et 704D). Par déplacement d’un point de grille (par exemple, 704D), le pixel d’image de visage au niveau ou près de ce point de grille et ses pixels environnants (par exemple, près du point de grille 704E, par exemple) sont également déplacés. Voir la pour le déplacement des points de grille et le déplacement des pixels de sourcils qui en résulte pour remettre en forme le sourcil 702. L’interpolation linéaire de la déformation est effectuée entre les points. Dans un mode de réalisation, un GPU fournit cette interpolation linéaire en tant que fonction intégrée. Il existe un compromis dans lequel le choix d’une grille plus dense entraîne des déformations plus lisses mais un temps de traitement (GPU) plus élevé. Par exemple, lors d’expérimentations, il a été découvert qu’une grille de 25 par 50 points (1250 points au total) offre un bon équilibre entre la qualité et la vitesse pour les GPU fournis pour les dispositifs mobiles couramment disponibles au moment du dépôt, tels que les smartphones. Tout ce qui est plus élevé a entraîné une diminution des rendements en termes de qualité. Avec un matériel plus puissant, une grille plus dense pourrait être utilisée.
  4. Chaque point de la grille est ensuite déformé, la déformation étant calculée à l’aide des points de visage et des paramètres de déformation applicables. C'est-à-dire, des déformations de points de grille prédéfinies (déplacements) peuvent être définies en association avec des transformations de sourcils particulières (par exemple, paramètres).
  5. L’image faciale (par exemple, ses pixels) est ensuite déformée en fonction des grilles de déformation. Par exemple, la mise en forme de sourcils forme les deux sourcils, chacun ayant une grille. La mise en forme de sourcils peut être effectuée avec une autre mise en forme de filtre de beauté telle que la mise en forme d'yeux ou de paupières, la mise en forme de lèvres, la mise en forme d’arête du nez, la mise en forme de narine, la mise en forme de contour du visage (par ex. amincissement de mâchoire), etc., où chaque particularité en cours de mise en forme a une grille respective.
Calculs de déformation
Les calculs de déformation utilisés pour chaque paramètre de sourcil sont différents, mais il existe des techniques communes. Chaque paramètre a une fonction de déformation associée :
où : est le point de grille d’entrée,
est l’ensemble des points de sourcils,
est l’ensemble des points d'yeux, un exemple de particularité faciale associée et utile pour définir une particularité faciale de région d'œil (par exemple, une particularité faciale associée) entre le sourcil et les points d'yeux le long d’une courbe supérieure de l'œil ; dans un premier temps, l’ensemble de points d'yeux et des points de sourcils est fourni par le dispositif de suivi de visage.
est la valeur de ce paramètre,
est le point de grille de sortie.
Dans un mode de réalisation, la déformation est effectuée par application itérative de chaque fonction de déformation (par exemple, où un paramètre de forme (param) indique un changement du sourcil) sur la grille de déformation. Le processus global est le suivant :
Pour chaque paramètre param :
Déformer la grille par application de à chaque point de grille ;
Appliquer à et pour obtenir un nouvel ensemble de points de sourcils (et de points d'yeux ), car les points de sourcils (et les points d'yeux) ont pu changer en raison de la déformation. Utiliser les nouveaux points pour la prochaine itération.
Bien qu’elle ne soit pas montrée, une interface utilisateur, par exemple similaire à l’interface utilisateur 400, peut être fournie pour recevoir une entrée pour les paramètres de sourcils. Dans un mode de réalisation, un curseur ou d’autres commandes peuvent être fournis pour entrer la quantité de changement à apporter à un paramètre.
Techniques de déformation
Certaines techniques sont courantes parmi les fonctions de déformation. Cette section énumère ces techniques :
Concordance de courbes : Une courbe est calculée pour le sourcil actuel (par ajustement d'une courbe le long du milieu du sourcil, à l’aide des points de sourcil du dispositif de suivi de visage), et une courbe cible est calculée à partir des paramètres. Ceci est utile pour changer la courbure globale du sourcil. Le sourcil est déformé (par exemple dans la grille) de sorte que la courbe actuelle soit déformée pour concorder avec la courbe cible. Cela se fait par mise en concordance des points de la courbe source avec la courbe cible, et déformation en fonction du delta. Pour les points éloignés de la courbe dans la grille, une fonction d’atténuation gaussienne 2D est appliquée de sorte que les points proches de la courbe soient plus fortement déformés que les points plus éloignés. Les valeurs σx et σy de cette fonction gaussienne peuvent être changées pour ajuster la « zone d’impact ». Par exemple, σy doit être suffisamment grand pour affecter toute l’épaisseur du sourcil. Dans certains cas, la fonction gaussienne peut être remplacée par une fonction différente, par exemple une version asymétrique de la fonction gaussienne ou une version avec une « queue plus courte » ou une « queue plus longue ».
Concordance de points : Cela est similaire à la concordance de courbes, sauf qu’au lieu de faire concorder certaines courbes, certains points discrets sont mis en concordance à la place. Cela est utile pour les cas tels que le réglage de l’alignement d’une portion spécifique du sourcil.
Agrandissement/compression de zone : La zone environnante le long d’une courbe ou en un point peut être « comprimée » ou « agrandie » (dans une direction spécifique, par exemple verticalement ou uniformément). Cela se fait en rapprochant/éloignant les points proches, atténués par une fonction gaussienne. Cela est utile pour les opérations telles que le changement de l’épaisseur des sourcils ou l'affinement des bords de sourcils.
Mise en œuvre : La grille de déformation est rendue à l'aide des points de grille comme sommets, par exemple pour définir un maillage polygonal. Les triangles sont ajustés sur les sommets et l’image est cartographiée en UV sur les sommets. La cartographie UV dans le mode de réalisation est un processus de modélisation 2D de projection de la surface d’un modèle 2D sur une image 2D pour la cartographie de texture. Les lettres « U » et « V » désignent les axes de la texture 2D.
Filtres de beauté : De la même manière pour les opérations de déformation de sourcils, les opérations de filtrage de beauté sont un ensemble de transformations qui changent la forme d’autres particularités faciales. Dans un mode de réalisation, les transformations comprennent : Agrandissement d'œil (vertical et horizontal) ; amincissement de mâchoire ; amincissement de narine ; et amincissement d’arête nasale. Une mise en œuvre pour les filtres de beauté est la même que pour les filtres de sourcils, mais les régions affectées sont différentes, le cas échéant.
Les Figures 8A sont 8B sont un organigramme des opérations 800 et 804, tel que pour un dispositif informatique de la (par exemple, le dispositif 302) conformément à un mode de réalisation. Les opérations 800 définissent un procédé mis en œuvre par ordinateur comprenant l’exécution par un ou plusieurs processeurs des étapes d’un procédé. Les opérations 804 sont en outre définies comme les étapes 804A à 804C, dans un mode de réalisation.
Par exemple, dans un aspect de procédé, sont proposés des modes de réalisation liés à la mise en forme suivants : Mode de réalisation Mise en forme 1 : Un procédé mis en œuvre par ordinateur comprend l’exécution par un ou plusieurs processeurs des étapes suivantes : traitement d’une image d’entrée pour localiser les particularités faciales à l’aide d’un moteur de suivi de visage ayant un ou plusieurs réseaux neuronaux profonds pour produire respectivement des points de visage définissant un contour pour chacune des particularités faciales localisées (étape 802) ; et rendu d'une image de sortie dérivée de l’image d’entrée à l’aide d’un pipeline de rendu, l’image de sortie étant dérivée par application d'un ou de plusieurs changements de forme sur une particularité faciale particulière (étape 804), les un ou plusieurs changements de forme étant déterminés par : i) la cartographie d’une grille de points de grille espacés aux pixels de la particularité faciale particulière et toute particularité faciale associée (804A) ; et ii) déformation d'au moins certains des points de grille espacés à l'aide des fonctions respectives de changement de forme, la déformation de l’emplacement de changement d’au moins certains des points de grille espacés pour changer les emplacements des points de visage de la particularité faciale particulière (804B) ; et dans lequel le rendu détermine les pixels de sortie pour la particularité faciale particulière et toute particularité faciale associée pour l’image de sortie en réponse à la déformation (804C).
Le moteur de suivi de visage peut comprendre le dispositif de suivi de visage 315 comme décrit précédemment, par exemple. Le rendu (et la fourniture de l’image de sortie) peuvent être fournis par le pipeline de rendu 316 tel qu’adapté pour les enseignements d’effet pailleté ici, par exemple. Mode de réalisation Mise en forme 2 : Dans le mode de réalisation Mise en forme 1, le moteur de suivi de visage et le pipeline de rendu sont des composants d’une application VTO pour simuler les effets d’un produit de maquillage appliqué sur les particularités faciales. Mode de réalisation Mise en forme 3 : Dans le mode de réalisation Mise en forme 2, le pipeline de rendu rend un effet de maquillage sur la particularité faciale particulière dont la forme a changé de sorte que l’image de sortie comprend la particularité faciale particulière dont la forme a changé et avec l’effet de maquillage.
Mode de réalisation Mise en forme 4 : Dans l’un quelconque des modes de réalisation Mise en forme 1 à 3, le procédé comprend la fourniture d’une interface utilisateur pour recevoir une entrée afin de définir des paramètres de forme pour les un ou plusieurs changements de forme et dans lequel le rendu se fait en réponse à l’entrée utilisateur.
Mode de réalisation Mise en forme 5 : Dans le mode de réalisation Mise en forme 4, au moins certaines des fonctions de changement de forme effectuent une ou plusieurs des actions suivantes : concordance de courbes pour faire concorder une courbe médiane le long d’un milieu du contour de la particularité faciale particulière avec une courbe cible définie par les paramètres de forme des un ou plusieurs changements de forme, atténuation des changements d’emplacement des points de grille espacés en réponse à la distance par rapport à la courbe cible ; concordance de points pour faire concorder un point discret du contour de la particularité faciale particulière avec un point cible défini par les paramètres de forme des un ou plusieurs changements de forme ; et agrandissement de zone ou compression de zone pour agrandir ou comprimer une zone le long d’une courbe de point de visage ou autour d’un pixel particulier, en réponse aux paramètres de forme, l'agrandissement de zone ou la compression de zone étant atténué par une fonction d’atténuation en réponse à la distance par rapport à la courbe de point de visage ou du pixel particulier.
Mode de réalisation Mise en forme 6 : Dans l’un quelconque des modes de réalisation Mise en forme 1 à 5, la détermination des pixels comprend l’ajustement de triangles aux sommets définis par les points de grille espacés tel que déformés et la cartographie UV des pixels de la particularité faciale particulière et de toute particularité associée sur les sommets.
Mode de réalisation Mise en forme 7 : dans l’un quelconque des modes de réalisation Mise en forme 1 à 6, la particularité faciale particulière définit une première particularité faciale et l’étape de rendu est répétée par rapport à une seconde particularité faciale pour produire une image de sortie ayant au moins deux particularités faciales dont la forme a changé.
Mode de réalisation Mise en forme 8 : Dans l’un quelconque des modes de réalisation Mise en forme 1 à 7, les changements de forme appliqués à la particularité faciale particulière comprennent l’une quelconque parmi une mise en forme de sourcils, une mise en forme de nez, telle qu’un amincissement de narine ou un amincissement d'arête, un changement de contour de visage, tel qu’un amincissement de mâchoire, un changement d'œil ou de paupière tel qu’un agrandissement d'œil vertical ou horizontal ; ou un changement de lèvre tel qu’un repulpage de lèvre.
Il sera apprécié qu’un aspect de système et un aspect de produit programme d'ordinateur soient chacun divulgués correspondant à chacun des modes de réalisation Mise en forme 1 à 7, par exemple. L'un quelconque des modes de réalisation Mise en forme peut être combiné avec l'un quelconque ou plusieurs des modes de réalisation Teinte, des modes de réalisation Paillettes et des modes de réalisation Maillage comme noté.
Maillage 3D à partir d’un repère 2D
Dans un mode de réalisation, pour faciliter un rendu plus réaliste de particularité faciale, que ce soit pour appliquer un effet de mise en forme ou pour appliquer un effet de maquillage (tels que des aspects de maquillage), des opérations de rendu (par exemple, du pipeline 316) peuvent être configurées pour utiliser des maillages polygonaux 3D. Dans un mode de réalisation, les maillages polygonales 3D sont utilisés pour rendre des effets d’éclairage spéciaux (par exemple, métallique, vinyle) sur un effet de maquillage.
Un maillage est un ensemble de sommets, de bords et de faces qui définissent (par exemple, modélisent) la forme d’un objet 3D. L’utilisation de maillages polygonaux présente de nombreux avantages en plus d'être capable d'actualiser des effets d’éclairage complexes : les maillages polygonaux peuvent être rendus efficacement car de nombreux GPU disponibles dans le commerce sont utilisés dans les tablettes et smartphones des consommateurs, etc. au moment du dépôt sont optimisés pour gérer les polygones, ce qui entraîne une vitesse de rendu plus rapide.
Dans une application VTO, l’entrée utilisateur peut indiquer quel(s) produit(s) doit/doivent être appliqué(s) en tant qu'un ou plusieurs effets de maquillage associés à au moins certaines des particularités faciales localisées par un dispositif de suivi de visage. Un effet peut être appliqué sur une image à l’aide d’un masque (par exemple, une image de masque 2D) donnant une forme à l’effet de maquillage à un endroit par rapport à au moins certaines des particularités faciales . Par exemple, pour fournir des effets réalistes qui répondent aux formes 3D des particularités faciales, un masque pour un effet peut être déformé pour s’adapter de manière réaliste à un modèle de maillage 3D des particularités faciales. L’image de masque 2D déformée peut être cartographiée en UV pour être utilisée pour mettre en forme l’effet pendant le rendu.
Générer maillage 3D
Dans un mode de réalisation, le dispositif de suivi de visage 315 détecte des points de visage 2D. Les opérations de rendu génèrent des maillages 3D à l’aide des points de visage 2D. Dans un mode de réalisation, les opérations pour générer un maillage 3D comprennent :
  1. Estimation de points de visage 3D à l’aide de points de visage 2D détectés et d’un modèle de visage 3D existant – projection des points de visage 2D sur un espace 3D pour obtenir des points de visage 3D. Normalement, les caméras et les yeux humains voient en projection de perspective. Lorsqu’un point 3D est projeté dans un espace 2D, une matrice de projection en perspective est appliquée. Dans un mode de réalisation, pour passer d’un point 2D à un point 3D, l’inverse de la matrice de projection peut être appliqué. Cependant, la profondeur est inconnue, de sorte que le résultat est en fait un rayon 3D plutôt qu’un point 3D. Pour obtenir un point 3D, les opérations approximent le visage avec un plan 3D et coupent le rayon 3D avec le plan pour obtenir un point 3D. Un décalage codé en dur est ajouté à chaque point pour tenir compte du fait que le visage n’est pas réellement plat. Par exemple, pour les points de lèvre, les points près des coins de la bouche seraient plus en profondeur par rapport à la caméra que les points au centre ;
  1. Interpolation des courbes splines à l’aide des points de visage 3D et utilisation de ces courbes lissées comme contours des particularités faciales ;
  2. Génération d'une grille 3D (par exemple, des points de grille espacés) et déformation des points de grille pour s’adapter à la courbure des lignes de contour 3D ; et
  3. Extraction des facettes 3D (en forme de triangle) de la grille déformée et leur regroupement pour former le maillage facial 3D.
Les Figures 9A, 9B et 9C sont des illustrations de maillages polygonaux 3D 900 comprenant des maillages pour les yeux 902 et des maillages pour les lèvres 904 pour les particularités faciales liées aux yeux et aux lèvres, conformément à un mode de réalisation. La montre une vue de face tandis que les Figures 9B et 9C montrent des vues partiellement tournées à gauche et à droite. La est agrandie par rapport aux Figures 9B et 9C pour plus de commodité. Il est évident que les maillages liés aux yeux dans le présent mode de réalisation comportent des régions autour d’un œil respectif, y compris le sourcil associé.
Cartographier l’image de masque 2D sur le maillage 3D
Dans un mode de réalisation, une technique connue de cartographie peut être utilisée. Par exemple, pour « déformer » une image de masque 2D sur la surface d’un maillage 3D, les opérations utilisent une technique appelée cartographie UV. Dans le mode de réalisation, une image de masque fait référence à une forme pour un effet de maquillage telle qu’une forme pour une ombre à paupières appliquée sur une région d'œil qui peut être située adjacente à un contour supérieur d’un œil et s’étendre vers un contour inférieur d’un sourcil, et s’étendre à l’extérieur de l'œil. La est une illustration d’une région d'œil 1000 ayant un masque d'œil 1002 conformément à un mode de réalisation. Ce processus de cartographie peut être interprété comme un modèle 3D papier d’un objet, par exemple une sphère, qui doit être posé à plat sur une table, et chacune des coordonnées 3D de l’objet peut être cartographiée sur les coordonnées 2D sur l’image plate. L’objectif de ce déroulement des coordonnées 3D est de cartographier ces coordonnées 3D sur des images/photos afin que l’image 3D ait une surface d’aspect réaliste avec des textures dérivées de ces images.
En utilisant les effets d’ombre à paupières comme exemple, le processus général de cartographie des images de masque sur le maillage 3D est le suivant : utiliser l’image de modèle d'œil (par exemple, image de masque 1002 créant l’effet de maquillage d'œil) comme image de texture ; dérouler le maillage 3D en 2D ; et ajuster les sommets UV 2D de sorte que la texture soit correctement affichée sur le maillage 3D. Dans un mode de réalisation, le maillage 3D peut être déroulé tel qu’en utilisant un logiciel d’origine tierce disponible. Les sommets 2D peuvent être alignés avec l’image de masque (par exemple, donnant une forme de l’effet de maquillage) et des points de référence.
La est un organigramme des opérations 1100 conformément à un mode de réalisation, tel que pour un dispositif informatique (par exemple, le dispositif 302) de la . Les opérations 1100 définissent un procédé mis en œuvre par ordinateur comprenant l’exécution par un ou plusieurs processeurs des étapes d’un procédé.
Par exemple, dans un aspect de procédé, sont proposés des modes de réalisation liés au maillage suivants : Mode de réalisation Maillage 1 : Un procédé mis en œuvre par ordinateur comprend l’exécution par un ou plusieurs processeurs des étapes de : traitement d’une image d’entrée pour localiser les particularités faciales d’un visage à l’aide d’un moteur de suivi de visage ayant un ou plusieurs réseaux neuronaux profonds (étape 1102) ; et rendu d’une image de sortie dérivée de l’image d’entrée à l’aide d’un pipeline de rendu, l’image de sortie comprenant un effet de maquillage à un emplacement associé à au moins certaines des particularités faciales pour simuler un essayage virtuel d’un produit de maquillage, l’effet ayant une forme 2D obtenue à partir d’une image de masque 2D prédéfinie ajustée à l’aide d’une forme 3D de l’emplacement (étape 1104).
Mode de réalisation Maillage 2 : Dans le mode de réalisation Maillage 1, le dispositif de suivi de visage produit respectivement des points de visage définissant un contour de forme pour chacune des particularités faciales localisées ; et le pipeline : génère un maillage 3D à l'aide d'un modèle 3D et des points de visage d’au moins certaines particularités faciales pour définir la forme 3D de l’emplacement ; déforme l’image de masque 2D prédéfinie vers le maillage 3D pour ajuster l’image de masque 2D ; et cartographie (par exemple, déroule) l’image de masque 2D déformée pour fournir la forme 2D de l’effet de maquillage à l’emplacement.
Mode de réalisation Maillage 3 : Dans le mode de réalisation Maillage 2, le pipeline effectue une cartographie UV pour cartographier l’image de masque 2D déformée à l'aide du maillage 3D.
Mode de réalisation Maillage 4 : Dans l’un quelconque des modes de réalisation Maillage 1 à 3, l’effet de maquillage est associé à un produit de maquillage et le procédé comprend : la fourniture, via une interface utilisateur, d’une recommandation d’une pluralité de produits de maquillage à essayer virtuellement ; et la réception d’une entrée de sélection, via l’interface utilisateur, sélectionnant le produit de maquillage pour une expérience d’essayage virtuel.
Mode de réalisation Maillage 5 : Dans l’un quelconque des modes de réalisation Maillage 1 à 4, l’entrée de sélection sélectionne un ou plusieurs produits pour le rendu d'un ou plusieurs effets de maquillage sur deux emplacements ou plus associés à au moins certaines particularités faciales ; et dans lequel le rendu rend un premier effet de maquillage sur un premier emplacement à l'aide d'une première image de masque 2D prédéfinie ajustée à l'aide d'une forme 3D du premier emplacement ; et dans lequel le rendu rend un second effet de maquillage sur un second emplacement à l'aide d'une seconde image de masque 2D prédéfinie ajustée à l’aide d’une forme 3D du second emplacement. Dans un exemple, les un ou plusieurs produits comprennent une ombre à paupières, les un ou plusieurs effets de maquillage comprennent un effet d’ombre à paupières, les premier et second emplacements sont les régions d'œil gauche et d'œil droit respectives associées aux particularités faciales d'œil et de sourcil, et les première et seconde images de masque 2D prédéfinies sont des images de masque d'œil gauche et d'œil droit, qui peuvent être une image d'œil et un miroir de celle-ci.
Mode de réalisation Maillage 6 : Dans l’un quelconque des modes de réalisation Maillage 1 à 5, le procédé comprend la fourniture, via l’interface utilisateur, d’un service d’achat pour mener une transaction d’achat (par exemple, via commerce électronique) pour acheter un produit de maquillage.
Il sera apprécié qu’un aspect de système et un aspect de produit programme d'ordinateur soient chacun divulgués correspondant à chacun des modes de réalisation Maillage 1 à 6, par exemple. L'un quelconque ou plusieurs des modes de réalisation Maillage peuvent être combinés avec l'un quelconque ou plusieurs des modes de réalisation Teinte, modes de réalisation Paillettes et modes de réalisation Mise en forme, comme noté.
En plus des aspects de dispositif informatique et de procédé, l'homme du métier comprendra que des aspects de produit programme d'ordinateur sont divulgués, où des instructions sont stockées dans un dispositif de stockage non transitoire (par exemple, une mémoire, CD-ROM, DVD-ROM, disque, etc.), et que, lorsqu’elles sont exécutées, les instructions amènent un dispositif informatique à effectuer l’un quelconque des aspects de procédé stockés ici.
La mise en œuvre pratique peut inclure tout ou partie des particularités décrites ici. Ces aspects, particularités et diverses combinaisons, ainsi que d’autres, peuvent être exprimés sous forme de procédés, d’appareils, de systèmes, de moyens d’exécution de fonctions, de produits programmes, et d’autres manières, combinant les particularités décrites ici. Un certain nombre de modes de réalisation ont été décrits. Néanmoins, il sera entendu que diverses modifications pourront être apportées sans s'écarter de l’esprit et de la portée des processus et techniques décrits ici. De plus, d’autres étapes peuvent être fournies, ou des étapes peuvent être éliminées, du processus décrit, et d’autres composants peuvent être ajoutés aux systèmes décrits ou en être retirés. Par conséquent, d’autres modes de réalisation entrent dans la portée des revendications qui suivent.
Les particularités, nombres entiers, caractéristiques, composés, fractions chimiques ou groupes décrits conjointement avec un aspect, un mode de réalisation ou un exemple particulier de l’invention doivent être compris comme étant applicables à tout autre aspect, mode de réalisation ou exemple, à moins qu’ils ne soient incompatibles avec ceux-ci. Toutes les particularités divulguées ici (y compris les revendications, l'abrégé et les dessins annexés), et/ou toutes les étapes de tout procédé ou processus ainsi divulgué, peuvent être combinées dans n’importe quelle combinaison, sauf les combinaisons où au moins certaines de ces particularités et/ou étapes sont mutuellement exclusives. L’invention ne se limite pas aux détails des exemples ou modes de réalisation qui précèdent. L’invention s’étend à toute particularité nouvelle, ou toute combinaison nouvelle, des particularités divulguées dans le présent mémoire (y compris toute revendication, l'abrégé et tout dessin annexés) ou à toute particularité nouvelle, ou toute combinaison nouvelle, des étapes de tout procédé ou de tout processus divulgué.

Claims (8)

  1. Système de fourniture d’une image comprenant un effet de maquillage en tant que composante d’une expérience d’essayage virtuel, comprenant :
    un pipeline de rendu configuré via une circuiterie pour : traiter une sclère dans un visage d’une image d’entrée pour déterminer une teinte de référence du visage ; ajuster une teinte d’un effet de maquillage en réponse à la teinte de référence pour rendre un effet de maquillage ajusté sur l’image d’entrée ; et fournir une image de sortie définie à partir de l’image d’entrée et l’effet de maquillage ajusté pour présentation via une interface utilisateur en tant que composante d’une expérience d’essayage virtuel.
  2. Système selon la revendication 1, dans lequel la teinte de l’effet de maquillage est poussée vers une teinte plus chaude ou une teinte plus froide en réponse à la teinte de référence.
  3. Système selon la revendication 1, dans lequel le pipeline de rendu traite pour ajuster une luminosité et une saturation de l’effet de maquillage en réponse à une couleur de peau moyenne déterminée par traitement de la peau du visage et en réponse à la luminosité d'yeux déterminée par traitement d'un ou de plusieurs yeux du visage.
  4. Système selon la revendication 1, dans lequel le pipeline de rendu ajuste la teinte en réponse à une détection d’une présence de la sclère pour ajustement de la teinte.
  5. Système selon la revendication 1, comprenant en outre un dispositif de suivi de visage configuré via une circuiterie pour traiter l’image à l'aide d'un réseau neuronal profond pour localiser les particularités faciales dans le visage ; et dans lequel la sclère est traitée et l’effet de maquillage est rendu en réponse aux particularités faciales telles que localisées.
  6. Système selon la revendication 1, dans lequel l’effet de maquillage est associé à un produit de maquillage et le système comprend un composant de recommandation configuré pour fournir, via l’interface utilisateur, une recommandation d’une pluralité de produits de maquillage à essayer virtuellement et pour recevoir une entrée de sélection, l’interface utilisateur, sélectionnant le produit de maquillage pour l’expérience d’essayage virtuel.
  7. Système selon la revendication 6, dans lequel une entrée de sélection sélectionne une pluralité de produits et le procédé comprend l’ajustement de la teinte de chaque effet de maquillage associé en réponse à la teinte de référence pour le rendu d'une pluralité d’effets de maquillage ajustés sur l’image d’entrée.
  8. Système selon la revendication 1, comprenant un composant d’achat pour fournir, via l’interface utilisateur, un service d’achat pour mener une transaction d’achat afin d'acheter un ou plusieurs produits de maquillage.
FR2303587A 2022-12-28 2023-04-11 Procédé et appareils d'essayage virtuel de maquillage Pending FR3147891A1 (fr)

Priority Applications (13)

Application Number Priority Date Filing Date Title
FR2303587A FR3147891A1 (fr) 2023-04-11 2023-04-11 Procédé et appareils d'essayage virtuel de maquillage
EP23840717.5A EP4618805A1 (fr) 2022-12-28 2023-12-22 Procédés et appareil d'essayage virtuel de maquillage
KR1020257024172A KR20250125410A (ko) 2022-12-28 2023-12-22 메이크업 가상 시착 방법들 및 장치들
JP2025538654A JP2026506319A (ja) 2022-12-28 2023-12-22 メイクアップ仮想試着方法および装置
PCT/EP2023/087763 WO2024141513A1 (fr) 2022-12-28 2023-12-22 Procédés et appareil d'essayage virtuel de maquillage
CN202380093317.1A CN120676887A (zh) 2022-12-28 2023-12-22 虚拟试妆方法和设备
CN202380093076.0A CN120641005A (zh) 2022-12-28 2023-12-22 虚拟试妆方法和设备
EP23840718.3A EP4618806A2 (fr) 2022-12-28 2023-12-22 Procédés et appareil d'essayage virtuel de maquillage
JP2025538047A JP2026500940A (ja) 2022-12-28 2023-12-22 メイクアップ仮想試着方法および装置
PCT/EP2023/087764 WO2024141514A2 (fr) 2022-12-28 2023-12-22 Procédés et appareil d'essayage virtuel de maquillage
KR1020257024021A KR20250125406A (ko) 2022-12-28 2023-12-22 메이크업 가상 시착 방법들 및 장치들
US18/396,374 US20240215706A1 (en) 2022-12-28 2023-12-26 Makeup virtual try on methods and apparatus
US18/396,334 US20240221061A1 (en) 2022-12-28 2023-12-26 Makeup virtual try on methods and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2303587 2023-04-11
FR2303587A FR3147891A1 (fr) 2023-04-11 2023-04-11 Procédé et appareils d'essayage virtuel de maquillage

Publications (1)

Publication Number Publication Date
FR3147891A1 true FR3147891A1 (fr) 2024-10-18

Family

ID=88413549

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2303587A Pending FR3147891A1 (fr) 2022-12-28 2023-04-11 Procédé et appareils d'essayage virtuel de maquillage

Country Status (1)

Country Link
FR (1) FR3147891A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10892166B2 (en) 2017-02-06 2021-01-12 L'oreal System and method for light field correction of colored surfaces in an image
EP3979212A1 (fr) * 2020-09-30 2022-04-06 Revieve Oy Système et procédé de détermination d'un teint de peau

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10892166B2 (en) 2017-02-06 2021-01-12 L'oreal System and method for light field correction of colored surfaces in an image
EP3979212A1 (fr) * 2020-09-30 2022-04-06 Revieve Oy Système et procédé de détermination d'un teint de peau

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MALES MATIJA ET AL: "Colour balancing using sclera colour", IET IMAGE PROCESSING, IET, UK, vol. 12, no. 3, 1 March 2018 (2018-03-01), pages 416 - 421, XP006081118, ISSN: 1751-9659, DOI: 10.1049/IET-IPR.2017.0182 *

Similar Documents

Publication Publication Date Title
US11854070B2 (en) Generating virtual makeup products
US11854072B2 (en) Applying virtual makeup products
CN109690617B (zh) 用于数字化妆镜的系统和方法
US9058765B1 (en) System and method for creating and sharing personalized virtual makeovers
US10740959B2 (en) Techniques for providing virtual light adjustments to image data
US8908904B2 (en) Method and system for make-up simulation on portable devices having digital cameras
US10403036B2 (en) Rendering glasses shadows
WO2018221092A1 (fr) Dispositif de traitement d'images, système de traitement d'images, procédé de traitement d'images et programme
CA2667526A1 (fr) Procede et dispositif de simulation virtuelle d'une sequence d'images video.
US20240221061A1 (en) Makeup virtual try on methods and apparatus
WO2025040068A1 (fr) Procédé et appareil de traitement d'image, dispositif électronique et support
CN114155569A (zh) 一种化妆进度检测方法、装置、设备及存储介质
FR3147891A1 (fr) Procédé et appareils d'essayage virtuel de maquillage
FR2920938A1 (fr) Procede et dispositif de simulation virtuelle d'une image
FR3123484A1 (fr) Procédé et dispositif pour simuler un maquillage à partir d’un avatar
FR3149713A3 (fr) Procédés et systèmes de couleur virtuelle des cheveux
Csákány et al. Relighting of Dynamic Video

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20241018

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4