FR2831728A1 - Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse - Google Patents
Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse Download PDFInfo
- Publication number
- FR2831728A1 FR2831728A1 FR0113819A FR0113819A FR2831728A1 FR 2831728 A1 FR2831728 A1 FR 2831728A1 FR 0113819 A FR0113819 A FR 0113819A FR 0113819 A FR0113819 A FR 0113819A FR 2831728 A1 FR2831728 A1 FR 2831728A1
- Authority
- FR
- France
- Prior art keywords
- digital signal
- compressed
- data
- signal
- skeleton
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
- H04N19/64—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
- H04N19/645—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
L'invention concerne un procédé de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine comportant des données d'origine représentatives de grandeurs physiques et regroupées en blocs de données ordonnés dans ledit signal d'origine, caractérisé en ce que ledit procédé comporte les étapes suivantes :- obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal et de l'organisation des données dans celui-ci, et- à partir desdites informations, formation d'un squelette du signal numérique dérivé qui comporte au moins en partie ces informations et au moins un en-tête et un corps destiné à contenir ultérieurement des blocs de données compressés, ledit squelette ainsi formé étant conforme à une syntaxe de description du signal compressé.
Description
déterminé de fois pendant la durée d'injection.
La présente invention concerne un procédé de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine, le signal d'origine comportant des données d'origine représentatives de grandeurs physiques et
regroupées en blocs de donnces ordonnés dans ledit signal d'origine.
L'invention s'applique notamment dans le domaine du traitement des images compressées et, par exemple, dans le domaine du traitement d'images
compressées conformes à la norme JPEG2000.
Selon cette norme, un signal numérique d'image compressé possède une structure générale comportant un en-tête principal et un corps qui comporte, sous forme compressée, des données d'origine représentatives de grandeurs physiques que sont les pixels et qui sont regroupées en blocs de donnces (connus en terminologie anglosaxonne sous le terme "code- blocks")
ordonnés dans le signal.
Chaque bloc de données compressé est une représentation compressoe d'une partie rectangulaire élémentaire du signal d'image qui a été
transformé, de manière connue, en sous-bandes de fréquence.
Plus particulièrement, le corps du signal numérique compressé comporte des paquets de données qui sont chacun constitués d'un en-tête de
paquet et d'un corps de paquet.
Le corps de paquet contient à son tour plusieurs blocs de données compressés et l'en-tête du paquet contient notamment une liste de tous les
blocs contenus dans le corps de paquet.
Il convient de noter que chaque bloc de données est compressé sur plusieurs niveaux ou couches de qualité et que chaque niveau ou couche de
qualité d'un bloc se trouve dans un paquet distinct.
De manière générale, un signal numérique d'image compressé conforme à la norme JPEG2000 contient plusieurs ensembles de blocs de données compressés correspondant chacun à une tuile (si le signal d'image est décomposé en tuile(s)), une composante (ex: luminance ou chrominance), un
niveau de résolution, un niveau de qualité et une position spatiale donnés.
Dans une architecture de communication de type client-serveur,
I'utilisateur reçoit et stocke un signal numérique d'image compressé.
Le signal ainsi reçu est alors décompressé et restitué dans l'ordinateur client afin que l'utilisateur puisse utiliser le signal d'image ou une
partie de celui-ci s'il le souhaite.
La transmission du fichier informatique contenant les données compressoes peut prendre un temps relativement long si le fichier est volumineux. En outre, la transmission d'un tel fichier peut être soumise à des
perturbations risquant de rendre certaines données erronces.
Ce phénomène est accentué lorsque le fichier est volumineux.
De plus, il n'est pas rare que des problèmes liés au matériel informatique surviennent lors de la réception et du stockage d'un fichier de données et que certaines des données soient perdues pour l'utilisateur, voire
tout le fichier.
Il arrive également de temps en temps que des fichiers trop volumineux ne puissent tout simplement pas être exploités par l'utilisateur compte tenu des capacités de stockage et de traitement insuffisantes de
l'ordinateur de l'utilisateur.
Par ailleurs, dans certaines situations, la totalité d'un signal numérique compressé qui, par exemple, est un signal d'image n'intéresse pas I'utilisateur. L'utilisateur peut souhaiter s'intéresser, en effet, plus particulièrement à une partie du signal d'image ou bien à un niveau de résolution déterminé et non à tous les niveaux de résolution, ceci sans avoir besoin de décompresser
tout le signal.
Il serait par conséquent intéressant de disposer d'un nouveau procédé et d'un nouveau dispositif permettant d'exploiter seulement une partie des données contenues dans un signal numérique compressé. On notera que les problèmes évoqués ci-dessus peuvent se poser aussi bien avec un signal numérique d'image compressé conforme à la norme JPEG2000 qu'avec tout type de signal numérique compressé (signaux sonores, signaux vidéo, signaux de donnces issues d'un télécopieur ou d'autres
appareils électroniques...).
La présente invention vise à remédier à au moins un des inconvénients précités en proposant un procédé de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine comportant des donnces d'origine représentatives de grandeurs physiques et regroupées en blocs de donnces ordonnés dans ledit signal d'origine, caractérisé en ce que ledit procédé comporte les étapes suivantes: - obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal et de l'organisation des données dans celui-ci, et - à partir desdites informations, formation d'un squelette du signal numérique dérivé qui comporte au moins en partie ces informations et au moins un en-tête et un corps destiné à contenir ultérieurement des blocs de donnces compressés, ledit squelette ainsi formé étant conforme à une syntaxe de
description du signal compressé.
Corrélativement, I'invention vise aussi un dispositif de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine comportant des données d'origine représentatives de grandeurs physiques et regroupées en blocs de données ordonnés dans ledit signal d'origine, caractérisé en ce que ledit dispositif comporte: - des moyens d'obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal et de l'organisation des données dans celui-ci, et - des moyens de formation d'un squelette du signal numérique dérivé à partir desdites informations, et qui comporte au moins en partie ces informations et au moins un en-tête et un corps destiné à contenir ultérieurement des blocs de données compressés, ledit squelette ainsi formé
étant conforme à une syntaxe de description du signal compressé.
La formation d'un tel squelette du signal dérivé permet d'insérer ultérieurement dans le corps défini à l'intérieur de ce squelette les blocs de
données souhaités.
Ainsi, par exemple, on pourra insérer les blocs correspondant à une partie du signal seulement ou ceux qui contribuent à une résolution eVou à un
niveau de qualité donné dans le cas d'un signal d'image.
Dans le cas d'une architecture de communication client-serveur, on peut insérer dans le corps du squelette les blocs qui auront été reçus du serveur. Ces blocs peuvent correspondre à ceux ayant fait l'objet d'une requête auprès du serveur. Dans le cas d'une mauvaise transmission, ces blocs
peuvent correspondre aux seuis blocs reçus et exploitables par le client.
Par ailleurs, le fait que le squelette soit conforme à une syntaxe de
description du signal compressé le rend apte à être décompressé
ind épenda m ment d es blocs de don nées com pressés q u i seront i nsérés ultérieurement. Un tel signal est donc immédiatement exploitable dès la formation de
son squelette et donc avant même d'avoir reçu un bloc de données compressé.
Selon une caractéristique, le procédé comporte les étapes suivantes: obtention d'au moins un bloc de données à partir du signal numérique compressé et, - insertion dudit bloc de données dans le corps du squelette du signal
numérique dérivé.
On dispose ainsi à tout moment, au fur et à mesure de l'insertion de
blocs, d'un signal dérivé apte à être décompressé.
On peut par exemple insérer les blocs un par un dans le corps du
squelette après en avoir obtenu un certain nombre.
Selon une caractéristique, I'insertion d'un bloc de données dans le corps du squelette du signal numérique dérivé est effectuée dès que ce bloc de
donnces est obtenu.
On construit ainsi progressivement le train binaire du signal numérique dérivé au fur et à mesure de l'insertion d'un bloc de données
1 0 compressé.
Le signal qui résulte de l'insertion du bloc est à tout moment apte à être décompressé, même si les blocs suivants sont transmis de façon erronée
ou ne sont pas reçus.
Selon une autre caractéristique, le bloc de donnces est obtenu avec I'ordre qui lui est affecté dans le signal numérique compressé et il est inséré dans le corps en tenant compte de cet ordre, ce qui permet d'être en conformité
avec la syntexe de description du signal compressé.
Ce signal compressé est par exemple conforme à la norme
J PEG2000.
Suivant une caractéristique, au moins un en-tête du squelette du signal numérique dérivé comportant des informations représentatives des blocs de don n ces compressés conten us dans le corps, le procéd é selon l'inventio n comporte une étape de modification de cet en-tête en fonction de l'insertion
d'au moins un bloc de données dans le corps.
Ainsi, les informations sur la structure du signal et l'organisation des données contenues dans ce signal sont mises à jour dès qu'une modification des données intervient, ce qui rend le signal apte à être décompressé à tout moment. Suivant une autre caractéristique, les blocs de données du signal numérique d'origine ayant été compressés suivant au moins un niveau de qualité, les blocs de données compressés sont organisés dans le corps du
squelette du signal numérique dérivé suivant un niveau de qualité unique.
L'organisation des donnces dans le signal dérivé suivant un niveau de qualité unique simplifie de façon considérable la mise à jour des informations
d'en-tête lorsqu'un nouveau bloc de données est inséré.
Selon une caractéristique, lorsque chacun des blocs de donnces du signal numérique d'origine a été compressé suivant plusieurs niveaux de qualité, les différentes couches de qualité constituant chacun des blocs de données compressés sont insérées dans le corps dans l'ordre croissant desdits
niveaux de qualité.
Cette organisation des données dans le signal numérique dérivé est nécessaire pour pouvoir procéder ultérieurement à une décompression de ces données. Selon une caractéristique, le procédé comporte une étape de construction d'un arbre d'identification des blocs de données insérés dans le corps du squelette, la présence desdits blocs de données étant identifiée pour
chacun d'eux par une valeur d'un code.
Cet arbre répertorie les différents blocs présents dans le signal
dérivé et va permettre de faciliter la mise à jour des informations dans ce signal.
Selon une caractéristique, le procédé comporte une étape de mise à jour d'au moins certaines des valeurs codées de l'arbre d'identification en
fonction de l'insertion d'un bloc de données dans le corps du squelette.
Ainsi, avantageusement, le procédé permet de ne mettre à jour que les valeurs affectées par l'insertion sans avoir besoin de mettre à jour de façon
systématique toutes les valeurs de l'arbre.
Dans une architecture de communication du type client-serveur, I'étape de formation d'un squelette du signal numérique dérivé est effectuée dans un premier appareil de communication qui communique à distance avec un second appareil de communication dans lequel est stocké le signal
numérique compressé.
Le signal compressé n'est donc pas nécessairement présent dans le
premier appareil pour que l'invention puisse être mise en _uvre.
Seules certaines informations sont nocessaires à la formation du signal dérivé dans le premier appareil de communication, notamment les informations représentatives de la structure du signal compressé et de
l'organisation des données dans celui-ci.
Suivant une caractéristique, I'étape de formation du squelette du signal numérique dérivé est effectuée tandis que la totalité des données contenues dans le signal numérique compressé n'a pas été reçue. On peut en effet concevoir que le squelette est formé alors qu'aucun bloc de données n'a été reçu ou bien que les blocs sont en cours de transmission. Suivant une caractéristique, le procédé comporte une étape de transmission à destination du second appareil de communication d'une requête d'obtention des informations contenues dans le signal numérique compressé et représentatives de la structure dudit signai compressé et de l'organisation des donnces dans celui-ci, préalablement à l'étape d'obtention desdites informations. Ceci permet d'obtenir les informations souhaitées alors que le signal compressé est toujours stocké dans le second appareil et que les blocs
compressés ne sont pas encore disponibles au premier appareil.
Suivant une autre caractéristique, le procédé comporte une étape de transmission à destination du second appareil de communication d'une requête d'obtention d'au moins un bloc de données, préalablement à l'étape d'obtention
dudit bloc de donnces.
Il est ainsi possible de sélectionner le ou les blocs à insérer dans le
signal dérivé en fonction de l'intérêt de l'utilisateur.
L'invention concerne également un appareil de traitement de données comportant un dispositif de formation d'un signal numérique dérivé tel
que brièvement exposé ci-dessus.
Selon un autre aspect, I'invention vise aussi: - un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de formation d'un signal numérique dérivé selon l'invention tel que celui exposé brièvement ci-dessus, et - un moyen de stockage d'informations amovible, partiellement ou totalement, lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de formation d'un signal numérique dérivé selon l'invention tel que
celui brièvement exposé ci-dessus.
Selon encore un autre aspect, I'invention vise un programme d'ordinateur chargeable dans un appareil programmable, comportant des séquences d'instructions ou portions de code logiciel pour mettre en _uvre des étapes du procédé de formation d'un signal numérique dérivé de l'invention tel que brièvement exposé ci-dessus, lorsque ledit programme d'ordinateur est
chargé et exécuté sur l'appareil programmable.
Les caractéristiques et avantages relatifs au dispositif de formation d'un signal numérique dérivé, à l'appareil de traitement de donnces comportant un tel dispositif, aux moyens de stockage d'informations et au programme d'ordinateur étant les mêmes que ceux exposés ci-dessus concernant le procédé de formation d'un signal numérique dérivé selon l'invention, ils ne
seront pas rappelés ici.
D'autres caractéristiques et avantages de la présente invention
appara^'tront plus clairement à la lecture de la description qui va suivre, faite en
référence aux dessins annexés, sur lesquels: - la figure 1 représente de manière schématique un dispositif de compression d'un signal numérique; la figure 2 représente de manière schématique une architecture de communication de type client-serveur dans laquelle l'invention peut étre mise en _uvre; - la figure 3 représente de manière schématique un dispositif de formation d'un signal numérique dérivé selon l'invention; la figure 4 illustre le mécanisme de récupération de blocs de donnces contribuant à une résolution donnée et leur insertion dans le squelette du signal dérivé; - la figure 5a représente la structure en blocs de donnces suivant différentes résolutions d'un signal d'image compressé disponible au serveur de la figure 2; - la figure 5b représente respectivement la structure du train binaire du signal compressé au serveur et dans le dispositif client de la figure 2; - la figure 6 est un mode de réalisation d'un appareil programmable mettant en _uvre l'invention; - la figure 7 est un algorithme comprenant différentes étapes du procédé selon l'invention; - la figure illustre, d'une part, la formation du squelette du signal dérivé et, d'autre part, la formation dudit signal lors de l'insertion d'un bloc de données; - la figure 9a illustre la construction d'un arbre d'identification pour indiquer l'inclusion de blocs de données dans un paquet; - la figure 9b est un tableau donnant les principales étapes de construction et de mise à jour de l'arbre d'identification de la figure 9a en fonction de l'obtention de différents blocs; - la figure 10 est un algorithme de mise à jour de l'arbre d'identification de la figure 9a; la figure 11a illustre la construction d'un arbre d'identification pour indiquer le nombre de plans de bits sur lesquels chaque bloc de données est insignifiant; - la figure 11b est un tableau donnant les principales étapes de construction et de mise à jour de l'arbre d'identification de la figure 11a en fonction de l'obtention de différentes blocs; - la figure 12a illustre un exemple de sous arbre d'identification à mettre à jour; la figure 1 2b est un algoritUme de mise à jour de l'arbre
d'identification de la figure 11a.
Sur la figure 1 est représenté un dispositif 2 de compression de donnces qui comporte une entrée 24 à laquelle est reliée une source 1 de
données numériques d'origine non compressées.
La source 1 comporte par exemple un moyen de mémoire, telle que mémoire vive, disque dur, disquette, disque compact, pour mémoriser des données non compressées, ce moyen de mémoire étant associé à un moyen de lecture approprié pour y lire les données. Un moyen pour enregistrer les
données dans le moyen de mémoire peut également être prévu.
On considérera plus particulièrement dans la suite que les donnces d'origine à compresser sont une suite d'échantillons numériques représentatifs de grandeurs physiques et représentant, par exemple, une image IM. Cette image est. par exemple, plus particulièrement conforme au
standard JPEG2000.
La source 1 fournit un signal numérique d'image IM à l'entrée du dispositif de compression 2. Le signal d'image IM est une suite de mots numériques, par exemple des octets. Chaque valeur d'octet représente un pixel de l'image IM, ici à 256 niveaux de gris, ou image noir et blanc. L'image peut être une image multispectrale, par exemple une image en couleur ayant des composantes dans trois bandes de fréquence, de type rouge-vert-bleu ou luminance et chrominance. Soit l'image couleur est traitée dans son intégralité, soit chaque composante est traitée de manière analogue à l'image monospectrale. Des moyens 3 utilisateurs de données compressées sont reliés en
sortie 25 du dispositif de compression 2.
Les moyens utilisateurs 3 comportent par exemple des moyens de mémorisation de donnces compressées, eVou des moyens de transmission des
données compressoes.
Le dispositif de compression 2 comporte classiquement, à partir de l'entrée 24, un circuit de transformation 21 qui met en _uvre des décompositions en des signaux de sous-bandes de fréquence du signal de
données, de manière à effectuer une analyse du signal.
Toutefois, la décomposition en sous-bandes de fréquence n'est pas indispensable.
D'autres transformations peuvent bien entendu étre envisagées.
Il convient de noter qu'il est possible de se passer du circuit de
transformation.
Le circuit de transformation 21 est relié à un circuit de quantification 22. Le circuit de quantification met en _uvre une quantification connue en soi, par exemple une quantification scalaire, ou une quantification vectorielle, des coefficients, ou de groupes de coefficients, des signaux de sous-bandes de
fréquence fournis par le circuit 21.
Le circuit 22 est relié à un circuit 23 de codage entropique, qui effectue un codage entropique, par exemple un codage de Huffman, ou un
codage arithmétique, des données quantifiées par le circuit 22.
Le signal numérique d'image compressé a une structure générale qui comporte un en-tête principal et un corps comportant, sous forme compressée, les données d'origine visées plus haut et qui sont regroupées en blocs de données (connus en terminologie anglosexonne sous le terme "code-blocks") ordonnés dans le signal. On notera que les blocs ont été compressés
indépendamment les uns des autres.
La fin du signal numérique est indiquée par un marqueur.
Plus particulièrement, le signal d'image est par exemple partitionné en zones appelées tuiles qui elles-mêmes sont chacune partitionnces en blocs
de données.
Dans le signal numérique d'image compressé, les données sont organisées en paquets de données P(r,q) o r et q sont des entiers représentant respectivement la résolution et la couche ou niveau de qualité du
paquet.
On notera que dans le cadre du standard JPEG2000 les paquets de donnces sont indexés suivant les tuiles, les composantes, les niveaux de
résolution, les localisations spatiales ("precincts") et les niveaux de qualité.
Cependant, par souci de simplification, on s'en tiendra à la notation P (r, q) Ce paquet contient un en-tête de paquet (en anglais "packef heade/') qui fait partie des informations d'en-tête évoquées plus haut et un corps de paquet (en anglais "packet body"). Cet en-tête décrit le contenu des données incluses dans le corps du paquet et une suite de paramètres de codage de chacun des blocs de données, à la résolution r et pour la couche de
qualité q.
Le corps de chaque paquet comporte des blocs de données qui correspondent chacun à la contribution d'un bloc de données pour la résolution
r et la couche de qualité q du paquet considéré.
Cette contribution d'un bloc de donnces à un paquet est également appelée niveau ou couche de qualité du bloc. Un même bloc de données correspondant à une localisation spatiale précise de l'image comporte différents niveaux de qualités présents dans les
corps respectifs de différents paquets.
L'en-tête de paquet donne la liste des blocs effectivement présents
dans le paquet et des paramètres concernant chaque bloc.
Les paquets du signal d'image compressé sont par exemple organisés en résolution. Le train binaire contient d'abord tous les paquets concernant la première résolution, puis les paquets de la deuxième résolution, et ainsi de suite. Cet agencement permet d'extraire les résolutions une par une sans avoir à parcourir le train binaire en entier. Le train binaire est alors dit
progressif en résolution.
Il est à noter que le train binaire pourrait être organisé de manière différente. Par exemple, le paquet P(O,O) pourrait être suivi du paquet P(1,0), suivi lui-même du paquet P(2, 0) et ainsi de suite. Dans ce cas, la première couche correspond à une qualité donnée pour toutes les résolutions, par exemple 0,01 bpp (bit par pixel). Les couches suivantes contiennent des données additionnelles et correspondent respectivement à des qualités supérieures. La représentation des données est alors dite progressive en qualité. Dans l'exemple de réalisation, le signal compressé est par exemple progressif en résolution et comporte trois niveaux de résolution ainsi que deux
couches de qualité.
La figure 5a fournit d'ailleurs une telle représentation du signal
numérique compressé.
Le signal compressé comporte ainsi, en plus de l'en-tête principal, pour chaque tuile considérée, un en-tête de tuile et, pour chaque paquet
considéré, un en-tête de paquet.
L'en-tête principal et l'en-tête de chaque tuile contiennent des informations représentatives de la structure du signal compressé et de
l'organisation des données dans ledit signal.
Les informations sont de façon non exUaustive: - des informations concernant la taille de l'image, à savoir sa largeur et sa hauteur, ainsi que la position de l'image dans un repère de référence, - des informations concernant les tuiles, à savoir leur nombre, leur largeur, leur hauteur et leur position dans le repère de référence précité, - le nombre de niveaux de résolution, - le nombre de composantes, - des informations sur la compression des données, à savoir le type de transformation envisagée (éx: transformées en ondelettes discrètes...), les particularités de l'opération de quantification (ex: le pas de quantification...), le type de codage utilisé (ex: codage arithmétique...) , - la présence d'éventuelles régions d'intérêt (ROI), La figure 2a représente très schématiquement une architecture de communication de type client-serveur dans laquelle l'invention peut être
avantageusement mise en _uvre.
Le serveur 30 est. par exemple, un ordinateur et le dispositif client 32, un micro-ordinateur, un appareil photographique numérique, un téléphone portable, un assistant personnel du type PDA (connu en terminologie anglosaxonne sous le terme "Personal Digital Assistant") Un réseau 34 de communication par exemple de type filaire ou radio relie le dispositif client, constituant un premier appareil de communication, au
serveur qui constitue un second appareil de communication.
Dans cette architecture, le signal numérique d'image compressé précédemment décrit est stocké dans le serveur 30 et le dispositif client32 éloigné va chercher à obtenir des informations du serveur afin de former un
signal numérique dérivé du signal compressé stocké au serveur.
Le dispositif de compression 2 de la figure 1 peut par exemple être intégré au serveur ou bien seulement connocté à lui, ou encore relié à ce
dernier par un autre réseau de communication.
J Toutefois, I'invention n'est pas limitée à cette application et le dispositif de formation d'un signal numérique dérivé peut, par exemple, être mis en ceuvre da ns un appareil de traitement de don nées (m icroord inateu r, appareil photographique numérique, caméscope...) qui stocke lui-même le signal d'image compressé. La figure 3 représente un dispositif 40 de formation d'un signal dérivé selon l'invention à partir d'une source 42 du signal compressé précédemment décrit et pouvant être obtenu par le dispositif de compression 2
de la figure 1.
Le dispositif 40 peut être, par exemple, intégré au dispositif client 32
de la figure 2 ou connecté à ce dernier.
Le dispositif 40 comporte un circuit 44 de transmission d'une requête visant à obtenir de la source 42 les informations contenues dans le signal compressé et qui sont représentatives de sa structure et de l'organisation des
données dans ce signal.
Conformément à cette requête, la source du signal compressé 42 transmet les informations demandées au dispositif 40 qui les reçoit dans un
circuit de réception 46.
Une fois reçues et anaiysées, ces informations permettent à un circuit 48 relié en sortie du circuit 46 de former un squelette d'un signal numérique appelé signal dérivé et qui est conforme à une syntaxe de
description du signai compressé.
Le squelette ainsi formé et stocké comporte les informations précitées obtenues du signal compressé qui sont, par exemple, présentes dans
un ou plusieurs en-têtes.
Il convient de noter que la formation du squelette peut avoir lieu alors qu'aucun bloc de données compressé n'a été reçu ou lorsque le signal
compressé est en cours de transmission, voire entièrement reçu. Le squelette comporte également un corps qui contiendra des blocs de
données compressés, une fois que ceux-ci auront été obtenus et insérés
dans ledit squelette.
Ce squelette représenté schématiquement sur la figure 8, de par sa structure, est tout de suite apte à être décompressé bien qu'il ne contienne pas
encore de blocs de données compressés.
Ainsi, si le signal d'image compressé est conforme à la norme JPEG2000, le squelette du signal dérivé ainsi formé est immédiatement apte à
être traité comme un signal conforme à ia syntaxe de description compressoe
J PEG2000.
Dès lors que le squelette est formé, un circuit 50 relié en sortie du circuit 48 effectue une insertion de blocs de donnces compressés dans le corps
du squelette.
Les blocs de données compressés sont obtenus du signal
compressé stocké dans la source 42.
Toutefois, il convient de noter que plusieurs cas de figure peuvent se présenter. Si I'on se place dans le cas de l'architecture client-serveur de la figure 2, on peut envisager les scénarios suivants: 1) Les blocs de données ont été demandés lors de la transmission
d'une requête établie par le circuit 44.
Les blocs reçus peuvent être insérés par le circuit 50 au fur et à
mesure de leur obtention ou bien après un intervalle de temps prédéterminé.
Lorsqu'u ne req uête d'obtention d es blocs est transmise au serveu r, cette requête peut concerner soit l'ensemble des blocs de données du signal
compressé, soit seulement une partie de ceux-ci.
Dans ce dernier cas, la partie concernée des blocs de donnces du
signal d'image compressé correspond à une sous-image de celui-ci.
Supposons que pour l'image on dispose de trois niveaux de résolution 0, 1 et 2, de trois niveaux de qualité et que l'utilisateur soit intéressé
par une sous-image de résolution 2.
Dans ce cas, les données contribuant à chaque niveau de résolution
sont regroupées dans trois paquets de données.
Si l'utilisateur est intéressé par le niveau de qualité minimale, selon I'art antérieur, il faut obtenir les paquets de données P(O, 0), P(1, 0) et P(2,0) et, si l'utilisateur souhaite ia qualité maximale, il faut alors obtenir les paquets P(0,
0), P(1, 0), P(2,0), P(0,1), P(1,1), P(2,1) et P(0, 2), P(1, 2) et P(2,2).
Au contraire, I'invention permet de n'obtenir que les blocs de donnces compressés correspondant spatialement à la sous-image demandée et à la qualité souhaitée pour une résolution demandée. 2) Les blocs de données sont transmis avec le signal numérique compressé du serveur 30 au dispositif 40 associé au dispositif 32 de la figure 2,
sans qu'une requête spécifique d'obtention de blocs ne soit transmise.
Les blocs reçus sont insérés par le circuit 50 au fur et à mesure de
leur obtention ou bien après un intervalle de temps prédéterminé.
3) On peut également concevoir que le signal numérique compressé contenant les blocs de données soit transmis du serveur 30 au dispositif 32 de la figure 2 et que ce dernier constitue la source de signal compressé 42 de la
figure 3.
Dans ce cas, le circuit 44 transmet une requête d'obtention de tous
les blocs disponibles à la source 42 ou seulement de certains d'entre eux.
Après réception par le circuit 46, le ou les blocs reçus sont insérés dans le corps du squelette par le circuit d'insertion 50, dès leur obtention ou
après un intervalle de temps prédéterminé.
11 convient de noter que, lorsque la source de signal compressé 42 et le dispositif 40 de la figure 3 sont dans un même appareil de traitement de données comme celui de la figure 6, des requêtes d'obtention d'informations nocessaires à la formation du squelette et de blocs de données compressés
sont rnalgré tout transmises à la source interne 42 de l'appareil.
Dans un tel cas, tout ce qui a été énoncé aux points 1) à 3) ci-dessus
reste valable.
On notera que la requête d'obtention d'informations nécessaires à la formation du squelette peut également inclure, dans certains cas, la requête
d'obtention de tous les blocs du signal ou de certains d'entre eux seulement.
Toutefois, dans le cas exposé au point 3), I'utilisation de requêtes
n'est pas toujours nécessaire.
En effet, une application informatique peut par exemple extraire des données d'un fichier contenant tout ou partie du signal numérique compressé et
former un signal numérique dérivé à partir de ces données.
De retour à la figure 3, le circuit d'insertion 50 insère le ou les blocs de données obtenus dans le corps du squelette en tenant compte de l'ordre qui a été affecté à chaque bloc dans le signal compressé, cet ordre étant obtenu
par le circuit 46 avec le bloc correspondant.
Un circuit 52 de modification d'en-tête est relié en sortie du circuit 50 et procède à une modification d'un en-tête du squelette en fonction de l'insertion
dans le corps du squelette d'un bloc de données compressé.
La figure 4 illustre la transmission des requêtes d'obtention de blocs de données compressés appartenant, dans le signal numérique compressé, à N paquets de données qui correspondent à la tuile t, ia composante c, la résolution r, la position spatiale p et pour tous les niveaux ou couches de qualité
OàN-1.
Comme l'illustre cette figure, I'invention prévoit d'extraire la couche du bloc de données compressé contribuant dans le premier paquet au niveau de qualité 0 et ainsi de suite, par ordre croissant de niveau de qualité, jusqu'à la
couche de ce bloc contribuant dans le Nième paquet au niveau de qualité N1.
11 convient de remarquer que les blocs pourraient également avoir
été compressés suivant un seul niveau de qualité.
L'invention prévoit ensuite d'insérer chacune de ces couches de qualité des blocs dans le corps d'un seul paquet, dans l'ordre croissant de leurs
niveaux de qualité respectifs et suivant un seul niveau de qualité.
On notera que le fait d'avoir un seul niveau de qualité dans le signal reconstitué permet de simplifier la mise à jour de l'en-tête du paquet au fur et
mesure qu'un bloc de données est inséré, comme on le verra ultérieurement.
Sur la figure 4 est également représenté l'en-tête du paquet qui est modifié par le circuit 52 de la figure 3 en fonction du bloc inséré dans le corps
du paquet.
Même si toutes les données sont stockées dans un même paquet pour une résolution donnée, il est malgré tout possible de décompresser ce
paquet partiellement suivant un ou plusieurs blocs de données sélectionnés.
Sur la figure 5a est représenté un signal d'image compressé à une seule tuile, décomposé en différentes sous-bandes de fréquence suivant trois niveaux de résolution et deux niveaux de qualité, chaque sous-bande étant
partitionnée en blocs de donnces.
Les blocs de données du niveau de résolution 0 ont été numérotés
de 0 à 5 pour la suite de l'exposé fait en référence aux figures 9a et suivantes.
On notera ici que les sous-bandes ne sont pas partitionnces en localisations spatiales (connu en terminologie anglosaxonne sous le terme "precincts"). Sur la figure 5b sont représentées, d'une part, la structure du signal numérique d'image compressé, de la figure 5a, par exemple dans le serveur 30 de la figure 2, et, d'autre part, la structure du signal numérique d'image dérivé,
par exemple dans le dispositif 32 de la figure 2.
* On notera MHD, THD et PHD respectivement l'en-tête principal du
signal, I'en-tête de tuile et l'en-tête de chaque paquet.
La structure du fichier associé au signal d'image compressé de la figure 5a comprend six paquets, un par niveau de résolution et niveau de qualité. La structure du fichier formé dans le dispositif client comprend, quant
à elle, un paquet par niveau de résolution, c'est-à-dire trois paquets.
De retour à la figure 3, en sortie du circuit 52 une unité 54 effectue une décompression du signal numérique dérivé qui a été formé par le dispositif 40. L'unité 54 effectue globalement des opérations inverses de ceiles
prévues dans le dispositif de compression 2 de la figure 1.
Le signal décompressé issu de l'unité 54 est ensuite transmis à I'unité d'exploitation 46 qui, par exemple, dans le cas d'un signal d'image, est un
écran de visualisation.
On remarquera que le dispositif 40 pourrait également inclure l'unité
de décompression 54 sans que cela n'affecte le principe de l'invention.
Il convient de noter que l'invention peut également s'appliquer à d'autres signaux numériques compressés tels que, par exemple, des signaux sonores ou bien des signaux vidéos ou encore, de façon non exclusive, des
signaux issus d'un télécopieur...
En référence à la figure 6, est décrit un exemple d'appareil programmable 100 mettant en _uvre l'invention. Cet appareil est adapté à traiter un signal numérique compressé ou des informations et données
provenant de ce signal.
Selon le mode de réalisation choisi et représenté à la figure 3, un appareil mettant en ceuvre i'invention est par exemple un microordinateur 100 connocté à différents périphériques, par exemple une caméra numérique 101 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à
une carte graphique et fournissant des données à décoder.
L'appareil 100 comporte un bus de communication 102 auquel sont reliés: une unité centrale 103 (microprocesseur), - une mémoire morte 104, comportant un programme "Progr", - une mémoire vive 106, comportant des registres adaptés à enregistrer des variables modifiées au cours de l'exécution du programme ., precte, - un écran 108 permettant de visualiser les données à décompresser ou de servir d'interface avec l'utilisateur qui pourra paramétrer certains modes du système de stockage en ligne (connu en terminologie anglosaxonne sous le terme de "caching") selon l'invention, à l'aide d'un clavier 110 ou de tout autre moyen, tel que par exemple une souris, - un disque dur 112, - un lecteur de disquette 114 adapté à recevoir une disquette 116, - une interface de communication 118 avec un réseau de communication 120 apte à transmettre des données numériques à compresser ou à recevoir des données compressées et qui sont à traiter par l'appareil ou encore à transmettre les données compressoes et traitées par l'appareil, - une carte d'entrée/sortie 122 reliée à un microphone 124 (les
données à traiter selon l'invention constituent alors un signal audio).
Le bus de communication permet la communication entre les différents éléments inclus dans le micro-ordinateur 100 ou reliés à lui. La représentation du bus n'est pas limitative et, notamment, I'unité centrale est
susceptible de communiquer des instructions à tout élément du micro-
ordinateur 100 directement ou par l'intermédiaire d'un autre élément du micro-
ordinateur 100.
Le programme noté "Progr" permettant à l'appareil programmable de mettre en _uvre l'invention, peut être stocké par exemple en mémoire morte
104 (appelée ROM sur le dessin) comme représenté sur la figure 3.
Bien qu'un seul programme soit identifié, il est possible d'avoir
plusieurs programmes ou sous programmes pour mettre en _uvre l'invention.
Selon une variante, la disquette 116, tout comme le disque dur 112, peuvent contenir des données compressses et stockées ainsi que le code de
l'invention qui, une fois lu par l'appareil 100, sera stocké dans le disque dur 112.
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éscau
de communication 120.
Les disquettes peuvent être remplacées par tout support d'information tel que, par exemple, un CD-ROM ou une carte mémoire. De manière générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intogré ou non à l'appareil, éventuellement amovible, mémorise un programme mettant en _uvre le procédé selon l'invention. De manière plus générale, le programme pourra être chargé dans un
des moyens de stockage de l'appareil 100 avant d'être exécuté.
L'unité centrale 103 va exécuter les instructions relatives à la mise en _uvre de l'invention, instructions stockées dans la mémoire morte 104 ou dans les autres éléments de stockage. Lors de la mise sous tension, le ou les programmes de stockage en ligne,-qui sont stockés dans une mémoire non volatile, par exemple la mémoire ROM 104, sont transférés dans la mémoire vive RAM 106 qui contiendra alors le code exécutable de l'invention, ainsi que des registres pour mémoriser les variables nocessaires à la mise en _uvre de l'invention. 11 convient de noter que l'appareil de traitement de donnces comportant un dispositif de formation d'un signal numérique dérivé selon
I'invention peut également être un appareil programmé.
Cet appareil contient alors le code du ou des programmes informatiques par exemple figé dans un circuit intogré à application spécifique
1 0 (ASIC).
La figure 7 illustre un algorithme comportant différentes instructions ou portions de code logiciel correspondant à des étapes du procédé de
formation d'un signal numérique dérivé selon l'invention.
Le programme informatique noté "Progr" qui est basé sur cet algorithme est stocké dans la mémoire morte 104 de la figure 6 et, à
l'initialisation du système, est transféré dans la mémoire vive 106.
Il est ensuite exécuté par l'unité centrale 103, ce qui permet ainsi de
mettre en _uvre le procédé selon l'invention dans le dispositif de la figure 6.
On notera que le dispositif de la figure 6 qui contient le programme Progr précédemment mentionné peut étre, dans le cadre d'une architecture de communication du type client-serveur, le dispositif 32 de la figure 2 ou un
dispositif associé à ce dispositif 32.
Cependant, le dispositif de la figure 6 contenant le programme Progr précédemment mentionné peut également étre utilisé en dehors d'une architecture de communication du type client-serveur et, dans ce cas, il comporte également le signal numérique compressé dans un de ses moyens
de stockage.
L'algorithme de la figure 7 comporte une première étape S de transmission d'une requete d'obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure du signal et de
l'organisation des données dans ce dernier.
Dans le cas d'une architecture de communication du type client serveur, cette requête est transmise, par l'intermédiaire du réseau de
communication 34, au serveur 30.
En dehors de ce cas et, par exemple, comme illustré par la figure 6, une requête est transmise à la source du signal numérique compressé qui est présente dans l'appareil de la figure 6. Au cours de l'étape suivante S2 de l'algorithme, consécutivement à la transmission d'une requête, le procédé prévoit de recevoir les informations demandées contenues dans l'en-tête principal et les en-têtes de tuile du signal
numérique compressé, ainsi que dans les en-têtes de paquets.
L'étape S2 est suivie d'une étape S3 utilisant les informations précitées obtenues au cours de l'étape S2 pour former un squelette ou gabarit
d'un signal numérique dérivé du signal numérique compressé.
Le squelette ainsi formé 130 (figure 8) est conforme à une syntexe
de description du signal compressé et comporte un en-tête principal 132, un en
tête de tuile 134 correspondant à la tuile unique du signal d'image compressé et un ensemble de paquets vides 136 constituant le corps du squelette, ainsi qu'un marqueur 138 EOC de fin de train binaire (connu en terminologie
anglosaxonne sous le terme de "Bitstream").
Les paquets vides sont destinés à contenir ultérieurement des blocs de donnces compressés une fois que ceux-ci auront été obtenus à partir du
signal numérique compressé.
On notera que le nombre de paquets vides par tuile est déduit du nombre de composantes, de n iveaux de résolutions et de local isations spatial es
présents dans chacune des tuiles, s'il y a plusieurs tuiles.
On notera que l'en-tête principal 132 et l'en-tête de tuile 134 du squelette contiennent des informations contenues dans l'en-tête principal et
l'en-tête de tuile du signal d'image compressé.
L'étape S3 de l'algoritUme de la figure 7 est suivie d'une étape S4 au cours de laquelle on procède à la transmission d'une requête d'obtention d'au
moins un bloc de données compressé.
Les remarques concernant l'étape de transmission S restent
valables pour l'étape S4.
On notera toutefois que l'étape S4 peut être réalisoe au cours de l'étape S et peut incl u re une req uête d'obtention de plusieu rs blocs de don nées compresses. La requête transmise à l'étape S4 est illustrée sur la figure 8 par la référence 140. L'étape suivante notée S5 est une étape de réception d'une couche
d'un bloc de données cbi compressé.
Dans notre exemple, le bloc de donnces compressé reçu est le troisième bloc (indice 2) correspondant à la résolution 0 et à la couche ou au
niveau de qualité 0 (CBK (r = 0, I = 0, cbi = 2)).
L'étape S5 est suivie d'une étape S6 au cours de laquelle un test est pratiqué afin de rechercher le paquet P correspondant dans le train binaire du signal numérique dérivé en cours de formation et de déterminer si ce paquet est vide. Dans l'affirmative, I'étape S6 est suivie d'une étape S7 au cours de laquelle la valeur du bit "paquet de longueur nulle" ("zero-length packet") indiquant que le paquet est vide passe de 0 à 1, comme indiqué par le champ
142 de l'en-tête du premier paquet du signal dérivé.
Consécutivement à cette étape S7, I'étape suivante S prévoit d'insérer la couche du bloc de données reçue dans le corps du paquet P correspondant. Si l'on suppose que la couche 0 du bloc de données reçue est longue de 83 octets, alors le corps de ce paquet illustré par la référence 144 est
rempli en conséquence.
On notera que la position suivant laquelle le bloc de données reçu est inséré dans le corps du paquet, dépend, d'une part, de l'indice du bloc de données (les blocs de données se suivent par ordre croissant de leur indice) et, d'autre part, du numéro de la couche de qualité à laquelle contribue ce bloc de données. On remarquera qu'un même bloc de donnces compressé contribuant à plusieurs couches ou niveaux de qualité différents, ces différentes contributions ou couches doivent, de préférence, être reçues par ordre croissant de niveau de qualité, ceci afin de permettre à l'utilisateur de restituer
de façon correcte les données compressées reçues.
Les étapes suivantes de l'algorithme de la figure 7 concernent la mise à jour de l'en-tête du paquet de donnces P concerné qui a lieu afin de rendre l'en-tête cohérent avec le corps de ce paquet qui a été modifié par
insertion de blocs de donnces compressés.
Certaines de ces étapes vont être appliquées à des champs de l'en
tête du paquet considéré qui apparaissent sur la figure 8.
Le champ "information d'insertion de blocs de donnces" ("code-block inclusion information") dresse la liste des blocs de données présents et absents
dans le train binaire en cours de construction.
Plus particulièrement, ce champ comprend les sous-champs référencés 146, 148, 150, 158, 160 et 162 du signal dérivé représenté sur la
figure 8.
Un champ noté 152 "information de plan de bits à zéro" ("zero-bit plane information") indique que le bloc de données d'indice 2 est insignifiant sur
deux plans de bits.
Cette information est connue lors de la réception d'informations
indiquées à l'étape S2 visée ci-dessus.
Un autre champ noté 154 du "nombre de passes de codage" ("number of coding passes") indique le nombre de passes de codage contenu dans le bloc de données compressé qui a été inséré dans le corps du paquet considéré. Le dernier champ noté 156 concernant le bloc de données compressé d'indice 2 indique la longueur de la contribution de ce bloc de
donnces au corps du paquet courant.
On notera que les champs suivants 158, 160 et 162 indiquent respectivement que les blocs de données compressés d'indice 3, 4 et 5 n'ont
pas encore été insérés dans le corps du paquet.
De retour à l'algorithme de la figure 7, I'étape S précédemment décrite est suivie d'une étape Sg au cours de laquelle un test est effectué sur la couche du bloc de données compressé reçue afin de savoir si ce bloc apparat
pour la première fois dans le corps du paquet.
Dans l'affirmative, I'étape Sg est suivie de l'étape S1O au cours de laquelle on procède à une mise à jour du champ d'information d'insertion de blocs de données ("code-block inclusion information") de l'en-tête du paquet P afin d'indiquer que le bloc de données compressé considéré est désormais
présent dans le corps du paquet.
Cette mise à jour sera décrite plus en détail ultérieurement en
référence à l'algorithme de la figure 10.
L'étape S1O est suivie d'une étape S au cours de laquelle le champ lO d'information de plan de bits à zéro noté 152 ("zero bit-plane information") de l'en-tête du paquet P est mis à jour. Ce champ indique les nombres respectifs de plans de bits de poids fort pour lesquels les blocs présents dans un paquet
sont insignifiants.
Cette mise à jour sera plus particulièrement décrite ultérieurement en
référence à l'algorithme de la figure 12b.
La mise à jour de l'en-tête du paquet P se poursuit par l'étape suivante S2 qui est commune aux blocs de données compressés apparaissant pour la première fois dans le corps du paquet et à ceux qui y sont déjà présents. Au cours de cette étape, le champ du nombre de passes de codage
154 ("number of coding passes") de l'en-tête du paquet P est mis à jour.
Plus particulièrement, dès qu'une nouvelle couche d'un bloc de données compressé est reçue, le nombre de passes de codage total pour le
bloc de données considéré augmente.
Dans le cadre du standard JPEG2000, on définit un mot binaire de longueur variable associé à chacune des valeurs possibles du nombre de
passes de codage.
D'après ce standard, il suffit de calculer le nouveau nombre de passes de codage pour le bloc de données considéré et de remplacer l'ancien code par le code défini par ce standard et qui correspond au nouveau nombre
de passes de codage du bloc de données traité.
Ainsi, la mise à jour du champ du nombre de passes de codage est
rénlisée très simplement.
L'étape S2 est suivie d'une étape S43 au cours de laquelle la longueur du bloc de données considéré dans le corps du paquet et qui est
fournie par le champ 156 de la figure 8 est mise à jour.
La longueur du champ 156 est un mot binaire de longueur en bits égale à Lbock + Llog2 (nombre de passes de codoge)], o Lbock est une variable d'état associée au bloc de données considéré et dont la valeur initiale
est positionnce à 3.
La longueur en octets de la contribution du bloc de données au corps du paquet est précédée de bits signalant une augmentation de la valeur de Lblock Dans l'exemple de la figure 8, deux "1" et "0" indiquent que Lbock augmente de 2: Lbock = 5 La longueur du bloc de données est donc codée sur un nombre de bits égal à 5 + Llog2(5)] = 7, qui est le nombre nécessaire de bits pour coder la
valeur 83.
Autrement dit, chaque fois qu'une couche du bloc de données est reçue, la longueur totale du bloc de données dans le corps est recalculée, ainsi
que le nombre de bits nécessaires pour la coder.
Ceci fournit alors la nouvelle valeur de Lbock à partir du nouveau
nombre de passes de codage pour le bloc de donnéès courant.
Un nouveau mot binaire indiquant la valeur de Lbock et le nombre d'octets du bloc de données est formé et remplace l'ancien mot binaire du
champ traité.
L'étape S43 est suivie d'une étape S44 au cours de laquelle on procède à un test afin de déterminer si tous les blocs de données compressés requis et constituant, par exemple, une partie du signal numérique compressé
demandée par l'utilisateur sont reçus.
Dans le cas d'un signal numérique d'image compressé, la partie
considérée correspond à une sous-image.
Lorsque tous les blocs n'ont pas été reçus, alors l'étape Sq4 est suivie de l'étape S:; précédemment décrite et le processus de réception des blocs de données requis et non reçus et d'insertion de ceux-ci dans le signal numérique dérivé se poursuit jusqu'à ce que l'étape S44 conduise à l'étape S45 mettant fin à
l'algorithme de la figure 7.
Le circuit 52 de modification de l'en-tête de la figure 2 procède aux opérations indiquées aux étapes S7, S4o, S44, S42 et S43 de la figure 7. A cet effet, le circuit 52 comporte plus particulièrement: - des moyens de mise à jour du champ 142 ("zero length packet") de l'en-tête du paquet considéré dès que le paquet devient non vide; - des moyens de mise à jour du champ constitué des sous-champs 146, 148, 150, 158, 160 et 162 ("codeblock inclusion information") de l'en-tête du paquet considéré lorsqu'un bloc de données compressé appara^rt pour la première fois dans le corps du paquet; - des moyens de mise à jour du champ 152 ("zero bit-plane information") de l'en-tête du paquet considéré lorsqu'un bloc de données 1 5 compressé appara'^t pour la première fois dans ie corps du paquet; - des moyens de mise à jour du champ 154 ("number of coding passes") de l'en-tête du paquet considéré lorsqu'une nouvelle contribution (portion) d'un bloc de données compressé est insérée dans le corps du paquet; - des moyens de mise à jour du champ 156 de l'en-tête du paquet indiquant la longueur de la contribution du bloc de donnces considéré au corps
du paquet.
Les figures 9a et 9b illustrent le mécanisme de mise à jour de l'information du champ "code-block inclusion information" contenue dans les sous-champs 146, 148, 150, 158, 160 et 162 de chaque en-tête de paquet, au
fur et à mesure que des blocs de données sont reçus.
Ce champ est chargé d'indiquer les blocs de données qui contribuent
au corps du paquet considéré.
La mise à jour de ce champ fait appel à un arbre d'identification (connu en terminologie anglosaxonne sous le terme "tag-tree") qui est construit
à parti r des blocs de don nées compressés représentant les feu il les de l'a rbre.
Pour comprendre la notion d'arbre d'identification, considérons l'ensemble des blocs de données du niveau de résolution O de la figure 5a en leur attribuant, comme représenté à la figure 9a, une valeur par bloc (feuille),
soit les valeurs 0, 0, 2, 2, 1, 1 pour les blocs respectifs 0, 1, 2, 3, 4, 5.
La valeur attribuée à chaque feuille est égale au numéro de la couche de qualité dans laquelle le bloc correspondant appara^'t pour la première fois. Pour coder ces valeurs, on les regroupe par quatre et on obtient ainsi
dans ia représentation du milieu de la figure 9a deux n_uds.
La valeur attribuce à chaque n_ud de l'arbre est alors égale au
minimum des valeurs de ses descendants. La valeur de la racine de l'ardre représentée sur la droite de la figure
9a est codée par une suite de k "0" termince d'un "1", indiquant qu'elle est
supérieure de k unités à 0.
De même, chaque n_ud est ensuite codé par rapport à la valeur du n_ud parent, par une suite de k "O" terminée par un "1", indiquant que le n_ud
courant est supérieur de k unités au n_ud parent.
Il s'agit donc, au fur et à mesure que des blocs sont insérés dans ies paquets du signal dérivé en cours de formation, de mettre à jour le codage de
l'arbre d'identification indiquant les blocs inclus dans chaque paquet.
Etant donné la structure à une seule couche de qualité du fichier construit par le dispositif selon l'invention, les valeurs des feuilles de l'arbre
utilisé seront soit nulles (bloc reçu), soit supérieures à O (bloc non reçu).
Cette propriété rend très simple le processus de mise à jour des
informations d'inclusion des blocs.
En effet, considérons l'exemple des requêtes de transmission de
blocs du tableau de la figure 9b (1ère colonne).
A la réception du premier bloc, on génère un code partiel pour chaque bloc, indiquant s'il est inclus ou non dans le paquet courant (2ème colonne). Le premier code indique que la feuille correspondant au bloc O a une valeur supérieure ou égale à 1, c'est-à-dire que le block 0 n'est pas inclus dans
la couche d'indice O du train binaire en cours de formation.
Ainsi, pour les blocs suivants, un "O" indique qu'ils ne sont pas présents dans la couche 0, et un "1" indique qu'ils apparaissent dans cette couche.; Dans ce tableau, on a également représenté sous une autre forme
l'a rbre d'identification des blocs incl us en troisième colon ne.
Notons que seule l'information nécessaire à conna^tre i'inclusion d'un
bloc dans la couche courante est codée dans l'en-tête du paquet.
Ainsi, aucune information n'est nécessaire pour indiquer que le bloc n'appartient pas à la couche courante 0, le bit "0" pour le bloc 2 indiquant que
le n_ud parent des blocs 2 et 5 a une vaieur supérieure ou égale à 1.
En revanche, à la réception du bloc 5 (4ème ligne du tableau), les codes des blocs 2 et 5 changent, afin d'indiquer la non-inclusion du bloc 2 et
l'inclusion du bloc 5 dans la couche courante.
Lorsqu'un nouveau bloc de données compressé appara'^t dans le paquet, conformément à l'étape S1O de la figure 7, une mise à jour du champ
"code-block inclusion information" de l'en-tête du paquet est effectuée.
Plus particulièrement, un algorithme de mise à jour de l'arbre
d'identification précité est exécuté.
La figure 10 illustre d'ailleurs cet algorithme qui comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé de mise à jour de l'arbre d'identification construit pour indiquer l'inclusion de
chaque bloc dans un paquet de données.
Une première étape S20 consiste à obtenir un nouveau bloc Cbk qui
a été inséré dans le paquet.
L'étape suivante S2 consiste à attribuer la valeur 0 à la feuille correspondant au bloc Cbk dans l'arbre d'identification, la valeur O
correspondant à l'indice de la couche de qualité du paquet.
L'étape suivante S22 prévoit de considérer le n_ud courant comme
étant la feu il le correspondant au bloc de don nées Cbk.
Au cours de l'étape suivante S23, on détermine la valeur v du n_ud parent du n_ud courant et, au cours de l'étape suivante S24, on procède à un
test atin de déterminer si cette valeur est nulle.
Dans la négative, au cours de l'étape suivante S25 on attribue la
valeur 0 au n_ud situé en amont de la feuille traitée.
L'étape suivante S26 consiste à considérer que le n_ud courant est le n_ud parent d u nceud cou rant pu is, I'étape S23 précédemment décrite est
de nouveau exécutée.
On constate qu'un processus de propagation consistant à mettre à jour tous les n_uds disposés en amont de la feuille traitée dont la vaieur est
supérieure à 0 est ainsi effectué.
Toutefois, cette mise à jour des valeurs des n_uds en amont modifie
le codage de l'arbre d'identification.
Pour cette raison, I'étape S24, lorsqu'elle conduit à un résultat positif, est suivie d'une étape S27 au cours de laquelle on procède à un nouveau cod age du sous-arbre de l'arbre d'identification dont la racine correspond au
n_ud modifié le plus en amont dans l'arbre d'identification.
Ensuite, I'étape S2,3 prévoit de placer de manière appropriée dans I'entête du paquet considéré les nouveaux mots binaires qui viennent d'être
déterminés et qui sont associés aux feuilles du sous-arbre nouvellement codé.
Cette étape met fin à l'algorithme de mise à jour de l'arbre d'identification.
On notera que le programme informatique ou sous-programme basé sur cet algorithme est stocké dans la mémoire morte 104 de la figure 6 et, à
I'initialisation du système, est transféré dans la mémoire vive 106.
Il est ensuite exécuté par l'unité centrale 103, ce qui permet ainsi de
mettre en _uvre le procédé dans le dispositif de la figure 6.
On constatera que ce programme est considéré comme faisant
partie du programme "Progr" représenté sur la figure 6.
Toutefois, il peut également s'agir d'un programme séparé.
Comme on vient de le voir, lorsque le train binaire en cours de formation est formé d'une unique couche de qualité, les codes de l'arbre d'identification mis à jour sont recopiés tels quels dans l'en-tête du paquet
mod if ié.
Au contraire, si le train binaire du signal numérique dérivé était formé sur plusieurs couches de qualité, I'introduction d'un bloc de données compressé dans le corps de ce signal s'accompagnerait de la modification du codage de
I'arbre d'identification dans de multiples paquets de ce signal.
Les figures 11a et 11b illustrent le mécanisme de mise à jour de l'information contenue dans le champ 152 de chaque en-tête de paquet du
squelette 130 du signal dérivé de la figure 8.
A nouveau, ies valeurs des nombres de plans de bits de poids fort du
champ 152 sont codées à l'aide d'un autre arbre d'identification.
Le tableau de la figure 11 b montre que, contrairement à l'information d'inclusion des blocs, le champ 152 "zero bit-plane information" n'est présent
dans l'en-tête du paquet que pour les blocs déjà reçus par l'utilisateur.
De plus, comme le montre le tableau, I'inclusion d'un nouveau bloc peut modifier les codes de l'arbre d'identification de plusieurs autres blocs déjà
présents dans le paquet concerné.
Le processus de mise à jour de ces codes est logèrement plus complexe que celui concernant l'information d'inclusion des blocs des figures
159a, 9bet10.
De façon analogue à la description faite en référence à la figure 9a
pour l'élaboration du premier arbre d'identification, les blocs de données du niveau de résolution O notés 0, 1, 2, 3, 4 et 5 sont des feuilles de l'arbre auxquelles on attribue respectivement les valeurs 1, 2, 2, 0, 3 et 1
(représentation de gauche de la figure 11a).
Toujours de façon analogue, les valeurs à coder sont regroupées par quatre, formant ainsi deux n_ubs dont les valeurs sont O et 1 (représentation
du milieu).
De même, la racine de l'arbre formé (représentation de droite) est
codée par la valeur 0.
Le tableau de la figure 11 b est ensuite construit de même que l'arbre d'identification correspondant, en fonction de l'obtention des différents blocs de
données compressés indiquées dans la première colonne.
Ainsi, consécutivement à la réception du bloc d'indice 1 pour le niveau de résolution 0, on affecte à la feuille correspondante la valeur 00111
dans l'arbre d'identification.
Après réception du bloc d'indice 3, on affecte à la feuille correspondante la valeur 1, tandis que la valeur de la feuille qui correspond au
bloc d'indice 1 devient 1 1001.
On notera que la troisième colonne indique les modifications correspondantes des valeurs des feuilles, des n_uds et de la racine de l'arbre d'identification.
On va revenir sur la mise à jour du champ 152 dans la description
suivante des figures 12a et 12b.
La figure 12a illustre l'exemple de l'inclusion d'un bloc qui provoque le changement du codage de plusieurs feuilles de l'arbre d'identification utilisé
pour coder le champ 152 "zero bit-plane information", de l'en-tête d'un paquet.
Cet exemple est représenté sur la deuxième ligne, en troisième
colonne du tableau de la figure 11 b.
La figure 1 2a montre que la nouvelle valeur de la feuille peut entraner la modification d'un ou plusieurs n_uds situés en amont de la feuille
1 5 considérée.
Ceci modifie alors le codage des feuilles d'un sous-arbre qui prend
sa racine au n_ud situé le plus en amont.
Ce sous-arbre est entouré par des pointillés sur la figure 12a.
Comme il appara^'t sur cette figure, le n_ud le plus en amont est affecté par la modification de la feuille correspondant au bloc d'indice 3
nouvellement inclus (deuxième ligne du tableau de la figure 11 b).
Il est donc nécessaire de-coder à nouveau l'ensemble du sous-arbre considéré, et de substituer les nouveaux codes de l'arbre d'identification
* attribués à ses feuilles dans l'en-tête du paquet traité.
L'algorithme de mise à jour de l'arbre d'identification et d'un nouveau
codage d'une partie de cet arbre est détaillé en référence à la figure 12b.
La figure 12b illustre l'algorithme qui comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé de mise à jour de l'arbre d'identification construit pour indiquer le nombre de
plans de bits sur lesquels chacun des blocs est insignifiant.
On notera que le programme informatique ou sous-programme basé sur cet algorithme est stocké dans la mémoire morte 104 de la figure 6 et, à
I'initialisation du système, est transféré dans la mémoire vive 106.
Il est ensuite exécuté par l'unité centrale 103, ce qui permet ainsi de
mettre en _uvre le procédé dans le dispositif de la figure 6.
On constatera que ce programme est considéré comme faisant partie du programme "Progr" représenté sur la figure 6.
Toutefois, il peut également s'agir d'un programme séparé.
Une première étape S30 de l'algorithme consiste à obtenir un nouveau bloc Cbk qui n'a pas encore été inséré dans le paquet auquel il est destiné. L'étape suivante S34 consiste à ajouter le bloc Cbk précité dans
l'arbre d'identification en cours de mise à jour.
Au cours de l'étape suivante S32, le nombre v de plans de bits de poids fort sur lesquels le bloc Cbk est insignifiant est attribué à la feuille qui
correspond au bloc Cbk da ns l'arbre d'identification constru it.
Au cours de létape suivante notée S33, on détermine la valeur du n_ud situé en amont du n_ud courant dans l'arbre d'identification considéré,
cette valeur étant notée v'.
L'étape suivante S34 est une étape de test au cours de laquelle on
procède à une comparaison entre les valeurs v et v'.
Si la valeur v est inférieure à la valeur v', alors l'étape S34 est suivie d'une étape S35 au cours de laquelle on attribue la valeur v au n_ud parent
(n_ud en amont du n_ud courant).
L'étape suivante notée S36 consiste à considérer que le n_ud cou rant est le n_ud parent d u n_ud cou rant pu is, I'étape S33 précédemment
décrite est de nouveau exécutée.
On propage ainsi en remontant dans l'arbre la valeur v jusqu'à
aboutir à un n_ud pour lequel la valeur v' est inférieure ou égale à la valeur v.
Lorsque c'est le cas, I'étape S34 est suivie d'une étape S37 au cours de laquelle on procède à un nouveau codage du sous-arbre (exemple de la figure 12a) dont la racine correspond au n_ud modifié qui est située le plus en
amont dans l'arbre d'identification;.
Ensuite, I'étape suivante S3,3 prévoit de placer de manière appropriée dans l'en-tête du paquet considéré les nouveaux mots binaires qui viennent d'être déterminés et qui sont associés aux feuilles du sous- arbre nouvellement codé. Cette étape met fin à l'algorithme de mise à jour de l'arbre
d'identification représenté sur les figures 1 1 a, 11 b et 1 2a.
On notera que l'invention permet notamment de stocker en ligne, par exemple dans une mémoire cache ou dans un périphérique quelconque de stockage, un signal numérique dérivé (ex: signal d'image dérivé), au fur et à
mesure que ce signal est transmis par entités élémentaires.
Le fait de disposer ainsi du signal numérique dérivé stocké permet de réutiliser ultérieurement ce signal sans avoir besoin de transmettre à
distance une nouvelle fois les données qui le constituent.
Ceci procure donc un gain de temps important pour l'utilisateur et
écarte les risques d'erreur de transmission en cas de nouvelle transmission.
Cette application est particulièrement utile quant l'utilisateur souhaite réutiliser une sous-image ou zone d'intérêt de l'image et que cette dernière est
stockée sur un serveur.
Par ailleurs, le fait de disposer d'un signal numérique dérivé stocké dans le même appareil de traitement de données que celui o est stocRé le
signal d'origine compressé est également avantageux.
Ceci est notamment le cas lorsque le signal numérique dérivé qui a été formé et stocké représente ce qui intéresse l'utilisateur dans le signal d'origine compressé. Liutilisateur peut donc l'utiliser à nouveau sans avoir
recours au signal d'origine compressé, économisant ainsi un temps important.
En outre, lorsque le signal d'image compressé est conforme à un standard tel que JPEG2000, I'invention permet de construire de manière progressive un signal dérivé qui est constamment maintenu en conformité avec ce standard, au fur et à mesure que des blocs de données compressés sont
insérés dans le signal.
Claims (26)
1. Procédé de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine comportant des données d'origine représentatives de grandeurs physiques et regroupées en blocs de donnces ordonnés dans ledit signal d'origine, caractérisé en ce que ledit procédé comporte les étapes suivantes: - obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal et de l'organisation des données dans celui-ci, et - à partir desdites informations, formation d'un squelette du signal numérique dérivé qui comporte au moins en partie ces informations et au moins un en-tête et un corps destiné à contenir ultérieurement des blocs de données compressés, ledit squelette ainsi formé étant conforme à une syntaxe de
description du signal compressé.
2. Procédé selon la revendication 1, caractérisé en ce qu'il comporte les étapes suivantes: - obtention d'au moins un bloc de donnces à partir du signal numériquecompresséet, - insertion dudit bloc de données dans le corps du squelette du signal
numérique dérivé.
3. Procédé selon la revendication 2, caractérisé en ce que l'insertion d'un bloc de données dans le corps du squelette du signal numérique
dérivé est effectuée dès que ce bloc de donnces est obtenu.
4. Procédé selon la revendication 2 ou 3, caractérisé en ce que le bloc de donnces est obtenu avec l'ordre qui lui est affecté dans le signal numérique compressé et il est inséré dans le corps en tenant compte de cet ordre.
5. Procédé selon l'une des revendications 2 à 4, caractérisé en ce
que, au moins un en-tête du squelette du signal numérique dérivé comportant des i nformations représentatives des blocs de don nées compressés conten us dans le corps, ledit procédé comporte une étape de modification de cet en-tête
en fonction de l'insertion d'au moins un bloc de données dans le corps.
6. Procédé selon l'une des revendications 2 à 5, caractérisé en ce
que, les blocs de données du signal numérique d'origine ayant été compressés suivant au moins un niveau de qualité, les blocs de données compressés sont organisés dans le corps du squelette du signal numérique dérivé suivant un
niveau de qualité unique.
7. Procédé selon la revendication 6, caractérisé en ce que, lorsque chacun des blocs de données du signal numérique d'origine a été compressé suivant plusieurs niveaux de qualité, les différentes couches de qualité constituant chacun des blocs de données compressés sont insérées dans le
corps dans l'ordre croissant desUits niveaux de qualité.
8. Procédé selon l'une des revendications 2 à 7, caractérisé en ce
qu'il comporte une étape de construction d'un arbre d'identification des blocs de donnces insérés dans le corps du squelette, la présence desdits blocs de
données étant identifice pour chacun d'eux par une valeur d'un code.
9. Procédé selon la revendication 8, caractérisé en ce qu'il comporte une étape de mise à jour d'au moins certaines des valeurs codées de l'arbre d'identification en fonction de l'insertion dun bloc de données dans le
corps du squelette.
10. Procédé selon l'une des revendications 1 à 9, caractérisé en ce
que l'étape de formation d'un squelette du signal numérique dérivé est effectuée dans un premier appareil de communication qui communique à distance avec un second appareil de communication dans lequel est stocké le
signal numérique compressé.
11. Procédé selon la revendication 10, caractérisé en ce que l'étape de formation du squelette du signal numérique dérivé est effectuée tandis que la totalité des donnces contenues dans le signal numérique compressé n'a pas
été reçue.
12. Procédé selon la revendication 10 ou 11, caractérisé en ce qu'il comporte une étape de transmission à destination du second appareil de communication d'une requête d'obtention des informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal compressé et de l'organisation des données dans celui-ci, préalablement à
l'étape d'obtention desUites informations.
13. Procédé selon les revendications 2 et 10, caractérisé en ce qu'il
comporte une étape de transmission à destination du second appareil de communication d'une requête d'obtention d'au moins un bloc de données,
préalablement à l'étape d'obtention dud it bloc de données.
14. Dispositif de formation d'un signal numérique dit dérivé à partir d'un signal numérique compressé qui a été obtenu par compression d'un signal numérique dit d'origine comportant des donnces d'origine représentatives de grandeurs physiques et regroupées en blocs de données ordonnés dans ledit signal d'origine, caractérisé en ce que ledit dispositif comporte: des moyens d'obtention d'informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal et de I'organisation des données dans celui-ci, et - des moyens de formation d'un squelette du signal numérique dérivé à partir desdites informations, et qui comporte au moins en partie ces informations et au moins un en-tête et un corps destiné à contenir ultérieurement des blocs de données compressés, ledit squelette ainsi formé
étant conforme à une syntaxe de description du signal compressé.
15. Dispositif selon la revendication 14, caractérisé en ce qu'il comporte: - des moyens d'obtention d'au moins un bloc de donnces à partir du signal numérique compressé et, - des moyens d'insertion dudit bloc de donnces dans le corps du
squelette du signal numérique dérivé.
16. Dispositif selon la revendication 15, caractérisé en ce que le bloc de données est obtenu avec l'ordre qui lui est affecté dans le signal numérique
compressé et il est inséré dans le corps en tenant compte de cet ordre.
17. Dispositif selon l'une des revendications 15 à 16, caractérisé en
ce que, au moins un en-tête du squelette du signal numérique dérivé comportant des informations représentatives des blocs de données compressés contenus dans le corps, led it d ispositif comporte des moyens de modification de cet en-tête en fonction de l'insertion d'au moins un bloc de donnces dans le corps.
18. Dispositif selon l'une des revendications 15 à 17, caractérisé en
ce qu'il comporte des moyens de construction d'un arbre d'identification des blocs de données insérés dans le corps du squelette, la présence desdits blocs
de donnces étant identifiée pour chacun d'eux par une valeur d'un code.
19. Dispositif selon la revendication 18, caractérisé en ce qu'il comporte des moyens de mise à jour d'au moins certaines des valeurs codées de l'arbre d'identification en fonction de l'insertion d'un bloc de données dans le corps du squelette.;
20. Dispositif selon l'une des revendications 14 à 19, caractérisé en
ce que les moyens de formation d'un squelette du signal numérique dérivé font partie d'un premier appareil de communication qui communique à distance avec un second appareil de communication dans lequel est stocké le signal
numérique compressé.
21. Dispositif selon la revendication 20, caractérisé en ce qu'il comporte des moyens de transmission à destination du second appareil de communication d'une requête d'obtention des informations contenues dans le signal numérique compressé et représentatives de la structure dudit signal
compressé et de l'organisation des données dans celui-ci.
22. Dispositif selon les revendications 15 et 20, caractérisé en ce
qu'il comporte des moyens de transmission à destination du second appareil de
communication d'une requête d'obtention d'au moins un bloc de donnses.
23. Appareil de traitement de données, caractérisé en ce qu'il comporte un dispositif de formation d'un signal numérique dérivé selon l'une
des revendications 14 à 22.
24. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de formation d'un signal
numérique dérivé selon l'une des revendications 1 à 13.
25. Moyen de stockage d'informations amovible, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de formation d'un signal numérique dérivé selon l'une des
revendications 1 à 13.
26. Programme d'ordinateur chargeable dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions ou des portions de code logiciel pour mettre en ceuvre les étapes du procédé
de formation d'un signal numérique dérivé seloh l'une des revendications 1 à
13, lorsque ce programme d'ordinateur est chargé et exécuté par l'appareil
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0113819A FR2831728B1 (fr) | 2001-10-25 | 2001-10-25 | Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse |
US10/279,729 US7113643B2 (en) | 2001-10-25 | 2002-10-25 | Method and device for forming a derived digital signal from a compressed digital signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0113819A FR2831728B1 (fr) | 2001-10-25 | 2001-10-25 | Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2831728A1 true FR2831728A1 (fr) | 2003-05-02 |
FR2831728B1 FR2831728B1 (fr) | 2004-03-12 |
Family
ID=8868723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0113819A Expired - Fee Related FR2831728B1 (fr) | 2001-10-25 | 2001-10-25 | Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse |
Country Status (2)
Country | Link |
---|---|
US (1) | US7113643B2 (fr) |
FR (1) | FR2831728B1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1496703A1 (fr) * | 2003-07-11 | 2005-01-12 | Canon Kabushiki Kaisha | Création de zones de navigation dans une image numérique |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2826823B1 (fr) | 2001-06-27 | 2003-10-10 | Canon Kk | Procede et dispositif de traitement d'un signal numerique code |
US20040070786A1 (en) * | 2002-06-08 | 2004-04-15 | Molteno Timothy Christopher Anthony | Method for interactively transmitting image data over a communication link |
FR2842378B1 (fr) * | 2002-07-15 | 2005-02-04 | Canon Kk | Procede et dispositif de traitement d'une requete ou de donnees numeriques compressees |
FR2842691B1 (fr) * | 2002-07-18 | 2005-01-14 | Canon Kk | Procede et dispositif de transformation d'un signal numerique |
FR2842983B1 (fr) * | 2002-07-24 | 2004-10-15 | Canon Kk | Transcodage de donnees |
US7580577B2 (en) * | 2002-12-09 | 2009-08-25 | Canon Kabushiki Kaisha | Methods, apparatus and computer products for generating JPEG2000 encoded data in a client |
JP2004236299A (ja) * | 2003-01-07 | 2004-08-19 | Ricoh Co Ltd | 画像処理装置、画像形成装置、画像処理方法、プログラム及び記憶媒体 |
US7580578B1 (en) | 2003-02-03 | 2009-08-25 | Canon Kabushiki Kaisha | Method and device for forming a compressed transcoded digital image signal |
DE10326168B4 (de) * | 2003-06-10 | 2010-01-28 | Siemens Ag | Verfahren und Funktionseinheit zur Optimierung der Darstellung progressiv kodierter Bilddaten |
FR2889004B1 (fr) * | 2005-07-22 | 2007-08-24 | Canon Kk | Procede et dispositif de traitement d'une sequence d'images numeriques a scalabilite spatiale ou en qualite |
FR2895172A1 (fr) * | 2005-12-20 | 2007-06-22 | Canon Kk | Procede et dispositif de codage d'un flux video code suivant un codage hierarchique, flux de donnees, procede et dispositif de decodage associes |
FR2896371B1 (fr) | 2006-01-19 | 2008-11-07 | Canon Kk | Procede et dispositif de traitement d'une sequence d'images numeriques au format extensible |
FR2907575B1 (fr) * | 2006-10-18 | 2009-02-13 | Canon Res Ct France Soc Par Ac | Procede et dispositif de codage d'images representant des vues d'une meme scene |
FR2909474B1 (fr) * | 2006-12-04 | 2009-05-15 | Canon Kk | Procede et dispositif de codage d'images numeriques et procede et dispositif de decodage d'images numeriques codees |
JP4774382B2 (ja) * | 2007-05-08 | 2011-09-14 | 株式会社リコー | 画像処理装置、画像処理回路、及び、画像処理方法 |
FR2931025B1 (fr) * | 2008-05-07 | 2010-05-21 | Canon Kk | Procede de determination d'attributs de priorite associes a des conteneurs de donnees, par exemple dans un flux video, procede de codage, programme d'ordinateur et dispositifs associes |
FR2931610B1 (fr) * | 2008-05-20 | 2010-12-17 | Canon Kk | Procede et un dispositif de transmission de donnees d'images |
FR2932637B1 (fr) * | 2008-06-17 | 2010-08-20 | Canon Kk | Procede et dispositif de codage d'une sequence d'images |
FR2939593B1 (fr) * | 2008-12-09 | 2010-12-31 | Canon Kk | Procede et dispositif de codage video |
EP2257073A1 (fr) * | 2009-05-25 | 2010-12-01 | Canon Kabushiki Kaisha | Procédé et dispositif pour transmettre des données vidéo |
EP2265026A1 (fr) * | 2009-06-16 | 2010-12-22 | Canon Kabushiki Kaisha | Procédé et dispositif pour débloquer le filtrage de flux vidéo de type SVC pendant le décodage |
EP2285122B1 (fr) * | 2009-07-17 | 2013-11-13 | Canon Kabushiki Kaisha | Procédé et dispositif pour reconstruire une séquence de données vidéo après la transmission dans un réseau |
EP2285112A1 (fr) * | 2009-08-07 | 2011-02-16 | Canon Kabushiki Kaisha | Procédé pour l'envoi de données compressées représentant une image numérique et dispositif correspondant |
FR2951345B1 (fr) | 2009-10-13 | 2013-11-22 | Canon Kk | Procede et dispositif de traitement d'une sequence video |
FR2955995B1 (fr) * | 2010-02-04 | 2012-02-17 | Canon Kk | Procede et dispositif de traitement d'une sequence video |
US9332259B2 (en) * | 2012-01-18 | 2016-05-03 | Qualcomm Incorporated | Indication of use of wavefront parallel processing in video coding |
EP3499886A1 (fr) | 2017-12-18 | 2019-06-19 | Canon Kabushiki Kaisha | Procédé et dispositif de codage de données vidéo |
EP3499885B1 (fr) | 2017-12-18 | 2024-07-17 | Canon Kabushiki Kaisha | Procédé et dispositif de codage de données vidéo |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997030551A1 (fr) * | 1996-02-14 | 1997-08-21 | Olivr Corporation Ltd. | Procede et systemes de transmission asynchrone et progressive de donnees multimedia |
GB2348074A (en) * | 1996-08-06 | 2000-09-20 | Live Picture Inc | Encoding movies, panoramas and large images for on-line interactive viewing and gazing |
WO2000065838A2 (fr) * | 1999-04-26 | 2000-11-02 | Telemedia Systems Limited | Conversion d'un fichier media en format variable pour une transmission progressive |
US6205457B1 (en) * | 1998-06-22 | 2001-03-20 | Intel Corporation | Ordered ole file structure |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711297B1 (en) * | 1998-07-03 | 2004-03-23 | University Of Pittsburgh - Of The Commonwealth System Of Higher Education | Methods and apparatus for dynamic transfer of image data |
US6314452B1 (en) * | 1999-08-31 | 2001-11-06 | Rtimage, Ltd. | System and method for transmitting a digital image over a communication network |
US6704798B1 (en) * | 2000-02-08 | 2004-03-09 | Hewlett-Packard Development Company, L.P. | Explicit server control of transcoding representation conversion at a proxy or client location |
-
2001
- 2001-10-25 FR FR0113819A patent/FR2831728B1/fr not_active Expired - Fee Related
-
2002
- 2002-10-25 US US10/279,729 patent/US7113643B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997030551A1 (fr) * | 1996-02-14 | 1997-08-21 | Olivr Corporation Ltd. | Procede et systemes de transmission asynchrone et progressive de donnees multimedia |
GB2348074A (en) * | 1996-08-06 | 2000-09-20 | Live Picture Inc | Encoding movies, panoramas and large images for on-line interactive viewing and gazing |
US6205457B1 (en) * | 1998-06-22 | 2001-03-20 | Intel Corporation | Ordered ole file structure |
WO2000065838A2 (fr) * | 1999-04-26 | 2000-11-02 | Telemedia Systems Limited | Conversion d'un fichier media en format variable pour une transmission progressive |
Non-Patent Citations (5)
Title |
---|
BLUMBERG R ET AL: "VISUAL REALISM AND INTERACTIVITY FOR THE INTERNET", PROCEEDINGS OF IEEE COMPCON '97. SAN JOSE, FEB. 23 - 26, 1997, LOS ALAMITOS, IEEE COMP. SOC. PRESS, US, 23 February 1997 (1997-02-23), pages 269 - 273, XP000751797, ISBN: 0-8186-7805-4 * |
BOLIEK M ET AL: "NEXT GENERATION IMAGE COMPRESSION AND MANIPULATION USING CREW", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 1998. SANTA BARBARA, CA, OCT. 26 - 29, 1997, LOS ALAMITOS, CA: IEEE COMPUTER SOCIETY, US, vol. 3, 26 October 1997 (1997-10-26), pages 567 - 570, XP000780950, ISBN: 0-8186-8184-5 * |
DESHPANDE S ET AL: "HTTP streaming of JPEG2000 images", PROCEEDINGS INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY: CODING AND COMPUTING, 2 April 2001 (2001-04-02), pages 15 - 19, XP002193324 * |
HAUF C R ET AL: "THE FLASHPIX (TM) IMAGE FILE FORMAT", FINAL PROGRAM AND PROCEEDINGS OF THE IS&T/SID COLOR IMAGING CONFERENCE: COLOR SCIENCE, SYSTEMS, AND APPLICATIONS, 19 November 1996 (1996-11-19) - 22 November 1996 (1996-11-22), pages 234 - 238, XP000856885 * |
LEE D T: "New opportunities in digital imaging systems", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING (ICIP) LAUSANNE, SEPT. 16 - 19, 1996, NEW YORK, IEEE, US, vol. 1, 16 September 1996 (1996-09-16), pages 431 - 434, XP010202239, ISBN: 0-7803-3259-8 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1496703A1 (fr) * | 2003-07-11 | 2005-01-12 | Canon Kabushiki Kaisha | Création de zones de navigation dans une image numérique |
Also Published As
Publication number | Publication date |
---|---|
US7113643B2 (en) | 2006-09-26 |
FR2831728B1 (fr) | 2004-03-12 |
US20030128878A1 (en) | 2003-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2831728A1 (fr) | Procede et dispositif de formation d'un signal numerique derive a partir d'un signal numerique compresse | |
FR2826823A1 (fr) | Procede et dispositif de traitement d'un signal numerique code | |
FR2835366A1 (fr) | Procede et dispositif de formation d'un signal numerique compresse reduit | |
FR2846181A1 (fr) | Procede et dispositif de selection de donnees dans un reseau de communication | |
FR2716587A1 (fr) | Procédé et appareil de compression d'images. | |
FR2826227A1 (fr) | Procede et dispositif de traitement d'un signal numerique code | |
FR2724791A1 (fr) | Appareil de compression de donnees utilisant des ondes elementaires implantees reversibles | |
WO2012175870A1 (fr) | Procédé de codage et décodage d'images, dispositif de codage et décodage et programmes d'ordinateur correspondants | |
EP0416985B1 (fr) | Procédé de multiplexage d'un signal sonore avec un signal vidéo analogique et système correspondant de distribution d'images fixes sonorisées | |
FR2842983A1 (fr) | Transcodage de donnees | |
FR2842057A1 (fr) | Procede et dispositif de traitement de donnees dans un reseau de communication | |
FR2842378A1 (fr) | Procede et dispositif de traitement d'une requete ou de donnees numeriques compressees | |
FR2755818A1 (fr) | Codage de signal numerique par decomposition en sous-bandes de frequence et quantification vectorielle a etats finis | |
FR2849982A1 (fr) | Decodage d'une image numerique codee selon plusieurs niveaux de resolution | |
FR2853797A1 (fr) | Procede et dispositif de pre-traitement de requetes liees a un signal numerique dans une architecture du type client-serveur | |
FR2809248A1 (fr) | Compression de donnees numeriques et codage des donnees compressees pour les proteger contre les erreurs de transmission | |
FR2792150A1 (fr) | Procedes et dispositis de codage et de decodage de signaux numeriques, et systemes les mettant en oeuvre | |
EP0053064B1 (fr) | Système de transmission numérique à codage adaptatif d'informations analogiques échantillonnées et transformées par transformation orthogonale | |
FR2782861A1 (fr) | Transcodage geometrique d'un signal numerique | |
FR2816138A1 (fr) | Decodage de donnees numeriques | |
FR2872972A1 (fr) | Procede et dispositif de transmission video entre un serveur et un client | |
EP3491825A1 (fr) | Procédé de décodage d'une image, procédé de codage, dispositifs, équipement terminal et programmes d'ordinateurs associés | |
CA2026766C (fr) | Procede de multiplexage d'un signal sonore dans un signal video analogique et systeme de distribution d'images fixes sonorisees | |
WO2022073885A1 (fr) | Procédé et dispositif électronique de décodage d'un flux de données, et programme d'ordinateur associé | |
FR2850825A1 (fr) | Procede et dispositif de formation d'un signal numerique d'image transcode compresse |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20140630 |