WO2013087935A1 - Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel - Google Patents

Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel Download PDF

Info

Publication number
WO2013087935A1
WO2013087935A1 PCT/EP2012/075828 EP2012075828W WO2013087935A1 WO 2013087935 A1 WO2013087935 A1 WO 2013087935A1 EP 2012075828 W EP2012075828 W EP 2012075828W WO 2013087935 A1 WO2013087935 A1 WO 2013087935A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
frame
video sequence
embedded
opacity
Prior art date
Application number
PCT/EP2012/075828
Other languages
English (en)
Inventor
Guillaume LEMOINE
Original Assignee
Guillaume LEMOINE
Phonitive
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 Guillaume LEMOINE, Phonitive filed Critical Guillaume LEMOINE
Priority to EP12808803.6A priority Critical patent/EP2791778A1/fr
Priority to US14/364,941 priority patent/US8866970B1/en
Publication of WO2013087935A1 publication Critical patent/WO2013087935A1/fr

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/265Mixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • G09G2340/125Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels wherein one of the images is motion video
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/14Solving problems related to the presentation of information to be displayed
    • G09G2340/145Solving problems related to the presentation of information to be displayed related to small screens

Definitions

  • the present invention relates to the general field of image processing, in particular video sequences on mobile terminals. It relates more particularly to a method of embedding real-time images within a video sequence representing for example characters in motion.
  • the invention relates to a method for processing video sequences on mobile terminals, more specifically, a real-time image inlay in the video stream.
  • the video stream is read with the embedded images.
  • the image is merged with the video stream, frame by frame. For each frame, the image is positioned at the right place. This method involves the fact that the image undergoes in real time a trapezoidal matrix transformation so that it can adapt to the video stream.
  • the invention aims firstly at a method of incrustation of an image to be embedded in a video sequence, for a mobile terminal of the tablet type or smartphone,
  • step 100 may also occur after the beginning of step 300 of playing the video.
  • the method comprises a step 600 of applying a deformation to the image to be embedded, so as to match this image to be embedded in the shape of the keying area.
  • the method comprises a step 750 of tracking the movement of an incrustation zone, by identification of the pixel movements, or in real time using the known motion detection algorithms, shapes, or object recognition by learning, either in pre-production.
  • step 500 the identification of the keying area is done by touch input by a user on the display interface of the mobile terminal
  • step 500 in the case where the key points are not pre-calculated, keying points defining the keying area are calculated in real time by the mobile terminal, by using keying methods. recognition of images by motion detection or object recognition by learning.
  • step 500 in the case of a prior determination of the key points, a file containing the coordinates of the key points in the video sequence is associated with said video sequence, so as to be read (at the latest at the same time) by the mobile terminal.
  • the method comprises means for reading a table of coordinates, associated with the video sequence, these coordinates representing, for each frame, the positions of the four extreme points of the incrustation zone, that is to say of the image to be embedded in the video.
  • step 700 to insert the image to be embedded, when the video is displayed in real time on the mobile terminal, the method implements a function responsible for seeking the transformation of the image to be embedded with respect to the current frame, said function being called at each frame display.
  • step 700 to insert the image to be embedded, the image of the video is merged with the image to be embedded by re-calculating a resulting image by merging the images. raw data of the two images, and this one is displayed.
  • the method comprises the following steps:
  • the method includes a step of synchronizing the mask with the video sequence.
  • the sequence video and the mask are synchronized by a process of double video: the original video sequence being played in a first part, intended to be displayed, and a second part, not displayed, of this video sequence containing only the information allowing the color changes and modifying the opacity of the video sequence, the method comprising, during the display of the video sequence on the mobile terminal, a step of applying the opacity and / or color transformations given by the second part on the first part.
  • the opacity or mask information is encoded in a color management format, a color channel managing the opacity, and other channels managing the objects.
  • FIG. 1 a flowchart of the steps involved in the present process
  • Figure 2 an illustration of a frame of a video sequence in the case of application of an opacity on a part of the image.
  • the invention implements a display terminal, here but not limited to smartphone type.
  • This display terminal is, in the present non-limiting embodiment, supposed to have means for storing image sequences, calculation means, for example of the microprocessor type, adapted to execute a software application previously loaded in memory, image display means, and advantageously data input means by a user of said terminal.
  • the invention relates to a method for processing a video sequence on a mobile terminal, in particular of the smartphone type.
  • the video sequence of which he As an example, here are characters or objects moving within the display area during the video sequence.
  • the purpose of the method is then to embed an image, called the image to be embedded, on a part of an object (for example the face of a character), called the incrustation zone, this image to be embedded according to the movement of the this object's overlay area during the video sequence, so as to create a sense of realism.
  • the keying area may typically be the face of a moving character, said character approaching or moving away from the camera, and the face facing or turning during the sequence.
  • the overlay area is a shape that includes the portion of the object to be replaced by the image to be embedded.
  • the image to be embedded is trapezoidal, rectangular, polygonal or elliptical.
  • the shape of the incrustation zone is, in the present nonlimiting example of implementation of the method, of the same type as the image to be embedded: for example, if the image to be embedded has the shape of a polygon, the area of inlay will be a polygon having the same number of edges, while being possibly deformed (different angles and lengths of the different edges). Similarly, if the image to be embedded has the shape of an ellipse, the key area will also be elliptical.
  • the method makes it possible to determine a deformation function of the incrustation zone, then to deform the image to be embedded in a similar way.
  • this method includes a step of pre-calculating particular points of the video sequence, called points. incrustation (ie coordinates in time and on a predetermined area of the display area) defining the area of incrustation, so as not to require third intervention during the inlay, and be quite sparing in computing resources for use on mobile devices.
  • points. incrustation ie coordinates in time and on a predetermined area of the display area
  • key points are calculated in real time by the mobile terminal. This is achieved for example by using image recognition methods by motion detection or object recognition by learning.
  • the image to be embedded is merged with the video stream, frame by frame.
  • the image to be embedded is positioned at the right place, ie at the location of the overlay area, reproducing the shape.
  • Positioning at the location of the keying area requires prior identification of a moving area integrated in the video stream, by identifying pixel movements in real time using known motion detection algorithms, shapes, or recognition object by learning, either in pre-production.
  • a file containing the coordinates of the key points in the video sequence is associated with said video sequence, so as to be read (at the latest at the same time) by the terminal mobile.
  • each video sequence corresponds to an array of coordinates which represent for each frame, the positions of the four extreme points of the incrustation area, that is to say of the image to be placed in the video.
  • the process can use two techniques:
  • the image to be embedded is displayed at these coordinates, after having been deformed to be fixed on the corresponding coordinates (four points in the case of a trapezoid) . That is to say that, in a particular mode of implementation, not limiting, the shape of the image to be embedded and its position in the image must correspond exactly to the shape and position of the inlay area to this moment of the video sequence.
  • the image of the video is merged with the image to be incrusted by recalculating a resulting image by merging the raw data of the two images, and then this one is displayed.
  • This second technique saves the resources of the mobile terminal.
  • the pants is highlighted (which corresponds to the area to be embedded). Information about these pants can then be displayed in a new window.
  • the method comprises a first step 100 of choosing the image to be embedded.
  • a second step 200 the image to be embedded is resized by an adjustment of the user.
  • step 300 the video sequence is read. Then, in step 300, the video sequence is read. Then a frame of this video sequence is displayed in step 400.
  • step 500 determines whether the frame has a keying area (to check if this image is likely to receive an image to be embedded).
  • step 400 If this is not the case, the process returns to step 400, otherwise the step
  • a trapezoidal deformation is applied to the image to be embedded in such a way that the shape of the image to be imaged corresponds to the shape of the incrustation zone.
  • step 700 this image is displayed in step 700, replacing the overlay area. After this last step, the process returns to step 400.
  • a step of the method consists in making the video sequence more or less opaque by locations.
  • the image to be embedded can be a color mask, it is necessary to be able to synchronize the mask with the video sequence concerned: the display of the mask on the video sequence must be perfectly synchronized.
  • the video sequence and the mask are synchronized by a double video process: the original video sequence (without mask) is played in the visible part, but a non-displayed part of this video sequence is composed by the mask.
  • the opacity or mask information is encoded in the RGB (or other color management system) format, a color channel that handles the opacity, and the others. channels managing the objects.
  • the object to be embedded is a car 210, and we want to change the color of the head of a pedestrian 220 present on the original video sequence.
  • the opacity is coded on the B channel (Blue) and the color change on the R channel (Red).
  • the video sequence is here decomposed into two parts: a first part 230, here but not limited to the upper part of the image of the transmitted video file, representing the inlaid object (the car) and the original video sequence, a second part 240 , here but not limited to the lower part of the image of the transmitted video file, displaying only the information allowing the color changes and the modification of the opacity of the video sequence.
  • the information is thus encoded in a single video file, and the display is responsible for applying the opacity and / or color transformations given by the lower part on the upper part.
  • the process then comprises the following additional steps:
  • the opacity is managed on the red channel, in the lower field weft less than one pixel having a color in RGB corresponding to a value FF0000 in hexadecimal. So we recover the R value here FF, to apply it on the opacity of the pixel to be displayed on the main frame.
  • the Alpha channel (opacity) of the main frame will therefore have value for the corresponding pixel FF.
  • the transformation can be a color change. To can change the color of different objects in real time, you must be able to create matching masks.
  • Each mask is encoded in RGB on the second part of the frame. This encoding consists of 2 parts: one channel is used to manage the opacity of the mask, another channel to identify the masks.
  • the embedded image gives the impression of blending into the context of the video.
  • the calculation and display is done on a mobile terminal.
  • the method makes it possible to modify the object of the video by a tactile interaction.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)

Abstract

Le procédé d'incrustation d'une image à incruster au sein d'une séquence vidéo, pour terminal mobile de type tablette ou smartphone, comporte des étapes : 100 : de choix d'une image à incruster, 300 : de lecture de la séquence vidéo, 400 : d'affichage de la trame, 500 : de détermination de la présence d'une zone d'incrustation sur la trame, ladite zone d'incrustation étant préalablement identifiée, ou déduite selon un algorithme prédéfini, 600 : d'application d'une déformation sur l'image à incruster, de manière à faire coïncider cette image à incruster à la forme de la zone d'incrustation, 700 : d'affichage de l'image combinant la trame et l'image à incruster, disposée à la place de la zone d'incrustation.

Description

PROCÉDÉ DE TRAITEMENT DE SÉQUENCE VIDÉO SUR LES TERMINAUX
MOBILES EN TEMPS RÉEL
La présente invention est relative au domaine général du traitement d'images, notamment de séquences vidéo sur des terminaux mobiles. Elle concerne plus particulièrement un procédé d'incrustation d'images en temps réel au sein d'une séquence vidéo représentant par exemple des personnages en mouvement.
Préambule et art antérieur
On connaît déjà dans ce domaine des applications qui réalisent un suivi ("tracking") et un traitement informatique permettant de créer des transformations morphologiques successives résultants de calculs complexes ("morphing") sur un flux video. Néanmoins ces applications nécessitent généralement un traitement préalable et ne peuvent donc être qualifiées d'applications temps réel.
On connaît de même d'autres applications web (écrites en langage flash) qui permettent d'intégrer une image dans un flux vidéo en temps réel. Un traitement est appliqué à l'image afin qu'elle suive les déformations dues aux perspectives présentes dans le flux vidéo. Cette solution est uniquement disponible sur les réseaux interconnectés. Exposé de l'invention
L'invention concerne un procédé de traitement de séquence vidéo sur les terminaux mobiles, plus précisément, une incrustation en temps réel d'image dans le flux vidéo. Après un calcul des points d'incrustation, le flux vidéo est lu avec les images incrustées. Afin de réaliser l'incrustation, l'image est fusionnée au flux vidéo, trame par trame. Pour chaque trame, l'image est positionnée au bon endroit. Ce procédé implique le fait que l'image subisse en temps réel une transformation matricielle trapézoïdale afin qu'elle puisse s'adapter au flux vidéo.
L'invention vise en premier lieu un procédé d'incrustation d'une image à incruster au sein d'une séquence vidéo, pour terminal mobile de type tablette ou smartphone,
caractérisé en ce qu'il comporte des étapes :
100 : de choix d'une image à incruster,
300 : de lecture de la séquence vidéo,
400 : d'affichage de la trame,
500 : de détermination de la présence d'une zone d'incrustation sur la trame, ladite zone d'incrustation étant préalablement identifiée sur la trame, ou déduite du contenu de la trame selon un algorithme prédéfini,
et si une zone d'incrustation est identifiée sur la trame courante,
700 : d'affichage de l'image combinant la trame et l'image à incruster, disposée à la place de la zone d'incrustation.
On note que l'étape 100 peut intervenir également après le commencement de l'étape 300 de lecture de la vidéo.
Dans un mode particulier de mise en œuvre, le procédé comporte une étape 600 d'application d'une déformation sur l'image à incruster, de manière à faire coïncider cette image à incruster à la forme de la zone d'incrustation.
Dans un mode particulier de mise en œuvre, le procédé comporte une étape 750 de suivi du mouvement d'une zone d'incrustation, par identification des mouvements de pixels, soit en temps réel en utilisant les algorithmes connu de détection de mouvements, formes, ou reconnaissance d'objet par apprentissage, soit en pré-production.
Selon un mode de mise en œuvre, dans l'étape 500, l'identification de la zone d'incrustation est faite par entrée tactile par un utilisateur sur l'interface d'affichage du terminal mobile
Alternativement, dans l'étape 500, dans le cas où les points d'incrustation ne sont pas pré-calculés, des points d'incrustation définissant la zone d'incrustation sont calculés en temps réel par le terminal mobile, en utilisant des procédés de reconnaissances d'images par détection de mouvement ou reconnaissance d'objets par apprentissage.
Dans un mode particulier de mise en œuvre, dans l'étape 500, dans le cas d'une détermination préalable des points d'incrustation, un fichier comportant les coordonnées des points d'incrustation dans la séquence vidéo est associé à ladite séquence vidéo, de manière à être lu (au plus tard en même temps) par le terminal mobile.
Dans un mode particulier de mise en œuvre, dans l'étape 500, dans le cas d'une zone d'incrustation de forme trapézoïdale, le procédé comporte des moyens de lecture d'un tableau de coordonnées, associé à la séquence vidéo, ces coordonnées représentant, pour chaque trame, les positions des quatre points extrêmes de la zone d'incrustation, c'est-à-dire de l'image à incruster dans la vidéo.
Dans un mode particulier de mise en œuvre, dans l'étape 700, pour insérer l'image à incruster, lorsque la vidéo est affichée en temps réel sur le terminal mobile, le procédé met en œuvre une fonction chargée de chercher la transformation de l'image à incruster par rapport à la trame courante, ladite fonction étant appelée à chaque affichage de trame.
Dans un mode particulier de mise en œuvre, dans l'étape 700, pour insérer l'image à incruster, l'image de la vidéo est fusionnée avec l'image à incruster par re-calcul d'une image résultante par la fusion des données brutes des deux images, puis celle-ci est affichée.
Dans un mode particulier de mise en œuvre, le procédé comporte des étapes suivantes :
1320 lecture d'une trame de la séquence vidéo,
1330 division de la trame en au moins deux parties,
1350 lecture de la première partie représentant la séquence vidéo d'origine,
1360 lecture des informations d'opacité sur une seconde partie de la trame, correspondant à la trame secondaire,
1370 application de l'opacité sur la trame principale : détection des variations de couleur sur la trame inférieure sur un canal couleur pour modifier l'opacité sur la trame principale,
1800 affichage des masques de couleur.
Avantageusement, dans le cas où l'image à incruster est un masque de couleur le procédé comporte une étape de synchronisation du masque avec la séquence vidéo.
Dans un mode particulier de mise en œuvre, dans ce cas, la séquence vidéo et le masque sont synchronisés par un processus de double vidéo : la séquence vidéo originale se jouant dans une première partie, destinée à être affichée, et une seconde partie, non affichée, de cette séquence vidéo comportant uniquement les informations permettant les changements de couleur et la modification de l'opacité de la séquence vidéo, le procédé comportant, lors de l'affichage de la séquence vidéo sur le terminal mobile, une étape d'application des transformations d'opacité et/ou de couleurs données par la seconde partie sur la première partie.
Dans un mode plus particulier de réalisation, afin de différencier l'opacité des masques de couleurs appliqués, les informations d'opacité, ou de masque sont encodées dans un format de gestion des couleurs, un canal de couleur gérant l'opacité, et les autres canaux gérant les objets.
Présentation des figures
Les caractéristiques et avantages de l'invention seront mieux appréciés grâce à la description qui suit, description qui expose les caractéristiques de l'invention au travers d'un exemple non limitatif d'application.
La description s'appuie sur les figures annexées qui représentent :
Figure 1 : un organigramme des étapes impliquées dans le présent procédé,
Figure 2 : une illustration d'une trame d'une séquence vidéo dans le cas d'application d'une opacité sur une partie de l'image.
Description détaillée d'un mode de réalisation de l'invention
L'invention met en œuvre un terminal d'affichage, ici mais non limitativement de type smartphone. Ce terminal d'affichage est, dans le présent exemple non limitatif de réalisation, supposé doté de moyens de mémorisation de séquences d'images, de moyens de calcul, par exemple de type microprocesseur, adaptés à exécuter une application logicielle préalablement chargée en mémoire, de moyens d'affichage d'images, et avantageusement de moyens d'entrée de données par un utilisateur dudit terminal.
L'invention concerne un procédé de traitement d'une séquence vidéo sur un terminal mobile, notamment de type smartphone. La séquence vidéo dont il est ici question à titre d'exemple comporte des personnages ou des objets se déplaçant au sein de la zone d'affichage durant la séquence vidéo.
Le but du procédé est alors d'incruster une image, dite image à incruster, sur une partie d'un objet (par exemple le visage d'un personnage), dite zone d'incrustation, cette image à incruster suivant le mouvement de la zone d'incrustation de cet objet au cours de la séquence vidéo, de manière à créer une impression de réalisme.
On entend par image :
toute image 2D
toute image d'un objet 3D
tous masque de couleurs.
une séquence vidéo composée d'images successives La zone d'incrustation peut typiquement être le visage d'un personnage en mouvement, ledit personnage se rapprochant ou s'éloignant de la caméra, et le visage étant de face ou se tournant durant la séquence. La zone d'incrustation est une forme englobant la partie de l'objet à remplacer par l'image à incruster.
Typiquement, l'image à incruster est de forme trapézoïdale, rectangulaire, polygonale ou elliptique. La forme de la zone d'incrustation est, dans le présent exemple non limitatif de mise en œuvre du procédé, de même type que l'image à incruster : par exemple, si l'image à incruster présente la forme d'un polygone, la zone d'incrustation sera un polygone présentant le même nombre d'arêtes, tout en étant éventuellement déformé (angles différents et longueurs des arêtes différentes). De même, si l'image à incruster a la forme d'une ellipse, la zone d'incrustation sera également elliptique.
Dans le cas fréquent où la zone d'incrustation subit une déformation durant la séquence vidéo du fait du mouvement de l'objet relativement au point de prise de vue, le procédé permet de déterminer une fonction de déformation de la zone d'incrustation, puis de déformer de façon analogue l'image à incruster.
Dans un mode particulier de réalisation, ce procédé inclut une étape de pré-calcul de points particuliers de la séquence vidéo, dits points d'incrustation (c'est à dire des coordonnées dans le temps et sur une zone prédéterminée de la zone d'affichage) définissant la zone d'incrustation, afin de ne pas nécessiter d'intervention tierce durant l'incrustation, et d'être assez économe en ressources de calcul pour pouvoir être utilisé sur des terminaux mobiles.
Dans le cas oùles points d'incrustation ne sont pas pré-calculés, des points d'incrustation sont calculés en temps réel par le terminal mobile. Ceci est réalisé par exemple en utilisant des procédés de reconnaissances d'images par détection de mouvement ou reconnaissance d'objets par apprentissage.
Puis, afin de réaliser l'incrustation, l'image à incruster est fusionnée au flux vidéo, trame par trame.
Pour chaque trame, l'image à incruster est positionnée au bon endroit, c'est à dire à l'emplacement de la zone d'incrustation, en en reproduisant la forme.
Le positionnement à l'emplacement de la zone d'incrustation nécessite une identification préalable d'une zone mouvante intégrée au flux vidéo, par identification des mouvements de pixels soit en temps réel en utilisant les algorithmes connu de détection de mouvements, formes, ou reconnaissance d'objet par apprentissage, soit en pré-production.
Dans le cas de pré-production, c'est à dire d'une détermination préalable des points d'incrustation, manuellement ou par exécution d'une application logicielle si l'extraction des points d'incrustation est complexe (par exemple dans le cas de recherche d'un élément particulier de l'objet), un fichier comportant les coordonnées des points d'incrustation dans la séquence vidéo est associé à ladite séquence vidéo, de manière à être lu (au plus tard en même temps) par le terminal mobile.
De plus, il implique le fait que l'image subisse en temps réel une transformation matricielle, par exemple trapézoïdale afin qu'elle puisse s'adapter au flux vidéo. Cette transformation est calculée pour que l'image puisse être déformée afin de s'adapter à la perspective.
Dans ce cas d'une zone d'incrustation trapézoïdale, à chaque séquence vidéo correspond un tableau de coordonnées qui représentent pour chaque trame, les positions des quatre points extrêmes de la zone d'incrustation, c'est- à-dire de l'image à placer dans la vidéo.
Pour insérer l'image à incruster, le procédé peut utiliser deux techniques :
1 / Soit, lorsque la vidéo est jouée (c'est à dire affichée en temps réel), une fonction chargée de chercher la transformation par rapport à la trame courante est appelée à chaque affichage de trame.
Si des coordonnées d'une zone d'incrustation sont disponibles pour cette trame, l'image à incruster est affichée, à ces coordonnées, après avoir été déformée pour être fixée sur les coordonnées correspondantes (quatre points dans le cas d'un trapèze). C'est à dire que, dans un mode particulier de mise en œuvre, non limitatif, la forme de l'image à incruster et sa position dans l'image doivent correspondre exactement à la forme et la position de la zone d'incrustation à ce moment de la séquence vidéo.
Dans le cas contraire, si les coordonnées d'une zone d'incrustation ne sont pas disponibles, l'image à incruster n'est pas affichée.
21 Soit, l'image de la vidéo est fusionnée avec l'image à incruster par recalcul d'une image résultante par la fusion des données brutes des deux images, puis celle-ci est affichée. Cette deuxième technique permet d'économiser les ressources du terminal mobile.
Elle permet de réaliser des vidéos qui réagissent au toucher et se modifient en fonction de ce dernier dans une utilisation sur un terminal mobile disposant d'une fonction tactile.
Par exemple, dans une publicité, si l'utilisateur touche le pantalon d'un personnage sur l'affichage vidéo, le pantalon passe en subrillance (qui correspond à la zone à incruster). Une information sur ce pantalon peut alors être affichée dans une nouvelle fenêtre.
En référence à la figure 1 , on voit que le procédé comporte une première étape 100 de choix de l'image à incruster.
Dans une seconde étape 200, l'image à incruster est redimensionnée par un ajustement de l'utilisateur.
Ensuite, dans l'étape 300, la séquence vidéo est lue. Puis une trame de cette séquence vidéo est affichée dans l'étape 400.
Ensuite, l'étape 500 détermine si la trame comporte une zone d'incrustation (pour vérifier si cette image est susceptible de recevoir une image à incruster).
Si ce n'est pas le cas, le procédé retourne à l'étape 400, sinon, l'étape
600 est lancée.
Dans cette étape 600, une déformation trapézoïdale est appliquée à l'image à incruster de manière à ce que la forme de l'image à incruster corresponde à la forme de la zone d'incrustation.
Puis cette image est affichée dans l'étape 700, en remplacement de la zone d'incrustation. Après cette dernière étape, le procédé retourne à l'étape 400.
Détermination des plans d'incrustation et de l'opacité des objets à incruster
Afin de pouvoir appliquer des effets (ombres, effet de lumière, passage au second plan de l'image à incruster) sur la séquence vidéo, dans une variante de réalisation, une étape du procédé consiste à rendre la séquence vidéo plus ou moins opaque par endroits.
L'image à incruster pouvant être un masque de couleur, il est nécessaire de pouvoir synchroniser le masque avec la séquence vidéo concernée : l'affichage du masque sur la séquence de video doit être parfaitement synchronisé.
Pour ce faire, la séquence vidéo et le masque sont synchronisés par un processus de double vidéo : la séquence vidéo originale (sans masque) se joue dans la partie visible, mais une partie non affichée de cette séquence vidéo est composée par le masque.
Afin de différencier l'opacité des masques de couleurs appliqués, les informations d'opacité, ou de masque sont encodées dans le format RGB (ou tout autre système de gestion des couleurs), un canal de couleur gérant l'opacité, et les autres canaux gérant les objets.
Par exemple, comme on le voit sur la figure 2, l'objet à incruster est une voiture 210, et l'on souhaite changer la couleur de la tête d'un piéton 220 présent sur la séquence vidéo originale.
L'opacité est codée sur le canal B (Bleu) et le changement de couleur sur le canal R (Rouge).
La séquence vidéo est ici décomposée en deux parties : une première partie 230, ici mais non limitativement la partie supérieure de l'image du fichier vidéo transmis, représentant l'objet incrusté (la voiture) et la séquence vidéo originale, une seconde partie 240, ici mais non limitativement la partie inférieure de l'image du fichier vidéo transmis, n'affichant que les informations permettant les changements de couleur et la modification de l'opacité de la séquence vidéo.
Les informations sont donc encodées dans un seul fichier vidéo, et l'affichage est chargé d'appliquer les transformations d'opacité et/ou de couleurs données par la partie inférieur sur la partie supérieure. Le procédé comporte alors des étapes additionnelles suivantes :
1310 Chargement du fichier vidéo à modifier par incrustation d'une image,
1320 Lecture d'une trame de la séquence vidéo,
1330 Division de la trame en au moins deux parties,
1350 Lecture de la partie supérieure (vidéo d'origine),
1360 Lecture des informations d'opacité sur une seconde partie de la trame, correspondant à sur la trame secondaire,
1370 Application de l'opacité sur la trame principale : détection des variations de couleur sur la trame inférieure sur un canal couleur pour modifier l'opacité sur la trame principale.
Par exemple, on considère que l'opacité est gérée sur le canal rouge, dans la trame inférieure a trame inférieure a une pixel ayant une couleur en RGB correspondant a une valeur FF0000 en hexadécimal. On récupère donc la valeur R ici FF, pour l'appliquer sur l'opacité du pixel à afficher sur la trame principale. Le canal Alpha (opacité) de la trame principale aura donc pour valeur pour le pixel correspondant FF.
800 Affichage des masques de couleur
La transformation peut être un changement de couleur. Pour pouvoir modifier la couleur de différents objets en temps réel, il faut être capable de créé des masques correspondants.
Chaque masque est encodé en RGB sur la seconde partie de la trame. Cette encodage est composé de 2 parties : un canal est utilisé pour gérer l'opacité du masque, un autre canal pour identifier le masques.
Prenons par exemple une opacité sur encodé sur le canal R. Si la valeur du pixel est AA1 122, il sera possible d'en déduire que le masque 1 122 doit être affiché, avec une opacité ayant pour valeur AA. Avantages
Le procédé tel qu'il a été décrit présente plusieurs avantages:
- l'image incrustée donne une impression de se fondre dans le contexte de la vidéo.
- l'image apparaît exactement au moment où la trame du flux vidéo est affichée.
- plusieurs images peuvent être incrustées dans une vidéo, et en même temps, si plusieurs zones d'incrustations ont été définies.
- le calcul de la position de l'image se fait en temps réel.
- Le calcul et l'affichage se fait sur un terminal mobile.
- Le procédé permet de modifier l'objet de la vidéo par une interaction tactile.

Claims

REVENDICATIONS
1 . Procédé d'incrustation d'une image à incruster au sein d'une séquence vidéo, pour terminal mobile de type tablette ou smartphone,
caractérisé en ce qu'il comporte des étapes :
100 : de choix d'une image à incruster,
300 : de lecture de la séquence vidéo,
400 : d'affichage de la trame,
500 : de détermination de la présence d'une zone d'incrustation sur la trame, ladite zone d'incrustation étant préalablement identifiée sur la trame, ou déduite du contenu de la trame selon un algorithme prédéfini,
et si une zone d'incrustation est identifiée sur la trame courante,
700 : d'affichage de l'image combinant la trame et l'image à incruster, disposée à la place de la zone d'incrustation.
2. Procédé selon la revendication 1 , caractérisé en ce qu'il comporte une étape 600 d'application d'une déformation sur l'image à incruster, de manière à faire coïncider cette image à incruster à la forme de la zone d'incrustation.
3. Procédé selon l'une quelconque des revendications 1 à 2, caractérisé en ce qu'il comporte une étape 750 de suivi du mouvement d'une zone d'incrustation, par identification des mouvements de pixels, soit en temps réel en utilisant les algorithmes connu de détection de mouvements, formes, ou reconnaissance d'objet par apprentissage, soit en pré-production.
4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que, dans l'étape 500, l'identification de la zone d'incrustation est faite par entrée tactile par un utilisateur sur l'interface d'affichage du terminal mobile
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que, dans l'étape 500, dans le cas où les points d'incrustation ne sont pas pré-calculés, des points d'incrustation définissant la zone d'incrustation sont calculés en temps réel par le terminal mobile, en utilisant des procédés de reconnaissances d'images par détection de mouvement ou reconnaissance d'objets par apprentissage.
6. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que, dans l'étape 500, dans le cas d'une détermination préalable des points d'incrustation, un fichier comportant les coordonnées des points d'incrustation dans la séquence vidéo est associé à ladite séquence vidéo, de manière à être lu (au plus tard en même temps) par le terminal mobile.
7. Procédé selon la revendication 6, caractérisé en ce que, dans l'étape 500, dans le cas d'une zone d'incrustation de forme trapézoïdale, le procédé comporte des moyens de lecture d'un tableau de coordonnées, associé à la séquence vidéo, ces coordonnées représentant, pour chaque trame, les positions des quatre points extrêmes de la zone d'incrustation, c'est-à-dire de l'image à incruster dans la vidéo.
8. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que, dans l'étape 700, pour insérer l'image à incruster, lorsque la vidéo est affichée en temps réel sur le terminal mobile, le procédé met en œuvre une fonction chargée de chercher la transformation de l'image à incruster par rapport à la trame courante, ladite fonction étant appelée à chaque affichage de trame.
9. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que, dans l'étape 700, pour insérer l'image à incruster, l'image de la vidéo est fusionnée avec l'image à incruster par re-calcul d'une image résultante par la fusion des données brutes des deux images, puis celle-ci est affichée.
10. Procédé selon l'une quelconque des revendications 1 à 9, caractérisé en ce qu'il comporte des étapes suivantes :
1320 lecture d'une trame de la séquence vidéo, 1330 division de la trame en au moins deux parties,
1350 lecture de la première partie représentant la séquence vidéo d'origine,
1360 lecture des informations d'opacité sur une seconde partie de la trame, correspondant à la trame secondaire,
1370 application de l'opacité sur la trame principale : détection des variations de couleur sur la trame inférieure sur un canal couleur pour modifier l'opacité sur la trame principale,
1800 affichage des masques de couleur.
1 1 . Procédé selon la revendication 10, caractérisé en ce que, dans le cas où l'image à incruster est un masque de couleur, le procédé comporte une étape de synchronisation du masque avec la séquence vidéo.
12. Procédé selon la revendication 1 1 , caractérisé en ce que la séquence vidéo et le masque sont synchronisés par un processus de double vidéo : la séquence vidéo originale se jouant dans une première partie, destinée à être affichée, et une seconde partie, non affichée, de cette séquence vidéo comportant uniquement les informations permettant les changements de couleur et la modification de l'opacité de la séquence vidéo, le procédé comportant, lors de l'affichage de la séquence vidéo sur le terminal mobile, une étape d'application des transformations d'opacité et/ou de couleurs données par la seconde partie sur la première partie.
13. Procédé selon la revendication 12, caractérisé en ce que, afin de différencier l'opacité des masques de couleurs appliqués, les informations d'opacité, ou de masque sont encodées dans un format de gestion des couleurs, un canal de couleur gérant l'opacité, et les autres canaux gérant les objets.
PCT/EP2012/075828 2011-12-16 2012-12-17 Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel WO2013087935A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP12808803.6A EP2791778A1 (fr) 2011-12-16 2012-12-17 Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel
US14/364,941 US8866970B1 (en) 2011-12-16 2012-12-17 Method for real-time processing of a video sequence on mobile terminals

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1161847A FR2984668B3 (fr) 2011-12-16 2011-12-16 Procede de traitement de sequence video sur les terminaux mobiles en temps reel
FR1161847 2011-12-16

Publications (1)

Publication Number Publication Date
WO2013087935A1 true WO2013087935A1 (fr) 2013-06-20

Family

ID=47469980

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2012/075828 WO2013087935A1 (fr) 2011-12-16 2012-12-17 Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel

Country Status (4)

Country Link
US (1) US8866970B1 (fr)
EP (1) EP2791778A1 (fr)
FR (1) FR2984668B3 (fr)
WO (1) WO2013087935A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022062417A1 (fr) * 2020-09-22 2022-03-31 北京沃东天骏信息技术有限公司 Procédé d'incorporation d'une image dans une vidéo, et procédé et appareil d'acquisition de modèle de prédiction planaire

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10154196B2 (en) 2015-05-26 2018-12-11 Microsoft Technology Licensing, Llc Adjusting length of living images
FR3066671B1 (fr) 2017-05-18 2020-07-24 Darmon Yves Procede d'incrustation d'images ou de video au sein d'une autre sequence video
WO2019239396A1 (fr) * 2018-06-12 2019-12-19 Kliots Shapira Ela Procédé et système de segmentation automatique en temps réel d'images de flux vidéo haute définition en éléments constitutifs et de modification d'éléments dans chaque image pour créer simultanément de multiples vues linéaires différentes à partir de la même source vidéo
CN112738325B (zh) * 2020-12-25 2021-11-23 浙江工业大学 一种基于Android手机的智能LED识别方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5398074A (en) * 1992-11-24 1995-03-14 Thomson Consumer Electronics, Inc. Programmable picture-outside-picture display
US6008860A (en) * 1995-12-29 1999-12-28 Thomson Consumer Electronics, Inc. Television system with provisions for displaying an auxiliary image of variable size
US6201879B1 (en) * 1996-02-09 2001-03-13 Massachusetts Institute Of Technology Method and apparatus for logo hiding in images
KR100616258B1 (ko) * 1996-05-06 2007-04-25 코닌클리케 필립스 일렉트로닉스 엔.브이. 그래픽이미지와비디오이미지동시표시방법및장치
US6473102B1 (en) * 1998-05-11 2002-10-29 Apple Computer, Inc. Method and system for automatically resizing and repositioning windows in response to changes in display
US6542621B1 (en) * 1998-08-31 2003-04-01 Texas Instruments Incorporated Method of dealing with occlusion when tracking multiple objects and people in video sequences
KR100282397B1 (ko) * 1998-12-31 2001-02-15 구자홍 디지탈 영상 데이터의 디인터레이싱 장치
US6493038B1 (en) * 2000-06-21 2002-12-10 Koninklijke Philips Electronics N.V. Multi-window pip television with the ability to watch two sources of video while scanning an electronic program guide
GB2364841B (en) * 2000-07-11 2002-09-11 Motorola Inc Method and apparatus for video encoding
GB2364842A (en) * 2000-07-11 2002-02-06 Motorola Inc Method and system for improving video quality
US20020070957A1 (en) * 2000-12-12 2002-06-13 Philips Electronics North America Corporation Picture-in-picture with alterable display characteristics
US7206029B2 (en) * 2000-12-15 2007-04-17 Koninklijke Philips Electronics N.V. Picture-in-picture repositioning and/or resizing based on video content analysis
US6697124B2 (en) * 2001-03-30 2004-02-24 Koninklijke Philips Electronics N.V. Smart picture-in-picture
US6778224B2 (en) * 2001-06-25 2004-08-17 Koninklijke Philips Electronics N.V. Adaptive overlay element placement in video
US20070195196A1 (en) * 2003-12-16 2007-08-23 Koninklijke Philips Electronic, N.V. Radar
JP2006310896A (ja) * 2005-04-26 2006-11-09 Matsushita Electric Ind Co Ltd 画像処理装置
AU2005203074A1 (en) * 2005-07-14 2007-02-01 Canon Information Systems Research Australia Pty Ltd Image browser
US20100188579A1 (en) * 2009-01-29 2010-07-29 At&T Intellectual Property I, L.P. System and Method to Control and Present a Picture-In-Picture (PIP) Window Based on Movement Data
JP5465620B2 (ja) * 2010-06-25 2014-04-09 Kddi株式会社 映像コンテンツに重畳する付加情報の領域を決定する映像出力装置、プログラム及び方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
APPLE: "iMovie for iPad 2: Tutorial", 1 April 2011 (2011-04-01), XP002694014, Retrieved from the Internet <URL:http://www.youtube.com/watch?v=MEaWuCrI24s> [retrieved on 20130318] *
ELIOT VAN BUSKIRK: "3-D Maps, Camera Phones Put Reality in Augmented Reality", INTERNET CITATION, 11 December 2009 (2009-12-11), pages 1 - 9, XP002632960, Retrieved from the Internet <URL:http://www.wired.com/epicenter/2009/12/3d-maps-camera-phones-put-reality-in-augmented-reality/> [retrieved on 20110414] *
LITRIK DE ROY ED - LITRIK DE ROY: "Developing an augmented reality layer for Layar", INTERNET CITATION, 8 May 2010 (2010-05-08), pages 1 - 2, XP002656326, Retrieved from the Internet <URL:http://www.slideshare.net/litrik/developing-an-augmented-reality-layer-for-layar> [retrieved on 20110805] *
RALF ROTTMANN: "Layar gets some serious competition: junaio brings 3D augmented reality to your iPhone", INTERNET CITATION, 29 August 2009 (2009-08-29), pages 1 - 8, XP002632961, Retrieved from the Internet <URL:http://thenextweb.com/apps/2009/10/29/layar-competition-junaio-brings-3d-augmented-reality-iphone/> [retrieved on 20110414] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022062417A1 (fr) * 2020-09-22 2022-03-31 北京沃东天骏信息技术有限公司 Procédé d'incorporation d'une image dans une vidéo, et procédé et appareil d'acquisition de modèle de prédiction planaire

Also Published As

Publication number Publication date
US20140300814A1 (en) 2014-10-09
FR2984668B3 (fr) 2014-09-05
EP2791778A1 (fr) 2014-10-22
FR2984668A3 (fr) 2013-06-21
US8866970B1 (en) 2014-10-21

Similar Documents

Publication Publication Date Title
CN113179368B (zh) 一种车辆定损的数据处理方法、装置、处理设备及客户端
CN106254933B (zh) 字幕提取方法及装置
US20200364802A1 (en) Processing method, processing apparatus, user terminal and server for recognition of vehicle damage
US20180096502A1 (en) Techniques for incorporating a text-containing image into a digital image
EP1519343A2 (fr) Méthode et appareil pour résumer et indexer les contenus d&#39;une présentation audio-visuelle
US8719687B2 (en) Method for summarizing video and displaying the summary in three-dimensional scenes
CN104618803A (zh) 信息推送方法、装置、终端及服务器
EP2791778A1 (fr) Procédé de traitement de séquence vidéo sur les terminaux mobiles en temps réel
EP3238213B1 (fr) Procédé et appareil de génération d&#39;une image extrapolée d&#39;après une détection d&#39;objet
US20150042837A1 (en) Image acquiring method and electronic device
GB2513218A (en) Object detection metadata
WO2014187265A1 (fr) Support d&#39;enregistrement informatique, dispositif et procédé de traitement de capture de photo
Bagiwa et al. Chroma key background detection for digital video using statistical correlation of blurring artifact
US20190311744A1 (en) Comparing frame data to generate a textless version of a multimedia production
FR2982448A1 (fr) Procede de traitement d&#39;image stereoscopique comprenant un objet incruste et dispositif correspondant
WO2023123981A1 (fr) Procédé et appareil de traitement vidéo, dispositif informatique et support de stockage
US9171357B2 (en) Method, apparatus and computer-readable recording medium for refocusing photographed image
CN113722541A (zh) 视频指纹的生成方法及装置、电子设备和存储介质
CN105306961B (zh) 一种抽帧的方法及装置
CN108334811B (zh) 一种人脸图像处理方法及装置
CN110457998A (zh) 影像数据关联方法和设备、数据处理设备及介质
US10282633B2 (en) Cross-asset media analysis and processing
CN114170470A (zh) 样本生成方法、装置、设备和存储介质
Xiong et al. Dual diversified dynamical Gaussian process latent variable model for video repairing
CN108419092A (zh) 一种确定相同视频的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12808803

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14364941

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE