FR2877482A1 - Animated object e.g. person, inlay method for computer screen, involves capturing background image zone where view port, whose shape adopts to contours of object in image to be displayed and displayed image of video sequence, is displayed - Google Patents

Animated object e.g. person, inlay method for computer screen, involves capturing background image zone where view port, whose shape adopts to contours of object in image to be displayed and displayed image of video sequence, is displayed Download PDF

Info

Publication number
FR2877482A1
FR2877482A1 FR0411723A FR0411723A FR2877482A1 FR 2877482 A1 FR2877482 A1 FR 2877482A1 FR 0411723 A FR0411723 A FR 0411723A FR 0411723 A FR0411723 A FR 0411723A FR 2877482 A1 FR2877482 A1 FR 2877482A1
Authority
FR
France
Prior art keywords
image
displayed
display
video sequence
images
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.)
Granted
Application number
FR0411723A
Other languages
French (fr)
Other versions
FR2877482B1 (en
Inventor
Herve Lucchi
Richard Excoffier
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.)
TOTEM ENTERTAINMENT SARL
Original Assignee
TOTEM ENTERTAINMENT SARL
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 TOTEM ENTERTAINMENT SARL filed Critical TOTEM ENTERTAINMENT SARL
Priority to FR0411723A priority Critical patent/FR2877482B1/en
Publication of FR2877482A1 publication Critical patent/FR2877482A1/en
Application granted granted Critical
Publication of FR2877482B1 publication Critical patent/FR2877482B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

The method involves capturing a background image zone where a view port, whose shape adopts to the contours of an animated object in an image to be displayed and a displayed image of a video sequence, is displayed. The image to be displayed is inserted in the port. The zone is inserted in parts of the port non-occupied by the object to erase the displayed image. The port is displayed on a displayed background image by a display screen.

Description

2877482 -1-2877482 -1-

PROCEDE D'INCRUSTATION D'UNE SEQUENCE D'IMAGES VIDEO DE FORME QUELCONQUE SUR UNE INTERFACE D'AFFICHAGE D'ORDINATEUR A FENETRES.  METHOD OF INCRUSTING A SEQUENCE OF VIDEO IMAGES OF ANY TYPE ON A WINDOW COMPUTER DISPLAY INTERFACE.

La présente invention concerne la superposition d'images vidéo sur un écran d'affichage d'ordinateur.  The present invention relates to the superposition of video images on a computer display screen.

Elle s'applique notamment, mais non exclusivement à la restitution d'une 10 séquence d'images vidéo sur une interface d'affichage d'ordinateur à fenêtres.  It applies in particular, but not exclusively to the rendering of a sequence of video images on a windows computer display interface.

Les principaux systèmes d'exploitation actuels gèrent une interface graphique d'affichage à fenêtres, chaque fenêtre généralement de forme rectangulaire, permettant à un programme applicatif respectif exécuté par l'ordinateur de recevoir des commandes et d'afficher les résultats de ces commandes.  The main current operating systems manage a graphical window display interface, each window generally rectangular in shape, allowing a respective application program executed by the computer to receive commands and display the results of these commands.

Lorsqu'un programme applicatif affiche une séquence vidéo dans un environnement à fenêtres traditionnel, les images affichées présentent une forme rectangulaire et sont présentées dans une fenêtre rectangulaire. Lorsque la séquence vidéo représente un ou plusieurs personnages animés, il est souhaitable de retirer l'arrière-plan de cette séquence pour n'afficher que les personnages, dans une fenêtre dont la forme épouse celle des personnages. Ainsi, le système d'exploitation Windows 95 de Microsoft prévoit une fonction d'interface de programmation "SetWindowRgn" permettant d'afficher une fenêtre non rectangulaire. Si la fenêtre change fréquemment de forme et/ou de position sur l'écran, le système d'exploitation doit restituer en temps réel l'arrière plan de l'affichage qui n'est plus recouvert par la fenêtre non rectangulaire. Un tel traitement s'avère très coûteux en ressources de calcul et de mémoire.  When an application program displays a video sequence in a traditional windowed environment, the displayed images are rectangular in shape and are presented in a rectangular window. When the video sequence represents one or more animated characters, it is desirable to remove the background of this sequence to display only the characters, in a window whose shape matches that of the characters. Thus, the Microsoft Windows 95 operating system provides a "SetWindowRgn" programming interface function for displaying a non-rectangular window. If the window frequently changes shape and / or position on the screen, the operating system must render in real time the background of the display which is no longer covered by the non-rectangular window. Such a treatment proves to be very expensive in computing and memory resources.

Pour résoudre ce problème, les systèmes d'exploitation Windows NT, 2000 et XP présentent en outre des fonctions d'affichage de fenêtre par couche. Ainsi les fonctions "SetLayeredWindowAttributes" et "UpdateLayeredWindow" permettent de définir une couleur de transparence, les pixels des images affichées ayant cette couleur n'étant pas affichés, laissant apparaître l'image affichée en arrière-plan qui peut inclure plusieurs fenêtres.  To solve this problem, Windows NT, 2000, and XP operating systems also have window-by-layer display capabilities. Thus, the "SetLayeredWindowAttributes" and "UpdateLayeredWindow" functions make it possible to define a transparency color, the pixels of the images displayed having this color not being displayed, revealing the image displayed in the background which may include several windows.

La demande de brevet US 2004/0109014 décrit un procédé qui exploite ces 2877482 -2- fonctions, en calculant pour chaque image d'une séquence vidéo, les zones de l'image qui doivent être transparentes, sur la base d'une couleur de transparence et d'un seuil de tolérance. Pour chaque pixel de chaque image, le procédé calcule dans l'espace à trois dimensions des couleurs une "distance" du pixel par rapport à la couleur de transparence et si cette distance est inférieure au seuil de tolérance, le pixel est transparent. Comme chaque image présente une forme et une position dans l'image qui peut être différente de celles de l'image précédente, il est nécessaire d'effacer l'image précédente en affichant l'image d'arrière- plan à la place de l'image précédente. Pour effectuer cette opération, le procédé décrit dans ce document exploite la fonction de rafraîchissement de l'affichage du système d'exploitation. Or, la fonction de rafraîchissement prévue par les systèmes d'exploitation actuels n'est pas conçue pour afficher des séquences vidéo en dehors de fenêtres classiques, et n'est pas du tout conçue pour être exécutée à la cadence de 25 images par seconde qui est la vitesse au delà de laquelle l'oeil humain ne distingue plus les images affichées (affichage saccadé) et donc ne perçoit plus qu'une image animée avec fluidité. Il en résulte que le procédé décrit dans ce document ne permet pas d'afficher des images animées avec une fluidité suffisante.  The patent application US 2004/0109014 describes a method that exploits these functions by calculating for each image of a video sequence, the areas of the image which must be transparent, on the basis of a color of transparency and a tolerance threshold. For each pixel of each image, the method calculates in the three-dimensional space of colors a "distance" of the pixel from the transparency color and if this distance is less than the tolerance threshold, the pixel is transparent. Since each image has a shape and a position in the image that may be different from those of the previous image, it is necessary to erase the previous image by displaying the background image instead of the image. previous picture. To perform this operation, the method described in this document exploits the refresh function of the display of the operating system. However, the refresh function provided by current operating systems is not designed to display video sequences outside conventional windows, and is not designed at all to run at 25 frames per second. is the speed beyond which the human eye no longer distinguishes the images displayed (jerky display) and thus perceives more than a moving image with fluidity. As a result, the method described in this document does not display animated images with sufficient fluidity.

La présente invention a pour but de supprimer cet inconvénient. Cet objectif est atteint par la prévision d'un procédé d'incrustation d'un objet animé apparaissant dans une séquence vidéo, sur un écran d'affichage d'ordinateur, la séquence vidéo comportant une séquence d'images, comprenant pour chaque image à afficher de la séquence vidéo des étapes de: définition d'une fenêtre d'affichage dont la forme est définie en fonction de contours de l'objet à incruster figurant dans l'image, insertion de l'image dans la fenêtre d'affichage, affichage de la fenêtre d'affichage sur une image d'arrière-plan affichée par 30 l'écran d'ordinateur.  The present invention aims to eliminate this disadvantage. This objective is achieved by the provision of a method of embedding an animated object appearing in a video sequence, on a computer display screen, the video sequence comprising a sequence of images, comprising for each image to displaying the video sequence of the steps of: defining a display window whose shape is defined according to the contours of the object to be embedded in the image, inserting the image in the display window, displaying the display window on a background image displayed by the computer screen.

Selon l'invention, la fenêtre d'affichage définie pour chaque affichage d'une image épouse les contours de l'objet dans l'image à afficher et dans l'image affichée de la séquence vidéo, le procédé comprend en outre des étapes de: capture d'une zone d'image d'arrière-plan où est affichée la fenêtre d'affichage, et insertion dans les parties de la fenêtre d'affichage non occupées par l'objet 2877482 -3- de la zone d'image d'arrière-plan capturée correspondante pour effacer l'image affichée.  According to the invention, the display window defined for each display of an image matches the contours of the object in the image to be displayed and in the displayed image of the video sequence, the method also comprises steps of : capture of a background image area where the display window is displayed, and insert in the parts of the display window not occupied by the object 2877482 -3- of the image area corresponding captured background to erase the displayed image.

Selon un mode de réalisation préféré de l'invention, les images de la séquence vidéo sont obtenues à partir d'une séquence vidéo d'origine en extrayant de chacune des images de la séquence vidéo d'origine une zone d'image rectangulaire la plus petite possible incluant l'objet à incruster, chaque image de la séquence vidéo regroupant la zone d'image extraite et la position de la zone d'image extraite dans l'image d'origine.  According to a preferred embodiment of the invention, the images of the video sequence are obtained from an original video sequence by extracting from each of the images of the original video sequence an area of rectangular image most small possible including the object to be embedded, each image of the video sequence grouping the extracted image area and the position of the extracted image area in the original image.

Selon un mode de réalisation préféré de l'invention, l'ordre dans lequel sont affichées les images de la séquence vidéo est défini dans un script associé à la séquence vidéo.  According to a preferred embodiment of the invention, the order in which the images of the video sequence are displayed is defined in a script associated with the video sequence.

Selon un mode de réalisation préféré de l'invention, la cadence des images dans la séquence vidéo est supérieure ou égale à 25 images par seconde pour obtenir une animation fluide de l'objet incrusté.  According to a preferred embodiment of the invention, the frame rate of the images in the video sequence is greater than or equal to 25 frames per second in order to obtain a fluid animation of the encrusted object.

Selon un mode de réalisation préféré de l'invention, la séquence vidéo comporte 20 une séquence audio qui est restituée en synchronisme avec l'affichage des images de la séquence vidéo.  According to a preferred embodiment of the invention, the video sequence comprises an audio sequence which is reproduced in synchronism with the display of the images of the video sequence.

Selon un mode de réalisation préféré de l'invention, la balance de restitution audio entre plusieurs hauts-parleurs de l'ordinateur est ajustée en fonction de la 25 position de l'objet incrusté sur l'écran d'affichage.  According to a preferred embodiment of the invention, the balance of audio restitution between several speakers of the computer is adjusted according to the position of the object inlaid on the display screen.

Selon un mode de réalisation préféré de l'invention, un traitement de suppression de crénelage est appliqué aux contours de l'objet, préalablement à l'affichage de la fenêtre d'affichage de l'objet à incruster.  According to a preferred embodiment of the invention, alias deletion processing is applied to the contours of the object, prior to the display of the display window of the object to be embedded.

Selon un mode de réalisation préféré de l'invention, si l'image d'arrièreplan est modifiée à proximité de la fenêtre d'affichage, l'affichage de la fenêtre est bloqué temporairement pour capturer la zone d'image d'arrière-plan située à l'emplacement de la fenêtre, et une commande de rafraîchissement d'affichage est envoyée à d'autres applications en cours d'exécution par l'ordinateur.  According to a preferred embodiment of the invention, if the background image is changed near the display window, the display of the window is temporarily blocked to capture the background image area. located at the window location, and a display refresh command is sent to other applications running by the computer.

Selon un mode de réalisation préféré de l'invention, l'image d'arrièreplan est capturée périodiquement pour détecter un changement.  According to a preferred embodiment of the invention, the background image is captured periodically to detect a change.

2877482 4 Avantageusement, seule la zone de l'image d'arrière-plan dans laquelle l'objet est susceptible d'être incrusté est capturée pour détecter un changement.  Advantageously, only the area of the background image in which the object is likely to be embedded is captured to detect a change.

Un mode de réalisation préféré de l'invention sera décrit ci-après, à titre d'exemple non limitatif, avec référence aux dessins annexés dans lesquels: La figure 1 représente schématiquement un dispositif selon l'invention; La figure 2 représente schématiquement un écran d'ordinateur affichant des fenêtres ainsi qu'un personnage animé à l'aide du dispositif montré sur la figure 1; La figure 3 illustre sous la forme d'un organigramme une procédure de prétraitement d'une séquence vidéo selon 15 l'invention; Les figures 4 et 5 illustrent sous la forme d'organigrammes des procédures d'affichage exécutées par le dispositif représenté sur la figure 1.  A preferred embodiment of the invention will be described below, by way of nonlimiting example, with reference to the accompanying drawings in which: Figure 1 shows schematically a device according to the invention; Figure 2 schematically shows a computer screen displaying windows as well as a animated character using the device shown in Figure 1; Figure 3 illustrates in the form of a flowchart a preprocessing procedure of a video sequence according to the invention; Figures 4 and 5 illustrate in the form of flowcharts the display procedures performed by the device shown in Figure 1.

La figure 1 représente un dispositif 1 selon l'invention d'incrustation d'images vidéo sur un écran d'ordinateur, les images vidéo provenant d'une séquence vidéo de préférence incluant une séquence audio qui est synchronisée avec la séquence d'images. Avantageusement, la séquence vidéo présente une définition suffisante et comprend au moins 25 images par secondes pour que l'animation produite par l'affichage de la séquence vidéo soit fluide et sans à- coups.  FIG. 1 represents a device 1 according to the invention for embedding video images on a computer screen, the video images coming from a video sequence preferably including an audio sequence which is synchronized with the sequence of images. Advantageously, the video sequence has a sufficient definition and comprises at least 25 frames per second so that the animation produced by the display of the video sequence is smooth and smooth.

Le dispositif 1 est conçu pour traiter un fichier de séquence vidéo 2 incluant une séquence d'images et une séquence audio compressée synchrone de la séquence vidéo, celles-ci étant éventuellement compressées, et un script définissant la manière de restituer les séquences audio et vidéo. Le dispositif 1 comprend quatre modules 11, à 14 de traitement qui fonctionnent d'une manière asynchrone, à savoir, un module 11 qui assure la décompression des images et de la séquence audio associée à la séquence d'images dans la séquence vidéo et l'exécution du script, un module 12 qui effectue les traitements nécessaires à 2877482 -5- l'affichage d'une image de la séquence vidéo, un module 13 qui effectue la restitution de la séquence audio, et un module 14 qui analyse la zone d'image d'arrière-plan 4 affichée à l'écran, qui est susceptible d'être recouverte par les images affichées par le module d'affichage 12.  The device 1 is designed to process a video sequence file 2 including a sequence of images and a synchronous compressed audio sequence of the video sequence, these possibly being compressed, and a script defining the way of rendering the audio and video sequences . The device 1 comprises four processing modules 11, 14 which operate in an asynchronous manner, namely a module 11 which decompresses the images and the audio sequence associated with the sequence of images in the video sequence and the execution of the script, a module 12 which performs the necessary processing to display an image of the video sequence, a module 13 which performs the restitution of the audio sequence, and a module 14 which analyzes the area of background image 4 displayed on the screen, which is likely to be covered by the images displayed by the display module 12.

Le module de décompression I 1 décompresse la séquence audio figurant dans le fichier de séquence vidéo 2 et stocke le résultat de la décompression dans un fichier audio 16. Il lit également le script dans ce fichier pour déterminer l'image suivante à afficher, décompresse cette image, mémorise le résultat de cette décompression dans une zone mémoire image temporaire 15, et commande le module d'affichage 12 pour qu'il affiche l'image située dans la zone mémoire image 15. Il commande également le module de restitution sonore 13 pour qu'il restitue le fichier audio 16 en synchronisme avec l'affichage des images. Le module 11 gère également une base de temps de cadencement par exemple à 25 images par seconde pour cadencer l'affichage des images de la séquence vidéo, la restitution de la séquence audio étant synchronisée sur ce cadencement.  The decompression module I 1 decompresses the audio sequence contained in the video sequence file 2 and stores the result of the decompression in an audio file 16. It also reads the script in this file to determine the next image to be displayed, decompresses this image, stores the result of this decompression in a temporary image memory area 15, and controls the display module 12 to display the image located in the image memory area 15. It also controls the sound reproduction module 13 for that it renders the audio file 16 in synchronism with the display of the images. The module 11 also manages a timing base, for example at 25 frames per second, to clock the display of the images of the video sequence, the reproduction of the audio sequence being synchronized with this timing.

Le module d'affichage 12 traite l'image à afficher pour l'adapter à la résolution de l'écran d'affichage, compte tenu de la taille de l'image, détermine la position de l'écran où l'image doit être affichée et commande au système d'exploitation de l'ordinateur l'affichage de l'image dans une fenêtre dont la forme épouse celle du personnage de l'image.  The display module 12 processes the image to be displayed to adapt it to the resolution of the display screen, taking into account the size of the image, determines the position of the screen where the image must be displayed and commands the operating system of the computer display the image in a window whose shape matches that of the image character.

Le module 14 est conçu pour effectuer périodiquement une capture de la zone d'écran où sont affichées les images de la séquence vidéo et pour analyser l'image capturée pour déterminer si elle a été modifiée par rapport à une image d'arrière-plan 17 de zone d'écran préalablement capturée. Si cette zone a été modifiée, le module 14 met à jour l'image 17 et commande le rafraîchissement de l'écran.  The module 14 is designed to periodically capture the screen area where the images of the video are displayed and to analyze the captured image to determine if it has been modified from a background image. screen area previously captured. If this zone has been modified, the module 14 updates the image 17 and controls the refreshing of the screen.

Le dispositif d'affichage représenté sur la figure 1 permet d'afficher un objet 41 animé, détouré (un personnage dans l'exemple de la figure 2), constitué par exemple d'un ou plusieurs personnages, en incrustation sur un écran d'ordinateur pouvant afficher plusieurs fenêtres 42, 43, et par exemple une barre de tâches 44. Le personnage 41 est par exemple animé comme s'il marchait sur la barre de tâches et en synchronisme avec une séquence audio reproduisant par exemple les sons produits par le personnage (voix et rebondissements du ballon).  The display device shown in FIG. 1 makes it possible to display an animated object 41 cut out (a character in the example of FIG. 2), consisting for example of one or more characters, inlay on a screen of computer can display multiple windows 42, 43, and for example a taskbar 44. The character 41 is for example animated as if he walked on the taskbar and in synchronism with an audio sequence reproducing for example the sounds produced by the character (voice and twists of the ball).

Pour pouvoir être traitée par le dispositif 1, une séquence vidéo 6 doit subir un prétraitement tel qu'illustré par la figure 3. Cette séquence vidéo est obtenue en filmant dans un champ fixe (sans mouvement de caméra, et sans modification du facteur de zoom) un ou plusieurs personnages sur un fond de préférence de couleur uniforme. La cadence des images dans la séquence est avantageusement choisie au moins égale à 25 images par seconde pour obtenir une animation fluide. Cette procédure comprend une première étape 21 d'extraction et de compression de la séquence audio entrelacée avec la séquence d'images dans la séquence vidéo 6. Aux étapes 22 à 26 suivantes, toutes les images de la séquence vidéo 6 sont successivement lues et traitées. On choisit préalablement un référentiel comportant un axe vertical et un axe horizontal permettant de définir la position du personnage dans le champ des images. Si le personnage est débout, l'axe horizontal peut être choisi passant le plus proche possible des deux pieds du personnage. L'axe vertical peut par exemple être choisi parmi les bords verticaux des images. A l'étape 23, on extrait de l'image une zone rectangulaire la plus petite possible contenant le personnage (et quelques pixels autour du personnage) et on mémorise en association avec l'image extraite la position de celle-ci par rapport au référentiel. A l'étape 24, on détoure le personnage dans l'image extraite, en plaçant tous les pixels de l'image extraite correspondant au fond de l'image à une valeur de transparence totale. A l'étape 26 suivante, l'image extraite est compressée. Avant ou après le traitement des images de la séquence vidéo 6, on définit un script d'affichage (étape 27) qui détermine notamment l'ordre d'affichage des images, leur cadence d'affichage, à partir de quelle image la séquence audio doit être restituée, et éventuellement le volume de restitution du son qui peut varier durant la restitution de la séquence audio. Enfin, à l'étape 28, le fichier de séquence vidéo 2 est généré en regroupant la séquence audio compressée, les images extraites et compressées, associées à leur position dans le référentiel, et le script.  To be able to be processed by the device 1, a video sequence 6 must be pre-processed as shown in FIG. 3. This video sequence is obtained by filming in a fixed field (without camera movement, and without modifying the zoom factor ) one or more characters on a background preferably of uniform color. The rate of the images in the sequence is advantageously chosen at least equal to 25 frames per second to obtain a fluid animation. This procedure comprises a first step 21 for extracting and compressing the audio sequence interleaved with the sequence of images in the video sequence 6. In the following steps 22 to 26, all the images of the video sequence 6 are successively read and processed. . We choose beforehand a repository with a vertical axis and a horizontal axis to define the position of the character in the field of images. If the character is standing, the horizontal axis can be chosen as close as possible to both feet of the character. The vertical axis may for example be chosen from the vertical edges of the images. In step 23, we extract from the image a smallest possible rectangular area containing the character (and a few pixels around the character) and we memorize in association with the extracted image the position of this one with respect to the reference frame . In step 24, the character is skewed in the extracted image, placing all the pixels of the extracted image corresponding to the background of the image to a total transparency value. In the next step 26, the extracted image is compressed. Before or after the processing of the images of the video sequence 6, a display script (step 27) is defined which determines in particular the display order of the images, their display rate, from which image the audio sequence must be restored, and possibly the volume of restitution of the sound which can vary during the restitution of the audio sequence. Finally, in step 28, the video sequence file 2 is generated by grouping the compressed audio sequence, the extracted and compressed images, associated with their position in the repository, and the script.

Comme la taille de chacune des images de la séquence est ajustée à la taille de l'objet (personnage) à afficher, la taille du fichier 2 et la bande passante nécessaire pour restituer la séquence vidéo sont réduites au minimum.  As the size of each of the images in the sequence is adjusted to the size of the object (character) to be displayed, the size of the file 2 and the bandwidth required to render the video sequence are minimized.

La figure 4 illustre une procédure de traitement par le module de décompression 11 de la séquence vidéo 2 obtenue. Cette procédure comprend une première étape 31 de décompression de la séquence audio figurant dans le fichier de 2877482 -7- séquence vidéo 2, pour obtenir une séquence audio 16 susceptible d'être restituée par une carte son 5 d'ordinateur personnel. A l'étape suivante 32, le module 11 lit le script figurant dans le fichier 2, détermine à partir du script l'image à afficher (étape 33), et décompresse à l'étape 34 l'image ainsi déterminée qu'il mémorise dans la mémoire image temporaire 15.  FIG. 4 illustrates a procedure of processing by the decompression module 11 of the video sequence 2 obtained. This procedure comprises a first step 31 of decompressing the audio sequence contained in the video sequence file 2, to obtain an audio sequence 16 that can be reproduced by a personal computer sound card. In the next step 32, the module 11 reads the script contained in the file 2, determines from the script the image to be displayed (step 33), and decompresses in step 34 the image thus determined which it stores in the temporary image memory 15.

Parallèlement, le module 11 déclenche à la cadence définie par le script l'affichage de l'image stockée dans la mémoire temporaire 15, en envoyant à l'étape 35 une commande à cet effet au module d'affichage 12. En fonction du script, le module 11 peut également commander au module de restitution audio 13, la restitution de la séquence audio 16. Les étapes 32 à 35 sont répétées à l'étape 36 pour afficher l'image suivante, tant qu'une commande d'arrêt de la restitution de la séquence vidéo n'a pas été envoyée au dispositif 1, par exemple par l'utilisateur au moyen d'un clic de souris sur l'image.  In parallel, the module 11 triggers at the rate defined by the script the display of the image stored in the temporary memory 15, by sending in step 35 a command for this purpose to the display module 12. According to the script , the module 11 can also control the audio reproduction module 13, the restitution of the audio sequence 16. The steps 32 to 35 are repeated in step 36 to display the next image, as a stop command of the restitution of the video sequence has not been sent to the device 1, for example by the user by means of a mouse click on the image.

La figure 5 illustre la procédure 50 d'affichage d'une image exécutée par le module d'affichage d'image 12. Cette procédure est déclenchée par le module de décompression 1l à l'étape 35. A la première étape 51 de cette procédure, le module 12 calcule les dimensions de l'image à afficher compte tenu des caractéristiques (résolution) de l'écran d'affichage de l'ordinateur, des caractéristiques de l'image à afficher et de paramètres prédéfinis par l'utilisateur. Si le nombre de pixels en ligne et en colonne de l'image à afficher ne correspondent pas à celles de la zone d'affichage, le module 12 procède à des calculs d'interpolation pour déterminer chacun des pixels de l'image à afficher pour dilater ou réduire l'image à afficher 15. Le module 12 détermine également la position de l'image sur l'écran de l'ordinateur, en fonction du référentiel de la séquence d'images, de la position de ce référentiel sur l'écran d'affichage, de la position de l'image dans ce référentiel, associée à l'image, et des paramètres prédéfinis par l'utilisateur. Par exemple, l'utilisateur a la possibilité de retourner les images par effet de miroir. Dans ce cas, le référentiel de la séquence vidéo est également inversé entre la gauche et la droite de l'écran d'affichage. A l'étape suivante 52, l'image subit un traitement de suppression du crénelage (anti-aliasing) au niveau de ses contours. Pour définir ce traitement, la séquence d'images est associée à une profondeur en nombre de pixels pour chacune des quatre directions gauche-droite, droite-gauche, haut-bas et bas-haut, le long de laquelle les pixels de l'image doivent présenter une transparence croissante en allant de l'intérieur de l'image vers l'extérieur. Les paramètres ajustables par l'utilisateur peuvent également comprendre un coefficient de transparence affecté à toutes les images de la séquence.  Fig. 5 illustrates the procedure of displaying an image executed by the image display module 12. This procedure is triggered by the decompression module 11 at step 35. At the first step 51 of this procedure , the module 12 calculates the dimensions of the image to be displayed taking into account the characteristics (resolution) of the display screen of the computer, the characteristics of the image to be displayed and parameters predefined by the user. If the number of pixels in line and in column of the image to be displayed do not correspond to those of the display area, the module 12 carries out interpolation calculations to determine each of the pixels of the image to be displayed for dilate or reduce the image to be displayed 15. The module 12 also determines the position of the image on the screen of the computer, according to the repository of the image sequence, the position of this frame on the display screen, the position of the image in this repository, associated with the image, and user-defined parameters. For example, the user has the option to return images by mirror effect. In this case, the repository of the video sequence is also inverted between the left and right of the display screen. In the next step 52, the image undergoes an antialiasing (anti-aliasing) processing at its contours. To define this processing, the sequence of images is associated with a depth in number of pixels for each of the four directions left-right, right-left, up-down and up-high, along which the pixels of the image must have increasing transparency going from the inside of the image to the outside. The user-adjustable parameters may also include a transparency coefficient assigned to all the images in the sequence.

2877482 8 A l'étape suivante 53, le module d'affichage 12 génère une fenêtre ayant une forme délimitée en cumulant les contours des zones de pixels non totalement transparentes de l'image à afficher, c'est-à-dire les contours du personnage de l'image, et les contours des zones de pixels non totalement transparentes de l'image affichée. Une telle définition de fenêtre peut être effectuée par la juxtaposition de fenêtres rectangulaires d'un pixel de hauteur. A l'étape suivante 54, le module 12 remplit la fenêtre en utilisant les pixels de l'image à afficher, calculés aux étapes 51 et 52, les pixels de l'image d'arrière- plan, pour définir la valeur des pixels de la fenêtre (occupés par l'image précédente) qui ne sont pas occupés par l'image à afficher, et les pixels situés sur les contours de l'image à afficher (anti-aliasing), en tenant compte du coefficient de transparence affecté à chaque pixel de l'image à afficher. Si l'image à afficher est affectée d'un coefficient de transparence supérieur à 0 (non totalement opaque), l'image d'arrière- plan est également utilisée pour déterminer la valeur des pixels de l'image à afficher. Une fois que la fenêtre est remplie, le module 12 déclenche l'affichage de la fenêtre à la position sur l'écran déterminée à l'étape 51.  In the next step 53, the display module 12 generates a window having a delimited shape by accumulating the contours of the non-completely transparent pixel areas of the image to be displayed, that is to say the contours of the image. character of the image, and the outlines of non-fully transparent pixel areas of the displayed image. Such a window definition can be performed by juxtaposing rectangular windows one pixel high. In the next step 54, the module 12 fills the window by using the pixels of the image to be displayed, calculated in steps 51 and 52, the pixels of the background image, to define the value of the pixels of the image. the window (occupied by the previous image) that are not occupied by the image to be displayed, and the pixels located on the edges of the image to be displayed (anti-aliasing), taking into account the coefficient of transparency assigned to each pixel of the image to be displayed. If the image to display is assigned a transparency coefficient greater than 0 (not completely opaque), the background image is also used to determine the value of the pixels of the image to be displayed. Once the window is filled, the module 12 triggers the display of the window at the position on the screen determined in step 51.

Du fait que la fenêtre d'affichage inclut la forme de l'image précédente et de l'image à afficher, on est assuré que l'image précédente est totalement effacée par l'affichage de la nouvelle image, et ce que quelle que soit la cadence d'affichage des images de la séquence vidéo.  Since the display window includes the shape of the previous image and the image to be displayed, it is ensured that the previous image is completely erased by the display of the new image, and whatever the rate of display of the images of the video sequence.

Sur ordre du module de décompression 11, le module de restitution audio 13 envoie la séquence audio à la carte son 5 et commande la balance (niveau d'amplification relatif des deux haut-parleurs de l'ordinateur) en fonction de la position horizontale sur l'écran de l'image affichée. Sur ordre du module de décompression 1l, il peut également commander l'arrêt de la restitution du son, par exemple progressivement.  On order of the decompression module 11, the audio reproduction module 13 sends the audio sequence to the sound card 5 and controls the balance (relative amplification level of the two speakers of the computer) according to the horizontal position on the screen of the displayed image. On order of the decompression module 11, it can also control the stopping of the sound reproduction, for example gradually.

Pour disposer d'une image d'arrière plan toujours à jour, le module 14 d'analyse de l'image d'arrière-plan effectue périodiquement une capture d'écran avantageusement limitée à la zone d'affichage de la séquence vidéo englobant les zones rectangulaires d'affichage de toutes les images de la séquence vidéo, en excluant les pixels non totalement transparents de l'image à afficher. Avantageusement, cette capture est effectuée en plusieurs fois, par exemple 10% de la zone d' arrière-plan étant capturée à chaque affichage 2877482 -9- d'image. Si la zone d'arrière-plan capturée (excluant la silhouette du personnage) présente, par rapport à l'image capturée précédente une différence supérieure à un seuil prédéfini, par exemple 10% en nombre de pixels différents, le module 14 bloque temporairement l'affichage de la prochaine image pour capturer la zone d'image d'arrière-plan située à l'emplacement de la fenêtre, et commande le rafraîchissement des fenêtres d'autres applications éventuellement actives sur l'ordinateur, et de préférence uniquement les fenêtres présentant une partie située dans la zone d'affichage de la séquence vidéo.  In order to have an always up-to-date background image, the background image analysis module 14 periodically makes a screenshot advantageously limited to the display area of the video sequence encompassing the images. rectangular zones for displaying all the images of the video sequence, excluding the pixels that are not totally transparent from the image to be displayed. Advantageously, this capture is performed in several times, for example 10% of the background area being captured at each image display. If the captured background area (excluding the silhouette of the character) has, compared to the previous captured image, a difference greater than a predefined threshold, for example 10% in number of different pixels, the module 14 temporarily blocks the image. displaying the next image to capture the background image area located at the window location, and controls the windows refresh of other potentially active applications on the computer, and preferably only the windows having a portion located in the display area of the video sequence.

Le dispositif d'incrustation 1 décrit est avantageusement conçu pour être restituer simultanément plusieurs séquences vidéo. Dans ce cas, seule la séquence audio de la dernière séquence vidéo activée est restituée, et les images de cette séquence vidéo sont affichées au premier plan, éventuellement sur les images des autres séquences vidéo actives. A cet effet, la zone d'arrière-plan 17 mémorisée pour chaque séquence vidéo en cours de restitution est stockée dans une zone mémoire partagée accessible à tous les programmes d'affichage en cours d'exécution.  The inlay device 1 described is advantageously designed to be simultaneously render several video sequences. In this case, only the audio sequence of the last activated video sequence is restored, and the images of this video sequence are displayed in the foreground, possibly on the images of the other active video sequences. For this purpose, the background area 17 stored for each video sequence being restored is stored in a shared memory area accessible to all running display programs.

Claims (10)

É 2877482 - 10-REVENDICATIONS2877482 - 10-CLAIMS 1. Procédé d'incrustation sur un écran d'affichage d'ordinateur (40), d'un objet animé (41) apparaissant dans une séquence vidéo comportant une séquence d'images, le procédé comprenant pour chaque image à afficher de la séquence vidéo des étapes de: définition (53) d'une fenêtre d'affichage dont la forme est définie en fonction de contours de l'objet à incruster figurant dans l'image, insertion (54) de l'image dans la fenêtre d'affichage, affichage (54) de la fenêtre d'affichage sur une image d'arrière-plan affichée par l'écran d'ordinateur, caractérisé en ce que la fenêtre d'affichage définie pour chaque affichage d'une image épouse les contours de l'objet dans l'image à afficher et dans l'image affichée de la séquence vidéo, le procédé comprend en outre des étapes de: capture d'une zone d'image d'arrière-plan (17) où est affichée la fenêtre d'affichage, et insertion (54) dans les parties de la fenêtre d'affichage non occupées par l'objet de la zone d'image d'arrière-plan capturée correspondante pour effacer l'image affichée.  1. A method of embedding on a computer display screen (40), an animated object (41) appearing in a video sequence comprising a sequence of images, the method comprising for each image to display the sequence video of the steps of: defining (53) a display window whose shape is defined according to the contours of the object to be embedded in the image, insertion (54) of the image in the window of display, display (54) of the display window on a background image displayed by the computer screen, characterized in that the display window defined for each display of an image matches the contours of the object in the image to be displayed and in the displayed image of the video sequence, the method further comprises steps of: capturing a background image area (17) where the window is displayed display, and insertion (54) in parts of the display window not occupied by the object of the corresponding captured background image area to erase the displayed image. 2. Procédé selon la revendication 1, caractérisé en ce que les images de la séquence vidéo sont obtenues à partir d'une séquence vidéo d'origine en extrayant (23) de chacune des images de la séquence vidéo d'origine une zone d'image rectangulaire la plus petite possible incluant l'objet à incruster, chaque image de la séquence vidéo regroupant la zone d'image extraite et la position de la zone d'image extraite dans l'image d'origine.  2. Method according to claim 1, characterized in that the images of the video sequence are obtained from an original video sequence by extracting (23) from each of the images of the original video sequence an area of as small as possible rectangular image including the object to be embedded, each image of the video sequence gathering the extracted image area and the position of the extracted image area in the original image. 3. Procédé selon la revendication 1 ou 2, 30 caractérisé en ce que l'ordre dans lequel sont affichées les images de la séquence vidéo est défini dans un script associé à la séquence vidéo.  3. Method according to claim 1 or 2, characterized in that the order in which the images of the video sequence are displayed is defined in a script associated with the video sequence. 4. Procédé selon l'une des revendications 1 à 3,  4. Method according to one of claims 1 to 3, caractérisé en ce que la cadence des images dans la séquence vidéo est 35 supérieure ou égale à 25 images par seconde pour obtenir une animation fluide de l'objet incrusté.  characterized in that the frame rate of the images in the video sequence is greater than or equal to 25 frames per second to obtain a smooth animation of the embedded object. 5. Procédé selon l'une des revendications 1 à 4,  5. Method according to one of claims 1 to 4, 2877482 -11- caractérisé en ce que la séquence vidéo comporte une séquence audio qui est restituée en synchronisme avec l'affichage des images de la séquence vidéo.  Characterized in that the video sequence comprises an audio sequence which is rendered in synchronism with the display of the images of the video sequence. 6. Procédé selon la revendication 5, caractérisé en ce que la balance de restitution audio entre plusieurs hauts-parleurs de l'ordinateur est ajustée en fonction de la position de l'objet incrusté sur l'écran d'affichage.  6. Method according to claim 5, characterized in that the balance of audio restitution between several speakers of the computer is adjusted according to the position of the object inlaid on the display screen. 7. Procédé selon l'une des revendications 1 à 6,  7. Method according to one of claims 1 to 6, caractérisé en ce que préalablement à l'affichage de la fenêtre d'affichage de l'objet à incruster, un traitement (52) de suppression de crénelage est appliqué aux contours de l'objet.  characterized in that prior to displaying the display window of the object to be embedded, an alias deletion processing (52) is applied to the contours of the object. 8. Procédé selon l'une des revendications 1 à 7,  8. Method according to one of claims 1 to 7, caractérisé en ce que si l'image d'arrière-plan est modifiée à proximité de la fenêtre d'affichage, l'affichage de la fenêtre est bloqué temporairement pour capturer la zone d'image d'arrière-plan située à l'emplacement de la fenêtre, et une commande de rafraîchissement d'affichage est envoyée à d'autres applications en cours d'exécution par l'ordinateur.  characterized in that if the background image is changed near the display window, the window display is temporarily blocked to capture the background image area at the location window, and a display refresh command is sent to other applications running by the computer. 9. Procédé selon l'une des revendications 1 à 8,  9. Method according to one of claims 1 to 8, caractérisé en ce que l'image d'arrière-plan est capturée périodiquement pour détecter un changement.  characterized in that the background image is captured periodically to detect a change. 10. Procédé selon la revendication 9, caractérisé en ce que seule la zone de l'image d'arrière-plan dans laquelle l'objet est susceptible d'être incrusté est capturée pour détecter un changement.  10. The method of claim 9, characterized in that only the area of the background image in which the object is likely to be embedded is captured to detect a change.
FR0411723A 2004-11-03 2004-11-03 METHOD FOR INCRUSTATION OF A SEQUENCE OF VIDEO IMAGES OF ANY FORM ON A COMPUTER DISPLAY INTERFACE WITH WINDOWS Expired - Fee Related FR2877482B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0411723A FR2877482B1 (en) 2004-11-03 2004-11-03 METHOD FOR INCRUSTATION OF A SEQUENCE OF VIDEO IMAGES OF ANY FORM ON A COMPUTER DISPLAY INTERFACE WITH WINDOWS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0411723A FR2877482B1 (en) 2004-11-03 2004-11-03 METHOD FOR INCRUSTATION OF A SEQUENCE OF VIDEO IMAGES OF ANY FORM ON A COMPUTER DISPLAY INTERFACE WITH WINDOWS

Publications (2)

Publication Number Publication Date
FR2877482A1 true FR2877482A1 (en) 2006-05-05
FR2877482B1 FR2877482B1 (en) 2007-04-20

Family

ID=34951938

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0411723A Expired - Fee Related FR2877482B1 (en) 2004-11-03 2004-11-03 METHOD FOR INCRUSTATION OF A SEQUENCE OF VIDEO IMAGES OF ANY FORM ON A COMPUTER DISPLAY INTERFACE WITH WINDOWS

Country Status (1)

Country Link
FR (1) FR2877482B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892521A (en) * 1995-01-06 1999-04-06 Microsoft Corporation System and method for composing a display frame of multiple layered graphic sprites
US6121981A (en) * 1997-05-19 2000-09-19 Microsoft Corporation Method and system for generating arbitrary-shaped animation in the user interface of a computer
WO2002031776A1 (en) * 2000-10-12 2002-04-18 Noks-Com Ltd. Method and system for loading three dimensional visual objects into the video display area of a two dimensional graphical user interface
US20040109014A1 (en) * 2002-12-05 2004-06-10 Rovion Llc Method and system for displaying superimposed non-rectangular motion-video images in a windows user interface environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892521A (en) * 1995-01-06 1999-04-06 Microsoft Corporation System and method for composing a display frame of multiple layered graphic sprites
US6121981A (en) * 1997-05-19 2000-09-19 Microsoft Corporation Method and system for generating arbitrary-shaped animation in the user interface of a computer
WO2002031776A1 (en) * 2000-10-12 2002-04-18 Noks-Com Ltd. Method and system for loading three dimensional visual objects into the video display area of a two dimensional graphical user interface
US20040109014A1 (en) * 2002-12-05 2004-06-10 Rovion Llc Method and system for displaying superimposed non-rectangular motion-video images in a windows user interface environment

Also Published As

Publication number Publication date
FR2877482B1 (en) 2007-04-20

Similar Documents

Publication Publication Date Title
EP2455916B1 (en) Non-rigid tracking-based human-machine interface
US10839577B2 (en) Creating augmented reality self-portraits using machine learning
US20110273369A1 (en) Adjustment of imaging property in view-dependent rendering
US10321059B2 (en) Pixel readout of a charge coupled device having a variable aperture
US10853686B2 (en) Generation of salient contours using live video
US20110273466A1 (en) View-dependent rendering system with intuitive mixed reality
US9787899B1 (en) Multiple captures with a variable aperture
US10210664B1 (en) Capture and apply light information for augmented reality
US20200081529A1 (en) Image changes based on voice
FR2751772A1 (en) METHOD AND DEVICE OPERATING IN REAL TIME FOR LOCALIZATION AND LOCATION OF A RELATIVE MOTION AREA IN A SCENE, AS WELL AS FOR DETERMINING THE SPEED AND DIRECTION OF MOVEMENT
WO2011124830A1 (en) A method of real-time cropping of a real entity recorded in a video sequence
EP3635719A1 (en) Systems and methods for generating a summary storyboard from a plurality of image frames
FR2917931A1 (en) METHOD AND SYSTEM FOR CONNECTING PEOPLE IN A TELECOMMUNICATIONS SYSTEM.
US20230131667A1 (en) Hand Presence Over Keyboard Inclusiveness
US10373344B2 (en) Image processing apparatus and method for adjusting intensity of a reflective property of an object in a displayed image
US9449427B1 (en) Intensity modeling for rendering realistic images
US11836847B2 (en) Systems and methods for creating and displaying interactive 3D representations of real objects
CN111131692B (en) Method and system for creating augmented reality self-imagery using machine learning
EP3210378B1 (en) Method for collecting image data for producing immersive video and method for viewing a space on the basis of the image data
FR2877482A1 (en) Animated object e.g. person, inlay method for computer screen, involves capturing background image zone where view port, whose shape adopts to contours of object in image to be displayed and displayed image of video sequence, is displayed
US20230396750A1 (en) Dynamic resolution of depth conflicts in telepresence
US11224801B2 (en) Enhanced split-screen display via augmented reality
CN109859258B (en) Interface processing method and device and electronic equipment
US11176728B2 (en) Adaptive depth-guided non-photorealistic rendering method and device
WO2019110395A1 (en) Method for interacting with a subtitle displayed on a television screen, device, computer program product and recording medium for implementing such a method

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20150731