Brevet FR3147419A1 — publié le 20241004

MÉTHODES, APPAREIL DE DÉTECTION D’OBJET ET RENDU STABILISÉ Il est proposé des systèmes, des méthodes et des dispositifs pour la détection d’objets et des systèmes, des méthodes et des dispositifs pour stabiliser le rendu d’effets tels qu’un effet de maquillage appliqué à une image faciale. Figure pour l'abrégé : néant MÉTHODES, APPAREIL DE DÉTECTION D’OBJET ET RENDU STABILISÉ DOMAINE DE L'INVENTION La présente divulgation concerne le traitement d’images par exemple à l’aide de réseaux neuronaux profonds et plus particulièrement des méthodes et appareils de détection d’objets et de rendu stabilisé. 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 pour Virtual Try On) qui simule l’application d’un produit à un objet. La simulation de produits dans l’industrie de la beauté inclut la simulation d’effets de maquillage, des cheveux et des 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 des trames d’une vidéo, l’emplacement d’un objet dans une trame courante peut être différent de son emplacement dans une trame antérieure en raison d’un mouvement, par exemple. La localisation d’un objet particulier dans deux trames ou plus à l’aide d’un réseau neuronal profond peut entraîner des résultats indésirables lorsque des effets sont appliqués en raison d’une localisation imprécise entre les trames. Des techniques améliorées sont souhaitées pour déterminer des informations sur l’objet à partir d’images afin de faciliter la fourniture de réalités augmentées, y compris d'expériences VTO. RÉSUMÉ La présente invention concerne uns ystème comprenant : un moteur de suivi de visage comprenant un réseau neuronal profond (DNN) pour localiser un visage dans une image d’entrée de visage ; et un générateur d’image d’entraînement pour produire une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement occluse où un objet occlusif est rendu sur le visage, soit une image d’entraînement non occluse montrant le visage sans l’objet occlusif, l’image d’entraînement étant produite pour l’entraînement DNN du visage occlus. Selon des modes de réalisation de l’invention, le système comprend une ou plusieurs des caractéristiques suivantes, prise isolément ou suivant toutes les combinaisons techniquement possibles : le système comprend en outre un composant d’entraînement pour entraîner un DNN de détection de visage occlus avec l’image d’entraînement ; le système comprend en outre un composant pour configurer un moteur de suivi de visage avec le DNN de détection de face occluse tel qu'entraîné de sorte que le moteur de suivi de visage classifie et localise des particularités faciales et classifie et/ou localise des objets occlusifs de visage ; le système comprend en outre un magasin de données stockant une pluralité d’images d’entrée de visage à utiliser avec le moteur de suivi de visage et le générateur d’image d’entraînement pour produire une pluralité d’images d’entraînement pour l’entraînement du DNN de visage occlus ; le générateur d’image d’entraînement est configuré pour produire aléatoirement l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, conformément à une probabilité choisie pour maximiser l’entraînement du DNN de masque facial ; la probabilité de produire l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, est une chance de 55 % ; le système comprend en outre un composant de rognage de visage configuré pour rogner le visage à partir de l’image d’entrée de visage en réaction à la localisation, et dans lequel le générateur d’image d'entraînement génère l’image d'entraînement en utilisant le visage tel que rogné ; l’objet occlusif pour le rendu comprend une image d’objet occlusif isolée avec un fond transparent ; avant de rendre l’objet occlusif sur le visage tel que localisé, le générateur d’image d’entraînement est configuré pour effectuer un ou plusieurs parmi : a. redimensionnement de l’objet occlusif sur le visage tel que localisé ; et b. augmentation de l’objet occlusif pour maximiser l'entraînement de DNN de masque facial ; et l’objet occlusif couvre au moins une portion du visage et dans lequel l’objet occlusif comprend l'un quelconque parmi un masque facial, des lunettes occlusives, un chapeau, un foulard, une main ou un ou plusieurs doigts, un smartphone, des cheveux ou une portion de l'un quelconque de ceux-ci. Il est proposé des systèmes, des méthodes et des dispositifs pour la détection d’objets et des systèmes, des méthodes et des dispositifs pour stabiliser le rendu d’effets tels qu’un effet de maquillage appliqué à une image faciale. Dans un mode de réalisation, il est proposé une méthode implémentée par ordinateur comprenant l'exécution par un ou plusieurs processeurs des étapes de : localisation d’un visage dans une image d’entrée de visage à l’aide d’un organe de suivi du visage comprenant un ou plusieurs réseaux neuronaux profonds (DNN pour Deep Neural Network) entraînés pour localiser des particularités faciales ; et production d'une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement occluse où un objet occlusif est rendu sur le visage, soit une image d’entraînement non occluse montrant le visage sans le masque facial, l’image d’entraînement étant produite pour un entraînement DNN du visage occlus. Dans un mode de réalisation, il est proposé un système comprenant : un moteur d'organe de suivi de visage comprenant un réseau neuronal profond (DNN) pour localiser un visage dans une image d’entrée de visage ; et un générateur d’image d’entraînement pour produire une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement occluse où un objet occlusif est rendu sur le visage, soit une image d’entraînement non occluse montrant le visage sans l’objet occlusif, l’image d’entraînement étant produite pour l’entraînement DNN de visage occlus. Dans un mode de réalisation, il est proposé une méthode implémentée par ordinateur comprenant l'exécution par un ou plusieurs processeurs des étapes de : localisation d’une particularité faciale dans une trame courante d’un jeu de trames d’un flux vidéo en utilisant un moteur de suivi du visage ayant un ou plusieurs réseaux neuronaux profonds (DNN) configurés pour traiter la trame courante pour prédire une localisation par organe de suivi de la particularité faciale ; génération d'un emplacement stabilisé courant pour la particularité faciale dans la trame courante, la génération étant réactive à l’emplacement d'organe de suivi et des emplacements stabilisés antérieurs de la particularité faciale dans des trames antérieures du flux vidéo ; et le rendu d'un effet sur la trame courante associée à la particularité faciale en réaction à l’emplacement stabilisé courant, l’effet simulant un produit d'essayage en tant que composant d’une expérience d’essayage virtuel. Dans un mode de réalisation, il est proposé un système comprenant : un moteur de suivi du visage ayant une circuiterie de calcul configurée pour localiser une particularité faciale dans une trame courante d’un jeu de trames d’un flux vidéo en utilisant un ou plusieurs réseaux neuronaux profonds (DNN) configurés pour traiter la trame courante pour prédire l’emplacement par l'organe de suivi d’une particularité faciale ; un composant stabilisateur ayant une circuiterie de calcul configurée pour générer un emplacement stabilisé courant pour la particularité faciale dans la trame courante, la génération étant réactive à l’emplacement d'organe de suivi et des emplacements stabilisés précédents de la particularité faciale dans des trames antérieures du flux vidéo ; et un composant de rendu ayant une circuiterie de calcul configurée pour rendre un effet à la trame courante associée à la particularité faciale en réaction à l’emplacement stabilisé courant, l’effet simulant un produit pour essayage en tant que composant d’une expérience d’essayage virtuel. Ces modes de réalisation et d’autres apparaîtront à une personne de compétence ordinaire dans l’art. La est un schéma fonctionnel montrant un pipeline d’entraînement incluant des composants pour générer des images d’entraînement synthétiques, conformément à un mode de réalisation. Les Figures 2A, 2B, 2C, 2D et 2E sont des illustrations d’images représentatives de visages incluant, respectivement, une image faciale, une image faciale rognée, deux images d’entraînement synthétiques et une image faciale avec des points faciaux conformément à des modes de réalisation. La est un organigramme d'opérations telles que pour une méthode implémentée par ordinateur conformément à un mode de réalisation. La est une illustration d’un environnement informatique, conformément à un mode de réalisation, tel que pour effectuer un essayage virtuel. La est un organigramme d'opérations telles que pour une méthode implémentée par ordinateur conformément à un mode de réalisation. La est une illustration d’un environnement informatique, conformément à un mode de réalisation, tel que pour effectuer un essayage virtuel. est un organigramme d'opérations telles que pour une méthode implémentée par ordinateur conformément à un mode de réalisation. DESCRIPTION DÉTAILLÉE Conformément aux présents modes de réalisation, il est proposé un ou plusieurs méthodes, appareils et techniques pour la localisation d’objet et la stabilisation d’objet. Ils peuvent être utilisés indépendamment ou ensemble. En ce qui concerne la localisation d'objet, il est décrit des méthodes, des appareils et des techniques décrits pour générer des données synthétiques et entraîner un modèle de réseau à l’aide de ces données synthétiques. Dans des modes de réalisation décrits ici, les classes d’objets, telles que pour la classification ou la classification et la localisation, sont diverses particularités faciales. Dans un mode de réalisation, de telles particularités comprennent un contour du visage, un nez, une bouche intérieure, une bouche extérieure, un œil gauche, un œil droit, un sourcil gauche et un sourcil droit. Dans un mode de réalisation, une classe supplémentaire d’objets inclut un masque facial tel qu’un masque porté pour réduire la transmission de particules en suspension dans l’air telles que des aérosols. Un masque facial peut occlure, en tout ou en partie, une ou plusieurs particularités faciales d’une image faciale. Des exemples de particularités faciales occluses, ou des parties de celles-ci, incluent un nez, une bouche intérieure, une bouche extérieure et un contour du visage (par exemple, des portions d’une mâchoire, d’un menton ou des deux). Dans des modes de réalisation ici, un ou plusieurs réseaux neuronaux profonds, par exemple en tant que composant d’un moteur de suivi de visage, classifient et localisent une image d’entrée pour y détecter des objets et déterminer les emplacements respectifs d’au moins certains des objets détectés. Dans un mode de réalisation, un premier réseau neuronal profond détermine si une face est présente et fournit une zone de délimitation, par exemple, avec laquelle rogner l’image d’entrée pour y localiser le visage. Dans un mode de réalisation, un second réseau neuronal profond classifie et localise une pluralité de particularités faciales (par exemple, chacun des objets détectés) dans une image faciale comprenant l’image d’entrée rognée. La localisation, dans un mode de réalisation d’un tel réseau, comprend l’identification de points faciaux définissant des contours généraux pour au moins certaines des particularités faciales détectées. Dans un mode de réalisation, par exemple, travaillant en parallèle et traitant la même image faciale rognée, un réseau neuronal profond supplémentaire classifie si un masque facial est présent ou non sur le visage rogné. Dans un mode de réalisation, la localisation du masque facial en soi n’est pas effectuée. Dans un mode de réalisation, le masque facial est localisé. Dans un mode de réalisation, par exemple, travaillant en parallèle et traitant la même image faciale rognée, mais au lieu de classifier, un réseau neuronal profond supplémentaire effectue une segmentation et fournit un masque de segmentation montrant où un masque facial est présent ou non sur le visage rogné. La classification, la localisation et/ou la segmentation des masques faciaux sont utiles, par exemple dans une application d'essayage virtuel de maquillage. Un effet à essayer peut être rendu par rapport à la classification et/ou à la localisation, par exemple, un non-rendu d'une partie ou la totalité du visage à rendre est occlus. Les résultats de la classification du masque facial peuvent être utilisés pour ne pas rendre du rouge à lèvres. Le rendu peut être relatif à une segmentation telle qu’un masque de segmentation pour un objet occlusif. Ainsi, dans un mode de réalisation, un moteur de suivi de visage peut produire un ou plusieurs résultats de classification, résultats de localisation et résultats de segmentation pour au moins certains des objets. Les résultats de localisation peuvent comprendre des points faciaux fournissant des contours, par rapport à une image traitée. La décrite ci-dessous illustre des points faciaux. Dans un mode de réalisation, tel que noté, des opérations de rendu ou un composant de rendu, tel qu’applicable aux méthodes et aux appareils, rendent une image de sortie avec un effet appliqué au visage en réaction à au moins certains des objets détectés dans l’image d’entrée. Dans des modes de réalisation, l’effet appliqué est un effet de maquillage, tel que, mais sans s'y limiter, un effet d'un produit de maquillage pour les yeux, les sourcils ou les lèvres. Dans des modes de réalisation, le rendu est un composant d’une expérience VTO pour un utilisateur. Dans certains exemples, un effet est rendu sur un ou plusieurs objets détectés. Un exemple est le rendu d’un effet de sourcil sur chaque sourcil et un autre est le rendu d’un effet de lèvres sur chaque lèvre. Typiquement les apparences de maquillage sont rendus de manière symétriques, sans en avoir besoin. Dans certains exemples, l’effet est rendu sur une région adjacente à ou sinon localisée par rapport à un ou plusieurs objets détectés. Un exemple est le rendu d’un effet de maquillage des yeux sur chaque paupière où chaque région de l'œil est généralement localisée au moins partiellement entre un œil détecté et une paire de sourcils détectée. Un autre exemple est le rendu du fard à joues ou d’autres produits de maquillage des joues sur une joue localisée, par exemple, par rapport au contour des yeux et du visage. Dans un mode de réalisation, tel que pour fournir une expérience VTO à partir d’un flux « en direct » de vidéo (par exemple, une vidéo selfie), chaque trame (ex : chaque image) de la vidéo est traitée pour détecter et localiser les objets, et pour rendre au moins un effet en réaction à un emplacement des objets détectés en fonction d’un produit ou service à essayer virtuellement. Ainsi, l’entrée peut comprendre une image selfie, qui peut comprendre une trame vidéo selfie. Dans des modes de réalisation, les emplacements respectifs pour au moins certains objets détectés sont dérivés de contours (par exemple, points faciaux) générés par le moteur de suivi de visage (par ex. un ou plusieurs réseaux neuronaux profonds ce celui-ci). Dans certains modes de réalisation, tels que lorsque l’image d’entrée est une trame courante d’une série de trames d’une vidéo, une opération ou un composant de stabilisation, tel qu’applicable aux méthodes et appareils, stabilise les emplacements respectifs d’au moins certains des objets détectés avant le rendu de l’effet. La stabilisation d’objet est décrite plus en détail ci-dessous. Détection d’objet Un exemple de réseau neuronal profond pour la détection d’objets est décrit dans Sandler et al., « MobileNetV2 : Inverted residuals and Linear Bottlenecks » (2018), publié le 13 janvier 2018, Computer Science, 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Une copie de cette publication est disponible au moment du dépôt sur arxiv.org/abs/1801,04381. Un réseau neuronal profond configuré conformément à cette publication est référencé ici comme un réseau neuronal profond MobileNetV2. Les réseaux neuronaux profonds MobilenetV2 sont eux-mêmes dérivés d’un détecteur monocoup antérieur, un exemple de réseau neuronal profond pour la détection d’objets dans Des images tel que décrit dans Liu, Wei, et al. "Ssd : Single shot multibox detector." Lors de la conférence européenne sur la vision par ordinateur, pp. 21-37. Springer, Cham, 2016. Une version antérieure a été publiée le 8 décembre 2015 sur arxiv.org, disponible au moment du dépôt sur arxiv.org/abs/1512,02325. Conformément à un présent mode de réalisation, un ou plusieurs réseaux neuronaux profonds sont configurés par exemple par le biais d’un entraînement pour détecter (dans une image) des particularités faciales, y compris un visage portant un masque facial ou un visage autrement occlus par un objet occlusif, où le réseau neuronal profond est adapté à partir d’un réseau neuronal profond MobilenetV2. Dans un mode de réalisation, les un ou plusieurs réseaux neuronaux profonds sont configurés pour classifier, localiser ou segmenter au moins un objet occlusif (par exemple, un masque facial ou d’autres objets tels que décrits ici). La est un pipeline d'entraînement 100 selon un mode de réalisation pour la définition d’un nouveau réseau neuronal profond, où le pipeline 100 inclut des composants pour générer des images d'entraînement pour l'entraînement du nouveau réseau neuronal profond. Dans un mode de réalisation, une image comprenant un visage (par exemple, une image faciale) 102 est fournie, comme à partir d’un magasin de données 103, à un organe de suivi du visage 104A incluant un ou plusieurs réseaux neuronaux profonds 106A (chacun peut avoir une dorsale de réseau neuronal profond MobileNetV2). Le magasin de données 103 peut comprendre une base de données ou une autre configuration de stockage qui stocke une pluralité d’images faciales différentes à utiliser pour entraîner et/ou mettre à l'essai des réseaux neuronaux profonds, par exemple. Le magasin de données 103 peut comprendre un magasin de données ouvert à disposition du public, un magasin de données propriétaire fermé et ou des magasins de données à la fois ouverts et fermés. L'organe de suivi de visage 104A est adapté pour suivre (çàd localiser) des classes d’objets relatifs à un visage, y compris un objet de visage lui-même. La sortie d’un tel organe de suivi de visage 104 comprend une zone de délimitation, un masque ou une autre structure pour obtenir une image faciale rognée 108. Dans l’image faciale rognée 108, par exemple, tout fond dans l’image faciale 102 est minimisé. La montre une image faciale représentative 102, comportant un visage 202 et un fond 204. Le fond peut comprendre d’autres portions du sujet ainsi que des portions non-sujet. Une zone de délimitation 206 affichée comme une boîte en pointillés montre les coordonnées pour définir une image rognée (par ex. 108), comportant le visage 202 et un contenu de fond réduit (partie du fond 204). La montre une image rognée représentative 108. Un générateur d’image d’entraînement 110 reçoit des images faciales rognées, telles que l’image rognée 108, et, conformément à sa configuration, génère des images d’entraînement, telles que l’image 114. Le générateur d’image d’entraînement 110, dans un mode de réalisation, génère une pluralité d’images d’entraînement pour chaque image faciale rognée qu’il reçoit. Bien que non montrées, les images d’entraînement, dans un mode de réalisation, sont stockées dans le magasin de données 103 comme pour une utilisation ultérieure. Dans un mode de réalisation, des images d’entraînement sont fournies pour former un réseau neuronal profond comme décrit plus en détail. Bien que décrites comme des images d’entraînement, elles peuvent comprendre des images d'essai dans un mode de réalisation. Dans un mode de réalisation, le générateur d’image d’entraînement 110 génère des images d’entraînement telles que par rendu d’un effet sur au moins certaines des images faciales rognées qu’il reçoit. Dans un mode de réalisation, l’effet est l’application d’un masque facial tel que par l’application d’une image de masque facial isolée 112 (par exemple à partir du magasin de données 103) via une opération de rendu. Le magasin de données 103 peut stocker une pluralité d’images de masque facial isolées. Les images de masque facial isolées, telles que l’image 112, peuvent comprendre une image graphique de réseau portable (par exemple, « .png ») d’un masque facial ou d’un autre format d’image utilisable, lorsque le fond est transparent. C’est-à-dire que lorsque le masque facial est appliqué sur une image faciale rognée, seul le masque facial occlut la portion de l’image rognée sur laquelle il est rendu et le fond transparent de l’image faciale permet à l’autre portion de l’image faciale rognée de rester visible. Dans un mode de réalisation, le générateur d’image d’entraînement 110 fonctionne pour : utiliser les coordonnées de points prédits/étiquetés pour ajouter l’image du masque facial sur les images faciales rognées pour générer des données synthétiques ; redimensionner l’image du masque facial avant application sur le visage rogné ; appliquer des augmentations telles qu'une rotation et une translation au masque dans au moins certaines des images d’entraînement générées pour garantir une diversité des données d’entraînement ; et générer certaines images d’entraînement sans masques, par exemple, de sorte qu’un pourcentage cible d’images incluent des masques, par exemple, 55 % de ces images d’entraînement incluent des masques. Dans un mode de réalisation, l'organe de suivi de visage 104A produit des données de localisation de particularités faciales, par exemple, des points faciaux pour un contour de visage. Un exemple est illustré sur la décrite davantage dans le présent document. Les points faciaux et/ou la zone de délimitation du visage peuvent être utiles pour redimensionner l’image du masque facial pour le visage détecté. Dans un mode de réalisation, le générateur d’image d’entraînement définit une pluralité d’images d’entraînement à partir d’une seule image faciale rognée, où la pluralité d’images d’entraînement comprend une ou plusieurs d'une image faciale rognée sans masque facial ajouté, d'une pluralité d’images faciales rognées chacune avec un masque facial différent ajouté et/ou chacune avec un masque facial ajouté de manière différente (par exemple, après rotation ou translation du masque facial). La montre une image d’entraînement 114A comprenant une image de masque 112A appliquée à l’image rognée de la . La montre une image d’entraînement 114B comprenant une image de masque 112A après rotation (par ex. retournée horizontalement) et translation. La peut également définir une image d’entraînement où aucun masque facial n’est inclus dans l’image. La montre un exemple de sortie 200 de l'organe de suivi du visage 104A comprenant une image faciale rognée 202 et des groupes 204 de points faciaux tels que des points faciaux de contour de visage 204A, des points faciaux de sourcils 204B, et les points faciaux de nez 204C, etc. La schématisation est celle d'une image faciale rognée annotée 202 avec les groupes de points faciaux à des fins d’illustration. La sortie de l'organe de suivi du visage ne doit pas nécessairement comprendre une image annotée et la sortie peut être des données séparées. Les points faciaux dans un groupe d'individus sont numérotés (par ex. 0, 1, 2...) et aident à définir le contour de l’objet détecté. L' organe 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 représente. Par exemple, un point particulier pourrait toujours se trouver au coin droit de la bouche. Dans un exemple, les points faciaux sont des coordonnées de pixels X,Y, par rapport à l’image faciale rognée 202 et sont associés à des objets détectés respectifs à partir (par ex. un ) des réseaux 106B de l'organe de suivi 104A. Les composants au-dessus de la ligne pointillée 116 tels que l'organe de suivi du visage 104A et le générateur d’image d’entraînement 110 sont utiles pour définir des images d’entraînement, y compris des images d’entraînement de masque facial et des images d’entraînement sans masque facial à partir des visages tels que localisés. Les images d’entraînement, telles que l’image 114, sont appliquées pour entraîner un réseau neuronal profond tel qu’un composant de l'organe de suivi de visage 104B avec un ou plusieurs réseaux neuronaux profonds 106B (chacun peut avoir une dorsale MobileNetV2 comme en 106A). Les composants 104B et 106B sont similaires aux composants 104A et 106A, mais incluent une configuration applicable pour classifier un objet de masque facial dans les images faciales. Les composants 104B et 106B sont également configurés dans une configuration d'entraînement applicable, par exemple, comme décrit dans la publication susmentionnée « MobileNetV2 : Inverted Residuals and Linear Bottlenecks”. Le réseau neuronal profond à entraîner pour la classification des masques faciaux peut être structuré de la même manière qu’un composant de réseau neuronal profond de l'organe de suivi facial 104A qui classifie (détecte) d’autres objets. Dans un mode de réalisation, le réseau neuronal profond pour la détection du masque facial n’a pas besoin de localiser le masque facial. Dans un mode de réalisation, le réseau neuronal profond pour la détection du masque facial localise et/ou segmente le masque facial et est donc configuré avec des structures appropriées pour l'entraînement et pour produire des résultats selon le cas. En d’autres termes, le réseau neuronal profond peut être configuré pour que l’entraînement segmente et produise un masque. Après l'entraînement, l'organe de suivi de visage 104B résultant avec son ou ses réseaux neuronaux profonds 106B, tel qu'entraîné, est mis à l'essai, par exemple en utilisant des images réelles de visages avec des masques faciaux. Après les cycles d'essai et d’entraînement, selon les besoins, l'organe de suivi de visage 104B résultant avec ses un ou plusieurs réseaux neuronaux profonds 106B tels qu’ils peuvent être configurés à partir d’une utilisation d’application en temps réel ou en direct (pas une configuration d’entraînement) est utile pour classifier des images faciales pour déterminer si un masque est présent ou non et/ou pour localiser/segmenter le masque facial. Il peut aussi s'agir de segmenter. De préférence, l'organe de suivi de visage 104B résultant avec son ou ses réseaux neuronaux profonds 106B classifie et localise également pour d’autres particularités faciales. Dans un mode de réalisation, l'organe de suivi de visage 104B résultant avec son ou ses réseaux neuronaux profonds 106B fournit un moteur pour localiser des particularités faciales telles qu’une utilisation dans une application fournissant une expérience VTO, décrite plus loin dans le présent document. Bien que les modes de réalisation de la soient décrits en référence à un ou plusieurs réseaux 106A ayant chacun une dorsale de réseau neuronal profond MobileNetV2, d’autres dorsales de réseau neuronal définies pour des tâches de localisation d’image peuvent former la dorsale de l'organe de suivi du visage et être adaptées de manière similaire, par exemple par le biais d’un entraînement avec des images synthétiques pour détecter la présence de masques faciaux (par exemple, classifier, localiser et/ou segmenter pour un objet occlusif). Bien que décrits en référence à la détection d’un masque facial qui occlut au moins une portion d’un visage, les méthodes, appareils et techniques présentés ici peuvent être adaptés, par exemple pour définir des données synthétiques et pour entraîner un réseau de détection de visage occlus pour détecter d’autres types d’occlusion faciale où au moins une partie du visage est occluse par un autre objet. Par exemple, la génération et l’entraînement de données synthétiques peuvent être effectués pour l’occlusion par des masques faciaux, l’occlusion par des lunettes de soleil/de nuit ou d’autres lunettes occlusives qui occluent une portion du visage, l’occlusion par des cheveux, l’occlusion par une écharpe, l’occlusion par un chapeau, l’occlusion par une main/un ou plusieurs doigts, l’occlusion par un smartphone (par exemple, par exemple, lorsqu’un selfie pris dans un miroir a une portion du smartphone qui recouvre le visage (réfléchi) sur l’image), etc. Pour une plus grande diversité de données d'entraînement, il peut être préférable d’inclure une diversité d’exemples d’objets qui sont appliqués aux visages – par exemple : différents exemples de types de lunettes occlusives, chapeaux, mains, (nombre de) doigts, smartphones, etc. Dans un mode de réalisation, le réseau de détection de visage occlus est configuré pour détecter plus d’une classe d’objet occlusif et est entraîné avec des images d’entraînement incluant des objets occlusifs pour chaque classe. Une telle détection de visage occlus peut également être configurée et entraîner à localiser ces objets, y compris une segmentation. La est un logigramme des opérations 300 comme pour une méthode implémentée par ordinateur. La méthode peut comprendre l’exécution par un ou plusieurs processeurs des étapes montrées sur la , par exemple. Dans un mode de réalisation 1 : le procédé comprend l’étape 302 qui montre la localisation d’un visage dans une image d’entrée de visage en utilisant un organe de suivi de visage comprenant au moins un réseau neuronal profond (DNN) formé pour localiser des particularités faciales ; et l’étape 304 qui montre la production d’une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement occluse où un objet occlusif est rendu sur le visage, soit une image d’entraînement non occluse montrant un visage sans l’objet occlusif, l’image d’entraînement étant produite pour l’entraînement DNN du visage occlus. Dans un mode de réalisation 2 : Le mode de réalisation 1 peut comprendre des opérations telles qu’à l’étape 306 qui montrent l’entraînement d’un DNN de détection de face occluse avec l’image d’entraînement. L'entraînement peut inclure un entraînement à la classification, la localisation et/ou la segmentation de l’objet occlusif. Dans un mode de réalisation 3 : L’objet occlusif dans le mode de réalisation 1 ou le mode de réalisation 2 couvre au moins une portion du visage et comprend l’un quelconque d’un masque facial, de lunettes occlusives, d’un chapeau, d’un foulard, d’une main ou de doigts, de cheveux, d’un smartphone ou d’une portion de ceux-ci. Dans un mode de réalisation 4 : pour l’un quelconque des modes de réalisation 1 à 3, le DNN de détection de face occluse comprend un DNN pré-entraîné pour classifier et localiser des particularités faciales de sorte que, lorsqu’il est entraîné, le DNN de détection de face occluse détecte la présence d’au moins un objet occlusif de visage et classifie et localise des particularités faciales. Dans un mode de réalisation 5 : pour l’un quelconque des modes de réalisation 1 à 4, les étapes 302 et 304 peuvent être répétées (non montrées) avec une pluralité d’images d’entrée de visage de différents visages pour produire une pluralité d’images d'entraînement pour l'entraînement de DNN de visage occlus. Dans un mode de réalisation 6 : pour l’un quelconque des modes de réalisation 1 à 5, la production de l’image d’entraînement produit aléatoirement l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, conformément à une probabilité choisie pour maximiser l’entraînement DNN de face occluse. Dans un mode de réalisation 7 : pour le mode de réalisation 6, la probabilité de produire l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, est une chance de 55 %. Dans un mode de réalisation 8 : pour l’un quelconque des modes de réalisation 1 à 7, la méthode comprend (par exemple entre les étapes 203 et 304 mais pas montrée) le rognage du visage à partir de l’image d’entrée de visage en réaction à la localisation et à la production de l’image d'entraînement en utilisant le visage tel que rogné. Dans un mode de réalisation 9 : pour l’un quelconque des modes de réalisation 1 à 8, l’objet occlusif pour le rendu comprend une image d’objet occlusif isolée avec un fond transparent. Dans un mode de réalisation 10 : pour le mode de réalisation 9, la méthode comprend, avant de rendre l’objet occlusif sur le visage tel que localisé, l’exécution d’un ou plusieurs parmi : redimensionnement de l’objet occlusif sur le visage tel que localisé ; et l'augmentation de l’objet occlusif pour maximiser l'entraînement DNN du masque facial. Il sera entendu que des modes de réalisation de système correspondants sont divulgués pour chacun des modes de réalisation 1 à 10, par exemple lorsque le système comprend des composants respectifs ayant une circuiterie de calcul configurée pour effectuer les opérations des modes de réalisation de méthode implémentée par ordinateur. La , à titre d’exemple, illustre un système tel qu’un ou plusieurs processeurs et/ou circuiterie de calcul fournissant des composants capables d’exécuter l’un quelconque des modes de réalisation de méthode 1 à 10. Par exemple, il est proposé un système comprenant : un moteur de suivi de visage comprenant un réseau neuronal profond (DNN) pour localiser un visage dans une image d’entrée de visage ; et un générateur d’image d’entraînement pour produire une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement de visage occlus où un objet occlus est rendu sur le visage, soit une image d’entraînement non occluse montrant le visage sans l’objet occlus, l’image d’entraînement produite pour l’entraînement DNN de visage occlus. Application VTO La est une illustration d’un environnement informatique 400, conformément à un mode de réalisation, tel que pour la mise en pratique d’un ou plusieurs aspects de méthode. L’environnement informatique 400 présente un dispositif informatique utilisateur 402, tel qu’un smartphone, un réseau de communication 404, un serveur 406 et un serveur 408. Le réseau de communication 404 comprend des réseaux filaires et/ou sans fil, qui peuvent être publics ou privés et peuvent inclure, par exemple, Internet. Le serveur 406 comprend un dispositif informatique de serveur tel que pour la mise à disposition d’un site Web. Le serveur 408 comprend un dispositif informatique de serveur tel que pour fournir des services de transaction de commerce électronique. Bien que montrés séparément, les serveurs 406 et 408 peuvent comprendre un seul dispositif serveur. L’environnement informatique est simplifié. Par exemple, des passerelles de transaction de paiement et d’autres composants tels que pour la finalisation d’une transaction de commerce électronique ne sont pas montrés. Le dispositif informatique 402 comprend un dispositif de stockage 410 (par exemple, un dispositif non transitoire tel qu’une mémoire et/ou un disque à circuits intégrés (SSD), etc.) pour stocker des instructions qui, lorsqu’elles sont exécutées par un processeur (non montré), amènent le dispositif informatique 402 à effectuer des opérations telles qu’une méthode implémentée par ordinateur. Le dispositif de stockage 410 stocke une application d'essayage virtuel 412 comprenant des composants tels que des modules logiciels fournissant une interface utilisateur 414, un organe de suivi du visage 104B avec un ou plusieurs réseaux neuronaux profonds 106B tels qu'entraînés conformément à la , un composant de pipeline de rendu VTO 416, un composant de recommandation de produit 418 avec des données de produit 420, et un composant d’achat 422 avec un panier 424 (par ex. des données d’achat). Dans un mode de réalisation, l’application VTO est une application Web telle qu’elle est obtenue à partir du serveur 406. Bien que non montré, le dispositif utilisateur 402 peut stocker un navigateur Web pour l’exécution de l’application VTO Web 412. Dans un mode de réalisation, l’application VTO 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 utilisateur 402. L’application native peut être configurée pour une communication basée sur le Web ou des communications similaires vers les serveurs 406 et 408, comme cela est connu. La montre diverses données ou informations d’entrée et de sortie associées à l’utilisation de l’application VTO 412, par exemple. Cela inclut une image d’entrée 426 de l’utilisateur à traiter pour une expérience VTO, une image de sortie 428 à laquelle des effets de produit sont simulés fournissant une expérience VTO, une sélection de produit VTO 430 comprenant une entrée utilisateur sélectionnant un ou plusieurs effets de produit à simuler, des options de produit VTO 432 comprenant des options pour les produits à essayer virtuellement, par exemple pour sélection par un utilisateur du dispositif 402, et des informations de transaction d’achat 434 comprenant des informations d’achat fournies à et/ou reçues d’un utilisateur pour acheter un produit. Dans un mode de réalisation, via une ou plusieurs interfaces utilisateur 414, des options de produit VTO 432 sont présentées pour sélection pour essayage virtuel en simulant des effets sur une image d’entrée 426. Dans un mode de réalisation, les options de produit VTO 432 découlent de ou sont associées aux données de produit 420. Dans un mode de réalisation, les données de produit peuvent être obtenues à partir du serveur 406 et fournies par le composant de recommandation de produit 418. Bien que non montré, l’utilisateur ou une autre entrée peuvent être reçus pour être utilisées afin de déterminer des recommandations de produits. L’utilisateur peut être invité, par exemple via l’une des interfaces 414, à fournir une entrée pour déterminer des recommandations de produit. Dans un mode de réalisation, le composant de recommandation de produit 418 communique avec le serveur 406. Le serveur 406, dans un mode de réalisation, détermine la recommandation d'après l’entrée reçue via le composant 418 et fournit des données de produit en conséquence. L’interface utilisateur 414 peut présenter les choix de produits VTO, par exemple, en mettant à jour l’affichage des ceux-ci en réaction aux données reçues lorsque l’utilisateur navigue ou sinon interagit 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 426, et une entrée de sélection de produit VTO 430 telle qu’une identification d’un ou plusieurs produits VTO recommandés à essayer. Dans un mode de réalisation, l’image d’entrée 426 est une 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 426 peut être reçue d’une caméra (non montrée) du dispositif 402 ou d’une image stockée (non montrée). L’image d’entrée 426 est fournie à l'organe de suivi de visage 104B, par exemple pour traitement afin de détecter des objets dans l’image faciale en utilisant un ou plusieurs réseaux neuronaux profonds 106B tels qu'entraînés. Dans un exemple, le réseau classifie, localise ou segmente un masque facial (ou un autre objet occlusif) dans l’image. Par exemple, la classification de la présence d’un masque facial est utile pour produire une requête (par ex. une instruction à un utilisateur, par exemple via les interfaces utilisateur 414), pour baisser ou retirer un masque facial. Ceci peut s’appliquer à tout objet occlusif pour lequel le moteur de suivi de visage est entraîné. Dans un mode de réalisation, la sortie (non montrée) de l'organe de suivi de visage 104B, telle que les résultats de classification, les résultats de localisation ou les résultats de segmentation pour un ou plusieurs objets détectés, est fournie au composant de pipeline de rendu VTO 416. Dans un exemple, la sortie peut comprendre une zone de délimitation et, comme le montre la , des points faciaux pour des objets détectés. L’image d’entrée 426 est également fournie (par ex. mis à disposition) au composant 416. La sélection de produit VTO 430 est également fournie au composant 416 pour déterminer les effets qui sont à rendre. Dans un mode de réalisation relatif à 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, etc. Le composant de pipeline de rendu VTO 416, dans un mode de réalisation, détermine s’il faut rendre un ou plusieurs effets de produit sur l’image d’entrée 426 pour simuler un essayage. Par exemple, en réaction à la sortie de classification du masque facial, le composant de pipeline de rendu VTO 416 peut déterminer de ne pas rendre un effet de produit, par exemple, parce qu’un masque est détecté. Lorsqu’un masque facial est détecté, par exemple, le composant de pipeline de rendu VTO 416 peut déclencher l’interface utilisateur 414 pour demander à l’utilisateur de retirer le masque facial. Une nouvelle image peut être reçue et traitée par l'organe de suivi du visage 104B. Dans un mode de réalisation, des images sont reçues en continu en tant que composant d’un flux en direct (par exemple, une vidéo selfie). Si le composant de pipeline de rendu VTO 416 détermine de rendre les un ou plusieurs effets de produit, dans un mode de réalisation, le composant de pipeline de rendu VTO 416 rend des effets sur l’image d’entrée 426, par exemple en dessinant (rendant) des effets en couches, une couche pour chaque effet de produit, pour produire une image de sortie 428. Des portions des opérations du composant pipeline rendu VTO 416 (ex : comme pour dessiner les couches) peuvent être réalisées par une unité de traitement graphique, dans un mode de réalisation. Le rendu est conforme aux données de produit 420 telles que sélectionnées par la sélection de produit VTO 430 et est réactif à l’emplacement d'objets détectés. Par exemple, une sélection de produit VTO d’un rouge à lèvres, d’un brillant à lèvres ou d’un autre produit relatif aux lèvres invoque l’application d’un effet sur un ou plusieurs objets détectés relatifs à la bouche ou aux lèvres à des emplacements respectifs. De même, une sélection de produits relatifs aux sourcils invoque l’application d’un effet de produit sélectionné aux objets de sourcils détectés. En général, pour des apparences symétriques, les mêmes effets sur les sourcils sont appliqués sur chaque sourcil, le même effet sur les lèvres ou le même effet sur les yeux sur chaque région des yeux, mais ceci n’est pas nécessaire. Dans un exemple, le rendu est appliqué à une région qui est relative aux objets détectés, comme un ou plusieurs objets adjacents détectés. Certaines sélections de produits VTO comprennent une sélection de plu d'un produit tels que des produits coordonnés pour les sourcils et les yeux ou d’autres combinaisons d’objets détectés. Le composant de pipeline de rendu VTO 416 peut rendre chaque effet, par exemple, un à 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 ex. un rouge à lèvres avant un brillant à lèvres. Dans un mode de réalisation où un objet occlusif est détecté et où l’emplacement est déterminé, par exemple, tel que représenté dans un masque de segmentation, le rendu peut être réactif à un tel masque de segmentation. Un rendu d’effet peut être appliqué sur des portions du visage qui ne sont pas occluses. Un masque de segmentation peut indiquer les pixels du visage qui sont disponibles pour (par ex : peuvent) recevoir un effet tel qu’un effet de maquillage et les pixels qui ne sont pas disponibles pour recevoir un effet. Les interfaces utilisateur 414 fournissent l’image de sortie 428. L’image de sortie 428, dans un mode de réalisation, est présentée comme une portion d’un flux en direct d’images de sortie successives (chacune comme l'exemple 428) telle que lorsqu’une vidéo selfie est augmentée pour présenter une expérience de réalité augmentée. Dans un mode de réalisation, l’image de sortie 428 est présentée conjointement avec l’image d’entrée 426, comme dans un affichage côte à côte à des fins de comparaison. Dans un mode de réalisation, l’image de sortie 428 peut être sauvegardée (non montré) telle que sur le dispositif de stockage 410 et/ou partagée (non montré) avec un autre dispositif informatique. Dans un mode de réalisation, (non montré), les images d’entrée comprennent des images d’entrée d’une session de vidéoconférence et les images de sortie comprennent une vidéo qui est partagée avec un (ou plusieurs) autre(s) participant(s) d’une session de vidéoconférence. Dans un mode de réalisation, l’application VTO est un composant ou un module d'extension d’une application de visioconférence (non montrée) permettant à l’utilisateur du dispositif 402 de porter du maquillage pendant une visioconférence avec un ou plusieurs autres participants à la conférence. Dans un mode de réalisation, tel que décrit plus en détail ci-dessous, le composant de pipeline de rendu VTO 416 est configuré pour appliquer une stabilisation d’objet pour stabiliser des emplacements respectifs d'objets détectés entre, par exemple, des trames successives d’une vidéo. La est un logigramme des opérations 500 comme pour une méthode implémentée par ordinateur. La méthode peut comprendre l’exécution par un ou plusieurs processeurs des étapes montrées sur la par exemple. Dans un mode de réalisation 11 : le procédé comprend : Une étape 502 qui montre le traitement d’une image d’entrée à l’aide d’un moteur de suivi de visage ayant au moins un réseau neuronal profond pour déterminer i) des particularités faciales à partir de l’image d’entrée pour rendre un effet et ii) une présence d’un objet occlusif occluant au moins une portion du visage ; et une étape 504 qui montre l’évitement du rendu d'au moins une portion de l’effet relatif à au moins une des particularités faciales détectées en réponse à la présence de l’objet occlusif tel que détecté. Mode de réalisation 12 : Dans le mode de réalisation 11, le procédé comprend au moins l’un parmi : i) la fourniture d'une interface de recommandation pour recommander un ou plusieurs produits de maquillage à essayer virtuellement, chacun des produits étant associés à un ou plusieurs effets à rendre en association avec une ou plusieurs particularités faciales ; et ii) la fourniture d'une interface de transaction d’achat pour faciliter l’achat de produits de maquillage. Mode de réalisation 13 : Dans le mode de réalisation 11 ou le mode de réalisation 12, le traitement de l’image d’entrée par le moteur de suivi du visage fournit une segmentation de l’objet occlusif et l’étape d'évitement du rendu d'au moins une portion de l’effet est réactive à la segmentation de sorte qu’au moins une portion de l’effet occlus par l’objet occlusif n’est pas rendue. Mode de réalisation 14 : Dans le mode de réalisation 13, le procédé comprend la fourniture d’une instruction via une interface utilisateur pour retirer l’objet occlusif afin de faciliter un rendu complet de l’effet. Mode de réalisation 15 : Dans l’un quelconque des modes de réalisation 11 à 14, le procédé comprend (par exemple : après l’étape d’évitement du rendu, par exemple en ne rendant aucun effet) la fourniture d'une instruction via une interface utilisateur pour retirer l’objet occlusif afin de faciliter le rendu. Mode de réalisation 16 : Dans l’un quelconque des modes de réalisation 11 à 15, le procédé comprend la réception et le traitement d’une image supplémentaire à l’aide du moteur de suivi de visage pour la détection de particularités faciales et la détection d’objet occlusif ; et le rendu de l’effet après que la présence de l’objet occlusif n’est plus détectée. Mode de réalisation 17 : Dans l’un quelconque des modes de réalisation 11 à 16, l’effet est un effet de maquillage et la méthode est effectuée dans le contexte d’opérations informatiques fournissant une expérience d’essayage virtuel. Il sera entendu que des modes de réalisation de système correspondants sont divulgués pour chacun des modes de réalisation 11 à 17, par exemple lorsque le système comprend des composants respectifs ayant une circuiterie de calcul configurée pour effectuer les opérations des modes de réalisation de méthode mise en œuvre par ordinateur. Stabilisation d’objet La localisation d’objets à l’aide d’un traitement par réseau neuronal profond peut entraîner une gigue ou autre instabilité entre les images. En d’autres termes, l’emplacement prévu d’un objet dans une première image par un DNN peut être perceptiblement différent de l’emplacement prévu du même objet dans une deuxième image par le DNN. Ceci est particulièrement perceptible lorsque les première et deuxième images sont deux trames successives d’une vidéo et qu’un effet est appliqué en réponse aux emplacements prédits. L’effet se déplace avec la gigue. Le suivi de l’objet entre des trames successives et le rendu d’un effet sur les trames d’entrée peuvent entraîner une gigue ou un mouvement qui ne semble pas concorder avec les trames d’entrée sous-jacentes lorsqu’elles sont affichées ensemble. Dans un mode de réalisation, une stabilisation est appliquée à la localisation d’un objet détecté produit par un traitement par DNN d’une trame courante. Dans un mode de réalisation, tel que pour fournir une expérience VTO à partir d’un flux « en direct » de vidéo (par exemple, une vidéo selfie), chaque trame (ex : sous forme d’images successives) de la vidéo est traitée pour détecter et localiser les objets, et pour rendre un effet conforme à un produit ou service à essayer virtuellement. L’effet est appliqué en un ou plusieurs emplacements ou régions relatifs à au moins un des objets détectés. Avant le rendu, les emplacements des objets détectés (par ex. au moins ceux associés aux effets) sont stabilisés pour lisser le suivi. Ces emplacements stabilisés sont utilisés pour rendre l’effet. L’effet peut être appliqué à un emplacement stabilisé pour un objet détecté (par ex. un emplacement stabilisé des sourcils), ou une région adjacente à un ou plusieurs objets détectés tels qu’une région de paupière adjacente à un emplacement stabilisé d’un œil détecté. Sur certaines images, par exemple lorsqu’un masque facial est porté, les objets ne sont pas tous localisés. Le traitement de stabilisation est gourmand en ressources. Selon un mode de réalisation, des objets détectés sont regroupés par importance pour la tâche : c’est-à-dire par importance à l’expérience VTO. Dans un mode de réalisation, des emplacements d'objets détectés relatifs à la bouche et aux yeux sont stabilisés à l’aide d’un mélange d’une prédiction d'organe de suivi à partir d’une image courante et d’une prédiction de flux optique pour l’image courante qui est réactive aux emplacements stabilisés dans une trame antérieure ; et des emplacements d'objets détectés relatifs aux sourcils, au nez et au contour du visage sont stabilisés à l’aide d’un filtre à moyenne mobile exponentielle en réaction à une vitesse nette des points faciaux d’un objet sur les n trames antérieures. Dans un mode de réalisation, les opérations de stabilisation comprennent : Obtenir une prédiction de points faciaux à partir d’un moteur de suivi de visage (par ex. 104A ou 104B) car la prédiction de l'organe de suivi se rapporte à une trame courante au moment d’une vidéo. La trame antérieure est au temps antérieur . La prédiction de l'organe de suivi comprend des emplacements des objets diversement détectés, par exemple, un jeu de points faciaux par objet détecté, comme selon la Figure 2E. La stabilisation vise à produire des points faciaux stabilisés par objet détecté pour une trame courante. Les points faciaux stabilisés (emplacement stabilisé) par objet détecté pour une trame antérieure produite par les opérations de stabilisation sont désignés par . Dans un mode de réalisation, les points faciaux reçus de l'organe de suivi du visage, tels que ceux représentant un contour d’objet comme le montre la Figure 2E sont regroupés par objet en groupes de points d'œil gauche, œil droit, sourcil gauche, sourcil droit, nez, bouche extérieure, bouche intérieure et contour du visage (par ex. un sous-jeu de pour chaque objet). Dans un mode de réalisation, les objets se voient attribuer une cotation d’importance qui, dans un mode de réalisation, est l’une des deux cotations (par exemple : importance supérieure/inférieure). Dans un mode de réalisation, la stabilisation d’un objet est effectuée en réponse à la cotation d’importance en utilisant un jeu d’opérations pour les objets de plus grande importance et un autre jeu d’opérations pour les objets de moindre importance. Dans un mode de réalisation, les opérations de stabilisation effectuées pour les objets de plus grande importance sont plus précises mais également plus gourmandes en ressources et/ou en traitement que les opérations effectuées pour des objets de moindre importance. Ainsi, les objets se voient attribuer une cotation d’importance qui équilibre la précision avec des critères de performance de dispositif (par ex. temps de traitement/utilisation mémoire, etc.). Dans un mode de réalisation, les objets œil gauche, œil droit, bouche extérieure et bouche intérieure se voient attribuer la cotation de plus grande importance et les objets sourcils gauche, sourcils droit, nez et contour du visage se voient attribuer la cotation de moindre importance. Dans un mode de réalisation, les yeux et les lèvres sont priorisés, par exemple, parce que de nombreux effets se rapportent aux yeux et aux lèvres. Pour les objets de plus grande importance : Appliquer une fonction de flux optique à uniquement pour les objets de plus grande importance à obtenir La fonction calcule un flux optique (par exemple, une vitesse d’image) pour une particularité clairsemée fixée en utilisant la méthode itérative de Lucas-Kanade avec pyramides (pyramide de trame antérieure et pyramide de trame courante). (Voir Bouguet, J.-Y. (1999). Pyramidal implementation of the Lucas Kanade feature tracker. Au moment du dépôt, disponible sur semanticscholar.org). Il sera entendu que pour qu'un objet particulier représente les points faciaux prédits pour l’objet pour la trame courante en réaction aux points faciaux stabilisés (emplacements) produits pour l’objet dans la trame antérieure. Dans un mode de réalisation mis en œuvre avec une fonction de flux optique par OpenCV, les points pour tous les objets de plus grande importance sont fournis ensemble, par exemple, plutôt que de traiter chaque objet séparément. Pour les objets de plus grande importance : Mélanger à l’aide de blendingfactor et corriger si la distance entre l’emplacement d'organe de suivi et l’emplacement de optoflow est au-dessus d'un seuil : À intervalles réguliers, fixer Les intervalles réguliers peuvent être basés sur le temps ou un décompte de trames (par ex. équivalent temps approximatif), par ex. toutes les 1,3 seconde ou toutes les 40 trames. Le temps peut être préféré pour la cohérence car le décompte de trames par rapport au temps approximatif dépend de la vitesse de traitement. Sur chaque trame, exécuter . Le facteur de mélange est utilisé pour contrôler le mélange entre et et est réinitialisé sur la s tartValue (par ex. 0,4) pour éviter d’avoir une dérive trop éloignée de . Au fil du temps, les points optflow et les points d'organe de suivi de visage peuvent dériver. Si le mélange produit un changement brusque, alors le mélange pourrait conduire à un résultat discordant. Pour chaque groupe de points de mélange (œil gauche, œil droit, bouche intérieure, bouche extérieure) : 4.a. Mélange basé sur : 4.b. Mélanger en fonction de la distance – comparer les distances en pixels entre des points faciaux correspondants de et . Pour l’objet bouche, par exemple, comparez le coin du point facial de la bouche de au même point facial de si et sont trop éloignés, mélanger vers : où est un facteur de normalisation pour la distance au point et est utilisé pour rendre les petites valeurs encore plus petites. Par exemple, est de 5 pixels dans un mode de réalisation. 5. Pour les objets de moindre importance : Appliquer un filtre à moyenne mobile exponentielle sur les points du sourcil gauche, du sourcil droit, du nez et du contour du visage. 5.a. Pour chaque groupe, la vitesse nette est calculée et moyennée sur les trames antérieures. Dans un mode de réalisation, le calcul de vitesse utilise les points d'organe de suivi pour la trame antérieure et la trame courante et , et n’utilise pas les points stabilisés pour la trame antérieure. Ces points de stabilisation sont finalement utilisés lors de l’application du mélange déterminé à l’aide du résultat du calcul de vitesse. Cela s’explique par le fait que l’utilisation des points d'organe de suivi permettrait aux opérations de capter plus rapidement des changements de vitesse, plutôt que d’utiliser les points stabilisés. 5.b. Les coordonnées de points faciaux mises à jour sont calculées à l’aide d’un facteur de mélange : où est une constante qui contrôle l’impact de , et vaut 1,5 par défaut. Ainsi, en relation avec les opérations de mélange 4.a et 4.b, une forme d’interpolation linéaire est réalisée pour chacun des groupes yeux et bouche respectivement (c’est-à-dire pour des particularités faciales respectives du groupe le plus important de particularités faciales). En particulier, les deux emplacements (emplacement d'organe de suivi et emplacement de optoflow (deuxième emplacement)) pour un point facial respectif dans l’image courante sont mélangés en fonction d’un facteur de mélange. Le facteur de mélange pondère la contribution de chacun de l'emplacement d'organe de suivi et de l'emplacement de optoflow pour produire un premier résultat mélangé. Une seconde opération de mélange produisant l’emplacement stabilisé courant et est réactive à la distance entre les deux emplacements (ex : une distance entre des coordonnées en pixels de points faciaux respectifs de l’emplacement d'organe de suivi et les points faciaux correspondants du deuxième emplacement d'organe de suivi) et un facteur de normalisation de la distance pour déplacer le premier résultat de mélange vers l’emplacement d'organe de suivi. Ainsi, le facteur de mélange mélange initialement l’emplacement d'organe de suivi et l’emplacement de optiflow en faveur de l’emplacement de optiflow , lui-même basé sur les emplacements stabilisés précédents ; et applique une correction si les deux emplacements sont suffisamment éloignés, et génère l’emplacement stabilisé courant à partir du premier résultat mélangé tel que déplacé vers l’emplacement d'organe de suivi. Dans un mode de réalisation, le facteur de mélange pour le premier résultat de mélange varie (décroît) d’une quantité max., pendant une période (ex : une série de trames ou pendant une durée définie), puis le facteur de mélange est réinitialisé à la quantité max. Au fur et à mesure que le facteur de mélange décroît, l’emplacement de optiflow est de plus en plus préféré dans le mélange. La réinitialisation sert à réaligner le mélange pour peu que les emplacements aient dérivé. Pour le seuil de mélange basé sur la distance, dans un mode de réalisation, le facteur de normalisation de la distance est de 5 pixels. Ainsi, en relation avec les opérations 5.a et 5.b effectuées pour chacun des groupes les moins importants (arcs, contour du nez et du visage), un filtre à moyenne mobile exponentielle est appliqué. Dans le filtre à moyenne mobile exponentielle, les opérations n’utilisent que les points des trames précédente et courante. Les points de trame précédente contiennent implicitement des informations provenant des trames plus anciennes en raison de l’application itérative de la stabilisation à travers les trames. Dans une approche alternative, non montrée, une fenêtre des valeurs d'emplacement antérieures est déterminée et moyennée. Par exemple, des points de la trame courante et des N trames antérieures (par exemple, N = 3), pour un total de N + 1 trames, peuvent être utilisés. Le point résultant est calculé comme une moyenne des points à travers les N + 1 trames. La moyenne peut être une moyenne pondérée, par exemple avec un poids plus élevé sur les trames plus récentes. Le poids peut en outre être influencé par la vitesse. Par exemple, une vitesse plus élevée pourrait placer un poids encore plus important sur la trame la plus récente. Cependant, n’importe quelle méthode de lissage des données de séries chronologiques pourra être utilisée comme alternative. Un autre exemple pourrait être un filtre de Kalman, qui essaie d’estimer l’état courant en modélisant la dynamique du système (comme la prédiction du point courant à l’aide de la vitesse passée) et en combinant cette prédiction avec la mesure courante (le point d'organe de suivi). La est une illustration d’un environnement informatique 600, conformément à un mode de réalisation. L’environnement informatique 600 est similaire à l’environnement 400, néanmoins l’application VTO 602 diffère de l’application VTO 412 dans la mesure où l’application VTO 602 comporte un composant de stabilisation 604. Bien qu’il soit montré comme un composant inclus dans le composant de pipeline de rendu VTO 606, le composant de stabilisation 604 peut être un composant distinct. Le composant de pipeline de rendu VTO 606 est similaire au composant 416, mais inclut la stabilisation des emplacements d’objection détectés pour des effets de rendu relatifs aux emplacements stabilisés. Dans un mode de réalisation, les opérations de stabilisation de composant 604 sont configurées comme décrit en référence aux étapes 1 à 5 ci-dessus. L’application VTO 602 comprend l'organe de suivi du visage 104B avec son ou ses réseaux neuronaux profonds 106B qui est configuré pour une classification, une localisation ou une segmentation de masque facial, de manière à détecter la présence d’un masque facial (ou d’un autre objet occlusif) dans une image faciale. Dans un mode de réalisation, l’application VTO pourrait comprendre un organe de suivi de visage avec un ou plusieurs réseaux neuronaux profonds qui localisent des particularités faciales mais sans détecter la présence d’un masque facial (ou d’un autre objet occlusif), par exemple, similaire à l'organe de suivi de visage 104A. La est un logigramme d'opérations 700 comme pour une méthode implémentée par ordinateur. La méthode peut comprendre l’exécution par un ou plusieurs processeurs des étapes montrées sur la , par exemple. Dans un mode de réalisation 18 : le procédé peut comprendre l’étape 702 de localisation d’une particularité faciale dans une trame courante d’un jeu de trames d’un flux vidéo en utilisant un moteur de suivi de visage ayant un ou plusieurs DNN configurés pour traiter la trame courante pour prédire l’emplacement d’un organe de suivi de la particularité faciale ; l’étape 704 qui montre la génération d’un emplacement stabilisé courant pour la particularité faciale dans la trame courante, la génération étant réactive à l’emplacement d'organe de suivi et les emplacements stabilisés antérieurs de la particularité faciale dans des trames antérieures du flux vidéo ; et l’étape 706 qui montre le rendu d’un effet sur la trame courante associée à la particularité faciale en réaction à l’emplacement stabilisé courant, l’effet simulant un produit à essayer en tant que composant d’une expérience d’essayage virtuel. Bien que non montrées, les opérations peuvent inclure la fourniture de la trame et de l’effet courants tels qu’ils sont rendus (par exemple, comme image de sortie) pour présentation. Mode de réalisation 19 : Dans le mode de réalisation 18, le procédé comprend au moins l’un des éléments suivants : i) la fourniture d'une interface de recommandation pour recommander un ou plusieurs produits de maquillage à essayer virtuellement, chacun des produits associés à un ou plusieurs effets à rendre en association avec une ou plusieurs particularités faciales ; et ii) la fourniture d'une interface de transaction d’achat pour faciliter l’achat de produits de maquillage. Mode de réalisation 20 : Dans le mode de réalisation 18 ou 19, la méthode localise une pluralité de particularités faciales et la pluralité de particularités faciales sont regroupées par une cotation d’importance associée à l’expérience d’essayage virtuel pour définir un groupe plus important de particularités faciales et un groupe moins important de particularités faciales et dans lequel des emplacements stabilisés courants respectifs pour la pluralité de particularités faciales sont déterminés en réaction à la cotation d’importance pour choisir entre différentes opérations de stabilisation afin d’équilibrer la précision avec des critères de performance de dispositif. Mode de réalisation 21 : Dans le mode de réalisation 20, la pluralité de particularités faciales comprend un objet œil gauche, un objet œil droit et au moins un objet bouche regroupés comme des particularités faciales plus importantes et un objet sourcil gauche, un objet sourcil droit, un objet nez et un objet contour du visage regroupés comme des particularités faciales moins importantes. Mode de réalisation 22 : Dans l’un quelconque des modes de réalisation 18 à 21, la génération de l’emplacement stabilisé courant comprend l’une des opérations suivantes : opération (a) : mélange de l’emplacement d'organe de suivi et d’un deuxième emplacement pour l’élément facial dans la trame courante en utilisant une interpolation linéaire, le deuxième emplacement prédit étant réactif à un flux optique déterminé pour la particularité faciale en utilisant l’emplacement d'organe de suivi et un emplacement stabilisé précédent pour la particularité faciale dans une structure immédiatement antérieure ; ou opération (b) l'application d'un moyennage à l’emplacement d'organe de suivi et à l’emplacement stabilisé précédent de la particularité faciale, le moyennage étant réactif à une vitesse moyenne déterminée à partir de l’emplacement d'organe de suivi et des emplacements d'organe de suivi antérieurs respectifs pour la particularité faciale sur un jeu de trames antérieures. Mode de réalisation 23 : Dans le mode de réalisation 22 : la méthode localise une pluralité de particularités faciales et la pluralité de particularités faciales sont regroupées par une cotation d’importance associée à l’expérience d’essayage virtuel pour définir un groupe plus important de particularités faciales et un groupe moins important de particularités faciales ; pour une particularité faciale individuelle du groupe plus important, l’emplacement stabilisé courant est généré selon l’opération (a) ; pour une particularité faciale individuelle du groupe moins important, l’emplacement stabilisé courant est généré selon l’opération (b) ; et le rendu rend un ou plusieurs effets associés à au moins une partie de la pluralité de particularités faciales en utilisant des emplacements stabilisés courants respectifs. Mode de réalisation 24 : Dans le mode de réalisation 21 ou 22 : l’opération (a) comprend, en ce qui concerne une particularité faciale particulière à stabiliser sur un jeu de trames incluant le trame courante et la trame immédiatement précédente : le mélange de points faciaux respectifs de l’emplacement d'organe de suivi avec des points faciaux respectifs correspondants du second emplacement selon un facteur de mélange qui pondère la contribution de chacun de l'emplacement d'organe de suivi et du second emplacement pour produire un premier résultat mélangé ; et en outre le mélange du premier résultat de mélange et des points faciaux respectifs de l’emplacement d'organe de suivi pour produire la position stabilisée courante en fonction d’une distance entre des coordonnées de pixels de points faciaux respectifs de l’emplacement d'organe de suivi et des points faciaux correspondants du deuxième emplacement d'organe de suivi, le mélange supplémentaire déplaçant le premier résultat mélangé vers l’emplacement d'organe de suivi en réponse à un facteur de normalisation de distance. Mode de réalisation 25 : Dans le mode de réalisation 24, le procédé comprend l’initialisation du facteur de mélange à une quantité maximale, à chaque trame à traiter, la diminution du facteur de mélange, l’utilisation du facteur de mélange tel que dégradé lors du mélange, et la réinitialisation périodique du facteur de mélange à la quantité maximale. Il sera entendu que des modes de réalisation de système correspondants sont divulgués pour chacun des modes de réalisation 18 à 25, par exemple lorsque le système comprend des composants respectifs ayant une circuiterie de calcul configurée pour effectuer les opérations des modes de réalisation de méthode mise en œuvre par ordinateur. En plus des aspects dispositif informatique et méthode, l'homme du métier comprendra que des aspects produit de programme d'ordinateur sont divulgués, où des instructions sont stockées dans un dispositif de stockage non transitoire (par ex. une mémoire, CD-ROM, DVD-ROM, disque, etc.), lesquelles, lorsqu’elles sont exécutées, amènent un dispositif informatique à effectuer l’un quelconque des aspects méthode stockés ici. Bien que les dispositifs informatiques soient décrits en référence aux processeurs et aux instructions qui, lorsqu’elles sont exécutées, amènent les dispositifs informatiques à effectuer des opérations, il est entendu que d’autres types de circuiterie que les processeurs programmables peuvent être configurés. Des composants matériels comprenant des circuits spécifiquement conçus peuvent être utilisés, tels que, notamment, un circuit intégré spécifique à l’application (ASIC) ou d’autres matériels conçus pour exécuter des fonctions spécifiques, qui peuvent être plus efficaces qu’une unité centrale de traitement (CPU) à usage général programmée à l’aide d’un logiciel. Ainsi, un aspect appareil se rapporte ici généralement à un système ou dispositif ayant une circuiterie (parfois des références à une circuiterie de calcul) qui est configurée pour effectuer certaines opérations décrites dans le présent document, telles que, notamment, celles d’un aspect méthode dans le présent document, que la circuiterie soit configurée via la programmation ou via sa conception matérielle. La mise en œuvre pratique peut inclure tout ou partie des caractéristiques décrites dans le présent document. Ces aspects, particularités et diverses combinaisons, ainsi que d’autres, peuvent être exprimés sous forme de méthodes, 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 déroger à l’esprit et à la portée des procédés et techniques décrits ici. De plus, d’autres étapes peuvent être fournies, ou des étapes peuvent être supprimé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 suivantes. Tout au long de la description et des revendications de la présente spécification, les termes « comprendre » et « contenir » et leurs variations signifient « comprenant mais sans s'y limiter » et ne visent pas à exclure (et ne le font pas) d’autres composants, entiers ou étapes. Les fonction, caractéristiques, entiers, composés, unités 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 (comprenant les revendications, l'abrégé et les dessins annexés), et/ou toutes les étapes de toute méthode ou procédé 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 précédents. L’invention s’étend à toute particularité nouvelle, ou toute combinaison nouvelle, des particularités divulguées dans le présent mémoire descriptif (comprenant toute revendication, l'abrégé et tout dessin annexés) ou à toute particularité nouvelle, ou toute combinaison nouvelle, des étapes de toute méthode ou de tout procédé divulgué. Système comprenant : un moteur de suivi de visage comprenant un réseau neuronal profond (DNN) pour localiser un visage dans une image d’entrée de visage ; et un générateur d’image d’entraînement pour produire une image d’entraînement comprenant le visage tel que localisé, l’image d’entraînement comprenant soit une image d’entraînement occluse où un objet occlusif est rendu sur le visage, soit une image d’entraînement non occluse montrant le visage sans l’objet occlusif, l’image d’entraînement étant produite pour l’entraînement DNN du visage occlus. Système selon la revendication 1, comprenant en outre un composant d’entraînement pour entraîner un DNN de détection de visage occlus avec l’image d’entraînement. Système selon la revendication 2, comprenant en outre un composant pour configurer un moteur de suivi de visage avec le DNN de détection de face occluse tel qu'entraîné de sorte que le moteur de suivi de visage classifie et localise des particularités faciales et classifie et/ou localise des objets occlusifs de visage. Système selon la revendication 1, comprenant en outre un magasin de données stockant une pluralité d’images d’entrée de visage à utiliser avec le moteur de suivi de visage et le générateur d’image d’entraînement pour produire une pluralité d’images d’entraînement pour l’entraînement du DNN de visage occlus. Système selon la revendication 1, dans lequel le générateur d’image d’entraînement est configuré pour produire aléatoirement l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, conformément à une probabilité choisie pour maximiser l’entraînement du DNN de masque facial. Système selon la revendication 5, dans lequel la probabilité de produire l’image d’entraînement occluse, au lieu de l’image d’entraînement non occluse, est une chance de 55 %. Système selon la revendication 1, comprenant en outre un composant de rognage de visage configuré pour rogner le visage à partir de l’image d’entrée de visage en réaction à la localisation, et dans lequel le générateur d’image d'entraînement génère l’image d'entraînement en utilisant le visage tel que rogné. Système selon la revendication 1, dans lequel l’objet occlusif pour le rendu comprend une image d’objet occlusif isolée avec un fond transparent. Système selon la revendication 8, dans lequel, avant de rendre l’objet occlusif sur le visage tel que localisé, le générateur d’image d’entraînement est configuré pour effectuer un ou plusieurs parmi : a. redimensionnement de l’objet occlusif sur le visage tel que localisé ; et b. augmentation de l’objet occlusif pour maximiser l'entraînement de DNN de masque facial. Système selon la revendication 1, dans lequel l’objet occlusif couvre au moins une portion du visage et dans lequel l’objet occlusif comprend l'un quelconque parmi un masque facial, des lunettes occlusives, un chapeau, un foulard, une main ou un ou plusieurs doigts, un smartphone, des cheveux ou une portion de l'un quelconque de ceux-ci.