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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000009466 transformation Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000000844 transformation Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 2
- 238000012986 modification Methods 0.000 claims description 2
- 239000003086 colorant Substances 0.000 claims 1
- 238000012544 monitoring process Methods 0.000 claims 1
- 230000008859 change Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 2
- 101100269850 Caenorhabditis elegans mask-1 gene Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- VJYFKVYYMZPMAB-UHFFFAOYSA-N ethoprophos Chemical compound CCCSP(=O)(OCC)SCCC VJYFKVYYMZPMAB-UHFFFAOYSA-N 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001795 light effect Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000006740 morphological transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio 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/265—Mixing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/12—Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
- G09G2340/125—Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels wherein one of the images is motion video
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/14—Solving problems related to the presentation of information to be displayed
- G09G2340/145—Solving 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
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.
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)
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)
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)
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株式会社 | 映像コンテンツに重畳する付加情報の領域を決定する映像出力装置、プログラム及び方法 |
-
2011
- 2011-12-16 FR FR1161847A patent/FR2984668B3/fr not_active Expired - Fee Related
-
2012
- 2012-12-17 US US14/364,941 patent/US8866970B1/en not_active Expired - Fee Related
- 2012-12-17 EP EP12808803.6A patent/EP2791778A1/fr not_active Withdrawn
- 2012-12-17 WO PCT/EP2012/075828 patent/WO2013087935A1/fr active Application Filing
Non-Patent Citations (4)
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)
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'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'une image extrapolée d'après une détection d'objet | |
US20150042837A1 (en) | Image acquiring method and electronic device | |
GB2513218A (en) | Object detection metadata | |
WO2014187265A1 (fr) | Support d'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'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 |