FR2817437A1 - Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee - Google Patents

Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee Download PDF

Info

Publication number
FR2817437A1
FR2817437A1 FR0015367A FR0015367A FR2817437A1 FR 2817437 A1 FR2817437 A1 FR 2817437A1 FR 0015367 A FR0015367 A FR 0015367A FR 0015367 A FR0015367 A FR 0015367A FR 2817437 A1 FR2817437 A1 FR 2817437A1
Authority
FR
France
Prior art keywords
image
data
sub
quality
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0015367A
Other languages
English (en)
Other versions
FR2817437B1 (fr
Inventor
Stephane Roche
Patrick Haddad
Olivier Lau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PIXEL M
Original Assignee
PIXEL M
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PIXEL M filed Critical PIXEL M
Priority to FR0015367A priority Critical patent/FR2817437B1/fr
Priority to US09/772,912 priority patent/US20020097411A1/en
Priority to PCT/FR2001/000718 priority patent/WO2002045409A1/fr
Priority to AU2001239374A priority patent/AU2001239374A1/en
Publication of FR2817437A1 publication Critical patent/FR2817437A1/fr
Application granted granted Critical
Publication of FR2817437B1 publication Critical patent/FR2817437B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Une installation permet l'échange de données d'image entre des terminaux clients (1) et au moins un terminal de service (2), via un réseau de communication. Chaque terminal client (1) comporte des moyens d'affichage de données (5) et des premiers moyens de traitement, agencés pour placer dans une requête d'accès à une image, destinée au terminal serveur (2), des caractéristiques d'affichage du terminal client. Le terminal serveur (2) comporte des seconds moyens de traitement capables i) d'extraire d'une requête d'accès à une image, reçue d'un terminal client, les caractéristiques de ses moyens d'affichage, ii) d'établir une correspondance entre les différents types de données de l'image et des caractéristiques d'affichage, et iii) de déterminer parmi les caractéristiques d'affichage correspondant aux types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage extraites, de sorte que soient transmises au terminal client les données d'image associées au type de données correspondant aux caractéristiques déterminées.

Description

INSTALLATION ET PROCEDE D'ECHANGE DE DONNEES D'IMAGE DE
QUALITE ET/OU TAILLE CONTROLEE
L'invention concerne les domaines de la compression, du stockage, de la transmission, de la décompression et de l'affichage d'images, et plus particulièrement les installations et procédés permettant l'échange de données d'image compressées entre un terminal de service et des
terminaux clients, via un réseau de communication.
Dans certaines installations connues, la compression des données brutes d'une image comporte une étape de décomposition en niveaux de résolution mettant en oeuvre une technique dite " des ondelettes ", suivie d'une étape de décomposition en couches de qualité. Les données brutes qui définissent une image concernent généralement plusieurs types d'informations, et notamment la résolution, la qualité, le nombre de couleurs, etc. La technique des ondelettes est particulièrement adaptée à la transmission d'image en raison des taux de compression élevés qu'elle procure, typiquement de 5 à 15 pour une image en niveaux de gris et de 10 à 100 pour une image couleur. Cependant, en raison des limitations de 2 o bande passante dans les réseaux de communication ces taux de compression ne sont pas suffisant, si bien que le temps nécessaire à la transmission d'une image, même compressée, peut devenir incompatible avec les besoins de l'utilisateur. C'est notamment le cas dans le domaine de la transmission de données entre terminaux portables, tels que les
téléphones portables, les assistants numériques personnels, ou les micro-
ordinateurs portables. Cet inconvénient est encore renforcé dans le cas du réseau public Internet, du fait du taux très élevé d'occupation de la bande passante. L'invention a donc pour but d'apporter une solution originale au
3 o problème présenté ci-dessus.
Elle propose à cet effet une installation d'échange de données d'image compressées du type de celle présentée ci-dessus et dans laquelle: ò chaque terminal client comporte des moyens d'affichage de données et des premiers moyens de traitement, agencés pour placer dans une requête d'accès à une image, destinée au terminal serveur, certaines au moins des caractéristiques d'affichage des moyens d'affichage (par exemple le format d'une zone d'affichage de données ainsi qu'éventuellement le nombre de bits de codage des pixels d'affichage), et le terminal serveur comporte des seconds moyens de traitement agencés pour i) extraire d'une requête d'accès à une image, reçue d'un terminal client, les caractéristiques de ses moyens d'affichage (par exemple la résolution et/ou le nombre de couleurs), ii) établir une correspondance entre au moins l'un des types de données de l'image et des caractéristiques d'affichage, et iii) déterminer, selon un critère choisi, parmi les caractéristiques d'affichage correspondant aux différents types de données de l'image (résolution, qualité, nombre de couleurs, etc) celles qui sont les plus proches (ou compatibles avec) des caractéristiques d'affichage extraites, de sorte que soient transmises au terminal client les données d'image associées au(x) type(s) de données
de l'image correspondant aux caractéristiques déterminées.
L'image étant adaptée aux moyens d'affichage du terminal client, le
temps nécessaire à sa transmission est donc notablement réduit.
Les types de données d'une image sont ici liés à la fois aux couches
de qualité et aux niveaux de résolution.
Selon une autre caractéristique de l'invention, les couches de qualité sont avantageusement complémentaires les unes des autres. Dans ce cas, les seconds moyens de traitement sont capables de transmettre au terminal client requérant l'accès à une image non seulement les données d'image associées à une partie au moins de la couche de qualité la plus élevée, qui correspond au(x) type(s) de données compatibles avec ses caractéristiques d'affichage, mais encore les données d'image associées à
une partie au moins des couches de qualité inférieure à celle déterminée.
Ces données peuvent être envoyées en une seule fois ou bien par portions successives selon les performances du réseau et du terminal client. Dans cette dernière situation on envoie les données par ordre croissant de
qualité, si bien que la qualité de l'image s'améliore progressivement.
L'installation selon l'invention pourra également comporter l'une au moins des caractéristiques mentionnées ci-après, prises séparément ou en combinaison: * des seconds moyens de traitement capables de communiquer aux premiers moyens de traitement d'un terminal client requérant à la fois les données d'image déterminées et le format (résolution et/ou nombre de bits de codage et/ou nombre de couleurs) des données de cette image qui correspondent aux couches de qualité, de la moins élevée à la plus élevée (sauf contre-indication contenue dans la requête du client); des premiers moyens de traitement capables de placer dans une requête d'accès une information désignant une zone d'image de sorte que les seconds moyens de traitement transmettent les données d'image associées à cette zone. Dans ce cas, les seconds moyens de traitement sont avantageusement capables i) d'extraire de la requête d'accès l'information de zone pour déterminer des caractéristiques d'affichage associées, ii) de déterminer parmi les caractéristiques d'affichage qui correspondent aux différents types de données de l'image (de préférence parmi les différents niveaux de résolution) celles qui sont les plus proches des caractéristiques d'affichage associées à la zone, pour transmettre au terminal client les données d'image associées à une partie au moins des différentes couches de qualité (en fait la partie correspondant au niveau de résolution le plus élevé déterminé si celle-ci n'a pas déjà été transmise). Il est par ailleurs avantageux que, consécutivement à la réception de première et seconde requêtes d'accès à une image comportant chacune de première et seconde informations de zone, les seconds moyens de traitement soient propres i) à comparer les première et seconde informations de zone de manière à chercher les éventuelles zones qui ne se recouvrent pas, et ii) à transmettre aux premiers moyens de traitement les données d'image associées à cette zone de non recouvrement et à une partie au moins des différentes couches de qualité (en fait la partie correspondant au niveau de résolution le plus élevé déterminé si celle-ci n'a pas déjà été transmise); des premiers moyens de traitement capables de placer dans une requête d'accès une information désignant un niveau de résolution. Dans ce cas, les seconds moyens de traitement sont avantageusement capables i) d'extraire des différentes couches de qualité les données associées au niveau de résolution requis de manière à déterminer les caractéristiques d'affichage de l'image associées, ii) de comparer ces caractéristiques associées aux caractéristiques d'affichage du terminal client, iii) puis de transmettre tout ou partie des données associées au niveau de résolution requis selon que les caractéristiques associées sont compatibles ou non avec les caractéristiques du terminal client; des seconds moyens de traitement capables d'accompagner les données d'image avec des informations désignant leur(s) couche(s) de qualité, de sorte que les premiers moyens d'image reconstruisent l'image requise à partir des données reçues en réponse aux requêtes d'accès successives;
une base de données pour stocker des fichiers d'image décomposées.
L'invention concerne également un dispositif de transmission de données d'image comportant des seconds moyens de traitement d'image du type de ceux présentés ci-avant, et un dispositif de réception de données d'image comportant des premiers moyens de traitement d'image du type de
ceux présentés ci-avant.
L'invention propose également un procédé permettant de mettre en oeuvre l'installation et les dispositifs présentés ci-avant. Ce procédé se caractérise notamment par le fait qu'il comprend au moins: À une première étape de génération d'une requête d'accès à une image, comportant des caractéristiques d'affichage des moyens d'affichage du terminal client requérant, et * une seconde étape dans laquelle i) on extrait de la requête d'accès les caractéristiques des moyens d'affichage, ii) on établit une correspondance entre les différents types de données de l'image et des caractéristiques d'affichage, et iii) on détermine, selon un critère choisi, parmi les caractéristiques d'affichage correspondant aux différents types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage extraites, de sorte que soient transmises au terminal client les données d'image associées au(x) type(s) de données
correspondant aux caractéristiques déterminées.
L'invention est particulièrement adaptée aux réseaux de communication publics, comme par exemple Internet, et privés, comme par exemple ceux de type Intranet, et auxquels sont connectés des terminaux clients, notamment de type téléphone portable, assistant numérique
personnel (APN, ou en anglais PDA), ou micro-ordinateur portable.
D'autres caractéristiques et avantages de l'invention apparaîtront à
l'examen de la description détaillée ci-après, et des dessins annexés, sur
lesquels: - la figure 1 illustre de façon schématique une installation selon I'invention, - la figure 2 illustre schématiquement une chaîne d'échange de données dans une installation selon l'invention, - la figure 3 est un graphe illustrant la contribution (C) des données d'image à la qualité visuelle et la qualité d'image (Q) en fonction du temps (t), - la figure 4 est un diagramme bloc illustrant de façon schématique un dispositif de transmission de données d'image implanté dans un terminal serveur de l'installation, - la figure 5 est un diagramme bloc illustrant de façon schématique un dispositif de réception de données d'image implanté dans un terminal client de l'installation de la figure 1, - la figure 6 illustre schématiquement les principales étapes de génération d'un fichier décomposé et compressé, - la figure 7 illustre schématiquement deux étages consécutifs de 1o décomposition de données par la technique des ondelettes, - la figure 8 illustre schématiquement une organisation multirésolution résultant d'une décomposition en ondelettes, - la figure 9 est un schéma fonctionnel illustrant la décomposition en couches de qualité complémentaires, - la figure 10 illustre schématiquement (pour les sous-bandes de la plus haute résolution) un pavage de l'ensemble des sous-bandes d'une couche de qualité, définissant ainsi des blocs élémentaires à coder, - la figure 11 illustre schématiquement un exemple de structure de fichier décomposé et compressé selon l'invention, - la figure 12 illustre schématiquement un mode de repérage d'une zone d'image, - la figure 13 illustre schématiquement un étage (ou module) de recomposition (ou reconstruction) de données, I'axe vertical matérialisant le temps écoulé, - la figure 14 illustre schématiquement deux étages consécutifs de recomposition de données par la technique des ondelettes, - la figure 15A illustre schématiquement les zones de données d'une organisation multirésolution qui doivent être transmises dans le cas d'un zoom à l'intérieur d'une image, la figure 15B est une image complète, et la figure 15C est un gros- plan de l'image de la figure B, - la figure 16A illustre schématiquement les zones de données d'une organisation multirésolution qui doivent être transmises dans le cas d'un déplacement à l'intérieur d'une image, la figure 16B montre une première partie d'une image, et la figure 16C montre une seconde partie, partiellement complémentaire, de l'image de la figure 16B, et - la figure 17 illustre schématiquement les formats (dimensions) d'une
image, associés à 5 niveaux de résolution différents.
Les dessins annexés sont, pour l'essentiel, de caractère certain. En conséquence, ils pourront non seulement servir à compléter l'invention, mais
aussi contribuer à sa définition, le cas échéant.
Dans la description qui suit, il sera fait référence à une installation
d'échange de données d'image entre des terminaux clients et un terminal serveur, via un réseau de communication de type public, tel qu'lnternet. Bien entendu, d'autres types de réseaux, publics ou privés, pourraient être
envisagés dans le cadre de l'invention.
Comme illustré sur la figure 1, une installation selon l'invention comporte une multiplicité de terminaux clients 1 pouvant se présenter sous différentes formes, et notamment sous la forme d'un téléphone portable 1-1, d'un assistant numérique personnel (plus connu sous l'acronyme anglais
PDA), d'un micro-ordinateur portable 1-3, ou encore d'un ordinateur fixe 1-4.
Ces terminaux clients 1 peuvent être raccordés à un réseau, ici public (Internet), soit par voie filaire, soit par voie d'onde. Le protocole de communication de données utilisé peut être de tout type. A titre d'exemple, dans le cas des téléphones portables 1-1, il peut être de type WAP ou
BLUETOOTH.
L'installation comporte également un terminal serveur 2 destiné à fournir aux terminaux clients 1 des fichiers image sous une forme compressée, et raccordé au réseau public, de préférence par l'intermédiaire d'un second terminal serveur 3, par exemple de type HTTP (lorsque le
réseau est de type Intemet).
Préférentiellement, le terminal serveur 2 comporte une base de données d'images 4 dans laquelle sont stockées des fichiers images sous une forme décomposée et compressée selon un procédé qui sera décrit plus loin. Bien entendu, la base de données d'images 4 pourrait être externme au terminal serveur 2, ou répartie sur plusieurs sites, ou encore ne pas exister. Dans ce cas, le terminal serveur 2 est agencé pour aller chercher dans le réseau public, sur requête d'un terminal client 1, des fichiers d'images comportant des données brutes dans un format standard, par exemple " TIF ", " BMP " ou " RAW ", de manière à les
compresser/décomposer et à lui transmettre.
L'échange de données entre un terminal client 1 et le terminal
serveur 2 s'effectue de préférence selon le schéma illustré sur la figure 2.
Plus précisément, un utilisateur qui souhaite afficher sur l'écran 5 (moyen d'affichage) de son terminal client 1 tout ou partie d'une image, génère une requête d'accès à cette image à l'aide d'une interface utilisateur 6. Pour ce faire, il saisit des informations désignant notamment l'image requise, puis la requête est mise en forme (en 7) et transmise sur le réseau (en 8). Elle est alors réceptionnée (en 9) par le terminal serveur HTTP 3 puis transmise au terminal serveur 2 afin d'y être interprétée (en 10). Les requêtes issues du terminal client sont en fait traduites par le serveur HTTP 3 puis transmises à une extension de celui-ci (par exemple CGI) avant d'être envoyées au terminal serveur d'images 2. Ces requêtes issues du client sont en fait des requêtes spécifiques à l'installation, encapsulées dans des requêtes réseau standard, par exemple de type http. Dans l'exemple illustré, le terminal serveur 2 comporte une base de données d'images 4, de sorte que l'on en extrait (en 11) le fichier d'images requis par l'utilisateur, puis on met en forme certaines au moins des données de ce fichier (en 12), et l'on procède à l'émission (en 13) de la réponse à la requête du client sur le réseau public. Cette réponse est reçue (en 14) par le terminal client 1 via le serveur HTTP 3, puis reconstruite (ou recomposée) et affichée (en 15) sur
l'écran 5 de ce terminal client 1.
On reviendra plus loin sur certaines de ces étapes.
Comme mentionné précédemment, les fichiers d'images sont de préférence stockés dans un unique format (décomposé/compressé) optimisé de manière à permettre une transmission progressive (et complémentaire) des données d'image. Plus précisément, les données brutes des fichiers d'images sont tout d'abord décomposées selon une technique d'ondelettes en niveaux de résolution, puis décomposées en couches de qualité Li et
enfin décomposées en bloc élémentaires (voir figure 10).
La technique des ondelettes est bien connue de l'homme du métier et ne sera pas redécrite, ici, en détail (voir par exemple l'article de I. Daubechles " Orthonormal bases of compactly supported wavelets ", Communication on pure and applied mathematics, vol. XVI, pp909-996,
1998).
Comme illustré dans la partie supérieure de la figure 3, la première couche de qualité apporte une contribution visuelle C importante tout en constituant un volume de données réduit, permettant ainsi une transmission rapide. Les couches de qualité ultérieures étant complémentaires les unes des autres, la qualité peut ainsi être raffinée. Par ailleurs, on tend très vite vers une qualité d'image satisfaisante: comme illustré dans la partie inférieure de la figure 3, c'est déjà quasiment le cas pour la troisième couche L3. On se réfère maintenant plus particulièrement aux figures 4 à 13 pour décrire des moyens permettant aux.terminaux 1 et 2 d'échanger des données, et des moyens permettant de générer des fichiers d'images dans
un format décomposé/compressé.
Lorsque le terminal serveur 2 est agencé pour effectuer la 3 0 transformation des données d'images brutes en fichiers décomposés/compressés, il est muni d'un module de traitement 16, qui est
réalisé sous la forme de circuits électroniques et/ou de modules logiciels.
Comme illustré sur les figures 5 et 6, ce module de traitement 16 comporte préférentiellement un premier étage 17 destiné à appliquer une transformation chromatique aux données d'images brutes d'un fichier d'image (bien entendu si l'image est en couleurs). Ce premier étage 17 reçoit une image, par exemple en couleurs, représentée par trois plans de couleurs rouge, vert et bleu (espace {R,V,B}). Il procède alors à un changement d'espace chromatique afin d'obtenir un nouvel espace de représentation comportant, par exemple, une composante de luminance Y et deux composantes de chrominance U et V, ces deux dernières composantes étant séparées de la composante de luminance Y. Un tel changement d'espace est effectué par une simple opération de matriçage, en utilisant, par
exemple, la matrice définie par le CIE (Comité International de l'Eclairage).
Cette transformation chromatique est effectuée du fait que l'oeil humain est moins sensible aux variations de chrominance qu'aux variations de luminance. Une pondération ad hoc entre les plans {U,V} et {Y} est appliquée lors d'une optimisation de type taux/distorsion pour tirer partie de cette caractéristique de l'oeil humain. Bien entendu, d'autres types d'espace de couleurs peuvent être envisagés. De même, l'invention ne se limite pas aux images définies dans trois plans. Des espaces de quatre ou cinq plans, voire
plus encore, peuvent être envisagés.
Comme on le verra plus loin, un traitement spécifique peut être effectué lorsque les images sont de type "palettisé". Ces images palettisées sont caractérisées par un nombre restreint de couleurs (en général 256) choisies, par exemple, parmi les seize millions (224) de couleurs originales possibles. Afin de recréer une impression de dégradé de couleurs, les images sont en général post-traitées en appliquant un procédé de simulation de nuances (appelé en anglais "dithering"), qui donne l'illusion de couleurs 3 0 intermédiaires par une combinaison de couleurs dans le voisinage de
chaque point d'une image.
Comme le sait l'homme de l'art, ces images sont difficiles à compresser à l'aide des codeurs conventionnels du fait que le procédé de dithering s'apparente à un ajout de bruit. Afin de limiter ces effets de dithering, I'étage de transformation chromatique 17 effectue, dans un premier temps, une extension de l'image palettisée d'origine dans l'espace {R,V,B}, ce qui revient à exprimer chaque pixel de l'image de départ dans l'espace {R, V,B} dans lequel seules les coordonnées relatives aux 256 couleurs de la palette sont utilisées, puis dans un second temps, à filtrer chacun des plans de chrominance préalablement à l'opération de compression. Le filtre utilisé est par exemple de type gaussien. Une version discrète de ce filtre est définie par le masque de convolution donné ci-dessous, à titre d'exemple:
0 1 0
1 24 1
0 0
Pour ce filtre gaussien on doit utiliser un facteur de normalisation
d'une valeur égale à 28.
Un tel filtre préserve la qualité de l'image et, en particulier, ses contours, tout en améliorant de façon significative l'efficacité du procédé de
compression en lissant le bruit généré par le dithering.
La sortie du premier étage 17 alimente un second étage 18 destiné à appliquer aux données transformées chromatiquement (ou de luminance) une technique de décomposition en ondelettes pour réorganiser l'image selon des niveaux de résolution. Comme cela est illustré sur la figure 7, la décomposition est préférentiellement réalisée à l'aide de deux filtres, I'un de type passe-haut, noté g, l'autre de type passe-bas, noté h. Ces filtres sont appliqués aux données issues du premier étage 17, placées sous une forme matricielle de type lignes/colonnes. Plus précisément, les deux filtres g et h sont tout d'abord appliqués en parallèle aux différentes lignes de la matrice (partie IA de la figure 7), puis aux différentes colonnes de cette matrice
(partie lB de la figure 7).
Dans le schéma fonctionnel illustré sur la figure 7, les rectangles, dans lesquels se trouvent placés une flèche verticale orientée vers le bas et le chiffre 2, désignent une opération de sous-échantillonnage destinée à ne
conserver qu'un pixel d'image sur deux.
En sortie de ce double filtrage, on obtient quatre sous-bandes de
natures différentes, pour un niveau de résolution donné. La première sous-
bande H comprend essentiellement des informations de haute fréquence sur les colonnes de la matrice de données. La seconde sous-bande V comprend essentiellement des informations de haute fréquence sur les lignes de la matrice de données. La troisième sous-bande D comprend essentiellement des informations de haute fréquence suivant la diagonale principale de la matrice de données. Enfin, la quatrième sous-bande T comprend
essentiellement des informations de type passe-bas.
Cette quatrième sous-bande T du troisième niveau de résolution constitue l'entrée d'un second étage de décomposition en ondelettes. En d'autres termes, le procédé de décomposition illustré dans la partie l(A et B) de la figure 7 est appliqué de façon récursive (partie Il (A et B)), jusqu'à ce qu'un critère d'arrêt choisi soit rempli, par exemple lorsque la taille de la plus
petite sous-bande est inférieure à p pixels.
Sur la figure 8 se trouve illustré un exemple d'organisation de données de type multirésolution obtenu par une décomposition par ondelettes. Les quatre carrés placés dans la partie supérieure gauche et référencés T, H1, V1 et D1, désignent les quatre sous-bandes du troisième niveau de résolution (résolution la plus basse). Les sous-bandes H2, V2 et
D2 désignent les sous-bandes du second niveau de résolution. Les sous-
bandes H3, V3 et D3 désignent les sous-bandes du premier niveau de
résolution (résolution la plus élevée).
La sortie du second étage 18 alimente un troisième étage 19 destiné à assurer la décomposition en couches de qualité Li. Un exemple de
réalisation de ce troisième étage 19 est illustré sur la figure 9.
L'image préalablement décomposée en sous-bandes SB par le second étage 18, subit un premier cycle d'optimisation (Opt) au cours duquel on détermine une valeur de pas de quantification q1j pour chaque sous- bande SB, de la première couche de qualité. Ce cycle d'optimisation est contrôlé par un paramètre externe qui est soit le nombre d'octets R. affecté à la première couche de qualité L, (qualité la plus basse), soit une mesure de la qualité escomptée pour la couche donnée. Ce nombre est préalablement
fixé selon le type d'image traitée.
L'ensemble des valeurs de pas de quantification q1j forme un banc de quantificateurs BQ1 que l'on applique à toutes les sous-bandes SBj et qui délivre en sortie des données primaires pour la première couche L1. Une
réplique de ces données primaires alimente un banc de déquantification BQ-
1, qui délivre en sortie des approximations jj, optimales pour chacune des sous-bandes originales SBj des différents niveaux de résolution, sachant le nombre d'octets affectés à la première couche L,. Ces approximations 1, et les sous-bandes d'origine SBj alimentent un opérateur de soustraction qui délivre en sortie des sous-bandes d'erreurs E2j qui vont à leur tour subir un cycle d'optimisation du type de celui qui vient d'être décrit pour le premier étage de manière à délivrer en sortie des données primaires pour la couche L2 du second niveau et des sous-bandes d'erreurs pour la couche L3 du
troisième niveau.
Ce procédé de décomposition peut être reconduit de façon récursive tant que les sous-bandes d'erreurs Eij demeurent non nulles, ou bien tant qu'elles demeurent supérieures à un seuil choisi. En dessous de ce seuil, on peut considérer qu'il devient inutile de stocker ou de transmettre de l'information (données compressées) étant donné que le gain en qualité est imperceptible. 3 o Bien entendu, à chaque cycle d'optimisation, associé à chaque couche de qualité L,, correspond un nombre d'octets Ri fixé. Le nombre d'octets Ri associé à chaque couche de qualité permet d'adapter le temps de transmission des images lorsque le débit (ou plus généralement les performances) du réseau de communication est (sont) connu(es). De la sorte, une première image peut être affichée sur le terminal client 1 dès réception des données de la première couche L1 et cette image peut être affinée à réception des données de la couche L2. Ce processus peut être répété autant de fois qu'il y a de couches de qualité définies par le terminal serveur 2 pour l'image considérée. Le degré de progressivité peut être augmenté en augmentant ou en diminuant le nombre de couches de qualité, c'est-à-dire le nombre de niveaux de qualité différents. Cette reconstruction progressive de l'image sera détaillée plus loin en référence aux figures 13 et 14. Un cas particulier doit être ici envisagé. Il s'agit de celui des terminaux clients de type portable qui ne disposent généralement pas d'une capacité d'affichage dite "en vraies couleurs", c'est-à-dire de type rouge, vert et bleu sous 24 bits, ou plus. La définition des écrans de ce type de terminal est souvent limitée à 8 bits. De ce fait, ces terminaux clients utilisent une palette de couleurs pour afficher les images, comme par exemple une table spécifiant les 256 couleurs (28) choisies parmi 224 pour afficher l'image. Deux types de palettes existent actuellement: les palettes fixes qui sont propres à un terminal et les palettes adaptatives qui peuvent changer en fonction du contenu de l'image à afficher. Dans ce qui suit, on se limitera à cette dernière
catégorie de palettes adaptatives.
Les palettes adaptatives dépendant de l'image à afficher, elles constituent un type de données d'image à part entière et par conséquent elles sont transmises en même temps que celle-ci. La détermination de lapalette optimale nécessite en effet la connaissance de l'image originale, avant palettisation. Cette notion de palette adaptative s'étend bien entendu
3 0 aux images en niveaux de gris.
Dans le contexte de la transmission progressive selon l'invention, on transmet la palette en plusieurs étapes, de préférence quatre. Afin de ne pas sacrifier la qualité de restitution de l'image, on peut se contenter de ne transmettre que les 64 couleurs les plus représentatives dans la première couche de qualité L, (qualité la plus basse). En effet, cette première couche L, correspond le plus souvent à une compression très forte de l'image, ou en d'autres termes à des pas de quantification très grands pour chacune des sous-bandes SBj. L'image qui sera reconstruite ultérieurement est alors beaucoup plus pauvre en couleurs, si bien qu'il est inutile de lui associer, et
par conséquent de transmettre, I'ensemble des 256 couleurs de la palette.
oa 64 nouvelles couleurs sont ensuite transmises avec la seconde couche L2. A réception de ces deux couches L, et L2, le terminal client dispose alors de 128 couleurs pour afficher l'image, les 128 couleurs restantes étant transmises avec la troisième couche de données L3. Cette transmission progressive de palette est particulièrement intéressante pour les terminaux de faible dimension d'affichage, typiquement inférieure à 200x200 pixels, comme c'est le cas des téléphones portables. En effet, pour ce type de terminal, la palette complète représente jusqu'à 50% des données relatives à la portion d'image à afficher pour la première couche de données L,. Par conséquent, en ne transmettant que le quart de la palette avec la première couche de données L1 on réduit approximativement de 38% le volume de données transmises pour une qualité d'image restituée similaire au cas o
l'on aurait décidé de transmettre l'intégralité de la palette.
Les décompositions successives en ondelettes et en couches de qualité, selon l'invention, assure une complémentarité, en matière de résolution et de qualité, des données contenues dans les différentes
couches Li.
La sortie du troisième étage 19 alimente un quatrième étage 20 destiné à assurer une décomposition des sous-bandes de chaque couche de
qualité L en blocs élémentaires de codage BEC.
Dans ce quatrième étage 20, on réalise un pavage des différentes sousbandes de chaque couche de qualité de manière à permettre une manipulation rapide des données locales relatives à une région de l'image pour un niveau de résolution donné. En d'autres termes, chaque sous-bande H, V, D d'un niveau de résolution donné d'une couche de qualité donnée est décomposée en éléments BH, Bv, ou BD désignant une zone de l'image donnée. Selon l'invention, chaque élément Bk (ici k = H, V, D) associé à une zone de l'image prédéfinie, est extrait d'une sous-bande d'un niveau de résolution donné d'une couche de qualité donnée et concaténée aux deux autres éléments des deux autres sous-bandes de ce même niveau de résolution, désignant la même zone de l'image. Cette concaténation des trois
éléments Bk forme un bloc élémentaire de codage BEC.
Préférentiellement, avant de procéder à la concaténation de ces trois éléments, on fait subir à l'élément Bv une rotation de 90 suivie d'une symétrie, de type horizontal, comme illustré dans la partie droite de la figure 10. Cela permet d'augmenter les performances du codage entropique qui est appliqué à chaque bloc élémentaire de codage BEC de manière à obtenir des blocs élémentaires codés entropiquement BECH. Le codage entropique consiste à comprimer, sans perte d'information, les données entrantes. Pour
ce faire, on tire partie des propriétés statistiques des données d'entrée.
L'attribution du nombre de bits pour représenter une donnée d'entrée est inversement proportionnel à la fréquence d'apparition de celle-ci dans le flux d'entrée. On utilise des symboles longs pour représenter des données rares alors que l'on utilise des symboles courts (peu de bits) pour représenter les données fréquentes dans le flux de données considéré. Des détails complémentaires sur la technique de codage entropique peuvent être trouvés dans le document Information technology, " Digital compression and
coding of continus-tone still images ", Annex C. ISO 10918-1.
En sortie du quatrième étage 20, on dispose de données décomposées et compressées qui peuvent alors être stockées dans la base de données 4, par exemple. Comme cela est illustré sur la figure 11, à titre d'exemple, un tel fichier peut être composé de trois types d'informations: un en- tête général, des en-têtes spécifiques et des données compressées (blocs élémentaires codés entropiquement BECHJ) séparés les uns des
autres par des délimiteurs.
L'en-tête d'image donne préférentiellement les caractéristiques générales de l'image, c'est-à-dire son nombre de niveaux de résolution, sa définition, son nombre de plans chromatiques, d'éventuelles informations de copyright, des informations d'impression, etc. Les en-têtes spécifiques peuvent être d'au moins trois types: plan de chrominance, couche de qualité et niveau de résolution. Ces trois types d'informations peuvent être accompagnés d'informations complémentaires mentionnant, par exemple, lI'endroit o l'on peut trouver le prochain en-tête de même type. En effet, les données associées à ces en-têtes étant de nature complémentaire, il est avantageux de pouvoir se déplacer très rapidement dans la structure de stockage (par exemple la base de données) lorsque l'on souhaite extraire des données spécifiques (éventuellement complémentaires) pour répondre à
la requête d'un client.
Enfin, les délimiteurs sont préférentiellement placés en début de chaque bloc élémentaire codé entropiquement BECH. Ils sont avantageusement alignés à l'octet près afin de permettre une plus grande rapidité dans la recherche des débuts de blocs élémentaires codés
entropiquement BECH.
De telles images décomposées et compressées, éventuellement stockées sous la forme d'un fichier sur un support de stockage, présentent au moins quatre propriétés organisationnelles. Tout d'abord, les données d'images sont organisées en niveaux de résolution complémentaires et en 2 5 couches de qualité complémentaires. Ensuite, pour chaque niveau de résolution spécifié, on peut accéder spatialement aux données à l'intérieur de l'image. Par ailleurs, on peut accéder à l'image selon un niveau de qualité croissant. Enfin, l'organisation en données complémentaires, à la fois en résolution et en qualité, permet d'obtenir un fichier de stockage de format
unique.
Afin de tirer profit, au maximum, des propriétés conférées par la compression/décomposition des données images, les requêtes et les réponses échangées entre les terminaux clients et le terminal serveur doivent présenter certaines caractéristiques. Au minimum, la requête émise par un terminal client comporte la désignation d'une image, par exemple le nom d'un fichier image stocké dans la base de données 4 du terminal serveur (ou l'adresse o on peut la trouver), accompagnée de certaines au moins des caractéristiques d'affichage des moyens d'affichage (écran 5) du terminal client requérant. Par exemple, la requête peut comporter le format d'affichage (ou résolution) de l'écran 5, ou d'une partie de cet écran o doit être affichée l'image, éventuellement accompagné du nombre de bits de codage de chaque pixel d'affichage. Le format d'image peut être par exemple de type 120x120 pixels et le nombre de bits égal à 8 (dans ce cas
la requête comporte une information de type "120x1 20x8").
A réception de cette requête, le module de traitement 16 du terminal serveur 2 extrait l'information désignant le fichier image et les caractéristiques d'affichage du terminal client 1. Il identifie alors le format de l'image stockée et ses différentes couches de qualité. Par exemple, l'image peut être stockée dans un format de type 400x400 pixels, avec cinq couches
de qualité L1 - L5.
Chaque couche de qualité est décomposée en niveaux de résolution qui correspondent chacun à des formats (ici dimensions) d'image, comme illustré sur la figure 16. Ici, le premier format (F.) correspond à un format de type 25x25 pixels, le second format (F2) correspond à un format de type 50x50 pixels, le troisième format (F3) correspond à un format de type x100 pixels, le quatrième format (F4) correspond à un format de type x200 pixels, le cinquième format (F5) correspond au format de type
400x400 pixels.
Le module de traitement 16 du terminal serveur 2 effectue une 3 0 comparaison entre les caractéristiques d'affichage (ici 120x120x8) du terminal client et les différentes caractéristiques d'affichage (format) de l'image stockée. Il est important de noter qu'à une couche de qualité donnée correspond plusieurs niveaux de résolution, et que par conséquent, en fonction de la résolution d'affichage du terminal client, on ne transmet que certains niveaux de résolution (et non pas tous) des couches de qualité. Le module 16 déduit donc le niveau de résolution le plus élevé (c'est-à-dire le type de données de l'image) compatible avec les caractéristiques d'affichage du terminal client 1 (c'est-à-dire celui qui est le plus proche des caractéristiques du terminal client 1). Dans cet exemple, il s'agit du troisième format F3 qui correspond au format 100x100 (voir figure 17), qui est le plus proche du format d'affichage 120x120 du terminal client. Puis, le module de traitement 16 détermine les données du fichier décomposé/compressé qui correspondent au niveau de résolution le plus élevé, précédemment déterminée, ici le troisième niveau. Plus précisément, le module de traitement extrait les données associées au troisième niveau des différentes
couches de qualité.
Selon les caractéristiques (performances) du réseau, et plus particulièrement selon son débit, le module de traitement 16 transmet soit une unique réponse comportant les données des différentes couches de qualité pour le niveau de résolution déterminé, soit trois réponses successives comportant, pour la première, les données associées à la première couche de qualité L", pour la seconde, les données associées à la seconde couche de qualité L2, et pour la troisième, les données associées à la troisième couche de qualité L3. Dans un cas comme dans l'autre, I'image correspondant à la qualité la plus élevée est reconstruite (ou recomposée) par le module de traitement 21 du terminal client 1, qui va être décrit maintenant en référence aux figures 13 et 14, à partir des trois couches de
qualité reçues.
Ce module de traitement 21, qui est réalisé sous la forme de circuits électroniques et/ou de modules logiciels, reçoit du terminal serveur 2 une 3 0 réponse comportant des données décomposées/compressées,
correspondant à sa requête d'accès à une image, ou à une partie de celleci.
Il comporte un étage 22 destiné à reconstruire l'image au fur et à mesure de la réception des différentes couches de qualité Li, ce qui garantit un rapport qualité/nombre de bits reçus choisi. Il est bien entendu possible de reconstruire à tout moment une image, avant réception complète d'une couche de qualité, mais dans ce cas on ne peut pas garantir le rapport précité choisi. Le mode de reconstruction illustré sur la figure 13 est le dual de celui illustré sur la figure 9. Plus précisément, les données de la première couche de qualité L, alimentent un premier banc de déquantification BQ-', qui délivre des sous-bandes SB, qui font à leur tour l'objet d'une transformation inverse W-' (détaillée plus loin en référence à la figure 14) délivrant, en sortie, les données d'image de la première couche de qualité (c'est-à-dire celle offrant la qualité la moins bonne). Ces données sont alors transmises aux moyens d'affichage de sorte qu'une première image, d'un premier niveau de
qualité, soit affichée sur l'écran 5.
s15 Lorsque les données de la seconde couche L2 parviennent à l'étage de reconstruction 21, elles alimentent un second banc de déquantification BQ12 qui délivre en sortie des sous-bandes associées au second niveau de qualité qui sont alors combinées aux premières sous-bandes SB1 du premier niveau de qualité (première couche de qualité L) pour constituer les secondes sous-bandes SB2 associées au second niveau de qualité. Ces dernières subissent alors une transformation inverse W- qui fournit les données d'image D2 associées à une image de second niveau de qualité
(seconde couche de qualité L2).
Ce qui a été dit pour les données de la seconde couche de qualité s'applique également aux données des troisième, quatrième et plus généralement M-ième couches de qualité, la combinaison de sous-bandes portant toujours sur les nouvelles sous-bandes du M-ième niveau avec celles
du niveau M-1.
De la sorte, dès que la couche de qualité Li est disponible, elle est combinée aux couches précédemment reçues (L à Li.) et remplace l'image précédente (de qualité inférieure), si bien que la qualité de l'image croît progressivement. En d'autre termes, les sous-bandes SB1 de la première couche sont utilisées pour former la première image affichée, puis à réception des sous-bandes de la seconde couche, on stocke les premières sous-bandes SB1 et on combine les sous-bandes reçues avec SB1, ce qui fournit de secondes sous-bandes SB2 qui sont utilisées pour former la seconde image affichée. Les secondes sous-bandes SB2 sont alors stockées, de préférence à la place des premières sous-bandes SB1, puis combinées avec les sous-bandes de la troisième couche pour former les troisièmes sous-bandes SB3 qui sont utilisées pour former la troisième
image affichée, et ainsi de suite.
Préférentiellement, les sous-bandes SB sont stockées dans une mémoire 23 du terminal client 1, de sorte qu'elles puissent être au moins partiellement réutilisées lors de réponse à des requêtes d'accès complémentaires. Sur la figure 14 se trouvent illustrés deux étages consécutifs du
module de transformation inverse W'1 opérant une synthèse par ondelettes.
Les filtres h- et g- sont les duals des filtres h et g décrits précédemment en référence à la figure 7. Chaque étage l(A et B),ll(A et B) ,..., permet de
passer d'une résolution de niveau n à une résolution de niveau n-1.
Les données des sous-bandes Tn, Hn, Vn et Dn du niveau de résolution le plus élevé (ici, n) sont appliquées à des sur-échantillonneurs (matérialisés par des rectangles dans lesquels se trouvent placés une flèche verticale orientée vers le haut et le chiffre 2), suivis par des filtres h- ou g-, permettant d'effectuer une synthèse sur les colonnes de matrice après sommation des voies 2 par 2 (partie IA). Chaque sortie de sommation alimente un nouveau sur-échantilloneur suivie d'un nouveau filtre h- ou g-, permettant ainsi d'effectuer une synthèse sur les lignes de matrice après sommation des deux voies (partie lB). La sortie de sommation alimente alors l'entrée de sous-bande T d'un nouvel étage dont les trois autres entrées de sous-bande H, V et D sont alimentées par les données du niveau n-1 de résolution de manière à réitérer le traitement de synthèse effectué à l'étage
précédent, et ainsi de suite pour chaque niveau de résolution.
Jusqu'à présent, il a été question d'une requête d'accès à l'intégralité d'une image. Bien entendu, l'invention n'est pas limitée à ce type de requête. En effet, un utilisateur qui connaît déjà une image, par exemple du fait qu'il l'a précédemment requise, peut demander au terminal serveur 2 de lui adresser une partie seulement d'une image (gros-plan), éventuellement avec une qualité d'image supérieure, par exemple spécifiée dans sa requête). Dans ce cas, la requête comporte une information désignant la position de la zone d'image requise, et sa dimension. Par exemple, la requête peut comporter deux couples de coordonnées (Xl,Y1) et (X2,Y2) définissant les positions de deux coins opposés d'un rectangle, comme illustré sur la figure 12. Préférentiellement, les coordonnées de position sont de type absolu, c'est-à-dire définies par rapport à un repère d'origine, par exemple le coin supérieur gauche de l'image complète désigné
par les coordonnées (0,0).
La requête d'accès à cette zone de l'image comporte alors le nom du fichier image, et la désignation de la zone d'image, par exemple sous la forme "50+50+150+150" qui indique que le client souhaite obtenir les données d'image qui se trouvent comprises entre les pixels de coordonnées (50,50) et (150,150). Préférentiellement, cette requête comporte également des informations relatives la qualité d'image et au format de l'image précédemment requise. A cet effet, la réponse que le terminal serveur 2 adresse à un terminal client 1, lors d'une requête d'accès à une première image, comporte plusieurs informations, et notamment le format de l'image complète, dans sa résolution la plus élevée, par exemple un format de type 400x400 et une qualité d'image maximale, par exemple égale à 5, une information relative à la qualité d'image et au format de l'image qui est transmise, par exemple un format de type 100x100, et une résolution déterminée, par exemple égale à 3, qui est compatible avec le format
d'affichage du terminal client 1.
De la sorte, lorsque le terminal serveur 2 reçoit une nouvelle requête (complémentaire) d'un terminal client 1, il possède les informations qui vont lui permettre de n'extraire que des données qui n'ont pas encore été transmises, et qui correspondent à la zone requise par le client, sans avoir besoin de mémoriser ses précédentes requêtes. Le module de traitement 16 du terminal serveur 2 n'a donc plus qu'à extraire les données des niveaux de résolution des couches de qualité, de préférence de la plus élevée à la plus basse, qui vont satisfaire la requête du client et être compatibles avec les
caractéristiques d'affichage de son terminal.
Pour ce faire, le module de traitement 16 effectue une comparaison entre les caractéristiques d'affichage du terminal client (ici: lO0x100lx8) et les caractéristiques d'affichage qui sont associées aux différentes résolutions des couches de qualité de l'image. Il choisit alors les caractéristiques d'affichage qui sont les plus proches de (compatibles avec) celles du terminal client, compte tenu des dimensions de la zone d'image requise par le client. Dans l'exemple choisi, les dimensions de la zone d'image et le format d'affichage du terminal client autorisent une résolution de niveau 5, et par conséquent une résolution supérieure à celle précédemment choisie (niveau 3). Le module de traitement extrait alors du fichier décomposé/compressé les données qui correspondent à la zone d'image requise par le client et associées aux quatrième et cinquième niveaux de résolution des différentes couches de qualité. Il est en effet inutile de communiquer une nouvelle fois au terminal client les données des niveaux de résolution inférieurs, celles-ci ayant été communiquées en réponse à la
précédente requête et se trouvant stockés dans la mémoire 23.
A réception de cette réponse, le module de traitement 21 du terminal client 1 n'a plus qu'à alimenter son étage de reconstruction 22 pour qu'il reconstruise l'image correspondant à la zone d'image requise, avec le cinquième niveau de résolution déterminé par le terminal serveur, à partir des nouvelles données reçues et des sous-bandes SB3 stockées (et correspondant aux niveaux de résolution 1 à 3 des différentes couches de qualité). Il est bien entendu possible de reconstruire à tout moment une image, avant réception complète d'une couche de qualité, mais dans ce cas on ne peut pas garantir le rapport qualité/nombre de bits choisi. Cela s'applique plus particulièrement aux réseaux lents, pour lesquels on ne
reconstruit qu'après avoir fini de recevoir une couche de qualité complète.
Cet exemple de requête permet à un utilisateur d'effectuer un gros-
plan (ou zoom) sur une partie d'une image, comme illustré sur la figure 14.
Plus précisément, la figure 14A illustre l'organisation multirésolution (d'ordre 3) d'une image décomposée/compressée selon l'invention. La figure 14B correspond à la transmission d'une image complète, par exemple, tandis que la figure 14C est un gros-plan (ou zoom) de la partie centrale de l'image 14B, laquelle correspond aux carrés grisés de la figure 14A dans les sous-bandes du troisième niveau de résolution. Dans cet exemple, seules les données associées aux carrés grisés des trois sous-bandes du troisième niveau de résolution seront transmises au client, les données des niveaux de résolution
inférieurs ayant été précédemment transmises.
Comme cela est illustré sur la figure 16, I'invention permet également des déplacements à l'intérieur d'une image. Deux cas peuvent en effet se présenter: un premier cas dans lequel même dans le niveau de résolution le plus bas, le terminal client ne dispose pas de caractéristiques d'affichage suffisantes pour afficher l'intégralité d'une image, et un second cas dans
lequel le client choisi délibérément de n'afficher qu'une partie d'une image.
Dans l'exemple illustré, la figure 16A illustre l'organisation multirésolution, sur quatre niveaux de résolution, de l'image complète de la figure 16B. Plus précisément, sur cette figure 16B, on peut différencier deux zones, une zone principale 22A qui est celle affichée sur l'écran 5 du terminal client, et une zone 22B que l'on peut qualifier de virtuelle dans la mesure o elle n'est pas affichée sur cet écran 5 du fait qu'elle n'a pas encore été communiquée au terminal client 1. Les données de la partie 22A de la figure 16B correspondent aux zones blanches des sous-bandes T, H1, V, Dl, H2, V2 et D2 de l'organisation multirésolution de la figure 16A. En
d'autres termes, seules les données associées à ces parties des sous-
bandes des premier et second niveaux de résolution ont été transmises en réponse à une première requête d'accès à une partie d'une image. Dans une seconde requête d'accès, le client-utilisateur indique au terminal serveur 2 qu'il souhaite se déplacer vers la droite de l'image, de sorte que soit affichée s sur son écran 5 la partie 22C de l'image de la figure 16C, et non pas la partie
22D de cette même image (précédemment visualisée).
A réception de cette nouvelle requête, le terminal serveur compare les zones d'image précédemment transmises avec la zone nouvellement
requise par l'utilisateur. Il détermine ainsi une ou plusieurs zones de non-
recouvrement dont il va extraire les données décomposées/compressées (qui correspondent aux rectangles grisés des sous-bandes des niveaux de résolution 1 et 2 de la figure 16A) pour les transmettre au terminal client 1, de sorte que son étage de reconstruction 22 combine ces nouvelles données avec les anciennes, puis affiche sur l'écran 5 la partie 22C de l'image de la
figure 16C.
L'efficacité d'un déplacement spatial à l'intérieur d'une image découle directement de l'organisation du fichier décompressé/décomposé selon l'invention, et plus particulièrement de sa décomposition en blocs élémentaires de codage BECH. En effet, ces blocs élémentaires de codage BECH permettent une reconstruction locale de l'image et, du fait de leur complémentarité, la connaissance d'un bloc BECH adjacent à des blocs déjà
connus permet d'augmenter la couverture de l'image.
Une telle complémentarité de données transmises assure une minimisation du temps de transmission des données d'image et par conséquent un abaissement du coût de transmission pour une qualité de
réception donnée.
Il est important de noter que des niveaux de résolution intermédiaires, c'est-à-dire qui ne correspondent pas aux niveaux de résolution de l'image décomposée/compressée originelle, peuvent être
obtenus à l'aide de fonctions d'interpolation.
Bien entendu, les requêtes, et par conséquent les réponses,
pourront comporter d'autres informations que celles précédemment décrites.
Notamment, les requêtes peuvent comporter des informations relatives à l'acceptation de palettes adaptatives, des informations relatives à la capacité mémoire et au CPU du terminal client (et plus généralement à tout autre type de données spécifiques au terminal client), un niveau spécifique de qualité,
un intervalle de niveau de qualité, une information de palette progressive.
Plus précisément, les requêtes pourront comporter les types de
variables mentionnées ci-après.
Un premier type concerne les variables dites d'identification absolue : ces variables définissent une portion d'une image dont l'interprétation sur le
terminal client fournit directement un résultat interprétable par l'utilisateur.
Une identification absolue est utilisée pour garantir que la même requête émise sur tout type de dispositif client fournit le même résultat en termes de
zone d'image visible.
Un second type concerne les variables dites d'identification d'optimisation: ces variables définissent une portion d'une image dont l'interprétation du côté du terminal client doit être combinée avec d'autres données précédemment transmises, afin d'obtenir un résultat interprétable par l'utilisateur. L'identification d'optimisation est utilisée pour minimiser le nombre de données transmises, par exemple dans le cas o l'utilisateur requiert un déplacement dans l'image ou un grosplan (seule l'information complémentaire à celle qui a été précédemment transmise est communiquée
au terminal client).
A titre d'exemple, certaines variables d'identification absolue sont
précisées ci-après.
Une variable " nom " désigne un fichier image.
Une variable " type d'accès " peut prendre les valeurs " relative " ou " directe ". Elle requiert des coordonnées de zone ainsi qu'un niveau de qualité si sa valeur est "directe". On entend par "relative" le fait que des coordonnées de zone soient relatives au niveau de résolution le plus élevé de l'image, tandis qu'on entend par "directe" le fait que les coordonnées de zone sont basées sur un niveau de résolution choisi et spécifié par la
variable de niveau de résolution.
Une variable " coordonnées de zone " nécessite la présence de la variable " type d'accès ". Il s'agit, par exemple, de deux couples de coordonnées de position qui définissent une zone rectangulaire (ou autre) d'une image. Selon la valeur de la variable " type d'accès ">, les coordonnées sont relatives au niveau de résolution le plus haut de l'image ou
au niveau de résolution spécifié par la variable " niveau de résolution ".
Une variable " niveau de résolution " nécessite la présence dans une requête de la variable " type d'accès " avec la valeur "directe". Cette variable " niveau de résolution " peut prendre des valeurs comprises entre 1
et n, la valeur 1 désignant le niveau le plus bas.
A titre d'exemple, certaines variables d'identification d'optimisation
sont précisées ci-après.
Une variable " niveau de résolution en cours " requiert la présence dans une requête de la variable " type d'accès " avec la valeur "relative"
ainsi que la présence de la variable " coordonnées de zone en cours ".
Cette variable de niveau de résolution peut prendre des valeurs comprises entre 1 et n, la valeur 1 correspondant au niveau de résolution le plus
faible.
Cette variable fournit au module de traitement qui répond une indication relative à ce qui doit être répondu en cas de requête d'optimisation de type déplacement ou gros-plan (ou zoom). Par exemple, si l'image affichée (en cours) présente un niveau de résolution d'ordre 2 et que le client requiert un gros-plan sur une zone qui nécessite un niveau de résolution d'ordre 4, seules les parties des sous-bandes des niveaux d'ordre 3 et 4 seront transmises (au lieu de transmettre toutes les données correspondant aux
niveaux de résolution d'ordre 1 à 4, si cette information avait été omise) .
Une variable " coordonnées de zone en cours " nécessite la présence dans la requête de la variable " niveau de résolution en cours ". Il s'agit, par exemple, de deux couples de coordonnées de position qui définissent un rectangle visible en cours selon un niveau de résolution en cours. A partir de ces données et des coordonnées de zone, le module de traitement qui répond en déduit les informations complémentaires à extraire. Un intervalle de progression comprenant différentes couches de qualité peut être défini par deux variables " borne inférieure " et " borne
supérieure ".
La variable " borne inférieure " peut prendre des valeurs entre 1 et n. La valeur 1 correspond à la qualité la plus faible, bien qu'offrant un compromis optimal entre le nombre de bits à transmettre (minimal) et le résultat affiché. Les valeurs de qualité sont déterminées jusqu'à la valeur de la borne supérieure, lorsque celle-ci est spécifiée dans la requête, ou jusqu'à ce que l'on obtienne la qualité la plus élevée. Lorsque cette variable n'est pas spécifiée, elle est interprétée comme étant de valeur égale à 1. Par ailleurs, lorsque les variables " borne inférieure " et " borne supérieure "
possèdent la même valeur, un unique valeur est déterminée.
La variable " borne supérieure " peut prendre des valeurs comprises entre 1 et n, la valeur 1 étant la plus faible. Cette variable est généralement utilisée avec la variable " borne inférieure ", ces deux variables définissant l'intervalle de progression à déterminer. Elle peut être utilisée pour contraindre l'extraction de données d'image selon un niveau de qualité fixé. Lorsque cette variable n'est pas spécifiée, on considère que toutes les couches de qualité sont requises à partir de la valeur de la variable
" borne inférieure ".
Une variable " mode de dimension limite " nécessite la présence dans la requête de la variable " dimension limite ". Elle peut prendre, par exemple, les trois valeurs "majorée", "le plus proche" et "exacte". Cette variable est utilisée pour limiter la taille d'une réponse. Lorsqu'elle possède la valeur "majorée", elle indique le nombre maximum de bits que les données de l'image ne doivent pas excéder. La taille des données de la réponse doit être inférieure ou égale à la taille spécifiée. Lorsqu'elle possède la valeur "le plus proche", la réponse doit être ajustée en fonction du nombre de bits spécifié par la variable "taille limite ". Cet ajustement doit prendre en compte le caractère indivisible, éventuel, d'une partie des données de réponse. La réponse doit être composée d'unités de données entières jusqu'à la valeur de la variable " taille limite " (en octets), avec une tolérance, en plus ou en moins, d'une dimension d'unités de données lorsque la variable " taille limite " est comprise entre les frontières d'une unité de données. Lorsque la variable possède la valeur "exacte" on doit retourner une réponse dont les dimensions des données sont égales aux
octets de dimension limite.
Une variable "dimension limite " nécessite la présence dans la requête de la variable " mode de dimension limite ". Elle peut prendre des valeurs comprises entre 1 et n. Elle permet de définir un nombre d'octets destiné à limiter la dimension de la réponse. L'interprétation de cette variable
est fonction de la valeur de la variable " mode de dimension limite ".
Une variable " décalage limite " nécessite la présence dans la requête de la variable " borne inférieure ". Elle peut prendre des valeurs comprises entre 1 et n. Elle sert à définir le nombre d'octets représentant un décalage dans l'intervalle de progression spécifié par la variable " borne inférieure ". Elle est utilisée pour extraire des données complémentaires après réception d'une réponse limitée en dimension par l'utilisation des
variables " taille limite " et " mode de taille limite ".
Une variable " palette " peut prendre, par exemple les trois valeurs "progressive", "complète" et "aucune". Cette variable ne peut être utilisée que lorsque l'image désignée par la variable " nom " contient une information de palette. Lorsque sa valeur est "progressive", la variable "palette à partir de" fournit des détails sur les niveaux de progression (comme indiqué précédemment, la palette peut être retournée en plusieurs morceaux). Lorsque sa valeur est "complète", la palette entière est communiquée dans une réponse. Lorsque sa valeur est "aucune", aucune information de palette n'est retournée. Lorsque cette variable n'est pas spécifiée, mais que l'image contient une palette, elle est considérée comme
placée à la valeur "complète".
Une variable "palette à partir de" nécessite la présence dans la requête de la variable "palette" avec la valeur "progressive". Elle peut prendre des valeurs comprises entre 1 et n. Elle spécifie le premier fragment de palette qui doit être communiqué. Un fragment de palette doit être communiqué par intervalle de progression (jusqu'à ce que tous les fragments de palette disponibles aient été transmis). Il est important de noter qu'il est possible de requérir un fragment de palette égal à 3 avec un intervalle de progression égal à 1. Cela peut être utile lorsque, en raison d'une précédente requête, des fragments de palette de niveaux 1 et 2 ont été transmis, la requête en cours spécifiant alors une zone d'image différente nécessitant la transmission d'un intervalle de progression d'ordre 1 (seul le fragment de palette d'ordre 3 est manquant si bien qu'il est nécessaire à cet instant). Une variable "décalage" (en anglais " offset ") peut prendre des valeurs comprises entre 1 et n. Cette variable étant optionnelle, lorsqu'elle n'est pas spécifiée une réponse complète est transmise aux moyens de traitement requérants. Elle est utilisée lorsqu'il n'est pas possible au module de traitement qui doit répondre de transférer ses données en une unique réponse (par exemple dans le cas de protocole WAP sans SAR). Cette variable de décalage est relative au premier octet de la réponse, en-tête
2 5 inclus.
Comme mentionné précédemment, les moyens de traitement destinés au terminal serveur 2 peuvent être réalisés sous la forme d'une carte électronique dédiée et/ou de modules logiciels. Par conséquent, ils peuvent faire partie, ou constituer, un dispositif de transmission de données d'image implantable dans un terminal serveur. Cette remarque concerne également les moyens de transformation qui peuvent être implantés soient directement dans le terminal serveur, soit dans un terminal auxiliaire dédié à la compression décomposition des fichiers d'image et raccordé au terminal
serveur qui dans ce cas peut être un site web de service, par exemple.
De même, les moyens de traitement destinés aux terminaux clients 1 peuvent être réalisés sous la forme d'une carte électronique dédiée et/ou de modules logiciels. Par conséquent, ils peuvent faire partie, ou constituer,
un dispositif de réception de données d'image implantable dans un terminal.
Dans le cas de modules logiciels, ceux-ci peuvent être soit préalablement stockés sur un support de mémorisation, tel qu'un CD-ROM, puis chargé dans le terminal client, soit exportés d'un site web (par exemple) via le
*réseau de communication.
L'invention concerne également un procédé permettant de mettre en oeuvre l'installation et les dispositifs présentés ci-avant. Ce procédé a déjà été évoqué précédemment, de sorte que seules ses caractéristiques
s15 principales sont détaillées ci-après.
Le procédé selon l'invention comporte au minimum: une première étape de génération d'une requête d'accès à une image, comportant des caractéristiques d'affichage des moyens d'affichage du terminal client requérant (par exemple le format (ou les dimensions) d'une zone d'affichage de données et/ou le nombre de bits de codage des pixels d'affichage et/ou le nombre de couleurs), et une seconde étape dans laquelle i) on extrait de la requête d'accès les caractéristiques des moyens d'affichage (plus précisément les capacités d'affichage), ii) on établit une correspondance entre au moins un type de données de l'image (couleurs ou niveau de gris, résolution, qualité) et des caractéristiques d'affichage, et iii) on détermine, selon un critère choisi, parmi les caractéristiques d'affichage correspondant aux différents types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage extraites, de sorte que soient transmises au terminal client les données d'image associées au(x)
type(s) de données correspondant aux caractéristiques déterminées.
Avantageusement, lors de la seconde étape, les couches de qualité sont générées de manière à être complémentaires les unes des autres, et les données d'image transmises comprennent les données d'image associées à une partie au moins des différentes couches de qualité (de la plus élevée à la plus basse), c'est-à-dire celles qui correspondent au(x) type(s) de données compatibles avec les
caractéristiques d'affichage du terminal client.
Consécutivement à une première série de première et seconde étapes, on peut placer dans une nouvelle requête d'accès une information désignant une zone d'image de sorte que le terminal serveur transmette les données d'image associées à cette seule zone. Par conséquent, en réponse à une première étape de génération d'une requête comportant une information de zone d'image, on procède dans une seconde étape, d'une part, à l'extraction de cette information de zone pour déterminer des caractéristiques d'affichage associées, et d'autre part, à la détermination parmi les caractéristiques d'affichage, qui correspondent aux différents niveaux de résolution (via les différents types de données d'image), celles qui sont les plus proches des caractéristiques d'affichage associées à la zone, de sorte que soient transmises audit terminal client les données d'image associées à une partie au moins des différentes couches de qualité, lesquelles données sont celles qui sont associées au niveau de résolution le plus élevé correspondant aux caractéristiques déterminées et
n'ont pas été transmises précédemment (lors de réponses antérieures).
Par ailleurs, consécutivement à la réception de première et seconde requêtes d'accès à une image comportant respectivement de première et seconde informations de zone, on effectue dans la seconde étape, d'une part, une comparaison entre ces première et seconde informations de zone pour déterminer une ou plusieurs éventuelles zones de non recouvrement, et d'autre part, on transmet les données d'image associées à cette zone de non recouvrement, selon des couches de qualité et à des niveaux de résolution adaptés aux caractéristiques d'affichage du
terminal client et/ou aux besoins de l'application.
Lors de la première étape on peut également placer dans la
requête d'accès une information désignant un niveau de résolution donné.
Dans ce cas, lors de la seconde étape on procède, d'une première part, à l'extraction des données associées à ce niveau de résolution dans les différentes couches de qualité, et l'on vérifie qu'il est compatible avec les caractéristiques d'affichage du terminal client, et d'une seconde part, à la
transmission des données associées au niveau de résolution.
Préférentiellement, lors de la seconde étape on transmet avec les données d'image des informations désignant leur couche de qualité, de sorte que l'image requise soit reconstruite à partir des données reçues en
réponse à chacune des requêtes d'accès relatives à cette image.
Le procédé peut également comporter une étape de transformation is de données dans laquelle, d'une première part on applique à des données d'image " brutes ", contenues dans un fichier primaire, une transformation chromatique destinée à obtenir des données transformées, sous forme d'une matrice ligne/colonne, dans un espace de représentation tridimensionnel comportant, par exemple, une composante de luminance (Y) et deux composantes de chrominance (U,V), d'une seconde part, on applique aux données transformées une technique de décomposition par ondelettes de manière à obtenir des niveaux de résolution différents, d'une troisième part, on applique à ces niveaux de résolution une technique de décomposition en couches de qualité, d'une cinquième part on applique aux couches de qualité une première fonction pour les décomposer en blocs élémentaires de codage, et d'une sixième part, on stocke cette décomposition dans un fichier secondaire. Une telle étape de transformation peut être effectuée soit avant les première et seconde étapes, de manière à générer des fichiers d'image
décomposés/compressés, soit consécutivement à une première étape.
Bien entendu, d'autres types d'espace de couleurs peuvent être envisagés. De même, I'invention ne se limite pas aux images définies dans trois plans. Des espaces de quatre ou cinq plans, voire plus encore, peuvent
être envisagés.
Plus précisément, lors de cette étape de transformation on procède, d'une part, à la décomposition des données transformées en matrice ligne/colonne par application d'un filtre passe bas (g) et d'un filtre passe haut (h) de manière à obtenir pour chaque niveau de résolution une première sous-bande (H) comportant des informations de hautes fréquence sur les colonnes, une seconde sous-bande (V) comportant des informations de hautes fréquence sur les lignes, une troisième sous-bande (D) comportant des informations de hautes fréquence suivant une diagonale principale de la matrice et une quatrième sous-bande (T) comportant des informations de type passe-bas, et d'autre part, à l'application aux sous- bandes d'une technique de quantification à étages
destinée à générer les couches de qualité complémentaires.
La technique de quantification effectuée lors de cette étape de transformation consiste avantageusement en: a une première phase dans laquelle on applique aux sous-bandes des différents niveaux de résolution une fonction d'optimisation, fonction, par exemple, d'un nombre d'octets dédiés à une couche de données (Li), pour déterminer pour chaque sousbande un pas de quantification (q,j), l'ensemble des valeurs de pas formant un banc de quantification (BQ,), puis pour chaque sous-bande on applique le pas de quantification (q,j) correspondant pour obtenir des données associées à la couche (L1),
2 5 une seconde phase dans laquelle on détermine un banc de dé-
quantification (BQ,-'), inverse du banc de quantification (BQi), puis on alimente ce banc de dé-quantification avec les données associées à la couche de qualité (Li) et les valeurs de pas de quantification (qj) pour déterminer une approximation pour chaque sous-bande qui est ensuite soustraite à la sous-bande Ei de l'étape précédente pour obtenir des sousbandes d'erreur (E+.,j), une troisième phase dans laquelle on réitère les première, seconde et troisième phases avec un autre nombre d'octets dédiés à une autre couche de qualité (Li+) (de préférence choisi en fonction des caractéristiques de débit de données du réseau auquel le terminal client est raccordé), pour obtenir des données associées à cette autre couche (Li+,.) et des nouvelles sous-bandes d'erreur, tant que les contenus respectifs des sous-bandes d'erreur (E+.,j) demeurent supérieurs à des seuils choisis, la décomposition en couches de qualité prenant fin dans le
cas contraire.
Par ailleurs, dans cette étape de transformation, la première fonction consiste avantageusement, d'une première part à décomposer les première (H), seconde (V) et troisième (D) sous-bandes de chaque niveau de résolution de chaque couche de qualité (Li) en éléments associés aux régions de l'image, d'une seconde part, à concaténer des éléments de chaque sous-bande d'un même niveau de résolution, associés à des régions identiques, pour former des blocs élémentaires de codage (BEC) comportant chacun trois éléments, I'un des éléments de chaque bloc ayant préalablement subi une rotation et une symétrie miroir, et d'une troisième part, à effectuer un codage entropique de chaque bloc élémentaire pour
obtenir des bloc élémentaires codés entropiquement (BECH).
Avantageusement, lorsque le réseau présente des caractéristiques de débit de données très faibles et que le protocole de transmission ne permet pas au client d'interpréter la réponse tant qu'elle n'a pas été intégralement reçue, d'une première part, on transmet lors de la seconde étape toutes les données d'image, associées à une partie au moins de la couche de qualité, correspondant aux caractéristiques d'affichage du terminal client, à l'intérieur de réponses successives comportant chacune des données complémentaires associées à des couches de qualité croissante, et d'autre part, à réception des réponses successives on reconstruit progressivement l'image transmise jusqu'à obtention du niveau
de qualité le plus élevé.
Dans ce cas, la reconstruction consiste préférentiellement à:
a) appliquer à une première couche de qualité reçue (L) le banc de dé-
quantification (BQ-') associé à cette couche pour reconstruire les sous-
bandes (SB,) qu'elle contient et appliquer à ces sous-bandes une transformation inverse pour reconstruire les données d'image de cette couche à afficher,
b) appliquer à une seconde couche de qualité reçue (L+.,) le banc de dé-
quantification (BQ,.,-') associé à cette couche pour reconstruire les sous-
bandes (SB,) qu'elle contient et les fusionner avec les sous-bandes des couches précédentes, puis appliquer à ces sous-bandes fusionnées la transformation inverse pour déterminer les nouvelles données d'image à afficher, et c) réitérer l'étape b) pour chaque couche de qualité suivante en fusionnant à chaque fois les sous-bandes qu'elle contient avec celles des couches
précédentes.
L'invention présente un intérêt certain dans le cas de la transmission d'images compressées. Elle permet en effet de manipuler n'importe quel
type de format d'image qui satisfait les propriétés précédemment énoncées.
Elle permet en effet d'identifier, sans ambiguïté, les blocs élémentaires de 2 0 codage qui sont nécessaires dans les deux situations suivantes: lors d'un premier affichage d'une image: le client ne dispose pas de données relatives à l'image qu'il souhaite afficher, si bien qu'il lui est proposé une version complète de l'image sous une résolution qui est adaptée à son terminal, sur la base des informations transmises; - lors d'un second affichage d'image: le client dispose déjà d'une partie des données relatives à l'image qu'il souhaite afficher. Dans ce cas, les données complémentaires nécessaires sont facilement déduites en considérant les coordonnées de la zone d'image actuellement affichée, les coordonnées de la future zone affichée et les caractéristiques d'affichage du 3 0 terminal client. En fonction du souhait du client de voir telle ou telle région de l'image (spécifiée à la résolution maximale) , qui peut être plus ou moins étendue, on en déduit le niveau de résolution de l'image à transmettre au client suivant le format (par exemple les dimensions d'affichage) de ce dernier. Il est important de noter que les informations relatives au terminal d'un client sont dissociées de la caractérisation de la zone à afficher, afin de permettre l'échange d'une même image entre deux terminaux clients qui ne
présentent pas forcément les mêmes caractéristiques.
L'invention ne se limite pas aux modes de réalisation de dispositif, d'installation et de procédé décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art
dans le cadre des revendications ci-après.

Claims (44)

REVENDICATIONS
1. Installation d'échange de données d'image entre des terminaux clients et au moins un terminal de service, via un réseau de communication, chaque terminal client (1) comportant des moyens d'affichage de données (5) et des premiers moyens de traitement (21), et étant agencé pour adresser audit terminal serveur (2) des requêtes d'accès à des images, décomposées en niveaux de résolution et en couches de qualité, en vue d'afficher ces données après recomposition, caractérisée en ce que lesdits premiers moyens de traitement (21) sont agencés pour placer dans une requête d'accès des caractéristiques d'affichage des moyens d'affichage (5) du terminal client (1) dans lequel ils sont implantés, et en ce que ledit terminal serveur (2) comporte des seconds moyens de traitement (16) agencés pour i) extraire d'une requête d'accès à une image, reçue d'un terminal client, les caractéristiques de ses moyens d'affichage (5), ii) établir une correspondance entre au moins un type de données de l'image et des caractéristiques d'affichage, et iii) déterminer, selon un critère choisi, parmi les caractéristiques d'affichage correspondant aux types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage extraites, de sorte que soient transmises audit terminal client (1) les données d'image associées au type de donnée
d'image correspondant aux caractéristiques déterminées.
2. Installation selon la revendication 1, caractérisée en ce que les
couches de qualité sont complémentaires.
3. Installation selon la revendication 2, caractérisée en ce que les seconds moyens de traitement (16) sont agencés pour transmettre à un terminal client (1), ayant adressé une requête.d'accès, les données d'image d'une partie au moins des couches de qualité, associée au type de données
d'image correspondant aux caractéristiques d'affichage déterminées.
4. Installation selon l'une des revendications 1 à 3, caractérisée
en ce que les caractéristiques d'affichage comportent au moins un format de zone d'affichage de données des moyens d'affichage (5), correspondant à
un niveau de résolution.
5. Installation selon l'une des revendications 1 à 4, caractérisée
en ce que les caractéristiques d'affichage comportent en outre un nombre de
bits de codage des pixels des moyens d'affichage (5).
6. Installation selon l'une des revendications 1 à 5, caractérisée
en ce que les seconds moyens de traitement (16) sont agencés pour communiquer aux premiers moyens de traitement (21), d'un terminal client (1) ayant adressé une requête d'accès, conjointement les données d'image
déterminées et le niveau de résolution des données de cette image.
7. Installation selon l'une des revendications 1 à 6, caractérisée
en ce que les premiers moyens de traitement (21) de terminal client (1) sont agencés pour placer dans une requête d'accès une information désignant is une zone d'image de données d'image de sorte que lesdits seconds moyens de traitement (16) transmettent les données d'image associées à ladite zone.
8. Installation selon la revendication 7, caractérisée en ce que lesdits seconds moyens de traitement (16) sont agencés pour i) extraire de la requête d'accès ladite information de zone de manière à déterminer des caractéristiques d'affichage associées, ii) déterminer parmi les caractéristiques d'affichage correspondant aux types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage associées à la zone, de sorte que soient transmises audit terminal client (1) les données d'image d'une partie au moins des couches de qualité, associée au type de données d'image correspondant aux caractéristiques d'affichage
déterminées, n'ayant pas été transmises précédemment.
9. Installation selon l'une des revendications 7 et 8, caractérisée
en ce que, consécutivement à la réception de première et seconde requêtes d'accès à une image comportant de première et seconde informations de zone, lesdits seconds moyens de traitement (16) sont propres à i) comparer les première et seconde informations de zone de manière à déterminer au moins une éventuelle zone de non recouvrement, et ii) transmettre aux premiers moyens de traitement (1) les données d'image associées à cette zone de non recouvrement, selon un niveau de résolution correspondant aux
caractéristiques d'affichage de ses moyens d'affichage (5).
10. Installation selon l'une des revendications 1 à 9, caractérisée
en ce que les premiers moyens de traitement (21) de terminal client (1) sont agencés pour placer dans une requête d'accès une information désignant un _0 niveau de résolution, et en ce que les seconds moyens de traitement (16) sont agencés pour i) extraire les données d'image des différentes couches de qualité, associées au niveau de résolution requis, ii) comparer les caractéristiques associées à ce niveau aux caractéristiques d'affichage du terminal client (1), iii) puis transmettre les données associées à ce niveau de résolution requis lorsque lesdites caractéristiques associées sont
compatibles avec les caractéristiques d'affichage du terminal client (1).
11. Installation selon l'une des revendications 1 à 10,
caractérisée en ce que les seconds moyens de traitement (16) sont agencés pour transmettre avec les données d'image des informations désignant leur niveau de résolution et leur couche de qualité, de sorte que les premiers moyens d'image (21) reconstruisent l'image requise à partir des données
reçues en réponse à chacune des requêtes d'accès relatives à cette image.
12. Installation selon l'une des revendications 1 à 11, caractérisée
en ce qu'elle comprend des moyens de transformation (17-20) agencés pour i) appliquer à des données d'image " brutes ", contenues dans un fichier primaire, une transformation chromatique destinée à obtenir des données transformées dans un espace de représentation tridimensionnel comportant une composante de luminance (Y) et deux composantes de chrominance (U,V), sous forme d'une matrice ligne/colonne, ii) appliquer aux données transformées une technique de décomposition par ondelettes de manière à obtenir des niveaux de résolution différents, iii) appliquer auxdits niveaux de résolution une technique de décomposition en couches de qualité complémentaires, iv) appliquer auxdites couches de qualité une première fonction de manière à obtenir une décomposition en blocs élémentaires de
codage, et v) stocker ladite décomposition dans un fichier secondaire.
13. Installation selon la revendication 12, caractérisée en ce que les moyens de transformation (17-20) sont agencés pour i) décomposer les données transformées en matrice ligne/colonne par application à chaque niveau de résolution d'un filtre passe bas (g) et d'un filtre passe haut (h) de manière à obtenir une première sous-bande (H) comportant des informations de hautes fréquence sur les colonnes, une seconde sous-bande (V) comportant des informations de hautes fréquence sur les lignes, une troisième sous-bande (D) comportant des informations de hautes fréquence suivant une diagonale principale de la matrice et une quatrième sousbande (T) comportant des informations de type passe-bas, et ii) appliquer auxdites sous-bandes des différents niveaux de résolution une technique de quantification à étages destinée à générer lesdites couches de qualité complémentaires.
14. Installation selon la revendication 13, caractérisée en ce que la technique de quantification consiste en: À une première étape dans laquelle on applique aux sous-bandes une fonction d'optimisation, fonction d'un nombre d'octets dédiés à une couche de qualité (Li), de manière à déterminer une valeur de pas de quantification (qij) pour chaque sous-bande, l'ensemble desdites valeurs formant un banc de quantification (BQi), puis, pour chaque sous-bande, on applique la valeur de pas de quantification (qij) correspondantes de manière à obtenir des données associées à la couche de qualité (Li),
une seconde étape dans laquelle on détermine un banc de dé-
quantification (BQ,-'), inverse du banc de quantification (BQ,), puis on alimente ce banc de dé-quantification avec les données associées à ladite couche de qualité (Li) et les valeurs de pas de quantification (qij) de manière à déterminer une approximation pour chaque sous-bande qui est ensuite confrontée à la sous-bande correspondante pour obtenir des sousbandes d'erreur (E+.,,.j), une troisième étape dans laquelle on réitère les première, seconde et troisième étapes avec un autre nombre d'octets dédiés à une autre couche de qualité (L,+1), pour obtenir des données associées à cette autre couche (L+.,) et des nouvelles sous-bandes d'erreur, tant que les contenus respectifs des sous-bandes d'erreur (E+,j) demeurent supérieurs à des
seuils choisis, la quantification prenant fin dans le cas contraire.
15. Installation selon la revendication 14, caractérisée en ce que le nombre d'octets dédiés à chaque couche de qualité (L1) est choisi en fonction des caractéristiques de débit de données du réseau auquel le terminal client
(1) est raccordé.
16. Installation selon l'une des revendications 12 à 15,
caractérisée en ce que la première fonction consiste en i) une décomposition des première (H), seconde (V) et troisième (D) sous-bandes de chaque niveau de résolution de chaque couche de qualité (Li) en éléments associés aux régions de l'image, ii) puis une concaténation des éléments de chaque sous-bande associés à des régions identiques pour former des blocs élémentaires de codage comportant chacun trois éléments, I'un des éléments de chaque bloc ayant préalablement subi une rotation et une symétrie miroir, iii) et enfin un codage entropique de chaque bloc élémentaire.
17. Installation selon l'une des revendications 12 à 16,
caractérisée en ce qu'elle comprend une base de données (4) propre à stocker lesdits fichiers des moyens de transformation et connectée audit
terminal serveur.
18. Installation selon l'une des revendications 12 à 17,
caractérisée en ce que lesdits moyens de transformation (17-20) sont
implantés dans ledit terminal serveur (2).
19. Installation selon l'une des revendications 1 à 18, caractérisée
en ce qu'en cas de réseau présentant des caractéristiques de débit de données interdisant l'envoi dans une unique réponse, par le terminal serveur (2), de données d'image complémentaires associées à un niveau de résolution des couches de qualité, lesdits seconds moyens de traitement (16) sont agencés pour transmettre au terminal client (1) lesdites données d'image dans des réponses successives comportant chacune des données complémentaires associées à des couches de qualité croissante, et en ce que lesdits premiers moyens de traitement (21) de terminal client (1) comportent des moyens de reconstruction d'image (22) agencés, à réception de réponses successives, pour reconstruire progressivement l'image transmise jusqu'à obtention de la qualité d'image la plus élevée, déterminée
par lesdits seconds moyens de traitement (16).
20. Installation selon la revendication 19, caractérisée en ce que lesdits moyens de reconstruction (22) sont agencés pour:
a) appliquer à une première couche de qualité reçue (LQ) le banc de dé-
quantification (BQ,-') associé à cette couche pour reconstruire les sous-
bandes (SB,) qu'elle contient et appliquer à ces sous-bandes une transformation inverse (W-') pour reconstruire les données d'image de cette couche de qualité à afficher,
b) appliquer à une seconde couche de qualité reçue (Li+) le banc de dé-
quantification (BQ+.,-') associé à cette couche pour reconstruire les sous-
bandes (SBi) qu'elle contient et les fusionner avec les sous-bandes de(s) couche(s) précédente(s), puis appliquer à ces sous-bandes fusionnées ladite transformation inverse (W-') pour déterminer les nouvelles données d'image à afficher, c) réitérer l'étape b) pour chaque couche de qualité suivante en fusionnant à chaque fois les sous-bandes qu'elle contient avec celles des couches précédentes.
21. Dispositif de transmission de données d'image, caractérisé en ce qu'il comporte des seconds moyens de traitement d'image (16) selon
l'une des revendications précédentes.
22. Dispositif de transmission de données selon la revendication 21, caractérisé en ce qu'il comporte des moyens de transformation (17-20)
selon l'une des revendications 12 à 20.
23. Dispositif de réception de données d'image, caractérisé en ce qu'il comporte des premiers moyens de traitement d'image (21) selon l'une
des revendications 1 à 20.
24. Procédé d'échange de données d'image entre des terminaux clients et au moins un terminal de service, via un réseau de communication, du type comprenant une première étape dans laquelle un terminal client (1) transmet au terminal serveur (2) une requête d'accès à une image, décomposée en niveaux de résolution et en couches de qualité, et une seconde étape dans laquelle ledit terminal serveur (2) transmet au terminal client (1) une partie au moins des données d'image décomposées de sorte qu'elles soient affichées après recomposition, caractérisé en ce qu'à la première étape la requête d'accès comporte des caractéristiques d'affichage des moyens d'affichage (5) du terminal client (1), et à la seconde étape i) on extrait de la requête d'accès les caractéristiques des moyens d'affichage (5), ii) on établit une correspondance entre au moins un type de données de l'image et des caractéristiques d'affichage, et iii) on détermine, selon un critère choisi, parmi les caractéristiques d'affichage correspondant aux différents types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage extraites, de sorte que soient transmises audit terminal client les données d'image associées au type de données d'image correspondant aux
caractéristiques déterminées.
25. Procédé selon la revendication 24, caractérisé en ce qu'à la seconde étape on génère des couches de données complémentaires
26. Procédé selon la revendication 25, caractérisé en ce qu'à la seconde étape on transmet les données d'image d'une partie au moins des couches de qualité, associée au type de données d'image correspondant
aux caractéristiques d'affichage déterminées.
27. Procédé selon l'une des revendications 24 à 26, caractérisé
en ce qu'à la première étape les caractéristiques d'affichage comportent au
moins un format de zone d'affichage de données.
28. Procédé selon l'une des revendications 24 à 27, caractérisé en
ce que les caractéristiques d'affichage comportent en outre un nombre de
bits de codage des pixels de la zone d'affichage.
29. Procédé selon l'une des revendications 24 à 28, caractérisé en
ce qu'à la seconde étape on communique conjointement les données
d'image déterminées et le niveau de résolution des données de cette image.
30. Procédé selon l'une des revendications 24 à 29, caractérisé en
ce que dans certaines premières étapes, faisant suite à une première série de première et seconde étapes, on place dans la requête d'accès une information désignant une zone d'image de sorte que le terminal serveur (2)
transmette les données d'image associées à cette zone.
31. Procédé selon la revendication 30, caractérisé en ce qu'en réponse à une première étape comportant une information de zone d'image, on procède dans une seconde étape à i) I'extraction de ladite information de zone de manière à déterminer des caractéristiques d'affichage associées, et ii) la détermination parmi les caractéristiques d'affichage correspondant aux types de données de l'image celles qui sont les plus proches des caractéristiques d'affichage associées à la zone, de sorte que soient transmises audit terminal client (1) les données d'image d'une partie au moins des couches de qualité, associée au type de données d'image correspondant aux caractéristiques d'affichage déterminées, n'ayant pas été
transmises précédemment.
32. Procédé selon l'une des revendications 30 et 31, caractérisé
en ce que, consécutivement à la réception de première et seconde requêtes d'accès à une image comportant de première et seconde informations de zone, on effectue dans une seconde étape i) une comparaison entre les première et seconde informations de zone de manière à déterminer au moins une éventuelle zone de non recouvrement, et ii) on transmet les données d'image associées à cette zone de non recouvrement, selon un niveau de résolution correspondant aux caractéristiques d'affichage du
terminal client (1).
33. Procédé selon l'une des revendications 23 à 30, caractérisé
en ce qu'à la première étape on place dans la requête d'accès une information désignant un niveau de résolution, et en ce qu'à la seconde étape i) on extrait les données d'image des différentes couches de qualité, associées au niveau de résolution requis, ii) on compare les caractéristiques associées à ce niveau aux caractéristiques d'affichage du terminal client, iii) puis on transmet les données associées à ce niveau de résolution requis lorsque lesdites caractéristiques associées sont compatibles avec les
caractéristiques d'affichage du terminal client (1).
34. Procédé selon l'une des revendications 24 à 33, caractérisé
en ce qu'à la seconde étape on transmet avec les données d'image des informations désignant leur niveau de résolution et leur couche de qualité, de sorte que l'image requise soit reconstruite à partir des données reçues en
réponse à chacune des requêtes d'accès relatives à cette image.
35. Procédé selon l'une des revendications 24 à 34, caractérisé en
ce qu'elle comprend une étape de transformation de données dans laquelle i) on applique à des données d'image " brutes ", contenues dans un fichier primaire, une transformation chromatique destinée à obtenir des données transformées, sous forme d'une matrice ligne/colonne, dans un espace de représentation tridimensionnel comportant une composante de luminance (Y) et deux composantes de chrominance (U,V), ii) on applique aux données transformées une technique de décomposition par ondelettes de manière à obtenir des niveaux de résolution différents, iii) on applique auxdits niveaux de résolution une technique de décomposition en couches de qualité complémentaires, iv) on applique auxdites couches de qualité une première fonction de manière à obtenir une décomposition en blocs élémentaires de
codage, et v) on stocke ladite décomposition dans un fichier secondaire.
36. Procédé selon la revendication 33, caractérisé en ce qu'à l'étape de transformation i) on décompose les données transformées en matrice ligne/colonne par application pour chaque niveau de résolution d'un filtre passe bas (g) et d'un filtre passe haut (h) de manière à obtenir une première sous-bande (H) comportant des informations de hautes fréquence sur les colonnes, une seconde sous-bande (V) comportant des informations de hautes fréquence sur les lignes, une troisième sous-bande (D) comportant des informations de hautes fréquence suivant une diagonale principale de la matrice et une quatrième sous-bande (T) comportant des informations de type passe-bas, et ii) on applique auxdites sous-bandes des différents niveaux de résolution une technique de quantification à étages
is destinée à générer lesdites couches de qualité complémentaires.
37. Procédé selon la revendication 36, caractérisé en ce qu'à l'étape de transformation la technique de quantification consiste en: * une première phase dans laquelle on applique aux sous-bandes une fonction d'optimisation, fonction d'un nombre d'octets dédiés à une couche de qualité (Li), de manière à déterminer une valeur de pas de quantification (qij) pour chaque sous-bande, l'ensemble desdites valeurs formant un banc de quantification (BQi), puis, pour chaque sous-bande, on applique la valeur de pas de quantification (qj) correspondantes de manière à obtenir des données associées à la couche de qualité (Li),
a une seconde phase dans laquelle on détermine un banc de dé-
quantification (BQ,-'), inverse du banc de quantification (BQ,), puis on alimente ce banc de dé-quantification avec les données associées à ladite couche de qualité (L1) et les valeurs de pas de quantification (qj) de manière à déterminer une approximation pour chaque sous-bande qui est ensuite confrontée à la sous-bande correspondante pour obtenir des sousbandes d'erreur (E,+1,j), une troisième phase dans laquelle on réitère les première, seconde et troisième phases avec un autre nombre d'octets dédiés à une autre couche de qualité (L,+,), pour obtenir des données associées à cette autre couche (Li+1) et des nouvelles sous-bandes d'erreur, tant que les contenus respectifs des sous-bandes d'erreur (E,+ 1J) demeurent supérieurs à des
seuils choisis, la quantification prenant fin dans le cas contraire.
38. Procédé selon la revendication 37, caractérisé en ce que le nombre d'octets dédiés à chaque couche de qualité (Li) est choisi en fonction des caractéristiques de débit de données du réseau auquel le terminal client
est raccordé.
39. Procédé selon l'une des revendications 35 à 38, caractérisé en
ce que la première fonction consiste en i) une décomposition des première (H), seconde (V) et troisième (D) sous-bandes de chaque niveau de résolution de chaque couche de qualité (Li) en éléments associés aux
régions de l'image, ii) puis une concaténation des éléments de chaque sous-
bande associés à des régions identiques pour former des blocs élémentaires de codage comportant chacun trois éléments, l'un des éléments de chaque bloc ayant préalablement subi une rotation et une symétrie miroir, iii) et enfin
un codage entropique de chaque bloc élémentaire.
40. Procédé selon l'une des revendications 24 à 39, caractérisé en
ce qu'à la première étape on extrait lesdits fichiers de données d'image
d'une base de données.
41. Procédé selon l'une des revendications 34 à 40, caractérisée'
en ce que l'étape de transformation est effectuée dans ledit terminal serveur (2).
42. Procédé selon l'une des revendications 24 à 41, caractérisée
en ce qu'en cas de réseau présentant des caractéristiques de débit de données interdisant l'envoi dans une unique réponse, par le terminal serveur (2), de données d'image complémentaires associées à un niveau de résolution des couches de qualité, on transmet, dans la seconde étape, au terminal client (1) i) lesdites données d'image dans des réponses successives comportant chacune des données complémentaires associées à des couches de qualité croissante, et ii) à réception des réponses successives on reconstruit progressivement l'image transmise jusqu'à
obtention de la qualité d'image la plus élevée.
43. Procédé selon la revendication 42, caractérisé en ce que la reconstruction consiste à:
a) appliquer à une première couche de qualité reçue (Le) le banc de dé-
quantification (BQ,-') associé à cette couche pour reconstruire les sous-
bandes (SBi) qu'elle contient et appliquer à ces sous-bandes une transformation inverse (W'1) pour reconstruire les données d'image de cette couche de qualité à afficher,
b) appliquer à une seconde couche de qualité reçue (Li+,) le banc de dé-
quantification (BQ,+,-') associé à cette couche pour reconstruire les sous-
bandes (SBi) qu'elle contient et les fusionner avec les sous-bandes de(s) couche(s) précédente(s), puis appliquer à ces sous-bandes fusionnées ladite transformation inverse (W'1) pour déterminer les nouvelles données d'image à afficher, c) réitérer l'étape b) pour chaque couche de qualité suivante en fusionnant à chaque fois les sous-bandes qu'elle contient avec celles des couches précédentes.
44. Utilisation du procédé, de l'installation, du dispositif de
transmission et du dispositif de réception selon l'une des revendications
précédentes, dans les réseaux de communication choisis dans un groupe
comprenant les réseaux publics et les réseaux privés.
FR0015367A 2000-11-28 2000-11-28 Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee Expired - Fee Related FR2817437B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR0015367A FR2817437B1 (fr) 2000-11-28 2000-11-28 Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee
US09/772,912 US20020097411A1 (en) 2000-11-28 2001-01-31 Facility and method for exchanging image data with controlled quality and / or size
PCT/FR2001/000718 WO2002045409A1 (fr) 2000-11-28 2001-03-09 Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee
AU2001239374A AU2001239374A1 (en) 2000-11-28 2001-03-09 Installation and method for exchanging image data with controlled quality and size

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0015367A FR2817437B1 (fr) 2000-11-28 2000-11-28 Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee

Publications (2)

Publication Number Publication Date
FR2817437A1 true FR2817437A1 (fr) 2002-05-31
FR2817437B1 FR2817437B1 (fr) 2003-02-07

Family

ID=8856969

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0015367A Expired - Fee Related FR2817437B1 (fr) 2000-11-28 2000-11-28 Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee

Country Status (4)

Country Link
US (1) US20020097411A1 (fr)
AU (1) AU2001239374A1 (fr)
FR (1) FR2817437B1 (fr)
WO (1) WO2002045409A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2848765A1 (fr) * 2002-12-11 2004-06-18 Canon Kk Procede et dispositif de determination d'une configuration de donnees d'un signal numerique d'image

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003900983A0 (en) * 2003-03-04 2003-03-20 Silverbrook Research Pty Ltd Methods, systems and apparatus (NPT023)
US8924506B2 (en) 2000-12-27 2014-12-30 Bradium Technologies Llc Optimized image delivery over limited bandwidth communication channels
JP3970551B2 (ja) * 2001-05-09 2007-09-05 シャープ株式会社 画像送信装置
JP2003330447A (ja) * 2002-05-15 2003-11-19 Mitsubishi Electric Corp 画像処理装置
FR2842983B1 (fr) * 2002-07-24 2004-10-15 Canon Kk Transcodage de donnees
FI20022259A (fi) * 2002-12-20 2004-06-21 Oplayo Oy Stream halutulle laatutasolle
TWI276904B (en) * 2005-02-01 2007-03-21 Avermedia Tech Inc A document camera and its digital image zoom system
FI117656B (fi) 2005-02-15 2006-12-29 Lumi Interactive Ltd Sisällön optimointi vastaanottaville päätelaitteille
US7634152B2 (en) * 2005-03-07 2009-12-15 Hewlett-Packard Development Company, L.P. System and method for correcting image vignetting
US20070061394A1 (en) * 2005-09-09 2007-03-15 Soonr Virtual publication data, adapter for mobile devices
US8116288B2 (en) * 2005-09-09 2012-02-14 Soonr Corporation Method for distributing data, adapted for mobile devices
US7779069B2 (en) * 2005-09-09 2010-08-17 Soonr Corporation Network adapted for mobile devices
TW200731760A (en) * 2006-02-13 2007-08-16 Benq Corp Image capturing method and image-capturing device thereof
US8330967B2 (en) * 2006-06-26 2012-12-11 International Business Machines Corporation Controlling the print quality levels of images printed from images captured by tracked image recording devices
KR100788698B1 (ko) * 2006-07-13 2007-12-26 삼성전자주식회사 디스플레이 서비스 방법 및 그 방법을 수행할 수 있는네트워크 디바이스와 저장 매체
JP4579316B2 (ja) * 2008-06-30 2010-11-10 任天堂株式会社 撮像装置、撮像システムおよびゲーム装置
US9509935B2 (en) 2010-07-22 2016-11-29 Dolby Laboratories Licensing Corporation Display management server
US8582876B2 (en) * 2011-11-15 2013-11-12 Microsoft Corporation Hybrid codec for compound image compression
CN103778452B (zh) * 2014-01-10 2017-09-05 惠州Tcl移动通信有限公司 一种基于手机的二维码编码和解码的方法及系统
CN105786476B (zh) * 2014-12-26 2021-04-02 航天信息股份有限公司 移动客户端与服务器之间的数据处理方法及系统
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
CN114547976B (zh) * 2022-02-17 2024-04-30 浙江大学 基于金字塔变分自编码器的多采样率数据软测量建模方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992005660A1 (fr) * 1990-09-14 1992-04-02 Eastman Kodak Company Systeme de photofinissage d'imagerie numerique de multiresolution
JPH07143475A (ja) * 1993-11-12 1995-06-02 Hitachi Ltd 画像データ変換システム
GB2295936A (en) * 1994-12-05 1996-06-12 Microsoft Corp Progressive image transmission using discrete wavelet transforms
WO1996029818A1 (fr) * 1995-03-17 1996-09-26 Imperial College Of Science, Technology & Medicine Transmission progressive d'images
GB2313757A (en) * 1995-06-30 1997-12-03 Ricoh Kk Method using an embedded codestream
WO1998003008A1 (fr) * 1996-07-16 1998-01-22 Ericsson, Inc. Procede de transmission d'images a resolutions multiples dans un systeme de telecommunications a frequence radio
WO1999028858A1 (fr) * 1997-11-29 1999-06-10 Algotec Systems Ltd. Procede de compression d'image

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992005660A1 (fr) * 1990-09-14 1992-04-02 Eastman Kodak Company Systeme de photofinissage d'imagerie numerique de multiresolution
JPH07143475A (ja) * 1993-11-12 1995-06-02 Hitachi Ltd 画像データ変換システム
GB2295936A (en) * 1994-12-05 1996-06-12 Microsoft Corp Progressive image transmission using discrete wavelet transforms
WO1996029818A1 (fr) * 1995-03-17 1996-09-26 Imperial College Of Science, Technology & Medicine Transmission progressive d'images
GB2313757A (en) * 1995-06-30 1997-12-03 Ricoh Kk Method using an embedded codestream
WO1998003008A1 (fr) * 1996-07-16 1998-01-22 Ericsson, Inc. Procede de transmission d'images a resolutions multiples dans un systeme de telecommunications a frequence radio
WO1999028858A1 (fr) * 1997-11-29 1999-06-10 Algotec Systems Ltd. Procede de compression d'image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN vol. 1995, no. 09 31 October 1995 (1995-10-31) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2848765A1 (fr) * 2002-12-11 2004-06-18 Canon Kk Procede et dispositif de determination d'une configuration de donnees d'un signal numerique d'image
US7570825B2 (en) 2002-12-11 2009-08-04 Canon Kabushiki Kaisha Method and device for determining a data configuration of a digital signal of an image

Also Published As

Publication number Publication date
AU2001239374A1 (en) 2002-06-11
US20020097411A1 (en) 2002-07-25
FR2817437B1 (fr) 2003-02-07
WO2002045409A1 (fr) 2002-06-06

Similar Documents

Publication Publication Date Title
FR2817437A1 (fr) Installation et procede d'echange de donnees d'image de qualite et/ou taille controlee
FR2727817A1 (fr) Transmission d'image progressive utilisant des transformations d'ondelettes discretes
FR2755818A1 (fr) Codage de signal numerique par decomposition en sous-bandes de frequence et quantification vectorielle a etats finis
EP2135221A1 (fr) Procédé de codage de données répresentatives d'une texture multidimensionnelle, dispositif de codage, procédé et dispositif de décodage, signal et programme correspondants
EP1116185B1 (fr) Methode de compression et de codage d'un reseau maille tridimensionnel
EP0825556A1 (fr) Codeur par transformation de blocs pour segments d'image de formes arbitraires
FR2750280A1 (fr) Transmission progressive d'image numerique
EP0514304A1 (fr) Procédé de codage et décodage d'images en couleurs à fort taux de compression sans filtrage
EP1181668B1 (fr) Procede de codage/decodage d'images
FR2625399A1 (fr) Dispositif de regulation de debit conjointe a au moins deux composantes de signaux video numeriques
FR2935864A1 (fr) Procede de codage par blocs d'une image matricielle de pixels, programme d'ordinateur et dispositif de capture d'images correspondants
WO2020188172A1 (fr) Procédés et dispositifs de codage et de décodage d'une séquence vidéo multi-vues
Battiato et al. A fast vector quantization engine for CFA data compression
EP4140136A1 (fr) Procédés et dispositifs de codage et de décodage d'une séquence vidéo multi-vues
EP1679899A1 (fr) Procédé et dispositif de réduction des artefacts d'une image numérique
EP1691342B1 (fr) Procédé et dispositif de traitement d'image
EP4078959A1 (fr) Procede d'encodage d'une image numerique en vue de sa compression
EP4109900A1 (fr) Procédés de décodage et de codage d'une image, dispositifs et signal associés
EP3203737A1 (fr) Procédé et dispositif d'encodage d'un signal numérique multidimensionnel, en particulier un signal d'image, et procédé et dispositif correspondants de décodage
WO2024121107A1 (fr) Procédé et dispositif de codage et décodage d'images.
WO2024121109A1 (fr) Procédé et dispositif de codage et décodage d'images
FR2717927A1 (fr) Procédé et appareil de compression, de palettisation, d'émission et de réception d'images en couleur.
WO2024121110A1 (fr) Procédé et dispositif de codage et décodage de séquences d'images
WO2009007603A2 (fr) Procedes et dispositifs de codage et de decodage d'images numeriques tenant compte du type des blocs source, signal et produits programme d'ordinateur correspondants
FR2797370A1 (fr) Procede et systeme pour afficher des images transmises a distance

Legal Events

Date Code Title Description
TP Transmission of property
TP Transmission of property
ST Notification of lapse

Effective date: 20080930