FR2834852A1 - Procede et dispositif de segmentation temporelle d'une sequence video - Google Patents

Procede et dispositif de segmentation temporelle d'une sequence video Download PDF

Info

Publication number
FR2834852A1
FR2834852A1 FR0200485A FR0200485A FR2834852A1 FR 2834852 A1 FR2834852 A1 FR 2834852A1 FR 0200485 A FR0200485 A FR 0200485A FR 0200485 A FR0200485 A FR 0200485A FR 2834852 A1 FR2834852 A1 FR 2834852A1
Authority
FR
France
Prior art keywords
message
images
group
local
marker
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0200485A
Other languages
English (en)
Other versions
FR2834852B1 (fr
Inventor
Floch Herve Le
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to FR0200485A priority Critical patent/FR2834852B1/fr
Priority to US10/339,312 priority patent/US7228502B2/en
Publication of FR2834852A1 publication Critical patent/FR2834852A1/fr
Application granted granted Critical
Publication of FR2834852B1 publication Critical patent/FR2834852B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

Suivant ce procédé de segmentation temporelle d'une séquence vidéo (200) contenant un ou plusieurs marqueurs l'analyse du contenu de ces marqueurs permet de segmenter la séquence vidéo en une pluralité de sous-séquences vidéo.

Description

chacun des modules avec leque! il est autorisé communiquer.
PROCEDE ET DISPOSITIF DE SEGMENTATION TEMPORELLE
D'UNE SEQUENCE VIDEO
La présente invention se rapporte à un procédé et à un dispositif de segmentation temporelle d'une séquence vidéo. Plus précisément, I'invention concerne un système permettant de séparer une séquence vidéo en groupes d'images à partir de la présence ou non d'un marqueur d'image, appelé aussi tatouage ou watermark, et selon le
contenu binaire des messages associés à ces éventuels watermarks.
La figure 1 présente le cadre général de l'invention. Trois séquences vidéos 100, 101 et 102 sont disponibles. La première séquence vidéo 100 est tatouce ou "watermarkée" avec un message 103 désigné par "message1" sur la figure 1. La troisième séquence vidéo 102 est tatouée avec un message 104
désigné par "message3". La deuxième vidéo reste non tatouée.
Les messages sont, par exemple, des caractéristiques de la vidéo (lieu de tournage, identité du créateur, date de création,...). Chacune de ces vidéos peut ensuite être éventuellement manipulée (étape 105). Par exemple, une sous-partie de la séquence initiale peut être extraite et les vidéos peuvent subir une compression. Chacune de ces vidéos modifiées peut ensuite étre assemblée (étape 106). Les opérations 105 et 106 sont des opérations
classiques d'un montage vidéo.
La vidéo est ensuite stockée eVou transmise (étape 107). Des
changements de format vidéo sont éventuellement effectués.
La personne recevant la vidéo peut extraire les différents watermarks de la vidéo et séparer la vidéo en segments temporels correspondant à un même message (étape 108). Les segments temporels ne portant pas de message sont classifiés comme non watermarkés. Dans l'exempie de la figure 1, la séquence vidéo correspondant à message1 a été extraite (étape 109), la partie non watermarkée est extraite (étape 110) et finalement la séquence vidéo
correspondant à message3 est extraite (étape 111).
En utilisant cette technique, il est donc possible de classifier une vidéo selon les messages détectés et de récupérer les différentes informations
liées aux séquences vidéos initiales.
La présente invention consiste dans l'étape d'analyse 108.
L'article de F. HARTUNG et B. GIROD intitulé "Watermarking of uncompressed and compressed video" publié dans Signal Processing 66, 1998, pages 283 à 301, décrit un procédé d'extraction de watermark dans une séquence vidéo tatouée avec un seul message. Le message est inséré par modulation de chacun de ses bits avec une séquence pseudo-aléatoire puis addition invisible de la séquence modulée dans l'image courante. Lors de l'extraction, les bits enfouis dans chaque image sont démodulés. Les valeurs de démodulation correspondant à un même bit et issues d'images différentes sont
additionnées pour obtenir un message final.
Cependant ce procédé d'extraction ne permet pas de traiter le cas o plusieurs watermarks sont insérés dans une même séquence vidéo, car un seul
message est supposé être enfoui dans la vidéo.
Le document US-A-6 278 446 propose un algorithme pour, dans un premier temps, détecter des changements abrupts de scène dans une vidéo et pour, dans un second temps, fusionner les scènes présentant des
caractéristiques communes.
Il est donc nécessaire de conna^'tre les propriétés intrinsèques de la vidéo pour pouvoir procéder à sa segmentation temporelle. Cet algorithme ne permet pas d'utiliser un critère de segmentation indépendant des propriétés
intrinsèques de la vidéo.
Le document US-A-6 195 458 propose un algorithme pour découper une séquence vidéo en sous-séquences présentant des caractéristiques
communes. Cependant, ces caractéristiques sont liées au contenu de la vidéo.
La présente invention a pour but de remédier à cet inconvénient, en permettant de gérer plusieurs watermarks et en fournissant une carte de segmentation en fonction de la présence et du contenu des watermarks, et non
en fonction des propriétés intrinsèques de la séquence vidéo.
Dans ce but, la présente invention propose un procédé de segmentation temporelle d'une séquence vidéo contenant un ou plusieurs marqueurs, remarquable en ce que l'analyse du contenu de ces marqueurs permet de segmenter la séquence vidéo en une pluralité de sous-séquences vidéo. Ainsi, des sous-séquences vidéo ayant des contenus physiques très différents peuvent être assimilées à une seule et méme séquence si le contenu
du marqueur ou "watermark" est identique sur toutes ces séquences.
Corrélativement, une séquence vidéo présentant un contenu physique très uniforme peut étre segmentée en plusieurs sous-séquences si plusieurs
watermarks y sont localisés.
Dans un mode particulier de réalisation, le procédé conforme à l'invention comporte des étapes suivant lesquelles: - on divise la séquence vidéo en une pluralité de groupes d'images; - on sélectionne successivement chaque groupe de la pluralité de groupes d'images; - on extrait un message binaire de chaque groupe d'images sélectionné; - on analyse successivement la validité de chaque message binaire extrait, de façon à déterminer si ce message est un marqueur ou une séquence de bruit naturei; et - on regroupe les groupes d'images selon le contenu de leur message. Selon une caractéristique particulière, lors de l'étape d'extraction, on prédit un marqueur local et un marqueur global et on extrait un premier message à partir du marqueur global et un second message à partir du
marqueur local.
Le marqueur local permet d'obtenir une bonne précision temporelie de la segmentation. Le marqueur global permet d'obtenir une bonne robustesse aux attaques telles que la compression. Ainsi, I'utilisation conjointe de marqueurs locaux et globaux permet de profiter au maximum de l'apport d'informations d'un marqueur global par rapport à un marqueur local pour I'extraction des messages, tout en ayant la possibilité d'obtenir des messages
locaux qui servent à l'obtention de la segmentation temporelle.
Selon une caractéristique particulière, lors de l'étape d'extraction, on
calcule la taille du message puis on extrait le message à partir de cette taille.
La possibilité d'utiliser des messages de tail le q uelconque confère une plus grande liberté dans le choix du contenu des messages, tout en
maximisant la robustesse à la compression.
Selon une caractéristique particulière, on effectue en outre une étape
de synchronisation vidéo.
Cette étape permet de réduire le risque d'erreur lors de la détection
du message.
Se lo n u ne ca ractéristiq u e particu l ière, lo rs de l'étape d 'a n a lyse, o n ca lcu le u n e mes u re de confia nce en l' hypothèse sel on laq uel le le message
binaire est issu d'un groupe d'images contenant un marqueur.
Cela permet de mieux évaluer si le watermark extrait correspond à
un message effectivement inséré dans la séquence vidéo.
Selon une caractéristique particulière, lors de l'étape d'analyse, on teste si le message extrait à partir du groupe d'images courant est identique au
message extrait à partir du groupe d'images précédent.
Cela permet de détecter si un changement de message a eu lieu.
Selon une caractéristique particulière, pour tester si le message extrait à partir du groupe d'images courant est identique au message extrait à partir du groupe d'images précédent, on calcule le pourcentage de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et on décide que ces messages sont identiques si ce pourcentage est inférieur à une première valeur prédéterminée. Ainsi, on prend en compte l'incertitude liée à une possible compression de la vidéo - cette compression étant susceptible de dégrader la
qualité de la vidéo.
Selon une caractéristique particulière, pour tester si le message extrait à partir du groupe d'images courant est identique au message extrait à partir du groupe d'images précédent, on calcule le pourcentage de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et on décide que ces messages sont identiques si ce pourcentage est inférieur à une première valeur prédéterminée et si aucune désynchronisation temporelle n'est constatée ou si ce pourcentage est supérieur à une seconde valeur prédéterminée et si une
désynchronisation temporelle est constatée.
Ainsi, on prend en compte non seulement l'incertitude liée à une
possible compression de la vidéo, mais aussi une possible désynchronisation.
Selon une caractéristique particulière, lors de l'étape d'analyse, on étudie la statistique des erreurs entre un message de référence et des messages locaux, et on modifie le statut et le message de groupes d'images initialement détectés comme ne comportant pas de marqueur, si le pourcentage d'erreurs entre le message local considéré et le message de référence est suffisamment proche de la statistique précitée, au sens d'un critère prédéterminé. Cela permet de faire l'apprentissage de la statistique d'erreurs entre le message de référence issu du dernier groupe d'images global avant un changement de message et les messages locaux. Cette statistique sera utilisée ultérieurement pour modifier éventuellement les messages locaux précédents qui ont été détectés comme non watermarkés alors qu'ils étaient watermarkés avec le message de référence mais qui n'ont pas été détectés comme tels
parce que la compression était importante.
On peut par exemple calculer le nombre moyen de bits faux entre le
message de référence et les messages locaux.
Le message de référence peut être calculé à partir d'un groupe d'images global précédant un groupe d'images local pour lequel un changement
de message a été détecté.
Dans le cas précité o on calcule le nombre moyen de bits faux, le procédé conforme à l'invention comporte en outre des étapes suivant lesquelles: on compare le nombre moyen de bits faux à un taux d'erreur binaire préalablement calculé, et - si le nombre moyen de bits faux est inférieur au taux d'erreur binaire pondéré par une valeur prédéterminée, on modifie le statut du groupe d'images correspondant de façon que, s'il était considéré comme ne comportant pas de marqueur, il soit considéré après modification comme comportant un marqueur. Cela permet à des groupes d'images qui avaient été détectés comme
non watermarkés de prendre leur vrai statut, i.e. watermarké.
Selon une caractéristique particulière, lors de l'étape d'analyse, on améliore les statuts et les messages liés à des groupes d'images locaux par
une boucle de rétroaction.
Selon une caractéristique particulière, chaque groupe d'images est
constitué de 24 images consécutives.
Cette valeur permet d'obtenir un bon compromis entre la précision de
la segmentation temporelle et la vitesse de calcul.
Dans le méme but que celui indiqué plus haut, la présente invention propose également un dispositif de segmentation temporelle d'une séquence vidéo contenant un ou plusieurs marqueurs, remarquable en ce qu'il comporte un module d'analyse du contenu des marqueurs permettant de segmenter la
séquence vidéo en une pluralité de sous-séquences vidéo.
La présente invention vise aussi un appareil de traitement de signaux numériques, comportant des moyens adaptés à meffre en _uvre un procédé
de segmentation temporelle tel que ci-dessus.
La présente invention vise aussi un appareil de traitement de signaux numériques, comportant un dispositif de segmentation temporelle tel que ci dessus. L'invention vise aussi: - un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en _uvre d'un procédé de segmentation temporelle tel que ci-dessus, et - un moyen de stockage d'informations amovible, partiellement ou totalement, lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en _uvre d'un
procédé de segmentation temporelle tel que ci-dessus.
L'invention vise aussi un produit programme d'ordinateur comportant des séquences d'instructions pour mettre en _uvre un procédé de
segmentation temporelle tel que ci-dessus.
Les caractéristiques particulières et les avantages du dispositif de segmentation temporelle, des différents appareils de traitement de signaux numériques, des différents moyens de stockage et du produit programme d'ordinateur étant similaires à ceux du procédé de segmentation temporelle
selon l'invention, ils ne sont pas rappelés ici.
D'autres aspects et avantages de l'invention appara^tront à la lecture
de la description détaillée qui suit d'un mode particulier de réalisation, donné à
titre d'exemple non limitatif. La description se réfère aux dessins qui
l'accompagnent, dans lesquels: - la figure 1 illustre de façon schématique le contexte général de l'invention; - la figure 2 est un organigramme illustrant globalement les étapes du procédé de segmentation temporelle conforme à la présente invention, dans un mode particulier de réalisation; - la figure 3 est un organigramme illustrant les principales étapes d'un algorithme connu de marquage d'image ou tatouage ou "watermarking"; - la figure 4 illustre l'ensemble des messages binaires obtenus après achèvement de l'analyse d'une séquence vidéo suivant le procédé de segmentation temporelle illustré sur la figure 2; - les figures 5, 5a, 5b, 6 et 7 représentent de façon plus détaillée chacune une partie de la succession d'étapes globalement illustrée sur les figures 2 et 4; - la figure 8 illustre un exemple de résultat obtenu par application de la succession d'étapes illustrée sur les figures 5 à 7; - la figure 9 est un organigramme illustrant de façon schématique une seconde phase d'analyse de la séquence vidéo, effectuée sur les résultats obtenus à l'issue de la première analyse conformément à la présente invention, dans un mode particulier de réalisation; - la figure 10 illustre de façon plus détaillée l'étape 402 de création d'un marqueur d'image ou watermark de la figure 5; - la figure 11 illustre de façon plus détaillée les étapes 410, 41 1, 506 et 609 représentées sur les figures 5, 6 et 7; - la figure 12 illustre de façon plus détaillée l'étape 510 de la figure 6; - la figure 13 illustre de façon plus détaillée l'étape 610 de la figure 7; - la figure 14 illustre de façon plus détaillée l'étape 405 de la figure ; et la figure 15 illustre de façon schématique un dispositif adapté à
mettre en _uvre la présente invention, dans un mode particulier de réalisation.
La figure 2 illustre le schéma général du procédé de segmentation
temporelle proposé par la présente invention.
On considère une vidéo 200 à analyser. Cette vidéo peut ne pas contenir de watermark et peut contenir des sous-séquences avec ou sans watermark. Elle se présente dans un format non compressé. Si la vidéo à analyser est compressée, il est donc nécessaire de la décompresser avant d'effectuer l'analyse. Dans le cas o la vidéo 200 contient plusieurs
watermarks, ceux-ci peuvent différer les uns des autres.
On suppose que des messages binaires ont été enfouis sous forme de watermarks à partir d'un algoritUme de watermarking tel que celui décrit dans la demande de brevet français de numéro de dépôt 00 09727. La figure 3
reprend pour mémoire cet algorithme.
Une première étape E1 de cet algorithme est la segmentation des données initiales en régions, par exemple en blocs adjacents. Le nombre eVou
la taille des régions peuvent être prédéterminés ou réglables par un utilisateur.
Le message M à insérer comporte L symboles, o L est un entier.
Chaque symbole Mj, avec l'entier i variant de 1 à L est associé à au moins une région à l'étape suivante E2. Une région donnée est associée à un unique symbole à insérer. Pour l'association des symboles aux régions, ces dernières sont parcourues selon un ordre prédéterminé. L'étape suivante E3 est une initialisation pour considérer le premier symbole M à insérer, ainsi que la première région dans laquelle ce symbole est
à insérer.
A l'étape suivante E4, une variable C1 représentant le rang du symbole courant est mise à la valeur 1 et une variable C2 est mise à la valeur 0. La variable C2 représente le nombre de fois o le symbole courant a déjà été inséré. Les variables C1 et C2 sont lices à la longueur du message M. L'étape suivante E5 est la génération d'une clé K en fonction d'une
clé initiale Kjnj et des variables C1 et C2.
L'étape suivante E6 est la génération d'une séquence pseudo
aléatoire en fonction de la clé K précédemment engendrée.
L'étape suivante E7 est la modulation du symbole Mj par la séquence pseudo-aléatoire précédemment engendrce, ce qui a pour résultat une seconde
séquence pseudo-aléatoire.
L'étape suivante E8 est une pondération psychovisuelle de la
seconde séquence pseudo-aléatoire pour assurer son invisibilité dans l'image.
La séquence pseudo-aléatoire ainsi modifiée est alors additionnée à
la région courante à l'étape suivante E9.
L'étape suivante E10 est un test pour déterminer si la région courante est la dernière pour le symbole courant. Si la réponse est négative, cela signifie qu'il reste au moins une région dans laquelle le symbole courant doit être inséré. L'étape E10 est alors suivie de l'étape E11. A l'étape E11, est considérée la région suivante dans laquelle le symbole Mj est à insérer, et la
variable C2 est incrémentée d'une unité.
L'étape E11 est suivie de l'étape E5 précédemment décrite.
Lorsque la réponse est positive à l'étape E10, ceia signifie que le
symbole courant a été inséré dans toutes les régions qui lui sont associées.
L'étape E10 est alors suivie de l'étape E12 qui est un test pour déterminer si le symbole courant est le dernier symbole à insérer. Si la réponse est négative, cela signifie qu'il reste au moins un symbole à insérer, et cette étape est suivie de l'étape E13 à laquelle le paramètre i est incrémenté d'une unité pour considérer le symbole suivant Mj+, et la première région qui lui est associée.
L'étape E13 est suivie de l'étape E4 précédemment décrite.
Lorsque la réponse est positive à l'étape E12, cela signifie que tous
les symboles ont été insérés dans l'image.
On suppose que chaque image d'indice pair contient la totalité du message sous la forme du watermark. Toutes les images d'indice pair d'une même séquence initiale portent donc le même watermark (au facteur de pondération psychovisuel près). Les images d'indice impair restent non watermarkées. Pour parvenir à ce résultat, il suffit, au cours de l'algorithme de watermarking qui vient d'être décrit, de tester si l'indice de l'image courante est
pair avant d'y insérer un symbole.
Comme le montre la figure 2, au cours d'une étape 201, la séquence vidéo est découpée en groupes d'images ou GOPs (GOP signifiant "Group Of Pictures"). Un GOP peut par exemple étre constitué de 24 images consécutives. Le choix de la taille des GOPs résulte d'un compromis entre précision de la segmentation et temps de calcul. En effet, en analysant simultanément 24 images, on gagne en temps de calcul par rapport à une analyse image par image. En contrepartie, on ne peut pas détecter plusieurs watermarks car on part de l'hypothèse qu'un seul message sera détecté dans un GOP. Prendre 24 images par GOP permet donc d'obtenir un gain en temps de calcul important, tout en conservant une précision correcte de la
segmentation (24 images équivalant approximativement à 1 seconde).
Lors d'une étape 202, chaque GOP est successivement sélectionné
et, au cours d'une étape 203, un message binaire est extrait pour chaque GOP.
Au cours de l'étape suivante 204, la validité de ce message binaire est ensuite analysée pour détecter si le message binaire correspond à un message enfoui sous forme de watermark ou si ce message correspond à une séquence de bruit naturel, ce qui signifierait qu'aucun message n'est inséré
dans le GOP courant.
Lorsque toute la séquence vidéo a été analysée, on dispose en sortie d'un ensemble de messages binaires correspondant chacun à un groupe d'images de la vidéo, comme illustré sur la figure 4. Dans l'exemple de la figure 4, la vidéo 300 a été découpée en six GOPs 301 à 306 et on a associé ou non un message à chaque GOP. Ainsi, les deux premiers GOPs 301 et 302 possèdent le message "message1", les deux GOPs suivants 303 et 304 ne possèdent pas de message et les deux derniers GOPs 305 et 306 possèdent le message "message2". Ces différents messages sont analysés (étape 307) et les différents GOPs sont regroupés si leurs messages sont semblables. A la sortie de cette analyse, les 2 premiers GOPs ont été analysés comme faisant partie d'une même séquence vidéo initiale 308, car ils possèdent le même message ("message1"). Les 2 derniers GOPs ont été analysés comme faisant partie d'une même séquence vidéo initiale 310, car
ils possèdent le même message ("message2").
La figure 5 représente de façon plus détaillée une partie de l'aigorithme représenté grossièrement sur les figures 3 et 4. Le reste de
l'algorithme est représenté sur les figures 6 et 7.
On dispose initialement d'une séquence vidéo 400 dans un format non compressé. On suppose qu'on se trouve à un endroit quelconque de la
vidéo. On suppose également que la vidéo présente un statut non watermarké.
Une étape 401 consiste à sélectionner un GOP à partir de la vidéo
400. Ce GOP est un ensemble de 24 images.
A partir de ce GOP, deux watermarks 402 et 404 sont prédits. Le premier watermark 402 est appelé LGOPW car il est calculé à partir des 24 images sélectionnces au cours de l'étape 401. La façon dont ce watermark est engendré est décrite plus loin en référence à la figure 10. Le second watermark 404 est appelé GGOPW. C'est un watermark global, calculé en additionnant le watermark local 402 au watermark global ou en soustrayant le watermark local 402 du watermark global: en tout pixel (p,q), on a: GGOPW(p, q) = GGOPW(p, q) + LGOPW(p, q) ou GGOPW(p, q) = GGOPW(p, q) LGOPW(p, q) Le choix entre l'addition et la soustraction se fait à partir du résultat
de l'étape 405 de synchronisation et est explicité ci-dessous.
Evidemment, lorsqu'on traite le premier GOP de la séquence vidéo, les watermarks GGOPW et LGOPW sont les mêmes. A partir de ces deux watermarks prédits 402 et 404, I'étape suivante 405 consiste à déterminer si la première image du GOP courant local correspond à une image paire ou une image impaire de la séquence vidéo initiale. En effet, si cette première image est une image paire alors le watermark estimé 402 correspond, aux erreurs de prédiction près, au
watermark inséré et le message extrait est le message enfoui.
Si en revanche la première image est une image impaire alors le watermark extrait LGOPW correspond, aux erreurs de prédiction près, à I'inverse du watermark inséré. Dans ce cas, le watermark local LGOPW est inversé (LGOPW = -LGOPW). Après cette inversion, le message extrait
correspond au message enfoui.
Une fois cette étape effectuée (le détail de cette étape est décrit plus loin à l'aide de la figure 14), le watermark local 402 est ajouté au watermark global GGOPW. Si le watermark local a été inversé, I'addition au watermark global correspond à la soustraction du watermark local initialement calculé du
watermark global.
Cette étape 405 de synch ron isation est facu ltative si on sa it pa r avance que l'opération d'extraction de sous-séquences ou édition vidéo conserve la parité de la séquence: une sous-séquence débute par une image
paire et possède un nombre pair d'images.
Deux messages binaires sont alors extraits. Un premier message 408 est extrait à partir de GGOPW et est désigné par le signe de référence GM (pour Global Message) et un second message 407 est extrait à partir de LGOPW et est désigné par le signe de référence LM (pour Local Message). La méthode d'extraction consiste à calculer la taille du message, puis à extraire le
message lu i-même à partir de la tail le de message préalablement ca lcu lée.
Les figures 5a et 5b illustrent cette méthode d'extraction de façon
plus détaillée.
La figure 5a illustre un mode particulier de réalisation de l'étape de détection de la taille du message, dans lequel le message inséré est composé de symboles qui sont des bits. L'étape E210 est une segmentation des données dans lesquelles le message a été préalablement inséré. Cette étape est identique à l'étape E1 de
la figure 3.
L'étape suivante E211 est une hypothèse sur la valeur de la longueur L du message qu'on cherche à extraire. La longueur L peut prendre des valeurs entre 1 et une valeur maximale Lmax, qui est fixée a priori ou qui dépend de la
taille de l'image. Toutes ces valeurs seront successivement considérées.
L'étape suivante E212 permet de réaliser un bouclage sur tous les symboles M à M du message. Pour chaque boucle, un symbole courant Mj est considéré. L'étape suivante E213 est la sélection des régions correspondant au symbole courant Mj. Le mécanisme d'attribution d'une région à un symbole est
identique à celui utilisé à l'étape E2 de la figure 3.
L'étape suivante E214 est la détermination des variables C1 et C2 pour le symbole courant et pour chacune des régions sélectionnées à l'étape précédente. La variable C1 représente le rang du symbole courant et a donc une valeur unique pour toutes les régions sélectionnées. La variable C2 représente, pour chaque région, le nombre de fois o le symbole courant a déjà
été inséré.
L'étape suivante E215 est une génération de clés, pour le symbole courant et pour chaque région sélectionnée à l'étape E213. La génération de clé est identique à celle de l'étape E5 de la figure 3, et utilise notamment la clé initiale Kinit L'étape suivante E216 est la génération de séquences pseudo
aléstoires en fonction de chacune des clés K précédemment engendrées.
L'étape suivante E217 est le calcul de la corrélation entre les séquences pseudo-aléstoires engendrces à l'étape précédente et les régions
sélectionnées à l'étape E213.
L'étape suivante E218 consiste à calculer la valeur absolue de la corrélation calculée pour le bit courant et pour toutes les régions qui lui sont associées. Si l'hypothèse (étape E211) sur la taille du message est fausse, alors la valeur calculée à l'étape E218 demeure faible. En revanche, si l'hypothèse sur la taille du message est vraie, alors la valeur calculée à l'étape E218 est
élevée.
L'étape suivante E219 est la sommation de la valeur absolue de la corrélation calculée pour le symbole courant avec les valeurs absolues des corrélations précédemment calculées pour les autres symboles, pour la
longueur de message considérée. Pour une longueur donnée de message, les étapes E212 à E219
sont répétées pour tous les symboles du message.
Les étapes E211 à E219 sont répétées pour toutes les longueurs de
message à considérer.
Chaque somme S calculée à l'étape E219 (c'est-à-dire pour chaque longueur de message à tester) est mémorisée dans un tableau à l'étape suivante E220. Lorsque toutes les longueurs de message ont été traitées, le tableau est complètement rempli et on détermine le maximum local parmi les
valeurs de ce tableau.
Pour cela, un filtrage passe-haut est effectué sur le tableau à l'étape E221. Par exemple, le filtrage passe-haut calcule l'écart entre la valeur de la "case" courante du tableau et la moyenne de ses voisins. Le filtre passe-haut
correspondant est le filtre (-0,5, 1, -0,5).
Le résultat F du filtrage est écrit dans un second tableau à l'étape E222. L'étape suivante E223 est la détection de la valeur maximale contenue dans le second tableau. Cette valeur maximale correspond à une longueur, qui est la taille du message inséré. La technique qui est utilisée ici est la détection du maximum local, qui permet d'extraire efficacement la taille de messages de faible longueur lorsque la gamme des tailles de message
possibles est très large, par exemple de 1 jusqu'à plusieurs milliers de bits.
La figure 5b illustre un mode particulier de réalisation de l'étape d'extraction du message proprement dite, correspondant au cas o les
symboles du message sont des bits.
L'étape E40 est une lecture en mémoire de la longueur L du
message inséré. Cette longueur a été précédemment déterminée.
L'étape suivante E41 est une initialisation d'une boucle pour
considérer successivement tous les symboles du message.
Pour chaque symbole, I'étape E42 est une sélection des régions
correspondant au symbole courant Mj.
L'étape suivante E43 est la détermination des valeurs des variables C1 et C2 respectivement pour chacune des régions précédemment sélectionnées. Les variables C1 et C2 sont déterminées comme précédemment exposé. L'étape suivante E44 est le calcul de la clé correspondant à chacun
des couples de valeurs (C1, C2).
L'étape suivante E45 est le calcul de la séquence pseudo-aléatoire
correspondant à chacune des clés précédemment calculées.
L'étape suivante E46 est le calcul, pour chaque séquence pseudo aléatoire précédemment calculée, de la corrélation entre la séquence pseudo
aléstoire et la région qui lui correspond.
L'étape suivante E47 est l'addition de toutes les valeurs de corré latio n corres pond ant au sym bole cou ra nt. Le sig ne de la so m me est a lors déterminé. L'étape suivante E48 est une décision sur la valeur du symbole recherché. Si le signe précédemment déterminé est positif, alors le symbole est
le bit 1 et sinon, le symbole est le bit 0.
La valeur du bit b est ensuite mémorisée dans un tableau à l'étape
suivante E49.
A la sortie de cette analyse, à l'étape 409 représentée sur la figure 5, on enregistre le message global et le message local dans une partie de la
mémoire dédiée au GOP courant.
Il est intéressant d'utiliser un GOP global lorsque les vidéos sont fortement compressées. En effet, dans ce cas, le watermark est généralement fortement endommagé et plus le nombre d'images utilisées pour extraire le message est grand, plus la probabilité de détecter correctement le message inséré est forte. Ainsi, souvent, le message extrait à partir du GOP local est fortement erroné alors qu'il ne présente que peu ou pas d'erreurs lorsqu'il est extrait à partir du GOP global, car ce dernier contient plus d'images et donc,
une plus grande quantité d'information.
Ensuite, la validité du message local est analysée à l'étape 410 à partir du premier watermark LGOPW 402. En sortie de cette analyse, on obtient une mesure de confiance en l'hypothèse: "le GOP est watermarké". On verra
ultérieurement, en référence à la figure 11, comment cette variable est calculée.
Suivant la valeur de cette variable, on décide si le message local courant est un message issu d' une vidéo watermarkée ou s'il est issu d' u ne vidéo non watermarkée. De la même façon, on calcule à l'étape 411 une mesure de confiance qui permet de décider si le GOP global GGOPW est watermarké. A partir de cette analyse, on décide si le message global courant est un message issu
d'une vidéo watermarkée ou s'il est issu d'une vidéo non watermarkée.
Suivant les réponses obtenues aux étapes 410 et 411, trois cas différents peuvent se présenter: (i) si aucun des GOPs (local ou global) n'est détecté comme watermarké (étape 1 désignce par le signe de référence 412) alors l'algorithme reprend à l'étape 401 par la sélection du GOP suivant. Ce cas peut se produire, soit lorsque les GOPs analysés ne sont pas watermarkés, soit lorsque les GOPs analysés sont watermarkés mais trop compressés pour que les messages puissent étre détectés avec suffisamment de confiance. Dans ce dernier cas, I'ajout d'un nouveau GOP de 24 images (c'est-à-dire un ajout d ' inform ation) au waterma rk préd it GG O PW permettra peut-être d 'a ugm enter suffisamment la mesure de confiance pour décider que le GOP global est watermarké. (ii) si le GOP global est détecté comme portant un watermark mais le GOP local est détecté comme ne portant pas de watermark, alors l'étape 2 (référence 413) est effectuée. Cette étape est détaillée sur la figure 6. Ce cas peut se prod u ire lorsque la vidéo porte un watermark et lorsq ue la compression est trop forte pour que la mesure de confiance du watermark extrait à partir du GOP local soit suffisante. La confiance lice au GOP global est en revanche meilleure car celui-ci porte plus d'information, puisqu'il résulte de l'addition de
plusieurs GOPs locaux.
(iii) lorsque le GOP local est détecté comme portant un watermark, alors l'étape 3 (référence 414) est effectuée. Ceffe étape est détaillée sur la figure 7. Dans ce cas, le GOP global portera aussi l'information "GOP watermarké". Ce dern ier cas se prod u it par exemple lorsque la vidéo est peu ou
pas compressée. Peu d'information suffit à extraire correctement un message.
Ces décisions correspondant aux GOPs local et global sont
mémorisées dans la partie de la mémoire dédice au GOP courant.
La figure 6 illustre la façon dont les GOPs sont traités lorsque le message extrait à partir du GOP précédent n'est valide qu'à partir du GOP global (validation par le bloc 411 de la figure 5). Ceffe figure correspond donc à l'étape 2
(413) de la figure 5.
A l'étape 501, un nouveau GOP est sélectionné. A partir de ce GOP, à l'étape suivante 503, un watermark LGOPW est prédit. A l'étape suivante 502, ce watermark est additionné au watermark global courant ou soustrait de ce dernier pour obtenir le GOP global GGOPW à l'étape 504. Le choix entre l'addition et la soustraction se fait sur la base d'un changement de synchronisation détecté. Si un changement de synchronisation est détecté, le watermark local est soustrait du watermark global. Si aucun changement de synchronisation n'est détecté, le watermark local est additionné au watermark global. On donne plus loin, en liaison avec les figures 12 et 14, davantage de détails sur ce changement de synchronisation. A l'étape suivante 505, à partir de LGOPW et GGOPW, deux messages sont extraits. L'un correspond à un GOP global (507) et l'autre à un GOP local (508). Lors de cette extraction, la taille du message n'est pas
recalculée: la taille de message obtenue à partir du GOP précédent est réutilisée.
De cette façon, on obtient un gain en temps de calcul. A l'étape suivante 509, les deux messages extraits sont mémorisés dans la partie de la mémoire dédiée au
GOP courant.
Une fois les deux messages mémorisés, il convient de définir s'ils correspondent à des messages issus d'une vidéo watermarkée ou issus d'une vidéo non watermarkée. Pour cela, une valeur numérique est calculée à l'étape suivante 506 à partir de LGOPW obtenu à l'étape 503. Cette valeur numérique est une mesure de confiance qui correspond à la probabilité que la vidéo ne soit pas
watermarkée. L'étape 506 est similaire aux étapes 410 et 411 de la figure 5.
Cette analyse est suivie d'un test 510 qui permet de déterminer si les messages extraits à partir du GOP courant sont identiques aux messages extraits à partir du GOP précédent. Le détail de cette analyse est décrit plus loin en référence à la figure 12. Deux possibilités peuvent se présenter: - soit un changement de message est détecté. Dans ce cas, le GOP courant est analysé à nouveau, selon le schéma de la figure 5. Au début de la nouvelle analyse, le GOP est classifié comme non watermarké (en local et en
global) et le watermark lié au GOP global (GGOPW) est réinitialisé à 0.
- soit aucun changement de message n'est détecté. L'étape
suivante est alors l'étape 2.
La figure 7 décrit la façon dont les GOPs sont traités lorsque le message extrait à partir du GOP précédent est valide à partir du GOP local (le GOP local a été détecté comme watermarké). Cette figure correspond donc à
l'étape 3 (414) de la figure 5.
A l'étape 601, un nouveau GOP est sélectionné. A partir de ce GOP, à l'étape suivante 602, un watermark LGOPW est prédit. A l'étape suivante 603, ce watermark est additionné au watermark global courant ou soustrait de ce dernier pour obtenir le GOP global GGOPW 605. Le choix entre l'addition et la soustraction se fait sur la base d'un changement de synchronisation détecté. Si un changement de synchronisation est détecté, le watermark local est soustrait du watermark global. Si aucun changement de synchronisation n'est détecté, le watermark local est additionné au watermark global. On donne plus loin, en liaison avec les figures 13 et 14, davantage de détails sur ce changement de synchronisation. A l'étape suivante 604, à partir de LGOPW et GGOPW, deux messages sont extraits: un message local 606 et un message global 607. Lors de cette extraction, la taille du message n'est pas recalculée: la taille de message obtenue à partir du GOP précédent est réutilisée (de même que dans ie cas de la figure 6,1'absence de calcul de la taille du message permet d'accélérer l'analyse de la vidéo). A l'étape suivante 608, les deux messages extraits sont mémorisés
dans la partie de la mémoire dédiée au GOP courant.
Une fois les deux messages mémorisés, il convient de définir s'ils correspondent à des messages issus d'une vidéo watermarkée ou issus d'une vidéo non watermarkée. Pour cela, une valeur numérique est calculée à l'étape suivante 609 à partir de LGOPW obtenu à l'étape 602. Cette valeur numérique est une mesure de confiance qui correspond à la probabilité que la vidéo ne soit pas watermarkée. L'étape 609 est similaire aux étapes 410 et 411 de la figure 5. La même analyse est ensuite effectuée, toujours à l'étape 609, pour le watermark
global GGOPW 605.
Cette analyse est suivie d'un test 610 qui permet de déterminer si le message extrait à partir du GOP local courant est identique au message extrait à partir du GOP précédent. Le détail de cette analyse est décrit plus loin en référence à la figure 13. Deux possibilités peuvent se présenter: - soit un changement de message a été détecté. Dans ce cas, le watermark global est réinitialisé à zéro et le GOP courant est analysé à nouveau avec un statut non watermarké (611). L'étape suivante est donc le bloc 400 de la
figure 5.
- soit aucun changement de message n'est détecté. L'étape suivante
est alors l'étape 3 (600).
La figure 8 illustre un exemple de résultat obtenu par l'algorithme
présenté dans les figures précédentes.
Lorsque toute la vidéo a été analysée par les étapes 1, 2 ou 3, pour chaque GOP, I'information suivante est disponible: message local, message global, confiance dans le message local (désignée par "Local status"), confiance dans le message global (désignée par"Global status"), changement de message par rapport au GOP précédent. Lorsque Local status vaut 1, cela signifie que le GOP courant est détecté comme localement watermarké. Lorsque Local status vaut 0, cela
signifie que le GOP courant est détecté comme localement non watermarké.
Lorsque Global status vaut 1, cela signifie que le GOP courant est détecté comme globalement watermarké (c'est-à-dire que l'accumulation de plusieurs GOPs est détectée comme watermarkée). Lorsque Global status vaut 0, cela
signifie que le GOP courant est détecté comme globalement non watermarké.
A titre indicatif, la figure 8 donne quelques exemples de GOPs. Le premier GOP 700 contient deux messages (local et global) et son statut est non watermarké (watermark local et watermark global). Le deuxième GOP 701 contient deux messages (local et global) et son statut est watermarké (statut fixé à partir du watermark global). Le troisième GOP 702 contient deux messages (local et global) et son statut est watermarké (statut fixé à partir du watermark global). Il porte en plus l'information "Même message" car l'analyse faite à partir des étapes illustrées sur les figures 5, 6 et 7 n'a pas détecté de changement de message. Le (N-1)ème GOP 703 porte le statut watermarké ainsi que le Nème GOP 704 Expérimentalement, on a constaté que le résultat présenté ici peut étre erroné. En effet, le premier GOP présente un statut non watermarké mais est suivi de GOPs portant le statut watermarké (détecté à partir du watermark global). Cela peut signifier que cette partie de la vidéo est compressée fortement et qu'une quantité im portante d'information (pl usieurs GO Ps) est nécessa ire pour retrouver le message correct et le statut "watermarké". En conséquence, il est possible, - soit que le premier GOP soit effectivement non watermarké, - soit que le premier GOP soit watermarké mais n'ait pas été détecté comme tel car trop peu d'images étaient utilisées pour extraire le message, - soit que le message global du GOP 2 (701) soit faux car trop peu de GOPs ont été utilisés, - soit que le message global du GOP 3 (702) soit meilleur que celui du
GOP 2 car une plus grande quantité d'information a été utilisée.
C'est pourquoi, conformément à la présente invention, une seconde phase d'analyse, décrite ci-après en référence à la figure 9, va permettre de modifier certains messages et certains statuts. Cette seconde phase d'analyse
correspond à l'étape 204 de la figure 2 ou à l'étape 307 de la figure 4.
Cette seconde phase d'analyse de la vidéo est effectuée sur les
résultats obtenus par le premier algorithme d'extraction de watermark.
Comme le montre la figure 9, on suppose qu'on pointe initialement, à l'étape 800, sur un GOP avec le statut watermarké et "même message" et tel que le GOP suivant présente le statut"message différent" ou le statut "non watermarké". A l'étape suivante 801, une variable appelée "message de référence" est initialisée avec le message global du GOP courant. Deux autres variables sont initialisées. La première variable Ne comptabilise le nombre d'erreurs entre le message de référence et ies messages locaux analysés au cours des étapes 801 à 804. Cette première variable vaut le nombre de bits différents entre les messages locaux du GOP courant et le message de référence (qui est ici le message global). La seconde variable M, initialisée à la valeur 0, comptabilise
* le nombre de GOPs analysés au cours des étapes 801 à 804.
Le GOP précédent est ensuite sélectionné à l'étape suivante 802 si le GOP courant présente le statut "même message" et si le GOP précédent présente le statut "watermarké". Dans ce cas, le nombre de bits différents entre le message de référence et le message local est calculé et vaut N1. La valeur N1 est ajoutée à la variable Ne à l'étape suivante 803 et la variable M est
incrémentée d'une unité.
A l'étape suivante 804, le message global de ce GOP est rempiacé par le message de référence. Cette opération permet d'attribuer à ce GOP un message issu d'un GOP pour lequel une plus grande quantité d'information
était disponible. Le GOP précédent est alors sélectionné (retour à l'étape 802).
Si le GOP précédent porte un statut "non watermarké" alors, à l'étape 805, la variable BER = Ne/M est calculée. Cette variable représente le nombre moyen de bits faux entre le message de référence et les messages locaux des GOPs analysés lors des étapes 802 à 804. Les étapes 802 à 804 permettent donc de conna^'tre en moyenne le nombre de bits différents entre le
message de référence et les messages détectés à partir des GOPs locaux.
A partir de l'étape 806, les GOPs précédents présentant un statut non watermarké sont sélectionnés pour être analysés. L'objectif de cette analyse est de modifier leur statut et leur message si le message détecté pour ces GOPs est proche du message de référence. Pour cela, le nombre de bits faux entre ces messages locaux et le message de référence va être calculé. Si la valeur calculée est proche du BER calculé à l'étape 805 alors le statut de ces
GOPs sera modifié.
Pour le GOP courant (présentant un statut non watermarké), si la taille du message local (en nombre de bits) est la même que la taille du message de référence, alors le nombre de bits différents entre le message local et le message de référence est calculé. Ce nombre est représenté par la
variable N et est calculé à l'étape 807.
Puis iors d'un test 808, la variable N est comparée avec le BER calculé précédemment. Si ces deux valeurs sont proches, par exemple si N < 1,2 x BER, on en déduit que le GOP est bien watermarké (car le message local suit la même statistique que les messages locaux des GOPs qui étaient détectés comme watermarkés). Le message est donc le message de référence (étape 809) et le statut de ce GOP est le statut "watermarké". Le GOP précédent présentant un statut non watermarké est alors sélectionné (retour à l'étape 806). Si un tel GOP n'existe pas, alors l'algorithme arrête son retour en arrière et va sélectionner, parmi les GOPs non encore analysés par ce deuxième algorithme, un GOP de statut "watermarké" qui sera suivi d'un GOP avec le statut "changement de message" ou le statut "non watermarké". Le
processus reprend alors à l'étape 800.
L'algorith me se répète ainsi j usq u'à ce q ue tous les GO Ps de la
vidéo aient été traités.
La figure 10 détaille les phases de création du watermark LGOPW 402 de la figure 5. Ce watermark est une estimation du watermark inséré dans
chacune des images de la vidéo.
On dispose initialement, à l'étape 900, d'une séquence vidéo et on pointe sur l'image d'indice I = i de cette vidéo. On initialise à 0 un paramètre
watermark W. Un watermark va être extrait à partir d'un GOP de N images.
Nous avons attribué à N la valeur 24. Cette valeur représente un bon compromis entre précision de l'analyse et temps de calcul. On suppose ici que l'image i est une image watermarkée et que cette image est entourée de deux
images non watermarkées.
A l'étape 901, trois images sont sélectionnées. Les images 1+1 et 1-1 sont utilisées pour calculer une prédiction T de l'image 1. A l'étape suivante 902, I'image T est soustraite de l'image I (opération 1- T). Cette soustraction fournit une prédiction du watermark w inséré dans l'image 1. Pour plus de détail sur cette façon de prédire le watermark inséré dans l'image, on peut se reporter à la
demande de brevet français de numéro de dépôt 01 11858.
A l'étape 903, le watermark w est additionné au watermark W qui avait été préalablement initialisé à 0 à l'étape 900. L'addition se fait pixel par pixel: W(p,q)=W(p,q)+w(p,q) o (p,q) est le couple de coordonnées d'un pixel. L'étape suivante 904 est un test pour savoir si N images ont été utilisoes. Si ce n'est pas le cas, le compteur I est incrémenté de 2 unités à l'étape 905 et on réitère le processus à partir de l'étape 901. Si N images ont
été utilisces, alors le watermark local LGOPW est obtenu à l'étape 906.
La figure 11 détaille les opérations 410, 411, 506 et 609 décrites précédemment en référence aux figures 5, 6 et 7. Ces opérations consistent à déterminer si les watermarks estimés, LGOPW ou GGOPW (par exemple, LGOPW 402 sur la figure 5), sont des watermarks issus d'une vidéo watermarkée ou issus d'une vidéo non watermarkée. Pour réaliser cette tâche,
on utilise un algorithme connu en soi, illustré sur la figure 11.
On suppose ici que certaines parties des images (par exemple K pixels) de la séquence vidéo restent non watermarkées même si la vidéo est waterma rkée. Ceci est faci lement réal isab le à pa rti r de l' a l go rith m e de
watermarking décrit précédemment en référence à la figure 3.
A l'étape 1000, on dispose d'un watermark prédit. Ce watermark, appelé GOPW, peut être issu d'un GOP local ou d'un GOP global. A l'étape suivante 1001, on extrait un message de ce watermark. Par conséquent, la taille du message 1002 est connue et permettra d'engendrer une séquence pseudo-aléatoire. A l'étape 1003, les K pixels correspondant à la partie supposée non watermarkée sont sélectionnés. Pour chaque pixel de coordonnées (p,q), on calcule GOPW(p,q) (étape 1004) et W(p,q) (étape 1006). W(p,q) est calculé à partir d'une séquence de modulation engendrce à l'étape précédente 1005 à
partir de la taille du message extrait.
A l'étape 1007, pour chacun des pixels sélectionnés, on calcule la valeur Y(p,q) = W(p,q)xGOPW(p,q). En sélectionnant les K pixels de la partie non watermarRée, on peut établir, à l'étape suivante 1008, la moyenne des
valeurs Y(p,q) et la variance correspondante.
Ensuite, K pixels correspondant à la partie supposée watermarkée de la vidéo sont sélectionnés (étape 1009). Pour chacun de ces pixels de coordonnées (p,q), la valeur GOPW(p,q) est extraite (étape 1011). A l'étape 1012, cette valeur est multipliée, d'une part, par le pixel correspondant issu, à l'étape 1013, de la séquence de modulation engendrée à l'étape précédente 1010 à partir de la taille du message extrait et, d'autre part, par la valeur du bit b(p,q) qui a été détectée sur les blocs portant le même indice de bit et liés au
pixel (p,q).
La valeur calculée à l'étape 1012 est donc Y(p,q) = b(p,q)xW(p,q)xGOPW(p, q). A partir de ces valeurs, à l'étape 1014, une variable aléatoire, notée y, est calculée: y= 1 X Y(p,q)-Y (P,q) Cette somme est calculée à partir des valeurs Y(p,q) issues de la
partie supposée watermarkée.
En vertu du théorème central limite, on sait que la loi de probabilité des valeurs y tend vers une loi gaussienne centrée en 0 de variance 1 si la vidéo n'est pas watermarkée. En conséquence, on peut définir une valeur de seuil pour laquelle la probabilité P que la variable y soit inférieure à ce seuil est égale à une valeur choisie (par exemple P(|y| < seuil) = 1-10-4). Ainsi, à l'issue du test 1015, on décide que la vidéo est non watermarkée si la valeur de la variable y calculée à l'étape 1014 est inférieure à ce seuil (cas 1017) et que la
vidéo est watermarkée si la valeur de y est supérieure au seuil (cas 1016) .
On appelle la valeur de y "mesure de confiance", étant donné que plus cette valeur est élevée, plus la probabilité que la vidéo soit watermarkée
est élevée.
La figure 12 détaille le test 510 de la figure 6. Ce test permet de décider si le message détecté à partir du GOP courant est différent du message détecté à partir du GOP précédent. Rappelons que la figure 6 illustre le cas o le GOP local a été détecté comme non watermarké alors que le GOP global a
été détecté comme watermarké.
A partir du GOP courant 1100, un message local 1101 a été extrait. Le pourcentage P de bits différents entre ce message local et le message global
1104 calculé à partir du GOP précédent 1103 est calculé à l'étape 1105.
Un test 1106 est ensuite effectué pour déterminer si la valeur de P est inférieure à 30 ou supérieure à 70. Si c'est le cas, alors les deux messages sont considérés comme potentiellement identiques. Sachant qu'on se place dans l'hypothèse o la compression est importante, il est impossible de détecter
précisément un changement de message.
Si la valeur de P est comprise entre 30 et 70, alors on considère que
le GOP courant porte un message différent du GOP précédent (1110).
Il est à noter que si la valeur de P est supérieure à 70 (par exemple P = 100), il est tout à fait possible que le message soit le même mais qu'une désynchronisation temporelle impaire ait eu lieu. Pour s'en assurer, on applique
un processus de resynchronisation tel qu'illustré par la figure 14 (étape 1107).
Toutefois, dans ce cas, les étapes 1305 et 1306 ne sont pas effectuées car la
taille du message est déjà connue.
Si aucune désynchronisation n'est constatée, alors le fait que P soit supérieure à 70 signifie qu'un changement de message a eu lieu (cas 1109). Si une désynchronisation est constatée, alors le fait que P soit supérieure à 70 ne
correspond pas à un changement de message (cas 1108).
De façon analogue, lorsque P<30, il est tout à fait possible que le
message soit différent mais qu'une désynchronisation temporelle ait eu lieu.
Dans ce cas, on peut procéder à un test (1107) pour déterminer si cette désynchronisation temporelle a eu lieu. Si une désynchronisation est constatée alors le message est détecté comme différent (cas 1109). Sinon, aucune
modification n'est détectée (cas 1108).
Lorsqu'une désynchronisation temporelle est détectée, elle se répercute sur la suite de la séquence. Les images qui étaient considérces
comme pa ires so nt ma intena nt cons idé rées com me im pa ires et vice versa.
Lorsqu'une désynchronisation temporelle est détectée, le watermark estimé n'est plus GOPW mais -GOPW. Le watermark global GGOPW est alors reconstruit, non plus en additionnant LGPOW au watermark global, mais en soustrayant LGOPW du watermark global. Le message local n'est alors plus LM
mais -LM (les bits 0 sont transformés en 1 et vice versa).
Si on sait par avance que l'extraction de sous-séquences ne permet pas les désynchronisations temporelles alors une valeur de P supérieure à 70 est automatiquement considérée comme un changement de message, et l'algorithme de détection de désynchronisation (1107) n'est dans ce cas pas utile. La figure 13 détaille le test 610 de la figure 7. Ce test permet de décider si un changement de message a eu iieu entre le GOP courant et le GOP précédent. On dispose initialement des donnses liées au GOP courant
1200 (par exemple LGOPW 602 de la figure 7).
A partir de ces donnces, la confiance en ce watermark est calculée (figure 11). Cette mesure de confiance (appelée y à l'étape 1014 de la figure
11) est comparce à un seuil à l'étape 1201.
Si la mesure de confiance est inférieure à ce seuil, alors un changement de message 1202 est enregistré. Cela signifie que le GOP courant analysé est soit non watermarké, soit watermarké mais avec une compression
trop forte pour que le message soit correctement lu. Si la mesure de confiance est supérieure au seuil, alors le message local
du GOP courant 1204 est comparé au message global 1205 du GOP précédent 1203: le pourcentage P de bits différents entre le message local du GOP courant et le message global du GOP précédent est calculé à l'étape 1206. La mesure de confiance issue du watermark local (LGOPW) est ensuite comparce à un deuxième seuil à l'étape 1207. Si cette mesure de confiance est supérieure à ce seuil, l'étape 1207 est suivie d'un test 1208 au
cours duquel la valeur de P est comparée à 0 ou à 100.
Si P vaut 0, alors deux cas peuvent se présenter. Soit une désynchronisation temporelle a eu lieu et il y a un changement de message (cas 1211), soit il n'y a pas de désynchronisation temporelle et le message est identique au message du GOP précédent (cas 1210): aucun changement de
message n'est alors validé.
De façon analogue, si P vaut 100, deux cas peuvent se présenter: soit une désynchronisation temporelle a eu lieu (sans changement de message) (cas 1210), soit un changement de message a eu lieu (sans désynchronisation
temporelle) (cas 1211).
Si, en revanche, la valeur de P est différente de 0 ou 100, alors un
changement de message est validé (cas 1212).
L'étape supplémentaire 1209 permettant de confirmer si un changement de synchronisation temporelle a eu lieu peut être effectuée en appliquant l'algorithme illustré par la figure 14 au GOP local. Toutefois, dans ce cas, les étapes 1305 et 1306 ne sont pas effectuées car la taille du message
est connue.
Pour les étapes 1208 à 1212, aucune erreur n'est permise car la valeur de confiance est très forte, d'après le résultat de l'étape 1207. Cela
signifie que la vidéo watermarkée dispose d'un watermark de haute fiabilité.
Tout changement de bit est alors assimilé à un changement de message.
En revanche, si, à l'étape 1207, la mesure de confiance est inférieure au seuil, alors au cours d'un test 1213, la valeur de P est comparée aux valeurs 8 et 92 afin de déterminer si P < 8 ou P > 92. Si la réponse au test 1213 est négative alors un changement de message est validé (cas 1214). Si au contraire la réponse au test 1213 est positive, alors deux cas peuvent se présenter (étape 1215). Soit une désynchronisation temporelle a eu lieu et a été détectée à l'étape 1215, soit aucune désynchronisation n'a eu lieu. Si P<8 et si aucune désynchronisation n'est détectée, alors aucun changement de message n'est validé (cas 1216). Si P<8 et si une désynchronisation temporelle a eu lieu,
alors un changement de message est validé (cas 1217).
De façon analogue, si P>92 et si aucune désynchronisation n'est détectée, alors un changement de message est validé (cas 1217). Si P>92 et si une désynchronisation temporelle a eu lieu, alors aucun changement de
message n'est validé (cas 1216).
Dans le cas d'une désynchronisation temporelle, le watermark local estimé n'est plus LGOPW mais -LGOPW. Le watermark global GGOPW est alors reconstruit, non plus en additionnant LGOPW au watermark global, mais en soustrayant LGOPW du watermark global. Le message local n'est alors plus
LM mais -LM (les bits 0 sont transformés en 1 et vice versa).
Une étape supplémentaire (1209, respectivement 1215) permettant de confirmer si un changement de synchronisation temporelle a eu lieu peut
être effectuse en appliquant l'algorithme illustré par la figure 14 au GOP local.
Toutefois, les étapes 1305 et 1306 ne sont pas effectuéss car la taille du
message est connue.
Si on sait par avance qu'aucune désynchronisation temporelle n'est permise par les éditeurs vidéo utilisés, alors une valeur de P supérieure à 92
est directement considérée comme un changement de message.
La figure 14 illustre la façon de déterminer si la première image du GOP local correspond à une image paire ou une image impaire de la séquence d'origine. A partir de cette information, on peut déterminer si le watermark est inséré dans les images paires ou impaires de la sousséquence. On peut ainsi également déterminer si un changement de synchronisation temporelle a eu lieu. En effet, si la première image du GOP local précédent était une image watermarkée et si la première image du GOP local courant est détectée comme
non watermarkée, un changement de synch ronisation tem porel le est détecté.
Pour effectuer cette étape, les 24 images du GOP local 1300 sont séparées en deux sous-ensembles: le sous-ensemble des images impaires
(1301) et le sous-ensemble des images paires (1302). Chaque image du sous-
ensemble des images impaires est ensuite filtré par un filtre passe-haut et
produit une prédiction du watermark inséré dans l'image courante (étape 1303).
Tous ces watermarks prédits sont ajoutés les uns aux autres.
A partir de ce watermark prédit, la taille du message lié à ce watermark est calculée (étape 1305). Pour chaque bit de ce message, les régions correspondantes sont sélectionnées et un calcul de corrélation entre
ces régions et la séquence de modulation associée est effectué (étape 1307).
La somme des valeurs absolues de ces corrélations est calculée (étape 1309),
conduisant à la valeur S1 (1311).
Si le watermark est réellement inséré dans les images impaires, la taille du message calculée à l'étape 1305 correspond à la taille du message enfoui. La séquence de modulation calculée à partir de cette taille permet d'obtenir des mesures de corrélation entre le watermark inséré et la séquence de modulation utilisoe pour insérer ce watermark. Les valeurs de ces mesures
de corrélation sont donc fortes.
Au contraire, si le watermark n'est pas inséré dans les images impaires (c'est-à-dire qu'il n'y a pas de message enfoui dans les images impaires), la taille du message calculée à l'étape 1305 ne correspond pas à une taille réelle. En conséquence, les mesures de corrélation effectuées à l'étape 1307 correspondent à des mesures entre des images non watermarkées et une séquence de modulation n'ayant aucun lien avec ces images. La corrélation
sera donc faible.
Le même traitement est aussi appliqué aux images paires. Les images paires (1302) du GOP local 1300 sont sélectionnées une à une et une
prédiction du watermark inséré est effectuée (1304) par un filtrage passehaut.
Le résultat de la prédiction est ajouté aux prédictions précédentes. Une fois toutes les images paires du GOP traitees, une approximation d'un éventuel watermark est obtenue. La taille du message enfoui dans ce watermark est alors calculée (étape 1306). A partir de cette taille, la séquence de modulation permettant d'extraire chacun des bits est calculée et la valeur absolue de la mesure de corrélation liée à chaque bit est calculée. Cette valeur est additionnée aux mesures préalablement calculées (étape 1310). La valeur finale est la variable S0 (étape 1312). Si les images watermarkées sont les
images paires, la valeur de S0 sera forte.
Un test 1313 est effectué pour déterminer si S0 est supérieur à S1.
Dans ce cas (1314), les images paires sont détectées comme les images possédant le watermark. Dans le cas contraire (1315), les images impaires sont
les images watermarkées.
Sur le dessin, les étapes 1305 et 1306 correspondent au calcul de la taille du message à partir des watermarks estimés par une prédiction intra image (étapes 1303 et 1304). On peut aussi considérer le calcul de la taille des messages à partir du GOP local comme illustré par la figure 10. De cette façon, la probabilité que la taille du message soit correctement calculée est plus forte, car la prédiction temporelle conduit à une meilleure qualité que la prédiction intra-image. Cependant, le calcul de la corrélation par bit aux étapes 1307 et 1308 doit toujours se faire par l'intermédiaire d'une technique intra-image
(étapes 1303 et 1304).
De façon analogue, si la taille du message est déjà connue, les
étapes 1305 et 1306 ne sont plus nécessaires.
Comme le montre la figure 15, un dispositif mettant en _uvre I'invention est par exemple un micro-ordinateur 10 connocté à différents périphériques, par exemple une caméra numérique 1407 (ou un scanner, ou tout autre moyen d'acquisition ou de stockage d'image) reliée à une carte
graphique et fournissant des informations à traiter selon l'invention.
Le dispositif 10 comporte une interface de communication 1412 reliée à un réseau 1413 apte à transmettre des donnces numériques à traiter ou inversement à transmettre des données traitées par le dispositif. Le dispositif comporte également un moyen de stockage 1408 tel que par exemple un disque dur. ll comporte aussi un lecteur 1409 de disque 1410. Ce disque 1410 peut être une disquette, un CD-ROM, ou un DVD-ROM, par exemple. Le disque 1410, tout comme le disque 1408, peuvent contenir des donnces traitées selon l'invention ainsi que le (ou les programmes) mettant en _uvre l'invention qui, une fois lu par le dispositif 10, sera stocké dans le disque dur 1408. En variante, le programme permettant au dispositif de mettre en _uvre l'invention, pourra être stocké en mémoire morte 1402 (appelée ROM sur le dessin). En seconde variante, le programme pourra être reçu pour étre stocké de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication
1413.
Le dispositif 10 peut être relié à un microphone 1411, au cas o les
données à traiter selon l'invention sont du signal audio.
Ce même dispositif possède un écran 1404 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 1414 ou de tout
autre moyen (souris par exemple).
L'unité centrale 1400 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en _uvre de l'invention, instructions stockées dans la mémoire morte 1402 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 1402, sont transférés dans la mémoire vive RAM 1403 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en _uvre de l'invention. De manière plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, mémorise un programme mettant en _uvre le
procédé de détection.
Le bus de communication 1401 permet ia communication entre les différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui. La représentation du bus 1401 n'est pas limitative et notamment l'unité centrale 1400 est susceptible de communiquer des instructions à tout élément du micro
ordinateur 10 directement ou par l'intermédiaire d'un autre élément du micro-
ordinateur 10.

Claims (32)

REVENDICATIONS
1. Procédé de segmentation temporelle d'une séquence vidéo (200) contenant un ou plusieurs marqueurs, caractérisé en ce que l'analyse du contenu desdits marqueurs permet de segmenter la séquence vidéo en une
pluralité de sous-séquences vidéo.
2. Procédé selon la revendication 1, caractérisé en ce qu'il comporte des étapes suivant lesquelles: - on divise (201) la séquence vidéo (200) en une pluralité de groupes d'images; - on sélectionne (202) successivement chaque groupe de ladite pluralité de groupes d'images; - on extrait (203) un message binaire de chaque groupe d'images sélectionné; - on analyse (204) successivement la validité de chaque message binaire extrait7 de façon à déterminer si ledit message est un marqueur ou une séquence de bruit naturel; et - on regroupe lesdits groupes d'images selon le contenu de leur message.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que, lors de l'étape d'extraction (203), on prédit un marqueur local (402) et un marqueur global (404) et on extrait un premier message (408) à partir du marqueur global
(404) et un second message (407) à partir du marqueur local (402).
4. Procédé selon la revendication 1, 2 ou 3, caractérisé en ce que, lors de l'étape d'extraction (203), on calcule la taille dudit message puis on
extrait le message à partir de ladite taille.
5. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce qu'on effectue en outre une étape de synchronisation vidéo.
6. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce que, lors de l'étape d'analyse (204), on calcule (410, 411; 506; 609) une mesure de confiance en l'hypothèse selon laquelle le message
binaire est issu d'un groupe d'images contenant un marqueur.
7. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce que, lors de l'étape d'analyse (204), on teste (510; 610) si le message extrait à partir du groupe d'images courant est identique au message
extrait à partir du groupe d'images précédent.
8. Procédé selon la revendication précédente, caractérisé en ce que, pour tester si le message extrait à partir du groupe d'images courant est identique au message extrait à partir du groupe d'images précédent, on calcule (1105) le pourcentage (P) de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et on décide (1107) que ces messages sont identiques si ledit
pourcentage (P) est inférieur à une première valeur prédéterminée.
9. Procédé selon la revendication 7, caractérisé en ce que, pour tester si le message extrait à partir du groupe d'images courant est identique au message extrait à partir du groupe d'images précédent, on calcule (1105) le pourcentage (P) de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et on décide (1107) que ces messages sont identiques si ledit pourcentage (P) est inférieur à une première valeur prédéterminée et si aucune désynchronisation temporelle n'est constatée ou si ledit pourcentage (P) est supérieur à une seconde valeur prédéterminée et si une désynchronisation temporelle est constatée.
10. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce que, lors de l'étape d'analyse (204), on étudie (802, 803, 804) la statistique des erreurs entre un message de référence et des messages locaux, et on modifie (805, 806, 807, 808, 809) le statut et le message de groupes d'images initialement détectés comme ne comportant pas de marqueur, si le pourcentage d'erreurs entre le message local considéré et le message de référence est suffisamment proche de ladite statistique, au sens
d'un critère prédéterminé.
11. Procédé selon la revendication précédente, caractérisé en ce que, lors de l'étape d'analyse (204), on calcule le nombre moyen de bits faux
entre le message de référence et les messages locaux.
12. Procédé selon la revendication 10 ou 1 1, caractérisé en ce que le message de référence est calculé à partir d'un groupe d'images global précédant un groupe d'images local pour lequel un changement de message a
été détecté.
13. Procédé selon la revendication 11 ou 12, caractérisé en ce qu'il comporte en outre des étapes suivant lesquelles: - on compare (808) le nombre moyen de bits faux à un taux d'erreur binaire préalablement calculé, et - si le nombre moyen de bits faux est inférieur au taux d'erreur binaire pondéré par une valeur prédéterminée, on modifie (809) le statut du groupe d'images correspondant de façon que, s'il était considéré comme ne comportant pas de marqueur, il soit considéré après modification comme
comportant un marqueur.
14. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce que, lors de l'étape d'analyse (204), on améliore les statuts et les messages liés à des groupes d'images locaux par une boucle de rétroaction.
15. Procédé selon l'une quelconque des revendications précédentes,
caractérisé en ce que chaque groupe d'images est constitué de 24 images consécutives.
16. Dispositif de segmentation temporelle d'une séquence vidéo (200) contenant un ou plusieurs marqueurs, caractérisé en ce qu'il comporte des moyens d'analyse du contenu desdits marqueurs permettant de segmenter
la séquence vidéo en une pluralité de sous-séquences vidéo.
17. Dispositif selon la revendication 16, caractérisé en ce qu'il comporte: - des moyens pour diviser la séquence vidéo (200) en une pluralité de groupes d'images; - des moyens pour sélectionner successivement chaque groupe de ladite pluralité de groupes d'images; des moyens pour extraire un message binaire de chaque groupe d'images sélectionné; - des moyens pour analyser successivement la validité de chaque message binaire extrait, de façon à déterminer si ledit message est un marqueur ou une séquence de bruit naturel; et - des moyens pour regrouper lesdits groupes d'images selon le contenu de leur message.
18. Dispositif selon la revendication 16 ou 17, caractérisé en ce que lesdits moyens d'extraction sont adaptés à prédire un marqueur local (402) et un marqueur global (404) et à extraire un premier message (408) à partir du marqueur global (404) et un second message (407) à partir du marqueur local
(402).
19. Dispositif selon la revendication 16, 17 ou 18, caractérisé en ce que lesdits moyens d'extraction sont adaptés à calculer la taille dudit message
puis à extraire le message à partir de ladite taille.
20. Dispositif selon l'une quelconque des revendications 16 à 19,
caractérisé en ce qu'il comporte en outre des moyens de synchronisation vidéo.
21. Dispositif selon l'une quelconque des revendications 16 à 20,
caractérisé en ce que lesdits moyens d'analyse sont adaptés à calculer une mesure de confiance en l'hypothèse selon laquelle le message binaire est issu
d'un groupe d'images contenant un marqueur.
22. Dispositif selon l'une quelconque des revendications 16 à 21,
caractérisé en ce que lesdits moyens d'analyse comportent des moyens pour tester si le message extrait à partir du groupe d'images courant est identique au
message extrait à partir du groupe d'images précédent.
23. Dispositif selon la revendication précédente, caractérisé en ce que lesdits moyens de test sont adaptés à calculer le pourcentage (P) de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et à décider que ces messages sont identiques si ledit pourcentage (P) est inférieur à une première
valeur prédéterminée.
24. Dispositif selon la revendication 22, caractérisé en ce que lesdits moyens de test sont adaptés à calculer le pourcentage (P) de bits différents entre le message extrait à partir du groupe d'images courant et le message extrait à partir du groupe d'images précédent et à décider que ces messages sont identiques si ledit pourcentage (P) est inférieur à une première valeur prédéterminée et si aucune désynchronisation temporelle n'est constatée ou si ledit pourcentage (P) est supérieur à une seconde valeur prédétermince et si une désynchronisation temporelle est constatée.
25. Dispositif selon l'une quelconque des revendications 16 à 24,
caractérisé en ce que lesdits moyens d'analyse comportent des moyens pour étudier la statistique des erreurs entre un message de référence et des messages locaux, et des moyens pour modifier le statut et le message de groupes d'images initialement détectés comme ne comportant pas de marqueur, si le pourcentage d'erreurs entre le message local considéré et le message de référence est suffisamment proche de ladite statistique, au sens
d'un critère prédéterminé.
26. Dispositif selon la revendication précédente, caractérisé en ce que lesdits moyens d'analyse comportent des moyens pour calculer le nombre
moyen de bits faux entre le message de référence et les messages locaux.
27. Dispositif selon la revendication 25 ou 26, caractérisé en ce que le message de référence est calculé à partir d'un groupe d'images global précédant un groupe d'images local pour lequel un changement de message a
été détecté.
28. Dispositif selon la revendication 26 ou 27, caractérisé en ce qu'il comporte en outre: - des moyens pour comparer le nombre moyen de bits faux à un taux d'erreur binaire préalablement calculé, et - des moyens pour modifier, si le nombre moyen de bits faux est inférieur au taux d'erreur binaire pondéré par une valeur prédéterminée, le statut du groupe d'images correspondant de façon que, s'il était considéré comme ne comportant pas de marqueur, il soit considéré après modification
comme comportant un marqueur.
29. Dispositif selon l'une quelconque des revendications 16 à 28,
caractérisé en ce que les moyens d'analyse mettent en _uvre une boucle de . rétroaction adaptée à améliorer les statuts et les messages liés à des groupes
d'images locaux.
30. Dispositif selon l'une quelconque des revendications 16 à 2g,
caractérisé en ce que chaque groupe d'images est constitué de 24 images consécutives.
31. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte des moyens adaptés à mettre en _uvre un procédé de
segmentation temporelle selon l'une quelconque des revendications 1 à 15.
32. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte un dispositif de segmentation temporelle selon l'une quelconque
des revendications 16 à 30.
FR0200485A 2002-01-16 2002-01-16 Procede et dispositif de segmentation temporelle d'une sequence video Expired - Fee Related FR2834852B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0200485A FR2834852B1 (fr) 2002-01-16 2002-01-16 Procede et dispositif de segmentation temporelle d'une sequence video
US10/339,312 US7228502B2 (en) 2002-01-16 2003-01-10 Method and device for temporal segmentation of a video sequence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0200485A FR2834852B1 (fr) 2002-01-16 2002-01-16 Procede et dispositif de segmentation temporelle d'une sequence video

Publications (2)

Publication Number Publication Date
FR2834852A1 true FR2834852A1 (fr) 2003-07-18
FR2834852B1 FR2834852B1 (fr) 2004-06-18

Family

ID=8871307

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0200485A Expired - Fee Related FR2834852B1 (fr) 2002-01-16 2002-01-16 Procede et dispositif de segmentation temporelle d'une sequence video

Country Status (2)

Country Link
US (1) US7228502B2 (fr)
FR (1) FR2834852B1 (fr)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2430101A (en) * 2005-09-09 2007-03-14 Mitsubishi Electric Inf Tech Applying metadata for video navigation
FR2902266B1 (fr) * 2006-06-13 2008-10-24 Canon Kk Procede et dispositif de repartition de la bande passante de communication
US8799372B1 (en) * 2008-10-07 2014-08-05 Sprint Spectrum, L.P. Management of referenced object based on size of referenced object
US9084096B2 (en) 2010-02-22 2015-07-14 Yahoo! Inc. Media event structure and context identification using short messages
US20120210447A1 (en) * 2010-11-28 2012-08-16 Pedro Javier Vazquez Secure video download method
US20120134529A1 (en) * 2010-11-28 2012-05-31 Pedro Javier Vazquez Method and apparatus for applying of a watermark to a video during download
US9432704B2 (en) * 2011-11-06 2016-08-30 Akamai Technologies Inc. Segmented parallel encoding with frame-aware, variable-size chunking
US9485456B2 (en) 2013-12-30 2016-11-01 Akamai Technologies, Inc. Frame-rate conversion in a distributed computing system
CN111193906B (zh) * 2019-12-26 2022-03-22 深圳供电局有限公司 可视化监控管理方法、装置、计算机设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2361097A (en) * 2000-04-05 2001-10-10 Sony Uk Ltd A system for generating audio/video productions
WO2001076253A1 (fr) * 2000-04-05 2001-10-11 Sony United Kingdom Limited Traitement de materiel filigrane

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611607B1 (en) * 1993-11-18 2003-08-26 Digimarc Corporation Integrating digital watermarks in multimedia content
USRE38401E1 (en) * 1997-01-16 2004-01-27 Obvious Technology, Inc. Interactive video icon with designated viewing position
US6195458B1 (en) * 1997-07-29 2001-02-27 Eastman Kodak Company Method for content-based temporal segmentation of video
US6278446B1 (en) 1998-02-23 2001-08-21 Siemens Corporate Research, Inc. System for interactive organization and browsing of video
US6327390B1 (en) * 1999-01-14 2001-12-04 Mitsubishi Electric Research Laboratories, Inc. Methods of scene fade detection for indexing of video sequences
US6424370B1 (en) * 1999-10-08 2002-07-23 Texas Instruments Incorporated Motion based event detection system and method
US6636220B1 (en) * 2000-01-05 2003-10-21 Microsoft Corporation Video-based rendering
US8355525B2 (en) * 2000-02-14 2013-01-15 Digimarc Corporation Parallel processing of digital watermarking operations
GB2362532B (en) * 2000-05-15 2004-05-05 Nokia Mobile Phones Ltd Video coding
FR2812502B1 (fr) 2000-07-25 2002-12-20 Canon Kk Insertion et extraction de message dans des donnees numeriques
US7203335B2 (en) * 2001-08-07 2007-04-10 Gabriel Fielding System and method for extracting a watermark signal in a digital image sequence

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2361097A (en) * 2000-04-05 2001-10-10 Sony Uk Ltd A system for generating audio/video productions
WO2001076253A1 (fr) * 2000-04-05 2001-10-11 Sony United Kingdom Limited Traitement de materiel filigrane

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MOBASSERI B G: "Direct sequence watermarking of digital video using m-frames", IMAGE PROCESSING, 1998. ICIP 98. PROCEEDINGS. 1998 INTERNATIONAL CONFERENCE ON CHICAGO, IL, USA 4-7 OCT. 1998, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 4 October 1998 (1998-10-04), pages 399 - 403, XP010308533, ISBN: 0-8186-8821-1 *
OOSTVEEN J ET AL: "VISUAL HASHING OF DIGITAL VIDEO: APPLICATIONS AND TECHNIQUES", PROCEEDINGS OF THE SPIE, SPIE, BELLINGHAM, VA, US, no. 4472, December 2001 (2001-12-01), pages 121 - 131, XP001078972 *
SWANSON M D ET AL: "MULTIRESOLUTION SCENE-BASED VIDEO WATERMARKING USING PERCEPTUAL MODELS", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, IEEE INC. NEW YORK, US, vol. 16, no. 4, 1 May 1998 (1998-05-01), pages 540 - 550, XP000765114, ISSN: 0733-8716 *

Also Published As

Publication number Publication date
US20030132955A1 (en) 2003-07-17
US7228502B2 (en) 2007-06-05
FR2834852B1 (fr) 2004-06-18

Similar Documents

Publication Publication Date Title
EP1908008B1 (fr) Procédé et dispositif de tatouage d&#39;horodates, procédé et dispositif de décodage d&#39;horodates, applications et produits programmes d&#39;ordinateur correspondants
EP1173980B1 (fr) Procede d&#39;insertion d&#39;un filigrane dans une image
EP1473944A2 (fr) Procédé de tatouage d&#39;une séquence vidéo à sélection adaptative de la zone d&#39;insertion du tatouage, procédé de détection, dispositifs, support de données et programmes d&#39;ordinateur correspondants.
KR101143233B1 (ko) 디지탈 멀티미디아 데이타에 대한 비동기화된 핑거프린팅 방법 및 시스템
EP2962301B1 (fr) Generation d&#39;une signature d&#39;un signal audio musical
WO1999004570A1 (fr) Procede de marquage d&#39;un signal numerique video compresse
EP2122570B1 (fr) Système d&#39;intégration de données
FR2834852A1 (fr) Procede et dispositif de segmentation temporelle d&#39;une sequence video
EP1672585A1 (fr) Procédé, dispositif et système de traitement d&#39;images par estimation de mouvement
EP2785039B1 (fr) Procédé et dispositif de tatouage d&#39;une séquence d&#39;images, procédé et dispositif d&#39;authentification d&#39;une séquence d&#39;images tatouées et programme d&#39;ordinateur correspondant
FR2963190A1 (fr) Procede et dispositif de codage d&#39;une sequence d&#39;images
CA2416198C (fr) Procede et systeme de decodage de tatouage d&#39;images
FR2896938A1 (fr) Procede de tatouage de donnees numeriques
EP1797532A1 (fr) Procede et dispositif de lecture de tatouage, produit programme d&#39;ordinateur et moyen de stockage correspondants.
JP4943503B2 (ja) イメージコンテンツにデータを隠蔽する方法及び装置
EP2364489A1 (fr) Procédé et dispositif pour l&#39;enfouissement d&#39;une séquence binaire dans un flux video compressé
FR2934453A1 (fr) Procede et dispositif de masquage d&#39;erreurs
FR2917553A1 (fr) Procede de diffusion d&#39;un element complementaire, serveur et terminal correspondants
EP1962244B1 (fr) Procédé de tatouage numérique d&#39;un contenu photo ou vidéo permettant une traçabilité de ce contenu
WO2011064493A1 (fr) Procede et dispositif de codage avec correction d&#39;erreur adapte au marquage transactionnel
Aboalsamh et al. An improved steganalysis approach for breaking the F5 algorithm
FR2831375A1 (fr) Insertion d&#39;un message dans une sequence d&#39;images numeriques
FR2823630A1 (fr) Association d&#39;informations de segmentation a un signal numerique
Sharma et al. Digital Image Steganographic Approach (DISA) to Enhance Quality and Imperceptibility
WO2005096614A2 (fr) Procede et dispositif de detection du tatouage d’un signal numerique

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20140930