FR3066304A1 - Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes - Google Patents

Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes Download PDF

Info

Publication number
FR3066304A1
FR3066304A1 FR1754270A FR1754270A FR3066304A1 FR 3066304 A1 FR3066304 A1 FR 3066304A1 FR 1754270 A FR1754270 A FR 1754270A FR 1754270 A FR1754270 A FR 1754270A FR 3066304 A1 FR3066304 A1 FR 3066304A1
Authority
FR
France
Prior art keywords
user
image
camera
repository
virtual scene
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
FR1754270A
Other languages
English (en)
Inventor
Jeremy Lacoche
Thomas Boggini
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.)
B Com SAS
Original Assignee
B Com SAS
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 B Com SAS filed Critical B Com SAS
Priority to FR1754270A priority Critical patent/FR3066304A1/fr
Publication of FR3066304A1 publication Critical patent/FR3066304A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

L'invention concerne un procédé de composition d'une image d'un utilisateur (U1) immergé dans une scène virtuelle, ledit utilisateur étant placé dans un espace réel, au moins une caméra étant agencée de façon connue et de telle sorte que l'utilisateur soit placé dans un champ de ladite caméra, le procédé comprenant les étapes suivantes : - Segmentation (E2) d'un contour de l'utilisateur dans une image (IE) d'intensités de couleurs acquise par la caméra ; - Obtention (E4) par suivi d'une position et d'une orientation d'au moins un point clé (PC1) de l'utilisateur dans un référentiel de l'espace réel, dit « référentiel monde » ; - Construction (E5) d'un volume (VE) englobant l'utilisateur dans le référentiel monde à partir du au moins un point clé obtenu et d'un modèle prédéterminé ; - Construction (E8) d'une carte de profondeur (CP) de l'utilisateur par projection perspective du volume construit dans un référentiel d'une plan image de la caméra et écriture des valeurs de profondeurs des points du volume projetés à l'intérieur du contour segmenté. - Composition (E11) d'une image de sortie (IS) à partir de l'image segmentée de l'utilisateur et d'une projection perspective de la scène virtuelle dans le référentiel de du plan image de la caméra à l'aide de la carte de profondeur construite.

Description

Procédé de composition d'une image d'un utilisateur immergé dans une scène virtuelle, dispositif, équipement terminal, système de réalité virtuelle et programme d'ordinateur associés 1. Domaine de l'invention
Le domaine de l'invention est celui de la réalité virtuelle, en particulier de l'immersion d'un ou plusieurs utilisateurs équipés d'un visiocasque (pour « head-mounted display », en anglais) dans une scène virtuelle. L'invention peut notamment, mais non exclusivement, s'appliquer au cas d'un système de réalité virtuelle comprenant un espace réel dans lequel plusieurs utilisateurs peuvent physiquement cohabiter et partager, grâce à leur visiocasque, un même environnement virtuel collaboratif. 2. Présentation de l'art antérieur
Lorsqu'un utilisateur est immergé dans une scène virtuelle affichée sur l'écran de son visiocasque, il n'a pas de perception de lui-même ni d'éventuels autres utilisateurs, ce qui peut perturber son expérience immersive.
Pour remédier à cet inconvénient, il est commun dans l'état de l'art de représenter les autres utilisateurs par des avatars. En revanche, cette méthode ne permet pas de reconnaître facilement un utilisateur donné, n'est pas très réaliste et peut même s'avérer dérangeante.
On connaît aussi du document de Suma et al. Intitulé « Sharing Space in Mixed and Virtual Reality Environments Using a low-Cost Depth Sensor », publié par la conférence IEEE International Symposium on Virtual Innovation, à Singapour, en mars 2011, une méthode permettant à un utilisateur placé dans un environnement réel connu et immergé dans une scène virtuelle de percevoir un autre utilisateur placé dans le même environnement réel et immergé dans la même scène virtuelle que lui. L'approche proposée consiste à placer une caméra RGB-D sur le casque de réalité augmentée de l'utilisateur selon la direction de son regard, et à acquérir une image couleur et une image de profondeur de l'autre utilisateur. Un nuage de points 3D de la scène réelle est construit à partir de ces images. Le nuage de points obtenu est positionné dans la scène virtuelle par rapport à la position du capteur de profondeur de la caméra. Cette position est connue car elle est relative à la position du casque de réalité virtuelle sur lequel la caméra est positionnée, la position du casque étant suivie par un système de suivi, par exemple par infra-rouge. Une segmentation du nuage de points est mise en œuvre à partir d'informations connues de l'environnement réel (hauteur sol, plafond). Le nuage de points est ensuite projeté dans le plan image du casque via une projection perspective. La gestion des occultations entre la silhouette segmentée du deuxième utilisateur et des éléments de la scène virtuelle est implicite puisque ce nuage de points est positionné dans un référentiel 3D de la scène.
Un avantage de cette méthode est que les cartes de profondeur permettent de gérer facilement d'éventuelles occultations entre la silhouette segmentée du deuxième utilisateur et des objets de la scène virtuelle.
Un inconvénient de cette méthode est que les caméras de profondeur produisent des cartes de profondeur dont la précision chute lorsque la distance entre l'utilisateur et la caméra augmente, typiquement à partir de 4 ou 5 mètres ou bien quand elle devient petite, typiquement en deçà de 0,80 mètres, ce qui a un fort impact sur la qualité de la segmentation, en particulier des mains.
On connaît enfin du document publié sous le numéro US2008/0030429 un système de réalité virtuelle, qui, bien que dépourvu de caméra de profondeur, génère une image de rendu qui mixe une image segmentée d'une partie du corps d'un utilisateur équipé d'un visiocasque, par exemple ses jambes, avec la scène virtuelle. De cette manière, l'utilisateur garde une perception de son propre corps dans l'environnement virtuel.
Un inconvénient de cette deuxième solution est que l'image réelle est placée au premier plan de la composition, ce qui peut convenir pour les jambes, mais risque de poser un problème avec les mains en créant un sentiment d'inconfort chez l'utilisateur en cas d'incohérence entre une occultation mal gérée et sa perception de la perspective (perception binoculaire). En outre, cette méthode ne permet pas d'offrir une perception correcte d'autres utilisateurs présents dans le même espace réel. 3. Objectifs de l'invention L'invention vient améliorer la situation. L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur.
Plus précisément, un objectif de l'invention est de proposer une solution qui permette d'insérer l'image segmentée d'un utilisateur dans une scène virtuelle de façon simple et efficace, en gérant les occultations éventuelles avec des objets de la scène virtuelle.
Un autre objectif de l'invention est de proposer une solution qui soit robuste aux variations de distance entre la caméra et l'utilisateur. 4. Exposé de l'invention
Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé de composition d'une image d'un utilisateur immergé dans une scène virtuelle, ledit utilisateur étant placé dans un environnement réel, au moins une caméra étant agencée de façon connue et de telle sorte que l'utilisateur soit placé dans un champ de ladite caméra, le procédé comprenant les étapes suivantes :
Segmentation d'un contour de l'utilisateur dans une image d'intensités de couleurs acquise par la caméra ;
Obtention d'une position et d'une orientation d'au moins un point clé de l'utilisateur dans un référentiel de la scène réelle, dit référentiel monde ;
Construction d'un volume englobant l'utilisateur dans le référentiel monde à partir du au moins un point clé obtenu ;
Construction d'un masque de profondeur de l'utilisateur par projection du volume construit dans un référentiel d'un plan image de la caméra et écriture des valeurs de profondeur des points du volume projeté à l'intérieur du contour segmenté ; et
Composition d'une image de sortie à partir de l'image segmentée de l'utilisateur et d'une projection perspective de la scène virtuelle dans le référentiel du plan image de la caméra à l'aide de la carte de profondeur construite. L'invention propose une solution robuste et efficace pour réaliser la composition d'une image réelle d'un utilisateur et de la scène virtuelle dans laquelle il est immergé. Elle s'appuie sur une approche tout-à-fait nouvelle et inventive qui consiste à segmenter la silhouette de l'utilisateur dans l'image réelle et à construire, selon la perspective de la caméra qui a acquis l'image réelle, une carte de profondeur d'un volume englobant l'utilisateur limitée aux points du volume correspondant à l'intérieur de sa silhouette segmentée. Cette carte de profondeur est ensuite exploitée pour positionner l'image segmentée de l'utilisateur devant ou derrière les éléments projetés de la scène virtuelle et composer ainsi une vue de l'utilisateur inséré dans la scène virtuelle.
Le volume englobant reste donc invisible dans l'image de composition finale, car il n'intervient que pour construire la carte de profondeur associée à l'image de la silhouette segmentée de l'utilisateur.
Contrairement à l'art antérieur basé sur une caméra de profondeur, la solution de l'invention ne voit pas ses performances décroître lorsque la distance entre l'utilisateur et la caméra augmente ou diminue très fortement. En outre, elle produit, grâce à la connaissance préalable de l'espace réel dans lequel évolue l'utilisateur, une segmentation de cet utilisateur réalisée en temps réel et avec une bonne qualité.
En combinant de façon astucieuse les informations issues de la segmentation d'une image 2D produite par la caméra à celles d'un volume englobant de l'utilisateur dans la scène virtuelle, elle construit une carte de profondeur simplifiée de la scène vue par la caméra, qui permet de gérer les occultations entre objets virtuels et réels de façon peu complexe et efficace.
Selon un aspect de l'invention le procédé comprend une étape de construction d'une image masque de l'utilisateur par écriture d'une première valeur pour un élément d'image situé sur ou à l'intérieur du contour et d'une deuxième valeur, distincte de la première, pour un élément d'image situé à l'extérieur du contour et la carte de profondeur est construite par écriture des valeurs de profondeurs du volume englobant projeté aux positions des éléments d'images associés à la première valeur dans l'image masque.
Un avantage de cette image masque est qu'elle est très facile à manipuler et permet de construire rapidement la carte de profondeur de l'utilisateur segmenté.
Selon un autre aspect de l'invention, l'étape de composition comprend, pour un point de la scène virtuelle projeté dans le plan image, qui est colocalisé avec un point de l'image de l'utilisateur segmenté, une comparaison de leurs valeurs de profondeurs, l'intensité de l'image de sortie en ce point étant choisie égale à celle du point de la scène virtuelle projetée ou de l'image de l'utilisateur segmenté qui est associé à la valeur de profondeur la plus faible.
De cette manière, les occultations sont gérées de façon simple et efficace.
Selon un autre aspect de l'invention, un deuxième point clé est obtenu par suivi d'une manette tenue en main par le premier utilisateur.
Un avantage est d'augmenter la précision du positionnement du volume englobant l'utilisateur dans l'espace réel, sans augmenter les contraintes qui pèsent sur l'utilisateur. En effet, il a besoin de cette manette pour interagir avec la scène virtuelle, par exemple pour déplacer des objets de cette scène.
Selon encore un autre aspect de l'invention, le modèle de volume englobant l'utilisateur est une boîte en forme de parallélépipède rectangle orientée en fonction d'une orientation du au moins un point clé.
Un avantage de ce modèle est sa simplicité de mise en œuvre.
Selon un autre aspect de l'invention, le modèle de volume englobant le premier utilisateur comprend une pluralité de cylindres emboîtés aptes à se déplacer les uns par rapport aux autres selon des contraintes mécaniques prédéterminées.
Un avantage de ce deuxième modèle est que, bien que plus complexe, il permet une modélisation plus précise et plus fidèle de l'utilisateur. Le volume ainsi construit correspond mieux à sa silhouette, ce qui permet de limiter les erreurs lorsque plusieurs utilisateurs sont présents dans le champ de la caméra. En effet, si une partie d'un utilisateur voisin est segmentée en même temps que le premier utilisateur dans l'image d'entrée, le fait de construire un volume englobant précis permettra d'éliminer la partie segmentée correspondant à l'utilisateur voisin dans l'image masque du premier utilisateur et donc de ne pas associer cette partie de l'utilisateur voisin à une profondeur erronée.
Selon encore un autre aspect, l'espace réel est délimité par des parois de couleur monochromatique et l'étape de segmentation met en œuvre une technique dite de segmentation chroma-key.
Un avantage est de cet espace réel connu au préalable est que la segmentation du ou des utilisateurs est facilitée et peut être réalisée en temps réel et avec précision.
Selon un premier mode de réalisation de l'invention, la au moins une caméra est placée à l'extérieur de l'espace réel.
Un avantage est de pouvoir montrer à d'autres personnes ce que fait et ce que voit le premier utilisateur immergé dans la scène virtuelle. Dans ce cas, le dispositif d'affichage est un écran situé à l'extérieur de l'environnement réel dans lequel évolue le premier utilisateur.
Selon un deuxième mode de réalisation, la au moins une caméra est placée sur un visiocasque d'un deuxième utilisateur situé dans l'espace réel.
Un avantage est de permettre au deuxième utilisateur de voir le premier utilisateur évoluer dans la scène virtuelle telle qu'il la perçoit. Le dispositif d'affichage est dans ce cas l'écran du casque placé devant les yeux de l'utilisateur. L'invention concerne également un dispositif de composition d'une image d'au moins un utilisateur immergé dans une scène virtuelle adapté pour mettre en œuvre le procédé selon l'un quelconque des modes particuliers de réalisation définis ci-dessus. Ce dispositif pourra bien sûr comporter les différentes caractéristiques relatives au procédé de composition selon l'invention. Ainsi, les caractéristiques et avantages de ce dispositif sont les mêmes que ceux du procédé de composition, et ne sont pas détaillés plus amplement.
Selon un mode particulier de réalisation de l'invention, un tel dispositif de composition est compris dans un équipement terminal, comprenant un module d'émission-réception apte à recevoir des informations relatives à la scène virtuelle, l'image acquise par la au moins une caméra, des informations de suivi de position et d'orientation d'au moins un point clé de l'utilisateur et un dispositif d'affichage apte à afficher l'image composée.
Selon un autre aspect de l'invention, l'équipement terminal comprend un visiocasque apte à être porté par un deuxième utilisateur, une caméra disposée sur le visiocasque, agencée dans une direction du regard du deuxième utilisateur et apte à acquérir l'image d'entrée et un écran placé devant les yeux du deuxième utilisateur et sur lequel est restituée l'image de sortie.
De cette manière le deuxième utilisateur visualise le premier utilisateur intégré à la scène virtuelle dans laquelle lui-même évolue.
Corrélativement, l'invention concerne aussi un système de réalité virtuelle comprenant :
Un module de suivi agencé pour suivre une position et une orientation d'au moins un point clé de l'utilisateur dans un référentiel du système, dit référentiel monde, le dit au moins un point clé étant situé sur le visiocasque ;
Au moins une caméra agencée de telle sorte que l'utilisateur soit placé dans un champ de vision de ladite caméra ;
Un module de génération d'une scène virtuelle SV ;
Un équipement terminal selon l'invention ; et
Un premier visiocasque apte à être porté par l'utilisateur et destiné à restituer à l'utilisateur une représentation visuelle de la scène virtuelle; L'invention concerne aussi un programme d'ordinateur comportant des instructions pour la mise en œuvre des étapes d'un procédé de composition tel que décrit précédemment, lorsque ce programme est exécuté par un processeur.
Ce programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistrés sur un support lisible par ordinateur. L'invention se rapporte enfin à des supports d'enregistrement, lisibles par un processeur, intégrés ou non au dispositif d'estimation de pose selon l'invention, éventuellement amovible, mémorisant respectivement un programme d'ordinateur mettant en œuvre un procédé de composition tel que décrit précédemment. 5. Liste des figures D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1 présente de façon schématique un exemple de système de réalité virtuelle selon un premier mode de réalisation de l'invention ; la figure 2 présente de façon schématique un exemple de système de réalité virtuelle selon un deuxième mode de réalisation de l'invention ; les figures 3A et 3B présentent de façon schématique une vue de face et une vue de profil d'une caméra stéréo mise en œuvre par le système de réalité virtuelle selon un mode de réalisation de l'invention ; la figure 4 présente de façon schématique les étapes d'un procédé de composition d'une image d'un utilisateur avec la scène virtuelle dans laquelle il est immergé, selon l'invention ; la figure 5 illustre un exemple de segmentation de l'utilisateur sur une image acquise par la caméra stéréo selon une technique dite de segmentation sur fond monochromatique ; la figure 6 illustre de façon schématique un exemple d'image masque produite à l'issue de l'étape de segmentation selon l'invention ; la figure 7 illustre de façon schématique l'étape d'obtention d'information de position et d'orientation d'au moins un point clé de l'utilisateur par suivi, selon l'invention ; les figures 8A à 8D illustrent de façon schématiques des vues d'un volume englobant l'utilisateur basé sur un modèle de boîte ; les figures 9A et 9B illustrent de façon schématique deux vues d'un volume englobant l'utilisateur basé sur un modèle de cylindres articulés ; la figure 10 illustre de façon schématique une caméra virtuelle et sa pyramide de vue ; et la figure 11 illustre de façon schématique un exemple de structure matérielle d'un dispositif de composition d'une image de l'utilisateur immergé dans la scène virtuelle selon l'invention. 6. Description d'un mode de réalisation particulier de l'invention
Pour rappel, le principe de l'invention est d'une part de segmenter le contour d'un utilisateur sur au moins une image acquise par une caméra dans un espace réel, de calculer d'autre part un volume englobant cet utilisateur dans un référentiel de l'espace réel, dit référentiel monde, à l'aide d'au moins une information de suivi positionnel et rotationnel de cet utilisateur et d'un modèle prédéterminé. Le contour segmenté de l'utilisateur dans l'image acquise et une projection du volume calculé dans un référentiel d'un plan image de la caméra sont ensuite exploités pour construire une carte de profondeur associée à l'image de l'utilisateur. Cette carte permet lors de la composition d'une image, vue par la caméra, de l'utilisateur immergé dans la scène virtuelle, de prendre en compte d'éventuelles occultations de l'utilisateur par des objets de la scène virtuelle 3D.
En relation avec la Figure 1, on présente un premier exemple de système ou de plateforme de réalité virtuelle selon un premier mode de réalisation de l'invention. Cette plateforme 10 comprend notamment :
Un espace réel 20, par exemple une pièce dont les murs sont d'une couleur monochromatique uniforme de référence, et dans lequel évolue au moins un premier utilisateur Ui ;
Au moins une caméra 30 apte à acquérir une séquence d'images d'intensités de couleur, ou caméra RGB (pour « Red Green Blue », en anglais) et agencée de manière à ce que le premier utilisateur Ui soit présent dans son champ de vision. Par exemple, elle est fixée sur un mât en bordure de l'espace réel 20, depuis lequel elle dispose d'un point de vue extérieur sur cet espace;
Un module de génération d'une scène virtuelle 3D SV 40, par exemple intégré à une machine de calcul d'un équipement terminal ET, tel qu'un ordinateur personnel (pour « Personal computer», en anglais), une tablette, un téléphone intelligent (pour « smartphone», en anglais) etc;
Un casque de réalité virtuelle ou visiocasque 50i dont est équipé le premier utilisateur Ui.
Ce visiocasque comprend au moins un écran équipé d'un système de lentilles qui est placé devant les yeux de l'utilisateur et sur lequel il est apte à restituer une image 3D de la scène virtuelle SV adaptée au point de vue de l'utilisateur. Il comprend aussi un module d'émission/ réception de données via une communication sans fil. De cette manière, il est apte à recevoir des informations relatives à la scène virtuelle, par exemple relatives à la position d'objets de cette scène, en provenance du module de génération 40;
Au moins une manette 60i destinée à être tenue en main par le premier utilisateur Ui et par l'intermédiaire de laquelle il est apte à interagir avec la scène virtuelle, qu'il visualise sur un dispositif d'affichage intégré à son visiocasque 50i ;
Un système de suivi 70a, 70b apte à suivre une position et une orientation d'au moins un point clé de l'espace réel 20, tel que par exemple un point PCi du visiocasque 50i, un point de la manette 60i ou encore un point PCo de la caméra stéréo 30. Ce système peut s'appuyer par exemple sur des boules réfléchissantes fixées au niveau des points clés, ces boules étant repérables à l'aide d'une technologie infra-rouge, ou encore sur des capteurs inertiels et magnétiques. Il comprend en outre un module d'émission/réception, par exemple basé sur une technologie de communication sans fil, apte à transmettre les informations de suivi positionnel et orientationnel à un dispositif 100 de composition d'image selon l'invention ;
Un équipement terminal ET, dans lequel est intégré le dispositif 100 ;
Un dispositif d'affichage apte à restituer une image de sortie qui insère l'utilisateur segmenté dans la scène virtuelle SV. Par exemple, comme illustré par la Figure 1, il s'agit de celui de l'équipement terminal ET ;
Un référentiel R dit « référentiel monde » de l'espace réel qui coïncide avec celui de la scène virtuelle 3D. On fait en effet correspondre un référentiel virtuel de la scène virtuelle SV à l'échelle 1 avec ce référentiel monde.
Dans cet exemple, la caméra stéréo 30 est placée à l'extérieur de l'espace réel 20 dans lequel le premier utilisateur Ui se déplace. Elle dispose ainsi d'un point de vue extérieur sur l'utilisateur Ui qui évolue dans l'espace réel, ce qui va permettre de reconstruire une image de l'utilisateur Ui intégré à la scène virtuelle. Dans ce cas de figure, pour assurer un bon recalage entre scène virtuelle et espace réel, il est nécessaire de réaliser une calibration préalable de la caméra réelle selon le modèle Sténopé (pour « pinhole », en anglais). Ceci permet d'initialiser un modèle de projection d'une caméra virtuelle qui sera utilisée dans la suite de la description pour construire l'image de sortie. Une application possible est de montrer à un public extérieur ce que voit l'utilisateur Ui immergé dans la scène virtuelle SV.
En relation avec la Figure 2, on présente un deuxième exemple de système de réalité virtuelle selon l'invention. Il s'agit d'une plateforme 10' similaire à la plateforme 10, à l'exception du fait qu'elle comprend une caméra stéréo 302 qui est placée sur le casque de réalité virtuelle 502 d'un deuxième utilisateur U2 selon la direction de son regard. Ce deuxième utilisateur U2 est situé à l'intérieur de l'espace réel 20 similaire à celui du système 10. La caméra 302 est agencée de telle sorte que le premier utilisateur Ui soit placé à l'intérieur de son champ de vision. De cette manière, il est possible de reconstruire, depuis le point de vue du deuxième utilisateur U2, une image du premier utilisateur Ui immergé dans la scène virtuelle SV. Dans ce deuxième exemple, le module de génération de la scène virtuelle 402 est avantageusement placé dans le visiocasque 502 du deuxième utilisateur U2. De façon alternative, il peut être placé dans l'équipement ET. Dans ce cas, les informations de description de la scène virtuelle et leurs mises à jour sont transmises au visiocasque 502 par une connexion sans fil. En ce qui concerne le dispositif de composition 100 selon l'invention, il peut être lui aussi intégré au visiocasque 502.
Dans les deux modes de réalisation, la caméra 30, 302 est avantageusement une caméra stéréo, telle qu'illustrée par les Figures 3A (vue de face) et 3B (vue de profil). Une telle caméra stéréo 30, 302 comprend en réalité deux caméras Ci, C2 agencées l'une par rapport à l'autre de sorte à produire, comme le ferait le système visuel humain, deux images d'une même scène, selon deux points de vue légèrement décalés et permettant la reconstruction d'une représentation 3D de la scène. La distance d entre les caméras Ci, C2 est connue. Elle est éventuellement réglable de sorte à mieux correspondre aux caractéristiques du système visuel de l'utilisateur. Ceci est particulièrement avantageux dans le cas du visiocasque, qui comprend un écran pour chaque œil de l'utilisateur et restitue sur chacun d'eux une image différente.
Dans la suite, par simplicité, on considérera l'acquisition d'une seule image ou d'une seule séquence d'images par la caméra 30, 302. Bien sûr, s'il s'agit d'une caméra stéréo les traitements décrits seront appliqués à chacune des images ou séquences d'images acquises par les caméras Cl, C2 et deux images de sortie seront composées, une pour l'œil gauche et une pour l'œil droit de l'utilisateur U2 ou dans le premier exemple (Figure 1) d'une personne du public. Dans le cas d'une composition pour un visiocasque, ces deux images sont déformées de manière à prendre en compte les paramètres optiques du casque et assurer un bon recalage entre espace réel et scène virtuelle à l'écran.
En relation avec la Figure 4, on décrit maintenant les étapes d'un procédé de composition selon un mode de réalisation de l'invention.
Au cours d'une étape Ei, on obtient une image d'intensités de couleurs, dite image d'entrée IE, acquise à l'aide d'au moins une caméra 30, 302. Dans la suite on considère une seule image IE. Bien sûr, si on dispose d'une caméra stéréo, deux images sont obtenues et on applique les étapes du procédé à chacune d'elles.
On suppose en outre qu'au moins le premier utilisateur Ui est placé dans le champ de cette caméra. L'image acquise comprend donc, au moins en partie, le premier utilisateur Ui. Bien sûr, elle peut aussi comprendre plusieurs utilisateurs. Par exemple s'il s'agit d'une caméra 30 située à l'extérieur de l'environnement réel 20, comme illustré par la Figure 1, elle peut montrer tous les utilisateurs présents dans la pièce 20.
Dans la suite, on suppose par simplicité que seul l'utilisateur Ui est visible sur l'image d'entrée IE. Bien sûr, l'invention ne se limite pas à cet exemple, mais concerne aussi le cas où plusieurs utilisateurs évoluent dans l'espace réel 20 et sont simultanément visibles sur une image acquise par la caméra 30, 3Û2.
Au cours d'une étape E2, illustrée par la Figure 5, on réalise une segmentation d'un contour de la silhouette de l'utilisateur Ui sur l'image d'entrée IE. On utilise pour ce faire une technique de segmentation connue en soi, telle que par exemple la technique dite de segmentation sur fond monochromatique (pour « chroma-key segmentation », en anglais).
Une version simple de la technique dite du « chroma-key » peut être décrite comme suit :
Pour chaque pixel de l'image couleur on évalue une distance entre l'intensité de couleur de référence, qui correspond à celle des parois de la pièce 20, et l'intensité de couleur du pixel. Cette distance peut être mesurée dans différents espaces de couleurs parmi lesquels on trouve les espaces RGB, YUV, YCbCr.
Si, pour le pixel courant, la distance mesurée est supérieure à un seuil déterminé, on décide qu'il ne s'agit pas d'un pixel de fond :
Une première valeur, par exemple égale à 1, est inscrite à la position de ce pixel dans une image masque IM, illustrée par la Figure 6, de dimensions égales à celles de l'image d'entrée IE ;
La valeur d'intensité de couleur du pixel est inscrite dans une image de couleurs tampon IC (pour « buffer color image », en anglais).
Si, au contraire, la distance mesure est inférieure ou égale au seuil déterminé, on décide qu'il s'agit d'un pixel de fond :
Une deuxième valeur, par exemple égale à 0, est inscrite en ce pixel dans l'image masque IM ;
Avantageusement, on suppose que l'image masque IM et l'image de couleurs tampon IC ont été initialisées avec des valeurs nulles. De cette manière, on ne vient écrire qu'aux positions des pixels qui n'appartiennent pas au fond, mais font partie de la silhouette du premier utilisateur Ui.
En variante, lorsque l'espace réel n'est pas une pièce dont les parois sont de couleur monochromatique uniforme, on peut segmenter le contour de la silhouette de l'utilisateur Ui d'un fond plus complexe, à l'aide par exemple, d'une technique de reconnaissance de motifs, basée sur une classification et un apprentissage préalable, telle que décrite par exemple dans le document de Nakajima et al., intitulée « Full-body person récognition System », publiée dans la revue « Journal of the Pattern Récognition Society », en 2003, par Elsevier. A l'issue de cette étape E2, on dispose donc de: - l'image tampon couleur IC d'une caméra virtuelle colocalisée avec la caméra 30, 302 où seuls les utilisateurs apparaissent et où tous les pixels du fond ont été supprimés ; - l'image masque IM dont les pixels « allumés », c'est-à-dire de valeur 1, correspondent à la silhouette de l'utilisateur Ui. On notera que, selon un mode de réalisation particulier, les informations contenues dans cette image masque correspondent aux informations généralement stockées dans une mémoire tampon SB, (pour « stencil buffer », en anglais) et classiquement utilisée par une interface graphique dite API (pour « Application Program Interface », en anglais). Cette image masque permet de délimiter des zones de rendu dans l'image tampon couleur IC et déterminer automatiquement, et de manière très rapide, les pixels dont les intensités de couleur sont à écrire dans une mémoire tampon de rendu couleur ITC d'une image de sortie IS.
Au cours d'une étape E3 illustrée par la Figure 7, on obtient des informations de position et d'orientation d'au moins un point clé de l'utilisateur Ui et d'au moins un point clé PCo de la caméra 30, 302 dans le référentiel monde. Ces informations de position et d'orientation sont avantageusement délivrées par le système de suivi 70. Par exemple, on considère un premier point clé PCi placé sur le visiocasque 50i de l'utilisateur Ui, un deuxième point clé PC2 placé sur la manette 60i. Bien sûr, on peut utiliser des points clés supplémentaires, par exemple un point clé placé sur une deuxième manette 602 tenue par l'autre main de l'utilisateur Ui ou encore des points clés PC3, PC4 placés sur des dispositifs fixés à ses chevilles.
En E4, on calcule un volume VE englobant l'utilisateur Ui à partir du ou des points clés obtenus et d'un modèle géométrique et mécanique prédéterminé. Il s'agit donc avec ce volume d'approximer la morphologie de l'utilisateur et de le positionner dans le référentiel monde R.
Plusieurs modes de réalisation sont envisagés :
Selon une première approche de l'invention, illustrée par les Figures 8A et 8B, le volume VE calculé prend la forme d'un parallélépipède ou boîte.
Si un seul point clé PCi a été obtenu, la boîte est positionnée et orientée en fonction de la position et de l'orientation de ce point clé. Les dimensions (hauteur, largeur et profondeur) de la boîte sont choisies suffisamment grandes pour garantir que la silhouette de l'utilisateur reste contenue dans la boîte quand il écarte ou lève les bras. Le point le plus bas de la boîte est situé au niveau du sol (coordonnée z minimale nulle dans le référentiel monde).
En relation avec la Figure 7, si trois points clés PCi, PC2 et PC3 sont connus, on calcule les dimensions d'une boite à partir des trois points clés. A l'aide de règles heuristiques prédéterminées, qui contribuent à définir le modèle, on détermine une profondeur et une largeur minimales de la boîte (au cas où les points clés seraient parfaitement alignés). A titre d'exemple, on détaille maintenant le calcul d'un rectangle CR englobant les trois points clés PCi, PC2, PC3 dans le plan horizontal (y fixé) : o Ce rectangle CR est centré et orienté selon le point clé PCi de la tête ; o Comme illustré par la figure 8C, on dérive les positions (x', z') des deux autres points clés PC2, PC3 dans un repère (Ο',χ',ζ') centré en PCi et on calcule les bornes du rectangle CR et les positions de ses 4 sommets Tr, Tl , Br et Bl de la façon suivante : vmax.x' = Max(PC2.x', PC3.X', Ow) vmax.z' = Max(PC2.z', PC3.Z', Od) vmin.x' = Min(PC2.x', PC3.X', -Ow) vmin.z' = Max(PC2.z', PC3.Z', -Od) où Ow et Od désignent respectivement une largeur et une profondeur minimales d'épaules d'un utilisateur et vmin, vmax deux vecteurs représentant respectivement une distance minimale et une distance maximale entre les bornes du rectangle et le point clé PCi.
On obtient ainsi dans le référentiel monde R:
Tr.x = PCi.x-i- vmax.x'
Tr.z = PCi.z+ vmax.z'
Tl.x = PCi.x +vmin.x'
Tl.z = PCi.z +vmax.z'
Br.x = PCi.x + vmax.x'
Br.z = PCi.z + vmin.z'
Bl.x = PCi.x + vmin.x1
Bl.z =PCl.x +vmin.z'
Comme illustré par la figure 8D, on construit ensuite une boite reliant deux instances de ce rectangle (sur l'axe vertical) :
Le rectangle de la base prend le niveau du sol comme valeur y=0
Celui du sommet prend une valeur en y telle que (avec PCi le point clé de la tête): y = Max(PCi.y + OH, PC2.y , PC3.y) OH est une valeur prédéterminée qui fait référence à l'écart sur l'axe vertical entre le point clé PCi de la tête et le crâne de l'utilisateur. Elle est peut être choisie suffisamment large pour convenir à tous les utilisateurs.
Si 5 points clés PCi à PC5 sont connus (têtes, mains et pieds), on étend le calcul précédent en prenant en compte les deux points PC4, PC5 supplémentaires.
Selon une seconde approche_de l'invention, le modèle de volume englobant utilisé est un ensemble de cylindres articulés, comme illustré par les Figures 9A et 9B. L'articulation des cylindres est soumise à des règles prédéterminées, destinées à respecter celles d'un corps humain. Ce modèle, plus élaboré permet de restituer plus précisément la morphologie de l'utilisateur.
Si trois points clés PCi, PC2, PC3 sont connus au niveau de la tête et des mains, on utilise un premier cylindre CYi pour représenter le tronc et les jambes de l'utilisateur. Ce cylindre débute au sol et finit un peu plus haut que la position connue du point clé PCi de la tête. Ensuite deux cylindres CY2, CY3 sont utilisés pour modéliser chacun des bras afin de faire les liens épaule-coude, coude-mains. La position des épaules et des coudes sont calculées à l'aide d'une technique connue de l'art antérieur, par exemple le document de Badler et al., intitulé « Real-Time Inverse Kinematics of the Human Arm », publié par l'Université de Pennsylvanie, http://repository.upenn.edu/hms/73. en 1996, qui décrit un algorithme de cinématique inverse apte à prendre en compte les contraintes mécaniques des articulations du bras d'un être humain. Si 5 points clés PCi à PC5 sont connus au niveau de la tête, des mains et des pieds, on sépare les jambes de la partie tronc en modélisant chaque jambe à l'aide de deux cylindres CY4, CY5. De la même façon, les articulations entre ces deux cylindres au niveau du bassin, du genou et du pied, sont calculés par la technique de cinématique inverse précédemment citée. A l'issue de cette étape E4, on dispose d'un volume VE englobant l'utilisateur Ui, dont la position est connue dans le référentiel monde R.
Au cours d'une étape E5, on exploite les informations de suivi fournies par le système 70a, 70b pour positionner le point clé PCo de la caméra réelle 30, 302 dans le référentiel monde. On suppose par exemple que le point clé PCo est positionné sur le dessus de la caméra 30 , 302 et qu'on connaît la position de ce point clé par rapport à la caméra. Sur les figures 3A et 3B, on a représenté le point clé PCo placé à une hauteur h au-dessus des deux caméras Ci et C2, à une distance d /2 de chacune d'elles. On comprend qu'on peut ainsi déduire facilement de la connaissance des coordonnées du point clé PCO celles de chacune des caméras dans le référentiel monde.
En relation avec la Figure 10, on place alors une caméra virtuelle Cv à la position obtenue du point clé PCo et on l'oriente conformément à la caméra réelle 30, 302. On considère en outre un référentiel Rc de cette caméra virtuelle. On projette ensuite en E6 le volume VE englobant l'utilisateur Ui précédemment construit dans le référentiel Rc de la caméra virtuelle Cv à l'aide de paramètres extrinsèques de la caméra Cv, correspondant à sa pose (rotation, translation) dans le référentiel monde R, puis, selon un modèle de projection perspective de la caméra virtuelle et une pyramide de vue PV (pour « frustum », en anglais) de cette caméra, dans un référentiel RI d'un plan image PI de cette caméra. Sur la figure 10, le plan PI est situé au niveau du plan le plus proche PP de la pyramide de vue. On comprend qu'à ce stade on ne conserve que les points du volume qui sont inclus dans cette pyramide et qu'on stocke en mémoire une profondeur de chacun de ces points, cette profondeur étant liée à une distance entre la caméra et le point du volume VE avant projection.
On construit ensuite en E? une image carte de profondeur CP en écrivant à la position de chaque point projeté dans le plan PI sa profondeur associée.
Deux cas sont possibles :
Dans l'image d'entrée IE, ce point est situé à l'intérieur du contour segmenté de l'utilisateur Ui, c'est-à-dire qu'il correspond à une valeur 1 dans l'image masque IM. Dans ce cas, on écrit la profondeur calculée pour le point du volume dans la carte de profondeur CP; ou
Au contraire, ce point est à l'extérieur du contour segmenté de l'utilisateur Ui, c'est-à-dire qu'il correspond à une valeur 0 dans l'image masque IM. Dans ce deuxième cas, on n'écrit rien dans la carte de profondeur CP. On suppose donc que cette image est initialisée à zéro.
En E8, on obtient des informations de description de la scène virtuelle SV, par exemple un ensemble de maillage et de texture des objets 3D constituant cette scène. Par exemple une facette d'un maillage d'un objet est décrite par les coordonnées de ses sommets dans un référentiel de cet objet et une coordonnée de texture par sommet, c'est-à-dire une position dans une image de texture.
Au cours d'une étape Eg, on projette les objets de la scène virtuelle dans le plan image PI de la caméra virtuelle, en deux étapes, de façon similaire à celle déjà décrite pour le volume englobant l'utilisateur. On projette d'abord les objets virtuels dans le référentiel Rc de la caméra virtuelle à l'aide de la pose de la caméra 30, 302, puis on utilise le modèle de projection perspective de la caméra virtuelle pour projeter les facettes du maillage dans le référentiel RI du plan image, selon la pyramide de vue de la caméra. Il s'agit d'une opération de « rastérisation ».
On calcule aune information de profondeur pour chaque point d'une facette projetée à l'écran. Cette profondeur est fonction d'une distance de la facette à la caméra.
La couleur des points ainsi projetés à l'écran est ensuite déterminée via différents calculs d'éclairages et d'ombrage, connus de l'homme de métier.
En Eio, on compose une image de sortie IS à partir de la scène virtuelle projetée dans le référentiel de l'écran et l'image de l'utilisateur segmenté. Pour chaque point de la scène virtuelle ainsi projeté, on compare sa profondeur à celle inscrite au même point dans la carte de profondeur CP précédemment construite. Si sa profondeur est supérieure à celle de la carte de profondeur, ce point de la scène virtuelle est placé derrière l'utilisateur Ui et ne l'occulte pas ; on ne modifie donc pas l'image tampon couleur IC. Si au contraire, sa profondeur est inférieure à celle de l'image masque de profondeur IM, ce point de la scène virtuelle est placé devant l'utilisateur Ui et l'occulte. Par conséquent, on écrit son intensité de couleur à la place de celle de l'image d'entrée dans l'image tampon couleur IC.
Par exemple, on utilise un algorithme du test de profondeur (pour « depth test », en anglais), décrit dans le document de Catmull, intitulé « A subdivision algorithm for computer display of curved surfaces », publié par l'Université d'Utah en 1974, pages 31 à 34 et disponible à l'adresse suivante httBS.://staticJ1AÎsfls^cMxgm/static/f/552576Z6419248Z12705ŒZLZ3137Zcatmull thesis.pdf.
Avec l'invention, les occultations entre l'utilisateur et la scène virtuelle sont donc gérées très facilement à l'aide de la carte de profondeur CP.
On obtient ainsi une image de sortie IS, qui peut être restituée sur un dispositif d'affichage. Dans le premier mode de réalisation, le dispositif d'affichage peut être un moniteur placé à l'extérieur de pièce 20 ou l'écran d'un équipement terminal ET, comme précédemment décrit en relation avec la figure 1. L'image de sortie IS affichée montre ainsi l'utilisateur Ui immergé dans la scène virtuelle SV depuis le point de vue de la caméra 30.
Selon le deuxième mode de réalisation de l'invention, la caméra 3Ü2 est celle du visiocasque 5Ο2 d'un deuxième utilisateur U2. Le dispositif de restitution est donc l'écran de son casque placé devant ses yeux et on lui affiche l'image de sortie présentant le premier utilisateur Ui immergé dans la scène virtuelle SV, le point de vue de la caméra 3Ü2 coïncidant avec son propre point de vue.
On notera que l'invention qui vient d'être décrite, peut être mise en œuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, les termes « module » et « entité », utilisés dans ce document, peuvent correspondre soit à un composant logiciel, soit à un composant matériel, soit encore à un ensemble de composants matériels et/ou logiciels, aptes à mettre en œuvre la ou les fonctions décrites pour le module ou l'entité concerné(e).
En relation avec la figure 10, on présente maintenant un exemple de structure simplifiée d'un dispositif 100 de composition d'une image d'au moins un utilisateur immergé dans une scène virtuelle selon l'invention. Le dispositif 100 met en œuvre le procédé de composition selon l'invention qui vient d'être décrit.
Cette figure 10 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser l'algorithme détaillé ci-dessus. En effet, la technique de l'invention se réalise indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) configurée pour exécuter un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel).
Dans le cas où l'invention est implantée sur une machine de calcul reprogrammable, le programme correspondant (c'est-à-dire la séquence d'instructions) pourra être stocké dans un médium de stockage amovible (tel que par exemple une disquette, un CD-ROM ou un DVD-ROM) ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur.
Par exemple, le dispositif 100 comprend une unité de traitement 110, équipée d'un processeur pl, et pilotée par un programme d'ordinateur Pgl 120, stocké dans une mémoire 130 et mettant en œuvre le procédé de selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur Pgi 120 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 110. Le processeur de l'unité de traitement 110 met en œuvre les étapes du procédé décrit précédemment, selon les instructions du programme d'ordinateur 120.
Dans cet exemple de réalisation de l'invention, le dispositif 100 comprend une machine de calcul reprogrammable ou une machine de calcul dédiée, apte à et configurée pour :
Obtenir une image d'intensité de couleurs d'au moins une caméra agencée de façon connue et de telle sorte que l'utilisateur soit placé dans son champ ;
Segmenter un contour de l'utilisateur dans l'image d'intensités de couleurs obtenue ;
Obtenir une position et une orientation d'au moins un point clé de l'utilisateur dans un référentiel de l'espace réel ;
Construire un volume englobant l'utilisateur dans le référentiel de la scène à partir du au moins un point clé obtenu ;
Construire un masque de profondeur par projection du volume construit dans un référentiel d'un plan image de la caméra et écriture des profondeurs du volume projeté aux points situés à l'intérieur du contour segmenté ; et
Composer l'image segmentée de l'utilisateur avec une projection de la scène virtuelle dans le référentiel du plan image de la caméra, à l'aide du masque de profondeur construit.
Le dispositif 100 comprend en outre une unité Mi 140 de stockage, telle qu'une mémoire, par exemple de type mémoire tampon apte à stocker par exemple la carte de profondeur CP construite et, avantageusement, l'image masque IM de l'utilisateur segmenté.
Ces unités sont pilotées par le processeur μΐ de l'unité de traitement 110.
De façon avantageuse, un tel dispositif 100 de composition peut être intégré à un équipement terminal ET. Dans ce cas, le dispositif d'affichage peut être celui de l'équipement terminal ET, lequel fait partie du système de réalité virtuelle 10, 10'.
Le dispositif 100 est alors agencé pour coopérer au moins avec les modules suivants de l'équipement terminal ET : un module E/R d'émission/réception de données, par l'intermédiaire duquel il reçoit une image acquise par la caméra ou des informations de suivi en provenance du module 70a, 70b ou encore des informations de description de la scène virtuelle SV; et - le dispositif d'affichage DISP, configuré pour restituer une composition d'une image de sortie IS.
De façon alternative, le dispositif d'affichage est par exemple un moniteur ou un téléviseur situé à l'extérieur de l'espace réel 20.
Selon le deuxième mode de réalisation de l'invention, illustré par la Figure 2, l'équipement terminal ET est le visiocasque 5Û2 d'un deuxième utilisateur U2 situé dans l'espace réel 20. Le dispositif 100 est alors intégré au visiocasque 5Û2 et l'image de sortie affichée sur l'écran du visiocasque.
Grâce à ses bonnes performances et à sa simplicité de mise en œuvre, l'invention qui vient d'être décrite permet plusieurs usages. Une première application est de donner à un utilisateur d'un système de réalité virtuelle, une perception de soi et d'éventuels autres utilisateurs présents dans le même espace réel.
Une deuxième application envisagée est de mettre en place une « fenêtre » sur la scène virtuelle dans laquelle un ou plusieurs utilisateurs d'un système de réalité virtuels sont immergés, pour permettre à un public extérieur de « partager » en quelque sorte leur expérience immersive.
Il va de soi que les modes de réalisation qui ont été décrits ci-dessus ont été donnés à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être facilement apportées par l'homme de l'art sans pour autant sortir du cadre de l'invention.

Claims (15)

  1. REVENDICATIONS
    1. Procédé de composition d'une image d'un utilisateur (Ui) immergé dans une scène virtuelle (SV), ledit utilisateur étant placé dans un espace réel (20), au moins une caméra (30, 302) étant agencée de façon connue et de telle sorte que l'utilisateur soit placé dans un champ de ladite caméra, le procédé comprenant les étapes suivantes : Segmentation (E2) d'un contour de l'utilisateur dans une image (IE) d'intensités de couleurs acquise par la caméra ; Obtention (E4) par suivi d'une position et d'une orientation d'au moins un point clé (PCi) de l'utilisateur dans un référentiel de l'espace réel, dit « référentiel monde » ; Construction (E5) d'un volume (VE) englobant l'utilisateur dans le référentiel monde à partir du au moins un point clé obtenu et d'un modèle prédéterminé ; Construction (E8) d'une carte de profondeur (CP) de l'utilisateur par projection perspective du volume dans un référentiel d'un plan image de la caméra et écriture de valeurs de profondeurs des points du volume projetés à l'intérieur du contour segmenté, une valeur de profondeur d'un point projeté étant fonction d'une distance entre un point correspondant du volume et la caméra dans le référentiel monde ; Composition (Eli) d'une image de sortie (IS) à partir de l'image segmentée de l'utilisateur et d'une projection perspective de la scène virtuelle dans le référentiel du plan image de la caméra à l'aide de la carte de profondeur construite.
  2. 2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend une étape (E3) de construction d'une image masque (IM) de l'utilisateur (Ui) par écriture d'une première valeur pour un élément d'image situé sur ou à l'intérieur du contour et d'une deuxième valeur, distincte de la première, pour un élément d'image situé à l'extérieur du contour et en ce que la carte de profondeur (CP) est construite par écriture des valeurs de profondeurs du volume englobant projeté correspondant aux positions des éléments d'images associés à la première valeur dans l'image masque (IM).
  3. 3. Procédé selon l'une des revendications 1 ou 2, caractérisé en ce que l'étape de composition comprend, pour un point de la scène virtuelle projeté dans le plan image, qui est colocalisé avec un point de l'image de l'utilisateur segmenté, une comparaison de leurs valeurs de profondeurs, l'intensité de l'image de sortie en ce point étant choisie égale à celle du point de la scène virtuelle projetée ou de l'image de l'utilisateur segmenté qui est associé à la valeur de profondeur la plus faible.
  4. 4. Procédé selon l'une des revendications précédentes, caractérisé en ce qu'un deuxième point clé (PC2, PC3) est obtenu par suivi d'au moins une manette tenue en main par le premier utilisateur.
  5. 5. Procédé selon l'une des revendications précédentes, caractérisé en ce que le modèle de volume englobant l'utilisateur est une boîte en forme de parallélépipède rectangle localisée en fonction d'une position et d'une orientation du au moins un point clé.
  6. 6. Procédé selon l'une des revendications 1 à 4, caractérisé en ce que le modèle de volume englobant le premier utilisateur comprend une pluralité de cylindres emboîtés aptes à se déplacer les uns par rapport aux autres selon des contraintes mécaniques prédéterminées.
  7. 7. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'espace réel comprend un espace délimité par des parois de couleur monochromatique et en ce que l'étape de segmentation met en œuvre une technique dite de segmentation chroma-key.
  8. 8. Procédé selon l'une des revendications précédentes, caractérisé en ce que la caméra (30) est placée à l'extérieur de l'espace réel.
  9. 9. Procédé selon l'une des revendications précédentes, caractérisé en ce que la caméra (3Ο2) est placée sur un visiocasque virtuelle (5Ο2) d'un deuxième utilisateur (U2) situé dans l'espace réel (20).
  10. 10. Dispositif (100) de composition d'une image d'au moins un utilisateur immergé dans une scène virtuelle, ledit utilisateur étant placé dans un espace réel, ledit dispositif étant apte à obtenir (OBT. IE) une image d'intensités de couleur d'au moins une caméra agencée de façon connue et de telle sorte que l'utilisateur soit placé dans un champ de ladite caméra, le dispositif comprenant une machine de calcul dédiée à ou configurée pour : Segmenter (SEG) un contour de l'utilisateur dans l'image d'intensités de couleurs obtenue ; Obtenir (OBT. PC) une position et une orientation d'au moins un point clé de l'utilisateur dans un référentiel de l'espace réel, dit « référentiel monde » ; Construire (CONST. VE) un volume englobant l'utilisateur dans le référentiel de la scène à partir du au moins un point clé obtenu ; Construire (CONST. CP) une carte de profondeur de l'utilisateur par projection du volume construit dans un référentiel d'un plan image de la caméra et écriture des valeurs de profondeurs des points du volume projetés à l'intérieur du contour segmenté ; et Composer (COMP.) une image de sortie (IS) à partir de l'image segmentée de l'utilisateur et d'une projection de la scène virtuelle dans le référentiel du plan image de la caméra à l'aide de la carte de profondeur (CP) construite.
  11. 11. Equipement terminal (ET), comprenant un dispositif d'affichage (DISP) et un module d'émission réception (MER) de données par l'intermédiaire d'un réseau de communication, caractérisé en ce qu'il comprend en outre un dispositif (100) de composition d'une image d'au moins un utilisateur immergé (Ui) dans une scène virtuelle (SV) selon la revendication 10, ledit module d'émission réception étant apte à recevoir une image d'entrée acquise par au moins une caméra, des informations relatives à la scène virtuelle et des informations de suivi de position et d'orientation d'au moins un point clé de l'utilisateur dans un référentiel de l'espace réel, dit référentiel monde, ledit dispositif d'affichage étant apte à afficher ladite image de sortie.
  12. 12. Equipement terminal selon la revendication 11, caractérisé en ce qu'il comprend un visiocasque (502) apte à être porté par un deuxième utilisateur (U2) et une caméra (302) disposée sur le visiocasque, agencée dans une direction du regard du deuxième utilisateur et apte à acquérir l'image d'entrée (IE) et en ce que le visiocasque comprend un écran placé devant les yeux du deuxième utilisateur et sur lequel est restituée l'image de sortie (IS).
  13. 13. Système (10, 10') de réalité virtuelle, comprenant : Un espace réel (20), dans lequel évolue au moins un premier utilisateur (Ui) ; Un visiocasque (50i) apte à être porté par l'utilisateur (Ui); Un module (70a, 70b) de suivi agencé pour suivre une position et une orientation d'au moins un point clé (PCi) de l'utilisateur dans un référentiel du système, dit référentiel monde, le dit au moins un point clé étant situé sur le visiocasque ; Au moins une caméra (30) apte à être agencée de telle sorte que le premier utilisateur soit placé dans un champ de vision de ladite caméra ; Un module (40) de génération d'une scène virtuelle SV ; et Un équipement terminal (ET) selon la revendication 10.
  14. 14. Programme d'ordinateur (Pgl) comportant des instructions pour la mise en œuvre du procédé de composition selon l'une quelconque des revendications 1 à 9, lorsque ledit programme est exécuté par un processeur.
  15. 15. Support d'enregistrement lisible par un ordinateur, sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé selon l'une des revendications 1 à 9.
FR1754270A 2017-05-15 2017-05-15 Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes Pending FR3066304A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1754270A FR3066304A1 (fr) 2017-05-15 2017-05-15 Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1754270 2017-05-15
FR1754270A FR3066304A1 (fr) 2017-05-15 2017-05-15 Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes

Publications (1)

Publication Number Publication Date
FR3066304A1 true FR3066304A1 (fr) 2018-11-16

Family

ID=59974515

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1754270A Pending FR3066304A1 (fr) 2017-05-15 2017-05-15 Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes

Country Status (1)

Country Link
FR (1) FR3066304A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112311965A (zh) * 2020-10-22 2021-02-02 北京虚拟动点科技有限公司 虚拟拍摄方法、装置、***及存储介质
CN115714888A (zh) * 2022-10-09 2023-02-24 名之梦(上海)科技有限公司 视频生成方法、装置、设备与计算机可读存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FORTIN P ET AL: "Handling Occlusions in Real-time Augmented Reality : Dealing with Movable Real and Virtual Objects", COMPUTER AND ROBOT VISION, 2006. THE 3RD CANADIAN CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 7 June 2006 (2006-06-07), pages 54 - 54, XP010919365, ISBN: 978-0-7695-2542-6, DOI: 10.1109/CRV.2006.38 *
GRAU O ET AL: "USE OF 3-D TECHNIQUES FOR VIRTUAL PRODUCTION", OPTOMECHATRONIC MICRO/NANO DEVICES AND COMPONENTS III : 8 - 10 OCTOBER 2007, LAUSANNE, SWITZERLAND;PROCEEDINGS OF SPIE, SPIE, BELLINGHAM, WASH, vol. 4309, 23 January 2001 (2001-01-23), pages 40 - 50, XP008017825, ISBN: 978-1-62841-730-2 *
M PRICE ET AL: "Real-Time Production and Delivery of 3D Media", NTERNATIONAL BROADCASTING CONFERENCE 2002, 1 September 2002 (2002-09-01), XP055422855 *
PRICE M ET AL: "3D VIRTUAL PRODUCTION AND DELIVERY USING MPEG-4", INTERNATIONAL BROADCASTING CONVENTION, 2000, pages 1 - 06, XP002948118 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112311965A (zh) * 2020-10-22 2021-02-02 北京虚拟动点科技有限公司 虚拟拍摄方法、装置、***及存储介质
CN112311965B (zh) * 2020-10-22 2023-07-07 北京虚拟动点科技有限公司 虚拟拍摄方法、装置、***及存储介质
CN115714888A (zh) * 2022-10-09 2023-02-24 名之梦(上海)科技有限公司 视频生成方法、装置、设备与计算机可读存储介质
CN115714888B (zh) * 2022-10-09 2023-08-29 名之梦(上海)科技有限公司 视频生成方法、装置、设备与计算机可读存储介质

Similar Documents

Publication Publication Date Title
EP3479344B1 (fr) Procédé d'occultation d'un objet dans une image ou une vidéo et procédé de réalité augmentée associé
US11182974B2 (en) Method and system for representing a virtual object in a view of a real environment
CN105164728B (zh) 用于混合实境的设备和方法
EP2828834B1 (fr) Modèle et procédé de production de modèles 3d photo-réalistes
FR3053502A1 (fr) Systeme et procede de miroir de maquillage numerique
CN106575450A (zh) 通过反照率模型、***和方法的增强现实内容渲染
EP2556660A1 (fr) Une methode de detourage en temps reel d'une entite reelle enregistree dans une sequence video
EP2076886A1 (fr) Procédé et dispositif de simulation virtuelle d'une séquence d'images vidéo
KR20210138484A (ko) 깊이 맵 복구를 위한 시스템 및 방법
FR3027144A1 (fr) Procede et dispositif de determination de mouvement entre des images video successives
WO2018002533A1 (fr) Procédé d'occultation d'un objet dans une image ou une vidéo et procédé de réalité augmentée associé
CA3022298A1 (fr) Dispositif et procede de partage d'immersion dans un environnement virtuel
FR3066304A1 (fr) Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes
CN113989434A (zh) 一种人体三维重建方法及设备
EP4162448A1 (fr) Procédé et dispositif de reconstruction tridimensionnelle d'un visage avec partie dentée à partir d'une seule image
EP2297705B1 (fr) Procede de composition temps reel d'une video
FR2989790A1 (fr) Dispositif de visualisation adapte a fournir un champ visuel etendu.
BE1022580A9 (fr) Méthode d'obtention de vidéos immersives avec parallaxe interactive et méthode de visualisation de vidéos immersives avec parallaxe interactive
Rainer et al. Neural shading fields for efficient facial inverse rendering
FR3057981B1 (fr) Procede d'elaboration d'un nuage de points 3d representatif d'une oreille 3d d'un individu, et systeme associe
US20240212106A1 (en) Photo Relighting and Background Replacement Based on Machine Learning Models
FR3056770A1 (fr) Dispositif et procede de partage d'immersion dans un environnement virtuel
CA3057337A1 (fr) Procede de texturation d'un modele 3d
FR3026534B1 (fr) Generation d'un film d'animation personnalise
EP1344186B1 (fr) Procede de representation de scenes 3d en realite virtuelle et dispositif correspondant

Legal Events

Date Code Title Description
PLSC Publication of the preliminary search report

Effective date: 20181116