FR2866183A1 - Procedes d'emission et de reception d'une animation, et dispositifs associes - Google Patents

Procedes d'emission et de reception d'une animation, et dispositifs associes Download PDF

Info

Publication number
FR2866183A1
FR2866183A1 FR0401221A FR0401221A FR2866183A1 FR 2866183 A1 FR2866183 A1 FR 2866183A1 FR 0401221 A FR0401221 A FR 0401221A FR 0401221 A FR0401221 A FR 0401221A FR 2866183 A1 FR2866183 A1 FR 2866183A1
Authority
FR
France
Prior art keywords
data
keyframe
during
image
time interval
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
FR0401221A
Other languages
English (en)
Other versions
FR2866183B1 (fr
Inventor
Franck Denoual
Xavier Henocq
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 FR0401221A priority Critical patent/FR2866183B1/fr
Priority to US11/049,978 priority patent/US7426305B2/en
Publication of FR2866183A1 publication Critical patent/FR2866183A1/fr
Application granted granted Critical
Publication of FR2866183B1 publication Critical patent/FR2866183B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Processing Or Creating Images (AREA)

Abstract

La présente invention a pour objet un procédé d'émission d'une image clé à transmettre pendant un premier intervalle de temps et d'une image secondaire calculée à partir l'image clé et à transmettre pendant un second intervalle de temps. L'image clé est définie notamment par des données de base et l'image secondaire est définie par des données secondaires. Le procédé comprend les étapes suivantes :- émission des données de base (E10) pendant le premier intervalle de temps ;- émission des données secondaires (E6) et de données de rehaussement de l'image clé (E8) pendant le second intervalle de temps.L'invention propose également un procédé de réception et des dispositifs associés.

Description

L'invention concerne la transmission d'informations qui décrivent une
animation, notamment sur un réseau à bande passante variable.
On dénomme généralement animation une (ou plusieurs) image(s) en mouvement à afficher sur un écran, par exemple un écran d'ordinateur. L'animation est normalement définie comme une suite d'images fixes, dont le renouvellement régulier à une fréquence supérieure à la sensibilité de l'oeil humain permet de simuler un mouvement.
Afin de limiter la quantité d'informations nécessaires au codage de ces animations (notamment pour leur stockage ou leur transmission), il a déjà été proposé de ne coder complètement (selon un algorithme donné) qu'une première partie de ces images (images clés). Pour les images restantes (image secondaires), on ne conserve (pour le stockage ou la transmission) que des données secondaires, qui ne permettent la restitution de l'image initiale qu'en connaissance d'une image clé avoisinante. Cet inconvénient est compensé par la taille réduite des données secondaires. Une telle approche est par exemple utilisée par la norme MPEG (de l'anglais Moving Picture Expert Group).
On souhaite naturellement transmettre de telles animations (ou suites d'images) pour les diffuser en vue de leur affichage à un ou plusieurs utilisateurs finaux. Les moyens de transmission utilisés ont toutefois une bande passante limitée, et parfois même variable. C'est par exemple le cas du réseau Internet sur lequel l'échange d'animations se développe particulièrement de nos jours.
Il est souvent préférable pour l'utilisateur de pouvoir afficher l'animation transmise en temps réel ou avec un retard le plus léger possible. Dans certaines applications, l'affichage en temps réel (ou quasi-temps réel) est même nécessaire pour réaliser le service souhaité avec une qualité acceptable. C'est par exemple le cas pour les systèmes de type visiophone dans lesquels les images des interlocuteurs échangées constituent des animations.
Afin d'obtenir un affichage sans retard conséquent chez l'utilisateur final, il a déjà été proposé d'adapter la quantité de données transmises à la bande passante disponible au moment de la transmission. Pour ce faire, on procède d'abord à une hiérarchisation des données à émettre, puis on transmet une partie seulement des données (données de base) ou l'intégralité des données (données de base et données de rehaussement) selon la bande passante disponible. Une telle solution est par exemple décrite dans la demande de brevet WO 01/03 441.
Cette solution ne prend toutefois en compte que la bande passante disponible au moment de la transmission des données hiérarchisées. Ceci est notamment préjudiciable dans le cas où un codage du type images clés/images secondaires est utilisé. En effet, selon cette technique, la transmission d'une image clé est fréquemment limitée à ses données de base, du fait notamment de la taille relativement importante des données qui décrivent complètement l'image clé. La qualité de l'ensemble des images secondaires qui sont associées à cette image clé, et qui sont donc calculées à partir de cette image clé, se trouve ainsi réduite, alors que la transmission des images secondaires n'utilise en général pas toute la bande passante disponible.
Afin de remédier à cet inconvénient, l'invention propose un procédé d'émission, dans un canal de transmission ayant une bande passante, d'au moins une image clé à transmettre pendant un premier intervalle de temps et d'une image secondaire calculée à partir de ladite au moins une image clé et à transmettre pendant un second intervalle de temps, ladite au moins une image clé étant définie notamment par des données de base et l'image secondaire étant définie par des données secondaires, caractérisé par les étapes suivantes: - émission des données de base pendant le premier intervalle de temps; - émission des données secondaires et de données de rehaussement de ladite au moins une image clé pendant le second intervalle de temps.
Corrélativement, l'invention propose également un dispositif d'émission dans un canal de transmission ayant une bande passante, d'au moins une image clé à transmettre pendant un premier intervalle de temps et d'une image 2866183 3 secondaire calculée à partir de ladite au moins une image clé et à transmettre pendant un second intervalle de temps, ladite au moins une image clé étant définie notamment par des données de base et l'image secondaire étant définie par des données secondaires, caractérisé en ce qu'il comprend des moyens d'émission des données de base pendant le premier intervalle de temps, et des moyens d'émission des données secondaires et de données de rehaussement de ladite au moins une image clé pendant le second intervalle de temps.
Ainsi, les données de rehaussement transmises pendant le second intervalle viennent compléter la définition de l'image clé, ce qui permet d'obtenir une image secondaire de meilleure qualité. De plus, le canal de transmission est mieux utilisé grâce à la transmission des données de rehaussement dans la partie laissée libre par la petite taille relative des données secondaires.
Selon un mode de réalisation avantageux, le procédé comprend une étape de détermination des données de rehaussement de ladite au moins une image clé en fonction de la bande passante disponible sur le canal de transmission et de la quantité de données secondaires à transmettre. L'utilisation du canal de transmission est ainsi optimisée.
Selon une possibilité de réalisation, le procédé comprend les étapes suivantes: - estimation de la bande passante disponible dudit canal pendant le premier intervalle de temps afin de déterminer une première quantité de données à transmettre; - extraction des données de base de ladite au moins une image clé de telle sorte que la taille des données de base soit inférieure ou égale à ladite 25 première quantité.
Les données de base sont ainsi exactement adaptées à la bande passante disponible au moment de leur transmission.
En pratique, l'extraction des données de base peut être réalisée par les étapes suivantes: - sélection, à l'aide d'une table contenant la taille des données de base en fonction d'au moins un paramètre, d'au moins une valeur du paramètre telle que la taille associée par la table soit inférieure ou égale à ladite première quantité ; - extraction des données de base à partir au moins de ladite valeur.
2866183 4 Cette solution permet une sélection facile des données de base. Le procédé d'émission peut comprendre les étapes suivantes: - estimation de la bande passante disponible dudit canal pendant le second intervalle de temps afin de déterminer une seconde quantité de données à transmettre; - détermination du budget de données disponible par soustraction de la taille des données secondaires à ladite seconde quantité ; - extraction des données de rehaussement de ladite au moins une image clé de telle sorte que la taille des données de rehaussement soit inférieure 10 ou égale au budget disponible.
Les données de rehaussement transmises sont ainsi exactement adaptées à la bande passante disponible.
Le premier intervalle de temps et le second intervalle de temps peuvent avoir des durées égales ou sensiblement égales.
Les données secondaires peuvent consister en des paramètres d'interpolation.
Lorsque deux images clés doivent être transmises successivement, on peut prévoir qu'une première image clé et une seconde image soient transmises pendant le premier intervalle de temps.
Dans certains cas, la première image clé est destinée à être affichée à un premier instant, la second image clé est destinée à être affichée à un second instant, et l'image secondaire est destinée à être affichée à un troisième instant. Si le second instant est séparé du premier instant par une première durée et que le troisième instant est séparé du premier instant par une seconde durée inférieure à la première durée, on peut prévoir que des premières données de rehaussement relatives à la première image clé et des secondes données de rehaussement relatives à la seconde image clé soient déterminées de telle sorte que le rapport de taille entre les premières et les secondes données de rehaussement dépend du rapport de la seconde durée à la première durée.
Ainsi, l'amélioration de la qualité des images clés est au mieux adaptée au moment où ces images clés influent sur l'image secondaire en cours de décodage.
Les images clés et les images secondaires définissent en général une animation.
Dans ce cas, on peut prévoir que l'animation comporte plusieurs images secondaires entre la première image clé et la seconde image clé.
Les images sont par exemple des images multirésolution avec plusieurs niveaux de qualité. Les images sont par exemple des images au format JPEG2000. Leur transmission peut être réalisée selon le protocole JPIP.
L'invention propose également un procédé de réception dans un canal de transmission dans lequel au moins une image clé est reçue pendant un premier intervalle de temps et dans lequel une image secondaire est reçue pendant un second intervalle de temps, caractérisé par les étapes suivantes: - pendant le premier intervalle de temps, réception de données de base définissant ladite au moins une image clé ; - pendant le second intervalle de temps, réception de données de rehaussement de ladite au moins une image clé et de données secondaires définissant l'image secondaire à partir de ladite au moins une image clé.
Corrélativement, l'invention propose un dispositif de réception dans un canal de transmission dans lequel au moins une image clé est reçue pendant un premier intervalle de temps et dans lequel une image secondaire est reçue pendant un second intervalle de temps, caractérisé en ce qu'il comprend des moyens de réception de données de base définissant ladite au moins une image clé pendant le premier intervalle de temps, et des moyens de réception de données de rehaussement de ladite au moins une image clé et de données secondaires définissant l'image secondaire à partir de ladite au moins une image clé pendant le second intervalle de temps.
Ainsi, la qualité de l'image secondaire n'est pas limitée par la bande passante au moment de la transmission de l'image clé, mais peut être complétée par les données de rehaussement transmises pendant le second intervalle.
En outre, l'invention propose un procédé de décodage d'au moins une image clé et d'une image secondaire reçues par le procédé décrit ci-dessus, avec les étapes de: - décodage des données de base de manière à générer une première version de ladite au moins une image clé ; - réunion des données de base et des données de rehaussement en données rehaussées; 6 2866183 décodage des données secondaires de manière à générer ladite image secondaire en fonction des données rehaussées.
Selon une possibilité de réalisation, et afin notamment d'assurer un affichage en temps réel, le procédé exposé ci-dessus comprend une étape d'affichage de ladite première version entre les étapes de décodage des données de base et de réunion des données de base et des données de rehaussement.
Selon une autre possibilité de réalisation, éventuellement compatible avec la précédente, le procédé comporte une étape de décodage des données rehaussées de manière à générer une seconde version de ladite au moins une image clé et le décodage des données secondaires de matière à générer ladite image secondaire est basé sur ladite seconde version.
L'invention propose également un moyen de stockage d'informations qui peut être lu par un ordinateur ou un microprocesseur, contenant des instructions d'un programme d'ordinateur pour exécuter les étapes de l'un des procédés mentionnés ci-dessus.
L'invention propose aussi un moyen de stockage d'informations partiellement ou totalement amovible, qui peut être lu par un ordinateur ou un microprocesseur, contenant des instructions d'un programme d'ordinateur pour exécuter des étapes de l'un des procédés mentionnés cidessus.
L'invention propose en outre un programme d'ordinateur qui peut être chargé dans un appareil programmable, caractérisé en ce qu'il comprend des séquences d'instructions ou des portions de code logiciel pour mettre en oeuvre les étapes de l'un des procédés ci-dessus.
Les avantages relatifs aux dispositifs d'émission, de réception et de décodage, aux moyens de stockage d'information et au programme d'ordinateur étant les mêmes que ceux relatifs aux procédés d'émission, de réception et de décodage brièvement exposés ci-dessus, ils ne seront pas rappelés ici.
D'autres caractéristiques et avantages de l'invention apparaîtront à la lumière de la description qui suit, faite en référence aux dessins annexés, dans lesquels: - la figure 1 décrit les étapes principales d'un mode de réalisation de l'invention; - la figure 2 décrit dans ce cadre une procédure d'initialisation d'une table de données; 7 2866183 - la figure 3 décrit la sélection d'une version de base d'une image clé ; - la figure 4 décrit la sélection de données de rehaussement à émettre pendant un intervalle de temps d'émission de données secondaires; - la figure 5 décrit l'utilisation d'un canal de transmission tel que résultant de l'invention; - la figure 6 décrit un procédé de réception conforme à l'invention; - la figure 7 décrit un contexte possible d'utilisation de l'invention; - la figure 8 décrit un dispositif de mise en oeuvre de l'invention.
La Figure 1 décrit les étapes principales d'un procédé de transmission d'image conforme à l'invention.
Pour ce mode de réalisation, nous prenons l'exemple d'une animation proposant une séquence vidéo cadencée à une fréquence égale à F images par seconde. Cette séquence comporte N images (numérotées de 0 à N-1 pour référence) et est constituée d'un nombre d'images clés Nc encodées selon le format du standard JPEG2000. Les images secondaires situées entre deux images clés sont construites par interpolation à partir de ces deux images clés. On désigne par D(I) le nombre de bits nécessaires à la représentation de l'image I avec I E[0,N[. Chaque image compressée au format JPEG2000 peut être codée selon un schéma dénommé multirésolution où la résolution R varie entre 0 et Rmax. Selon le standard JPEG2000, Rmax < 32. De plus, une image compressée au format JPEG2000 possède plusieurs niveaux de qualité Q compris entre 0 et Qmax, avec, conformément au standard JPEG2000, Q. < 216.
Une telle animation peut être obtenue, par exemple, à l'aide de l'outil Macromedia Flash MX ou tout autre outil équivalent permettant la création et l'édition de contenus multimédias. On considère alors que le créateur de l'animation peut importer des images du type images compressées au format JPEG2000, afin de les avoir à disposition pour créer son animation.
Pour chaque image importée, il définit une résolution ainsi qu'un niveau de qualité auxquels il souhaite la voir figurer dans son animation. Il peut également ne considérer qu'une partie de l'image spécifiée par une zone spatiale rectangulaire. Ces niveaux de résolution et de qualité définis par l'utilisateur, que l'on désigne respectivement Rumax et Qumax, sont les valeurs prises en compte 8 2866183 lors de la mise en oeuvre de l'invention et sont bornées respectivement par Rmax et Qmax.
Le procédé décrit en tant qu'exemple à la figure 1 comprend des étapes qui peuvent être réalisées sans avoir besoin d'une connexion au canal de transmission des images (représentées par le bloc B1) et des étapes pour lesquelles la connexion au canal de transmission est nécessaire (représentées par le bloc B2).
Les premières étapes (EO à E2) ne nécessitent pas de connexion au canal de transmission et font donc partie du bloc B1 sur la figure 1.
Dans une étape initiale E0, on définit des images clés, c'est-à-dire des images de l'animation qui sont entièrement définies par les données qui les représentent sans nécessiter de se référer à une autre image. Naturellement, on définit par là même les autres images de l'animation comme images secondaires, c'est-à-dire des images qui nécessitent pour leur décodage les données relatives à au moins une image clé avoisinante. Dans l'exemple décrit ici, les images clés sont par exemple des images numériques encodées selon le format JPEG2000.
Lors de l'étape suivante El, on détermine les données secondaires qui permettront de coder les images secondaires en référence aux images clés. Ici, les images secondaires sont des images interpolées et les données secondaires sont ainsi des paramètres d'interpolation. Les paramètres d'interpolation sont naturellement mémorisés par exemple par stockage dans une mémoire vive ou dans un autre moyen de stockage tel qu'un disque dur.
L'exemple de la figure 1 propose également une étape E2 de construction d'une table, qui sera détaillée par la suite en référence à la figure 2. 25 Pour l'essentiel, cette table permet de simplifier la détermination des données à envoyer dans le canal de transmission aux étapes ultérieures.
On va à présent décrire les étapes du bloc B2, c'est-à-dire celles qui nécessitent la connexion de l'appareil émetteur au canal de transmission des images. Comme précédemment, l'indice I décrit l'image de l'animation en cours 30 de traitement.
Lors de l'étape E3, on initialise l'indice d'images I à zéro.
A l'étape suivante E4, on estime la bande passante du canal de transmission. Dans ce but, l'appareil émetteur (qui est par exemple un serveur) 9 2866183 peut mesurer le taux de perte de paquets qui s'est produit lors des échanges précédents.
On passe ensuite à l'étape E5, dans laquelle on détermine si l'image considérée est une image clé grâce à l'indice I. Si l'image considérée est une image clé, on passe à l'étape E9. Dans le cas contraire, on passe à l'étape E6.
S'il s'agit d'une image clé, on va déterminer la meilleure représentation de l'image clé qui pourra être transmise pendant un premier laps de temps déterminé (égal à 1/F) avec la bande passante estimée ci-dessus. Cette représentation constituera des données de base qui définissent au moins partiellement l'image clé.
Concrètement, cette détermination est réalisée à l'étape E9 dans laquelle on calcule une version de base de l'image clé ; la taille de la version de base de l'image clé permettra d'être entièrement transportée dans le canal de transmission dans le premier laps de temps indiqué ci-dessus.
Une fois la version de base déterminée, elle est émise dans le canal de transmission à l'étape E10, par l'émission des données de base correspondantes.
L'étape E10 est suivie de l'étape El1 durant laquelle on incrémente l'indice de l'image traitée.
On passe ensuite à l'étape E12, au cours de laquelle on vérifie qu'il reste encore des images à transmettre par comparaison de l'indice I au nombre total d'images N. Si c'est le cas (I<N), on retourne à l'étape E4 déjà décrite d'estimation de la bande passante. Au contraire, si l'image traitée était la dernière image de 25 l'animation (I=N), on met fin à la procédure d'émission.
Dans le cas où l'étape E5 détermine que l'image traitée n'est pas une image clé, alors on passe à l'étape E6. L'étape E6 consiste à émettre les paramètres d'interpolation qui représentent l'image interpolée en cours (c'est-à-dire à émettre les données secondaires qui représentent l'image secondaire en cours) pendant un second laps de temps.
On passe ensuite à l'étape E7 au cours de laquelle on vérifie si le canal de transmission possède encore de la bande passante disponible pendant le second laps de temps, c'est-à-dire si l'émission des données secondaires (ou 2866183 paramètres d'interpolation) n'a pas occupé toute la bande passante estimée pour ce second laps de temps.
S'il ne reste pas de bande passante disponible, on passe à l'étape E11 précédemment décrite d'incrémentation de l'indice d'image.
En revanche, si de la bande passante est disponible pendant le second laps de temps, on évalue la bande passante restante (i.e. encore disponible) deltaBP puis on passe à l'étape E8.
Lors de l'étape E8, des informations de rehaussement de l'image clé sont émises dans le canal de transmission. Pour ce faire, on va d'abord déterminer les données de rehaussement, c'est-à-dire les données qui viendront compléter la définition de l'image clé par rapport aux données de base précédemment émises. Les données de rehaussement sont, par exemple, choisies en fonction de la bande passante restante pendant le second laps de temps, c'est-à-dire en fonction de la bande passante estimée lors de l'étape E4 à laquelle on a soustrait la bande passante nécessaire à la transmission des données secondaires ou paramètres d'interpolation.
La méthode de détermination des données de rehaussement utilisée dans le présent'exemple sera détaillée ultérieurement en référence à la figure 4.
Lorsque les données de rehaussement sont ainsi déterminées, elles sont émises sur le canal de transmission pendant le second laps de temps, au cours duquel les données secondaires ont déjà été émises.
L'étape E8 est ensuite suivie de l'étape E11 précédemment mentionnée qui consiste à incrémenter l'indice d'image.
La Figure 2 décrit en détail l'étape E2 d'initialisation de la table précédemment mentionnée. Cette table répertorie, pour les différentes représentations de l'image clé qu'il est possible d'obtenir, la taille des données représentant l'image clé selon cette représentation. On dénommera dans la suite "version" une représentation particulière de l'image clé. La table mentionnée ci-dessus sera de ce fait dénommée table des versions.
A l'étape E100, on récupère le nombre de niveaux de résolution sur lesquels l'image clé a été encodée. Cette étape est, par exemple, réalisée par décodage des en-têtes de l'image considérée qui a été compressée au format JPEG2000. Dans la suite, on appelle Rmax le nombre de niveaux de résolution ainsi obtenu. En général, ce nombre est compris entre 0 et 32.
A l'étape suivante E101, on calcule le niveau de résolution pour l'image clé que l'on veut transmettre. Par exemple si l'image originale a une hauteur hmax en pixel et que l'on souhaite transmettre une image clé avec une hauteur humax, la résolution finalement utilisée Rumax sera donnée par la formule suivante: Rumax = Rmax loge (h mx) u max Naturellement, afin de conserver un niveau de résolution entier, la hauteur humai est la hauteur exprimée en puissance de deux la plus proche de la hauteur souhaitée.
A l'étape E102, on récupère le nombre de niveaux de qualité Qmax dans l'image originale. A l'étape suivante E103, on détermine le niveau Qumax que l'on souhaite utiliser. Cette donnée est par exemple entrée par l'utilisateur qui souhaite émettre l'animation sur le canal de transmission.
A l'étape E104, on décode puis on sauvegarde la version de l'image clé obtenue avec une résolution Rumax et un niveau de qualité Qumax et que l'on note i(Rumax, Qumax). II s'agit de la représentation la plus complète de l'image clé que l'on souhaite transmettre dans le canal de transmission.
Dans la suite, on va obtenir différentes versions de l'image clé pour une résolution et une qualité inférieure à la représentation qui vient d'être mentionnée.
A l'étape E105 qui suit l'étape E104, on initialise la résolution courante à zéro (R=0).
A l'étape E106 qui suit l'étape E105, on initialise la qualité courante à zéro (Q=0).
Lors de l'étape suivante E107, on sauvegarde la résolution courante R 25 et la qualité courante Q dans la table des versions.
A l'étape suivante E108, on procède au décodage de l'image clé avec pour paramètre la résolution courante R et la qualité courante Q. On peut ainsi obtenir facilement la taille des données nécessaires à la représentation de l'image clé avec ses paramètres.
Cette taille est sauvegardée dans la table des versions en association avec les paramètres de résolution R et de qualité Q correspondants (étape E109).
Naturellement, on peut sauvegarder l'information de taille sous la forme d'un débit puisque les données doivent être transmises dans un laps de temps égal à 1 sur F. Après l'étape E109, on procède au cours de l'étape E110 à une mise à 5 l'échelle de l'image obtenue avec les paramètres de résolution courante R et de qualité courante Q. On pourra ainsi comparer à l'étape El11 cette image avec l'image originale dans sa version à transmettre (résolution Rumax et qualité Qumax).
On obtiendra alors facilement (étape E112) une mesure de la distorsion engendrée par l'utilisation d'une qualité Q et d'une résolution R inférieures au maximum possible. La distorsion sera sauvegardée dans la table des versions en association avec la résolution courante R et la qualité courante Q. Après l'étape E112, on passe aux valeurs de qualité et de résolution 15 supérieure. Pour ce faire, à l'étape E113, on vérifie si la qualité courante Q atteint la qualité maximum pour la transmission Qumax.
Si ce n'est pas le cas, on incrémente la qualité courante à l'étape E114, puis on reprend la constitution de la table des versions à l'étape E107 déjà décrite.
Si, au contraire, la qualité courante atteint la qualité maximum utilisée pour la transmission Qumax, on passe alors à la résolution suivante.
Pour ce faire, à l'étape E115, on vérifie que la résolution maximum n'a pas été atteinte. Si la résolution courante n'est pas la résolution maximum Rumax, on passe à l'étape E116 d'incrémentation de la résolution courante, puis à l'étape E106 déjà décrite dans laquelle la qualité courante est à nouveau initialisée afin de constituer la table des versions pour la nouvelle résolution courante.
De retour à l'étape E115, si la résolution Rumax est atteinte, on passe à l'étape E117 au cours de laquelle on effectue un tri des versions par qualité croissante. Pour ce faire, on peut utiliser le critère de distorsion précédemment mentionné. Les versions sont alors référencées par un indice V variant de O à Vmax.
On peut remarquer que la technique qui vient d'être décrite ne nécessite pas le stockage des données correspondant aux différentes versions de l'image clé considérée. Comme on le verra dans la suite, on peut en effet procéder au décodage avec la résolution et la qualité choisies lors de l'émission des données.
En variante, on peut stocker sur le serveur d'émission les différentes 5 versions de l'image clé obtenues avec les différents paramètres de résolution R et de qualité Q. La Figure 3 décrit en détail le procédé de détermination de la version de base à émettre au cours du premier laps de temps, telle qu'elle est prévue au cours de l'étape E9 de la figure 1 décrite ci-dessus.
En effet, lorsqu'une image clé doit être émise dans le canal de transmission, on doit déterminer quelle version de base doit être transmise, c'est-à-dire quelle représentation de l'image clé on veut utiliser. Les données qui constituent la version de base de l'image clé seront dénommées données de base et émises sur le canal de transmission pendant le premier laps de temps.
La détermination d'une version de base commence par l'étape E200 derécupération de la bande passante BP estimée lors de l'étape E4 (figure 1) . Ensuite, à l'étape E201, on récupère également la fréquence F de l'animation qui est donc l'inverse de la durée du premier laps de temps (durée de transmission d'une image). On passe alors à l'étape E202, au cours de laquelle on calcule la taille maximum Dmax des données qui pourront être envoyées sur le canal de transmission pendant le premier laps de temps, par la formule simple: Dmax = BPIF.
La taille Dmax est donc la taille maximum que peut avoir la version de base de l'image clé à émettre sur le canal de transmission pendant le premier 25 laps de temps.
On parcourt alors les différentes versions de l'image clé pour déterminer laquelle est la mieux adaptée à la taille Dmax.
Pour ce faire, l'étape E202 est suivie de l'étape E203 à laquelle on initialise la valeur courante V qui indique la version considérée, à la valeur 30 V=Vmax.
On passe ensuite à l'étape E204, au cours de laquelle on lit, dans la table des versions élaborée conformément au procédé représenté à la figure 2, la taille D(V) de la version considérée.
14 2866183 On passe ensuite à l'étape suivante E205 où l'on compare la taille D(V) de la version courante à la taille Dmax déterminée à l'étape E202.
Si la taille de la version courante D(V) est supérieure à la taille Dmax, la version ne pourra pas être émise sur le canal de transmission à cause de sa taille. On passe donc à l'étape E207 où l'on décrémente l'indice de la version (V=V-1).
On passe ensuite l'étape E208 qui vérifie que la version courante n'était pas la dernière version disponible (test si V<O).
Naturellement, si la version courante est la dernière version disponible, on met fin au procédé de détermination de la version de base. Ce cas signifie qu'aucune des versions de base préparée par la table des versions ne pouvait être émise pendant le premier laps de temps avec la bande passante estimée au préalable. On peut alors prévoir de réitérer le procédé (à partir de l'étape E4 de la figure 1) au cours d'un nouveau laps de temps. A titre de variante, on peut envisager d'envoyer la version de plus petite taille.
Si, au contraire, la version courante n'est pas la dernière version disponible, on passe de l'étape E208 à l'étape E204 décrite précédemment où l'on lit la taille D(V) de la nouvelle version courante.
De retour à l'étape E205, s'il a été déterminé que la taille de la version courante est inférieure à la taille Dmax, on est alors dans le cas où la version courante a une taille suffisamment réduite pour pouvoir être envoyée sur le canal de transmission pendant le premier laps de temps.
Dans ce cas, on passe à l'étape E206 qui correspond à l'émission sur le canal de transmission de la version de base, et plus précisément des données de base qui la définissent, comme cela est prévu à l'étape E10 de la figure 1.
On comprend aisément que le processus représenté à la figure 3 permet d'émettre la représentation de l'image clé (ou version) la mieux adaptée à la bande passante pendant le premier laps de temps.
La Figure 4 décrit en détail la détermination des données de 30 rehaussement à émettre lors de l'étape E8 de la figure 1.
A l'étape E700, on récupère la valeur de la bande passante restante deltaBP évaluée lors de l'étape E7. Cette bande passante restante deltaBP constitue un budget global de données qui est utilisé pour transmettre des informations de rehaussement de l'une au moins des images clés associées à l'image secondaire en cours, laquelle correspond aux paramètres d'interpolation envoyés à l'étape E6 (figure 1).
Dans l'exemple décrit ici, deux images clés sont associées à chaque image secondaire. Par exemple, si les images secondaires sont des images d'interpolation, et si les images clés Ik et Ik+, doivent être affichées respectivement au temps tk et tk+1, l'image secondaire (interpolée) It est déterminée par la formule générale valable en chaque point de coordonnées (x, y) de l'image: I t (x, y) _ (t tk) Ik+1(x, y) + (tk+l - t) Ik (x, y) (tk+1 - tk) (tk+1 - tk) L'exemple ci-dessus montre clairement que l'influence relative des images clés dans les images secondaires associées varie en fonction de la proximité temporelle de l'image secondaire et de l'image clé considérée.
A l'étape E701, on récupère les indices temporels mentionnés ci-dessus (tk, tk+1 pour les images clés et t pour l'image secondaire en cours).
A l'étape E702, on procède à la détermination d'un facteur de rehaussement pour chaque image clé en fonction des indices temporels mentionnés ci-dessus. Le facteur de rehaussement pour une image clé correspond à la partie de la bande passante restante (ou budget global) à utiliser pour transmettre les données de rehaussement de l'image clé considérée. Du fait de l'influence relative des images clés rappelée ci- dessus, il est avantageux que les facteurs de rehaussement dépendent (de manière décroissante) de la durée séparant l'image secondaire considérée de l'image clé associée, rapportée à la durée séparant deux images clés.
On passe alors à l'étape E703 où l'on calcule, pour chaque image clé associée à l'image secondaire en cours, le budget disponible pour l'émission des données de rehaussement de l'image clé considérée à partir du facteur de rehaussement de cette image clé calculée à l'étape E702 et de la bande passante restante deltaBP.
Dans les étapes suivantes, on cherche à déterminer les données de rehaussement de l'image clé considérée de telle sorte que leurs tailles correspondent au mieux au budget qui vient d'être déterminé pour l'image clé considérée.
16 2866183 Ainsi, à l'étape E704, on initialise le processus en considérant la première image clé.
Puis, à l'étape E705, on récupère par exemple dans la table des versions, une donnée indiquant la dernière version de l'image clé envoyée.
Naturellement, si aucune donnée de rehaussement de l'image clé n'a encore été envoyée, cette version correspond à la version de base décrite en référence à la figure 3.
On passe ensuite à l'étape E706, où l'on récupère dans la table des versions la taille de la dernière version envoyée.
On peut ainsi déterminer à l'étape E707 la taille admissible pour la version rehaussée à envoyer par la simple addition de la taille de la dernière version envoyée et du budget disponible pour les données de rehaussement de l'image clé.
On peut remarquer que les tailles mentionnées dans la table des versions correspondent à la taille totale des différentes représentations des images en fonction des paramètres de résolution R et de qualité Q. A l'inverse, le budget pour chaque image clé déterminé à l'étape E703 correspond à l'incrément en taille d'une version à l'autre et qui sera utilisé par les données de rehaussement. C'est pourquoi il est nécessaire, comme décrit ci-dessus, de procéder à l'addition de la taille de la dernière version envoyée afin de pouvoir comparer les budgets autorisés aux tailles indiquées dans la table des versions.
Ainsi, à l'étape E708, on détermine la version de la table des versions qui utilise au mieux la taille admissible déterminée à l'étape précédente. Cette détermination de la version peut être réalisée par itération de manière analogue à ce qui a été écrit en référence à la figure 3 pour la détermination de la version de base.
Lorsqu'une version admissible est obtenue par l'étape E708, on peut passer à l'étape E709 au cours de laquelle on émet la version rehaussée ainsi déterminée, et plus précisément les données de rehaussement qui permettent de passer de la dernière représentation envoyée à la version admissible. Ceci est par exemple réalisable dans le cadre du format JPEG2000.
Lorsque les données de rehaussement relatives à la nouvelle version de l'image clé ont été émises, on peut passer au traitement des données de rehaussement relatives à l'image clé suivante associée à l'image secondaire 17 2866183 considérée dans toute la figure 4. Pour ce faire, on vérifie à l'étape E710 si l'image clé considérée est la dernière image.
Dans la négative, on passe à l'image clé suivante par l'étape E711 qui aboutit à l'étape précédemment décrite E705 d'identification de la dernière 5 version de la nouvelle image clé considérée.
Naturellement, lorsque la dernière image clé a été traitée, l'étape E710 met fin au processus de détermination des données de rehaussement, ce qui permet d'effectuer leur émission dans le canal de transmission au cours du second laps de temps, comme déjà décrit en référence à la figure 1.
Le procédé représenté à la figure 1 et détaillé ci-dessus en référence aux figures 2 à 4 permet l'émission des données conformément au diagramme représenté à la figure 5. Ce diagramme représente en abscisse les laps de temps successifs au cours desquels on émet successivement des images. En ordonnée, on a représenté la bande passante et les divers débits d'information.
Entre les temps 0 et 1/F, on émet les données de base relatives à l'image clé Iko. Ces données de base sont déterminées conformément à l'étape E9 de la figure 1 et au procédé décrit en référence à la figure 3.
Entre les temps 1/F et 2/F, on émet les données de base relatives à l'image clé Ikl qui ont également été déterminées par un processus tel que décrit 20 en référence à la figure 3.
On peut remarquer qu'à partir du moment où les données de base d'une image clé ont été reçues par le dispositif connecté au serveur, ce dispositif peut décoder et afficher la version de base de l'image clé. Ceci est particulièrement avantageux dans les systèmes où l'on recherche l'affichage en temps réel ou avec un retard le plus court possible.
Entre les instants 2/F et 3/F, les données secondaires (ici les données d'interpolation) de l'image secondaire Il sont émises comme cela est prévu à l'étape E6 de la figure 1. Par ailleurs, toujours dans le laps ou intervalle de temps compris entre 2/F et 3/F, le serveur émet dans le canal de transmission les données de rehaussement de l'image clé Iko, telles qu'elles ont pu être déterminées par un processus analogue à celui de la figure 4.
Toujours dans le même laps de temps [2/F, 3/F], le serveur émet en outre des données de rehaussement relatives à l'image clé Ikl.
Comme cela est bien visible sur la figure 5, par l'utilisation des budgets et des facteurs de rehaussement mentionnés en référence à la figure 4, la totalité de la bande passante estimée est utilisée.
L'émission des données de rehaussement pour les images clés permet d'améliorer pour le récepteur la qualité des images clés considérées et ainsi la qualité de l'image d'interpolation émise pendant le même intervalle de temps.
Il convient de noter que l'émission combinée pendant un même laps de temps des données secondaires et des données de rehaussement pour les images clés se poursuit pour l'ensemble des données secondaires.
Il apparaît par ailleurs clairement sur la figure 5 que l'utilisation de facteurs de rehaussement (voir étapes E702 et E703 de la figure 4) lors de la détermination des données de rehaussement pour chaque image permet de faire évoluer le complément fourni pour chaque image clé par les données de rehaussement. Ceci permet d'améliorer pour chaque laps de temps les différentes images clés associées à l'image secondaire en cours avec une pondération parallèle à l'importance de ces images clés pour l'image secondaire en cours.
Entre les instants 9/F et 10/F, le serveur émet les données de base relatives à une nouvelle image clé Ik2 selon un procédé analogue à l'émission des images clés précédentes. De manière similaire, l'émission combinée de données secondaires relatives aux nouvelles images secondaires et de données de rehaussement de la nouvelle image clé est réalisée pour les instants suivants de manière analogue aux instants compris entre 2/F et 9/F, et ce jusqu'à la prochaine image clé.
La figure 6 montre les étapes essentielles d'un exemple de procédé de réception selon l'invention qui correspond au procédé d'émission décrit en référence à la figure 1. Ce procédé est par exemple mis en oeuvre au sein d'un dispositif client connecté sur le même réseau que le dispositif serveur précédemment mentionné. II peut s'agir par exemple d'un microordinateur d'un utilisateur qui reçoit l'animation via le réseau Internet.
L'étape E601 est une étape d'attente de réception de données sur le canal de transmission par le dispositif client mentionné ci-dessus. L'étape E601 est donc répétée tant qu'aucune donnée n'est reçue sur le canal de transmission.
19 2866183 Si des données sont reçues sur le canal de transmission, on passe de l'étape E601 à l'étape E602.
A l'étape E602, on détermine si les données reçues sont relatives à la détermination de base d'une image clé, c'est-à-dire si les données reçues correspondent à des données de base d'une image clé. Si c'est le cas, on passe à l'étape E603, sinon, on passe à l'étape E607.
A l'étape E603, le dispositif client reçoit donc les données de base relatives à l'image clé en cours de réception, qui correspondent donc à la version de base de cette image clé.
A l'étape E604, on procède au décodage de la version de base. La version de base est par ailleurs stockée en mémoire.
On passe alors à l'étape E605 où l'on détermine si l'image clé qui vient d'être décodée (étape E604) doit être affichée. En effet, comme on l'a vu précédemment à propos de la figure 5, certaines images clés (telle que l'image clé Iko) doivent être affichées dès leur réception ou quasiment dès leur réception; à l'inverse, d'autres images clés (telle que l'image clé Ikl) ne sont affichées qu'à un instant ultérieur déterminé, par exemple, par les métadonnées associées à cette image clé. Dans ce dernier cas, l'affichage de l'image clé a lieu à l'instant spécifié ultérieur, par exemple par un processus d'interruption, comme cela est fréquemment utilisé pour ce type de procédé de décodage et d'affichage.
Si l'on a déterminé à l'étape E605 que l'image clé devait être affichée, on passe alors à l'étape E606 où l'on affiche la version de base qui vient d'être décodée. On revient ensuite à l'étape E601 d'attente de la réception de données.
Si, à l'étape E605, on détermine que l'image clé qui vient d'être décodée ne doit pas être affichée sur l'instant, on revient alors immédiatement à l'étape E601 d'attente de réception de données, l'image décodée étant alors de toute façon conservée en mémoire.
Si, à l'étape E602, il a été déterminé que la réception courante ne concernait pas une image clé, c'est-à-dire que les données reçues n'étaient pas les données de base d'une image clé, alors on passe à l'étape E607.
L'étape E607 consiste à recevoir par le canal de transmission des paramètres d'interpolation d'une image secondaire, c'est-à-dire les données secondaires qui permettent de déterminer l'image secondaire à partir des images clés qui lui sont associées.
2866183 20 On passe ensuite à l'étape E608 où l'on détermine si des données de rehaussement sont reçues dans le même intervalle de temps, normalement consacré à la réception de l'image secondaire.
Si aucune donnée de rehaussement n'est reçue pendant l'intervalle de temps normalement consacré à la réception de l'image secondaire, on passe à l'étape E609, au cours de laquelle on affiche l'image secondaire à partir de la dernière version de l'image clé décodée et des paramètres d'interpolation (données secondaires) qui viennent d'être reçus.
Si, l'on détermine, à l'étape E608, que des données de rehaussement sont reçues pendant l'intervalle de réception de l'image secondaire, on passe à l'étape E610 dans laquelle on va décoder les données ainsi rehaussées de la ou des image(s) clé(s) concernée(s). En effet, les données de rehaussement qui ont donc été reçues à l'étape E608 viennent compléter la ou les version(s) de base précédemment décodée(s) à l'étape E604. La version de base (obtenue à partir des données de base) et les données de rehaussement vont donc constituer un ensemble de données rehaussées qui sont décodées et conservées en mémoire.
On obtient ainsi une version rehaussée de l'image clé ou des images clés associées à l'image secondaire en cours.
On passe alors à l'étape E611 où l'on affiche l'image secondaire en cours en utilisant la ou les versions rehaussées de la ou des images clés associées à cette image secondaire. Les images secondaires suivantes se baseront également sur ces versions rehaussées des images clés (ou sur des versions encore rehaussées par réception de nouvelles données de rehaussement).
Une fois cet affichage effectué, on retourne à l'étape E601 d'attente de nouvelles données.
La figure 7 décrit de façon schématique un contexte d'utilisation possible de l'invention.
Un serveur 1 est connecté à un réseau de communication 2 auquel est 30 également connecté un dispositif client 3. Le réseau de communication 2 réalise donc un canal de transmission entre le serveur 1 et le client 3.
Le serveur 1 et le client 3 sont, par exemple, réalisés sous la forme d'appareils programmables, tels que des micros ordinateurs, comme décrit ci-après en référence à la figure 8.
2866183 21 Le serveur 1 effectue l'émission d'une animation conformément à l'invention et telle qu'elle a été décrite en référence à la figure 1 principalement. Le client 3 reçoit les informations émises par le serveur et qui décrivent l'animation qu'il souhaite visualiser. Pour ce faire, il utilise par exemple un procédé tel que décrit en référence à la figure 6.
La figure 8 décrit un exemple de dispositif qui peut être utilisé comme serveur ou client pour la mise en oeuvre de l'invention précédemment décrite. Dans l'exemple décrit plus particulièrement ci-dessous, le dispositif décrit joue le rôle du serveur 1 de la figure 7 qui réalise donc l'émission de l'animation conformément au procédé décrit en référence à la figure 1.
Chacun des appareils qui sont décrits à la figure 7 est par exemple un appareil programmable du même type que celui de la figure 8 et possède les moyens qui le rendent aptes à la mise en oeuvre de l'invention.
L'appareil de la figure 8 est ainsi considéré comme un dispositif apte à 15 la transmission d'informations qui décrivent une animation.
Selon le mode de réalisation choisi et représenté à la figure 8, un appareil mettant en oeuvre l'invention est par exemple un microordinateur 90 ou une station de travail connectée à différents périphériques tels, par exemple, une caméra numérique 901 (ou un scanner, ou un appareil photographique numérique, ou tout moyen d'acquisition ou le stockage d'images) reliée à une carte graphique et fournissant un appareil de traitement de données numériques.
L'appareil 90 comporte un bus de communication 902 auquel sont reliés: une unité centrale de traitement ou CPU 903 (microprocesseur), - une mémoire morte 904 (ou ROM), comportant un ou plusieurs programmes d'ordinateur basés sur les algorithmes illustrés aux figures précédentes, - une mémoire vive 905 (ou RAM) adaptée à enregistrer des variables, paramètres et données traitées au cours de l'exécution des différents 30 algorithmes mentionnés ci-dessus, - un écran 906 permettant de visualiser des données et/ou de servir d'interface graphique avec l'utilisateur qui pourra interagir avec les programmes selon l'invention, à l'aide d'un clavier 907 ou de tout autre moyen tel qu'un dispositif de pointage, comme par exemple une souris ou un crayon optique, 22 2866183 - un disque dur 908 pouvant comporter tout ou partie du ou des programmes évoqués ci-dessus, un lecteur de disquette 909 adapté à recevoir une disquette 910 et à y lire ou à y écrire des données numériques traitées ou à traiter selon 5 l'invention, - une interface de communication 911 reliée à un réseau de communication distribué 912, par exemple le réseau Internet, l'interface étant apte à émettre et à recevoir des données numériques.
L'appareil comprend en outre une carte d'entrée/sortie 913 reliée à un 10 microphone 914.
Le bus de communication 902 permet la communication et l'interopérabilité entre les différents éléments inclus dans le micro-ordinateur 90 ou reliés à lui. La représentation du bus n'est pas limitative et, notamment, l'unité centrale est susceptible de communiquer des instructions à tout élément du micro-ordinateur 90 directement par l'intermédiaire d'un autre élément du micro-ordinateur 90.
Le code exécutable de chaque programme permettant à l'appareil programmable 90 de mettre en oeuvre les procédés selon l'invention décrits ci-avant peut être stocké, par exemple, dans le disque dur 908 ou en mémoire morte 904 comme représenté sur la figure 1.
Selon une variante, la disquette 910 peut contenir des données ainsi que le code exécutable des programmes précités qui, une fois lu par l'appareil 90, sera stocké dans le disque dur 908.
En seconde variante, le code exécutable des programmes pourra être 25 reçu par l'intermédiaire du réseau de communication 912, via l'interface 911, pour être stocké de façon identique à celle décrite précédemment.
Les disquettes peuvent être remplacées par tout support d'informations tel que, par exemple, un disque compact (CD-ROM) ou une carte mémoire. De manière générale, un moyen de stockage d'informations, lisible par un ordinateur ou par un microprocesseur, intégré ou non à l'appareil, éventuellement amovible, est adapté à mémoriser un ou plusieurs programmes dont l'exécution permet la mise en oeuvre des procédés selon l'invention. De manière plus générale, le ou les programmes pourront être chargés dans un des moyens de stockage de l'appareil 90 avant d'être exécutés.
L'unité centrale 903 va commander et diriger l'exécution des instructions ou portions de codes logiciels du ou des programmes selon l'invention, instructions qui sont stockées dans le disque dur 908 ou dans la mémoire morte 904 ou bien dans les autres éléments de stockage précités. Lors de la mise sous tension, le ou les programmes qui sont stockés dans une mémoire non volatile, par exemple le disque dur 908 ou la mémoire morte 904, sont transférés dans la mémoire vive 905 qui contiendra alors le code exécutable du ou des programmes selon l'invention, ainsi que des registres pour mémoriser les variables et paramètres nécessaires à la mise en oeuvre de l'invention.
Il convient de noter que le dispositif selon l'invention peut également être un appareil programmé. Cet appareil contient alors le code du ou des programmes informatiques par exemple figé dans un circuit intégré à application spécifique (ASIC).

Claims (1)

  1. 24 2866183 Revendications
    1. Procédé d'émission, dans un canal de transmission ayant une bande passante, d'au moins une image clé à transmettre pendant un premier intervalle de temps et d'une image secondaire calculée à partir de ladite au moins une image clé et à transmettre pendant un second intervalle de temps, ladite au moins une image clé étant définie notamment par des données de base et l'image secondaire étant définie par des données secondaires, caractérisé par les étapes suivantes: - émission des données de base (El0) pendant le premier intervalle de temps; - émission des données secondaires (E6) et de données de rehaussement de ladite au moins une image clé (E8) pendant le second 15 intervalle de temps.
    2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend une étape de détermination des données de rehaussement de ladite au moins une image clé en fonction de la bande passante disponible sur le canal de transmission et de la quantité de données secondaires à transmettre.
    3. Procédé selon la revendication 1 ou 2, caractérisé par les étapes préalables suivantes: - estimation de la bande passante disponible dudit canal (E4) pendant 25 le premier intervalle de temps afin de déterminer une première quantité de données à transmettre; - extraction des données de base (E9) de la au moins une image clé de telle sorte que la taille des données de base soit inférieure ou égale à ladite première quantité.
    4. Procédé selon la revendication 3, caractérisé en ce que l'extraction des données de base comprend les étapes suivantes: - sélection, à l'aide d'une table contenant la taille des données de base en fonction d'au moins un paramètre, d'au moins une valeur du paramètre telle 2866183 que la taille associée par la table soit inférieure ou égale à ladite première quantité ; - extraction des données de base à partir au moins de ladite valeur.
    5. Procédé selon l'une des revendications 1 à 4, caractérisé par les étapes suivantes: - estimation de la bande passante disponible dudit canal pendant le second intervalle de temps afin de déterminer une seconde quantité de données à transmettre; - détermination du budget de données disponible par soustraction de la taille des données secondaires à ladite seconde quantité ; - extraction des données de rehaussement de ladite au moins une image clé de telle sorte que la taille des données de rehaussement soit inférieure ou égale au budget disponible.
    6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce que les données secondaires sont des paramètres d'interpolation.
    7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce 20 qu'une première image clé et une seconde image clé sont transmises pendant le premier intervalle de temps.
    8. Procédé selon la revendication 7, caractérisé en ce que, la première image clé étant destinée à être affichée à un premier instant, la seconde image clé étant destinée à être affichée à un second instant séparé du premier instant par une première durée, l'image secondaire étant destinée à être affichée à un troisième instant séparé du premier instant par une seconde durée inférieure à la première durée, des premières données de rehaussement relatives à la première image clé et des secondes données de rehaussement relatives à la seconde image clé sont déterminées de telle sorte que le rapport de taille entre les premières et les secondes données de rehaussement dépend du rapport de la seconde durée à la première durée.
    9. Procédé selon l'une des revendications précédentes, caractérisé en ce que les images clés et les images secondaires définissent une animation.
    10. Procédé selon la revendication 9, caractérisé en ce que l'animation 5 comporte plusieurs images secondaires entre la première image clé et la seconde image clé.
    11. Procédé selon l'une des revendications précédentes, caractérisé en ce que les images sont des images multi-résolution avec plusieurs niveaux de 10 qualité.
    12. Procédé selon l'une des revendications précédentes, caractérisé en ce que les images clés sont au format JPEG 2000.
    13. Procédé selon l'une des revendications précédentes, caractérisé en ce que la transmission des images clés est réalisée selon le protocole JPIP.
    14. Procédé de réception dans un canal de transmission dans lequel au moins une image clé est reçue pendant un premier intervalle de temps et dans lequel une image secondaire est reçue pendant un second intervalle de temps, caractérisé par les étapes suivantes: - pendant le premier intervalle de temps, réception de données de base définissant ladite au moins une image clé ; - pendant le second intervalle de temps, réception de données de 25 rehaussement de ladite au moins une image clé et de données secondaires définissant l'image secondaire à partir de ladite au moins une image clé.
    15. Procédé de décodage d'au moins une image clé et d'une image secondaire reçues par un procédé selon la revendication 14, caractérisé par les 30 étapes de: - décodage des données de base de manière à générer une première version de ladite au moins une image clé ; - réunion des données de base et des données de rehaussement en données rehaussées; 27 2866183 décodage des données secondaires de manière à générer ladite image secondaire à partir des données rehaussées.
    16. Procédé de décodage selon la revendication 15, caractérisé en ce qu'il comporte entre les étapes de décodage des données de base et de réunion des données de base et des données de rehaussement une étape d'affichage de ladite première version.
    17. Procédé de décodage selon la revendication 15 ou 16, caractérisé en ce qu'il comporte une étape de décodage des données rehaussées de manière à générer une seconde version de ladite au moins une image clé et en ce que le décodage des données secondaires de manière à générer ladite image secondaire est basé sur ladite seconde version.
    18. Dispositif d'émission, dans un canal de transmission ayant une bande passante, d'au moins une image clé à transmettre pendant un premier intervalle de temps et d'une image secondaire calculée à partir de ladite au moins une image clé et à transmettre pendant un second intervalle de temps, ladite au moins une image clé étant définie notamment par des données de base et l'image secondaire étant définie par des données secondaires, caractérisé en ce qu'il comprend: - des moyens d'émission des données de base pendant le premier intervalle de temps; - des moyens d'émission des données secondaires et de données de 25 rehaussement de ladite au moins une image clé pendant le second intervalle de temps.
    19. Dispositif de réception dans un canal de transmission dans lequel au moins une image clé est reçue pendant un premier intervalle de temps et dans lequel une image secondaire est reçue pendant un second intervalle de temps, caractérisé en ce qu'il comprend: - des moyens de réception de données de base définissant ladite au moins une image clé pendant le premier intervalle de temps; 28 2866183 - des moyens de réception de données de rehaussement de ladite au moins une image clé et de données secondaires définissant l'image secondaire à partir de ladite au moins une image clé pendant le second intervalle de temps.
    20. Moyen de stockage d'informations qui peut être lu par un ordinateur ou un microprocesseur, contenant des instructions d'un programme d'ordinateur pour exécuter les étapes du procédé selon l'une des revendications 1 à 17.
    21. Moyen de stockage d'informations partiellement ou totalement amovible, qui peut être lu par un ordinateur ou un microprocesseur, contenant des instructions d'un programme d'ordinateur pour exécuter des étapes du procédé selon l'une des revendications 1 à 17.
    22. Programme d'ordinateur qui peut être chargé dans un appareil programmable, caractérisé en ce qu'il comprend des séquences d'instructions ou des portions de code logiciel pour mettre en oeuvre les étapes du procédé selon l'une des revendications 1 à 17, lorsque ce programme d'ordinateur est chargé et exécuté par l'appareil programmable.
FR0401221A 2004-02-09 2004-02-09 Procedes d'emission et de reception d'une animation, et dispositifs associes Expired - Fee Related FR2866183B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0401221A FR2866183B1 (fr) 2004-02-09 2004-02-09 Procedes d'emission et de reception d'une animation, et dispositifs associes
US11/049,978 US7426305B2 (en) 2004-02-09 2005-02-04 Methods for sending and receiving an animation, and associated devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0401221A FR2866183B1 (fr) 2004-02-09 2004-02-09 Procedes d'emission et de reception d'une animation, et dispositifs associes

Publications (2)

Publication Number Publication Date
FR2866183A1 true FR2866183A1 (fr) 2005-08-12
FR2866183B1 FR2866183B1 (fr) 2006-08-04

Family

ID=34778602

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0401221A Expired - Fee Related FR2866183B1 (fr) 2004-02-09 2004-02-09 Procedes d'emission et de reception d'une animation, et dispositifs associes

Country Status (2)

Country Link
US (1) US7426305B2 (fr)
FR (1) FR2866183B1 (fr)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2408871A (en) 2003-11-10 2005-06-08 Forbidden Technologies Plc Data and digital video data compression
FR2864407B1 (fr) 2003-12-22 2006-03-10 Canon Kk Procede et dispositif de transmission continue d'une video dans un reseau de communication
FR2872972A1 (fr) * 2004-07-08 2006-01-13 Canon Kk Procede et dispositif de transmission video entre un serveur et un client
WO2007031953A2 (fr) * 2005-09-16 2007-03-22 Koninklijke Philips Electronics, N.V. Transmission video numerique efficace conforme aux normes utilisant le partitionnement des donnees
GB0600217D0 (en) * 2006-01-06 2006-02-15 Forbidden Technologies Plc A method of compressing video data and a media player for implementing the method
FR2922391B1 (fr) * 2007-10-15 2009-12-04 Canon Kk Procede et dispositif de transmission de donnees
FR2923124A1 (fr) 2007-10-26 2009-05-01 Canon Kk Procede et dispositif de determination de la valeur d'un delai a appliquer entre l'envoi d'un premier ensemble de donnees et l'envoi d'un second ensemble de donnees
FR2923970B1 (fr) * 2007-11-16 2013-01-04 Canon Kk Procede et dispositif de formation, de transfert et de reception de paquets de transport encapsulant des donnees representatives d'une sequence d'images
FR2927749B1 (fr) * 2008-02-14 2010-12-17 Canon Kk Procede et dispositif de transmission de donnees, notamment video.
FR2942095A1 (fr) * 2009-02-09 2010-08-13 Canon Kk Procede et dispositif d'identification de pertes de donnees video
TWI543569B (zh) * 2014-11-24 2016-07-21 晶睿通訊股份有限公司 資料傳輸系統、資料傳輸監測方法、伺服端裝置及電腦可讀取媒體

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001069935A1 (fr) * 2000-03-17 2001-09-20 Koninklijke Philips Electronics N.V. Reduction de la complexite du decodage de couches par reordonnancement de la transmission des trames de la couche de mise en valeur
WO2002005563A1 (fr) * 2000-07-11 2002-01-17 Motorola Inc. Amelioration de la qualite spatiale d'images codees a l'aide de trains binaires video evolutifs en couches
US20030002579A1 (en) * 1998-07-06 2003-01-02 U.S. Philips Corporation Scalable video coding system
WO2003034741A1 (fr) * 2001-10-19 2003-04-24 Koninklijke Philips Electronics N.V. Appareil, support d'enregistrement et procede permettant de reproduire des signaux de donnees video

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4794447A (en) * 1986-11-17 1988-12-27 North American Philips Corporation Method and apparatus for transmitting and receiving a high definition NTSC compatible television signal over a single DBS channel in time division multiplex form
US6501797B1 (en) 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
US6757431B2 (en) * 2000-12-19 2004-06-29 Xerox Corporation Resolution conversion for anti-aliased images using loose gray scale template matching
US7987491B2 (en) * 2002-05-10 2011-07-26 Richard Reisman Method and apparatus for browsing using alternative linkbases
FR2857198B1 (fr) * 2003-07-03 2005-08-26 Canon Kk Optimisation de qualite de service dans la distribution de flux de donnees numeriques
FR2860665B1 (fr) * 2003-10-07 2006-04-07 Canon Kk Decodage de sequence d'images numeriques
FR2864407B1 (fr) * 2003-12-22 2006-03-10 Canon Kk Procede et dispositif de transmission continue d'une video dans un reseau de communication
FR2870615B1 (fr) * 2004-05-18 2006-11-24 Canon Kk Procedes et dispositifs de manipulation, transmission et affichage d'images numeriques

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030002579A1 (en) * 1998-07-06 2003-01-02 U.S. Philips Corporation Scalable video coding system
WO2001069935A1 (fr) * 2000-03-17 2001-09-20 Koninklijke Philips Electronics N.V. Reduction de la complexite du decodage de couches par reordonnancement de la transmission des trames de la couche de mise en valeur
WO2002005563A1 (fr) * 2000-07-11 2002-01-17 Motorola Inc. Amelioration de la qualite spatiale d'images codees a l'aide de trains binaires video evolutifs en couches
WO2003034741A1 (fr) * 2001-10-19 2003-04-24 Koninklijke Philips Electronics N.V. Appareil, support d'enregistrement et procede permettant de reproduire des signaux de donnees video

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIAN ZHOU ET AL: "FGS enhancement layer truncation with minimized intra-frame quality variation", IEEE, vol. 2, 6 July 2003 (2003-07-06), pages 361 - 364, XP010650651 *
RADHA H ET AL: "Scalable Internet video using MPEG-4", SIGNAL PROCESSING. IMAGE COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM, NL, vol. 15, no. 1-2, September 1999 (1999-09-01), pages 95 - 126, XP004180640, ISSN: 0923-5965 *
TAUBMAN D ED - INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS: "REMOTE BROWSING OF JPEG2000 IMAGES", PROCEEDINGS 2002 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 2002. ROCHESTER, NY, SEPT. 22 - 25, 2002, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, vol. VOL. 1 OF 3, 22 September 2002 (2002-09-22), pages 229 - 232, XP001134102, ISBN: 0-7803-7622-6 *

Also Published As

Publication number Publication date
FR2866183B1 (fr) 2006-08-04
US7426305B2 (en) 2008-09-16
US20050180646A1 (en) 2005-08-18

Similar Documents

Publication Publication Date Title
FR2897741A1 (fr) Procede et dispositif de generation de donnees representatives d&#39;un degre d&#39;importance de blocs de donnees et procede et dispositif de transmission d&#39;une sequence video encodee
FR2910211A1 (fr) Procedes et dispositifs pour re-synchroniser un flux video endommage.
FR2866183A1 (fr) Procedes d&#39;emission et de reception d&#39;une animation, et dispositifs associes
WO2012172212A1 (fr) Procedes et appareils de production et de traitement de representations de scenes multimedias
FR2842378A1 (fr) Procede et dispositif de traitement d&#39;une requete ou de donnees numeriques compressees
FR2931025A1 (fr) Procede de determination d&#39;attributs de priorite associes a des conteneurs de donnees, par exemple dans un flux video, procede de codage, programme d&#39;ordinateur et dispositifs associes
FR2851389A1 (fr) Procede et dispositif de gestion de requetes dans une architecture du type client-serveur
FR2963190A1 (fr) Procede et dispositif de codage d&#39;une sequence d&#39;images
FR2919779A1 (fr) Procede et dispositif de codage avec perte d&#39;un signal numerique
EP2002401A1 (fr) Procédé de calcul des paramètres d&#39;animation des objets d&#39;une scène multimédia.
EP3780632A1 (fr) Systeme de distribution d&#39;un contenu audiovisuel
EP2559218B1 (fr) Reception d&#39;un contenu numerique en mode truque
FR2870615A1 (fr) Procedes et dispositifs de manipulation, transmission et affichage d&#39;images numeriques
EP1596607B1 (fr) Procédé et dispositif de génération de vecteurs candidats pour les systèmes d&#39;interpolation d&#39;images par estimation et compensation de mouvement
EP2599053A2 (fr) Dispositif et procédé de génération d&#39;images procédurales avec cache
EP2594069B1 (fr) Procédé de diffusion de séquences de données vidéo par un serveur vers un terminal client
FR2860665A1 (fr) Decodage de sequence d&#39;images numeriques
EP1383336B1 (fr) Procédé de décompression et de restitution d&#39;un flux de données multimédia numériques compressées comprenant une pluralité d&#39;entités encodées. Dispositif, système et signal correspondants
EP1762068A1 (fr) Procede d&#39;edition de pages multimedia aupres d&#39;un terminal,avec pre-memorisation de parametres d&#39;objets intervenant dans les scenes
FR3140504A1 (fr) Gestion de la lecture d’un contenu multimédia
FR2940873A1 (fr) Procede de synchronisation d&#39;une transmission de trames de donnees applicatives, dispositifs d&#39;emission et de reception, produit programme d&#39;ordinateur et moyen de stockage correspondants
FR3099266A1 (fr) Procédé de transmission de données
FR3143928A1 (fr) Procédé d’obtention d’au moins une image destinée à être restituée sur un écran d’un terminal électronique.
WO2005088927A1 (fr) Procede d’edition d’une page multimedia avec pre-memorisation
EP3834421A2 (fr) Méthode et dispositif de diffusion de vidéo à 360 degrés

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20141031