FR2758636A1 - Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension - Google Patents

Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension Download PDF

Info

Publication number
FR2758636A1
FR2758636A1 FR9700813A FR9700813A FR2758636A1 FR 2758636 A1 FR2758636 A1 FR 2758636A1 FR 9700813 A FR9700813 A FR 9700813A FR 9700813 A FR9700813 A FR 9700813A FR 2758636 A1 FR2758636 A1 FR 2758636A1
Authority
FR
France
Prior art keywords
components
segment
samples
image
approximation
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
FR9700813A
Other languages
English (en)
Other versions
FR2758636B1 (fr
Inventor
De Saint Martin Francoi Moreau
Albert Cohen
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Priority to FR9700813A priority Critical patent/FR2758636B1/fr
Publication of FR2758636A1 publication Critical patent/FR2758636A1/fr
Application granted granted Critical
Publication of FR2758636B1 publication Critical patent/FR2758636B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

L'invention concerne le traitement d'images par régions et par segments. On obtient des composantes (c2, c4, (, c12) d'approximation et des composantes (d2, d4, (, d12) de détail correspondant à une partie centrale (C15) d'un segment, en effectuant une transformation discrète sur les échantillons (x1, x2, (, x15) d'image correspondant au segment (S15). Selon l'invention, il est prévu de: - calculer des composantes d'approximation correspondant à des parties d'extrémité du segment, en extrapolant des valeurs de composantes (c2, c4, c10, c12) d'approximation de la partie centrale (C15) du segment; et, - déduire des composantes de détail correspondant à des parties d'extrémité du segment, à partir des composantes d'approximation calculées par extrapolation et des échantillons (x1, x2, x13, x14, x15) correspondant à des parties d'extrémité du segment, de manière à permettre une reconstruction parfaite des échantillons (x1, x2, (, x15) du segment (S15) d'image.par.

Description

TRAITEMENT D'IMAGES PAR REGIONS
UTILISANT UNE TRANSFORMATION DISCRETE SUR DES
SEGMENTS FINIS SANS EXTENSION
La présente invention concerne le domaine du traitement numérique des images.
Elle s'applique au traitement d'images numérisées, telles que des images de télévision enregistrées par caméra numérique, de visiophone ou plus généralement toute image relevée, transmise et reconstruite point par point, la numérisation consistant à acquérir par la mesure et/ou le calcul un niveau de gris ou de couleur d'un point de l'image et à le coder de façon binaire.
Un objectif principal du codage d'image est de permettre une compression des données numériques de l'image car les canaux de transmission tels que les canaux hertziens ou les canaux téléphoniques ont un débit de données limité par rapport au débit de données que l'on cherche à transmettre.
Toutefois la possibilité de comprimer les données après le codage d'image doit préserver la possibilité de reconstruire l'image dans tous ses détails. On pourra ainsi reconstruire parfaitement les images si on dispose de canaux de transmission à débit de données étendu ou bien reconstruire parfaitement des images si les images se renouvellent lentement.
Des transformations discrètes sont couramment utilisées en traitement d'image pour coder des échantillons numériques des points d'une image et préparer une compression des données numériques. Ces transformations discrètes sont analogues aux transformations discrètes de Fourrier utilisées en traitement du signal. On connaît par exemple la transformation en ondelettes discrètes (notée DWT) et la transformation en cosinus discrets (notée DCT). Ces transformations discrètes consistent à décomposer un nombre déterminé d'échantillons en leur appliquant des coefficients de pondération respectifs pour calculer une composante correspondant à ces échantillons. Pour une série infinie d'échantillons d'image on peut ainsi calculer une série infinie de composantes correspondantes.
Un procédé de codage d'image optimum utilisant de telles transformations doit fournir autant de composantes que d'échantillons décomposés pour permettre une reconstruction parfaite de l'image en limitant au maximum le débit de données.
L'intérêt de ces transformées discrètes est de fournir une décomposition des échantillons en composantes de plusieurs types. Ceci permet d'obtenir une représentation de signal d'image dans laquelle l'information est principalement concentrée sur un faible nombre de composantes.
Des méthodes de codage connues permettent en particulier de coder l'image de manière ordonnée, les informations les plus générales, c'est-à-dire les données grossières de l'image, étant transmises en priorité et les informations les plus fines, c'est-à-dire les données détaillées de l'image étant transmises en dernier lieu.
On peut alors reconstruire l'image progressivement en commençant par une image grossière, reconstruite avec les données transmises en priorité et en affinant l'image avec les données plus détaillées reçues en dernier lieu, la transmission de données pouvant être interrompue ou limitée à tout instant pour transmettre une nouvelle image.
Des bancs de filtres numériques de codage d'image effectuent de préférence les calculs correspondant à de telles transformations discrètes.
Ces filtres opèrent ainsi la séparation des informations générales et des informations détaillées de l'image.
De tels bancs de filtres reçoivent en entrée des échantillons numériques des images relevées et fournissent en sortie des composantes numériques calculées à l'aide de coefficients de filtrage numériques.
Les plus simples des bancs de filtres décomposent linéairement un groupe d'échantillons d'image en deux sous-groupes de composantes, comme suit
- des composantes de détail encore appelées coefficients passe-haut, et
- des composantes d'approximation ou coefficients passe-bas.
Ces sous-groupes sont encore appelés sous-bandes car les composantes d'approximation contiennent généralement des informations sur la bande des basses fréquences spatiales de l'image, tandis que les composantes de détail contiennent des informations sur la bande des hautes fréquences spatiales de l'image.
Plus généralement, les bancs de filtres numériques connus décomposent un groupe d'échantillon d'une image de dimension 2 en effectuant une décomposition horizontale et une décomposition verticale, fournissant ainsi quatre sous-groupes de composantes, comme suit:
- des composantes d'approximation,
- des composantes de détails horizontaux,
- des composantes de détails verticaux, et
- des composantes de détail diagonal.
Des transformations en ondelettes discrètes (DWT) connues permettent en effet une décomposition en quatre types de composantes discrètes.
Les procédés de codage d'image fournissent ainsi quatre sous-images
- une sous-image comportant les composantes d'approximation,
- une sous-image comportant les composantes de détail vertical,
- une sous-image comportant les composantes de détail horizontal,
- une sous-image comportant les composantes de détail et diagonal.
Ces quatre sous-images comportent un même nombre de composantes égal au quart du nombre d'échantillons de l'image. Le nombre d'échantillons de l'image est de préférence divisible par une puissance de 2. Par exemple, les points de l'image sont rangés en lignes et en colonnes, les lignes étant en nombre 2m, et les colonnes en nombre 2", m et n étant entiers. L'image comporte donc 2m x 2n points et échantillons. On dit alors que l'image a des dimensions dyadiques. Chaque sous-image comporte alors 2m+n-2 composantes.
Le filtrage des échantillons d'une image est souvent effectué en décomposant chaque ligne de l'image par un banc de filtres linéaires (de dimension 1), puis en traitant les colonnes des deux sous-images résultantes par un autre banc de filtres linéaires. On obtient ainsi un filtrage de dimension 2 qui a l'avantage d'être moins complexe qu'un filtrage matriciel (de dimension 2). Les filtres linéaires utilisés comportent ainsi une suite de coefficients numériques qui sont appliqués à des segments ou suites linéaires d'échantillons numériques d'une image pour calculer des composantes d'approximation et de détail de l'image.
Une difficulté apparaît cependant lorsqu'on applique une transformation discrète sur un segment fini d'échantillons, c'est-à-dire sur une suite d'échantillons en un nombre fini. Aux extrémités de tels segments on ne dispose pas du nombre déterminé d'échantillons pour calculer une composante correspondante.
Dans le cas de segments de longueur paire, c'est-à-dire comportant un nombre pair d'échantillons, des procédés connus permettent d'étendre artificiellement le segment d'échantillons à ses extrémités pour disposer du nombre déterminé d'échantillons et calculer les composantes d'extrémité. Ces procédés prévoient qu'au delà d'une extrémité du segment, les échantillons sont répliqués par symétrisation ou par périodisation. En effet, dans ce cas, le signal de composantes issues de la transformation du signal d'échantillonnage périodisé est lui-même périodique, ce qui permet de transmettre un nombre minimum de composantes.
Un exemple d'extension de segment par symétrisation est visible aux figures 4 et 5. On voit figure 4 que le segment d'échantillon d'origine xl, x2, ...,x7, x8 de longueur paire est prolongé artificiellement avant le début xl du segment par des échantillons x4', x3', x2' obtenus en dupliquant les échantillons d'origine x2, x3, x4 qui suivent le début xl du segment. De même, après la fin x8 du segment, celui-ci est prolongé par des échantillons x7', x6', x5' obtenus en dupliquant les échantillons d'origine x5, x6, x7 qui précèdent la fin x8 du segment.
Par ces procédés d'extension, on dispose d'une base plus étendue pour appliquer les coefficients de pondération en nombre déterminé et on peut calculer les composantes par la transformation. Selon la figure 4, les composantes (u, v) sont calculées à partir de trois échantillons, par exemple les échantillons x2, x3, x4 sont utilisés pour calculer la composante u2 et aussi pour calculer la composante v2. Les composantes d'extrémité ul et vl sont calculées à partir des échantillons x2', xl et x2, ce qui ne serait pas possible sans extension du segment.
De tels procédés d'extension sont couramment appliqués sur des images entières, les segments étant formés de suites paires d'échantillons correspondant à des lignes et/ou à des colonnes de points de l'image.
Un inconvénient général de tels procédés de transformation avec extension de segment est qu'ils ne permettent pas de traiter des segments de longueur quelconque et notamment de longueur impaire sans transmettre plus de composantes que le minimum correspondant au nombre d'échantillons du segment.
La demande concerne particulièrement le codage d'images par régions où les difficultés d'extension de segments sont systématiquement rencontrées.
Le codage par régions d'une image est une forme améliorée de traitement d'image, dans lequel un procédé de calcul reconnaît et regroupe des points de l'image ayant une certaine parenté. Par exemple, l'image peut être fragmentée en régions, encore appelées zones, ayant une couleur ou une teinte distincte et correspondant aux divers objets présents dans la scène.
Divers procédés peuvent être mis en oeuvre pour fragmenter l'image notamment à l'aide d'un algorithme ou d'un logiciel de calcul.
Sur la figure 1, on a schématisé par exemple une image I sur laquelle des régions d'images RO,RI,R2,RI' ont été reconnues et isolées par un algorithme d'extraction de contours, un contour Z de région étant représenté.
L'intérêt de cette décomposition en régions est de permettre de traiter chacune d'elles en fonction de sa vitesse de renouvellement et de la finesse des détails de la région que l'on veut obtenir. Par exemple dans une image d'une scène comportant un personnage mobile sur un fond fixe, on pourra isoler une région correspondant au fond et des régions correspondant à des parties du personnage tel que le corps et le visage. Les données de la région correspondant au fond fixe pourront être renouvelées assez rarement tandis que les données des régions correspondant au personnage mobile devront être renouvelées souvent et transmises en priorité. De plus, les données de la région correspondant au visage du personnage seront transmises en détail pour une reconstruction parfaite de la région du visage.
La décomposition en région permet ainsi une classification et une sélection avantageuses des données à transmettre. Cette décomposition permet également des fonctionnalités avancées, comme des manipulations des objets d'une scène, des insertions ou extractions d'objets, ou encore des constructions d'images hybrides à partir d'images naturelles et d'images de synthèse.
On connaît des transformations discrètes étudiées pour s'appliquer à des régions d'image de formes variables. Par exemple, une transformation en ondelettes discrètes basée sur des régions (notée RBDWT) ou une transformation en cosinus discret pour formes variables (notée SADCT) sont utilisées en codage d'image par régions.
Chaque région est décomposée en segments de points (ou d'échantillons correspondants aux points du segment de région), le segment étant délimité par les contours de la région. Les segments sont par exemple constitués des lignes mO, ml, ..., et m15 ou des colonnes nO, nl, ..., et nl5 de points de la région d'image I de la figure 1. Plus généralement un segment peut être constitué d'une séquence de points de la région d'image.
Un exemple de segmentation de régions d'une image est donné aux figures 3a à 3k sur lesquelles figurent les segments S1 à S15 de l'image I de la figure 1.
Pour chaque segment codé, les procédés de codage d'image par région fournissent de même deux sous-segments, encore appelés sous-bandes, comme suit:
- un sous-segment comportant les composantes d'approximation, et
- un sous-segment comportant les composantes de détail du segment.
Mais les régions sont de forme très variables et ont exceptionnellement des dimensions dyadiques. Des difficultés apparaissent pour traiter des régions et des segments de taille aussi variables.
Un problème apparaît en particulier pour décomposer des segments ayant un nombre impair de points donc d'échantillons.
La décomposition par transformation fournit des paires de composantes. Une décomposition d'un segment impair doit donc fournir plus de composantes que d'échantillons pour permettre une reconstruction parfaite du segment.
Or un objectif du codage d'image utilisant de telles décompositions par transformation est de fournir autant de composantes que d'échantillons.
Une solution a été exposée par H.J. Barnard lors du Congrès "European Signal Processing Conference" qui s'est déroulé en 1994. Cette solution est détaillée dans un article intitulé "A Region-Based Discrete
Wavelet Transform" publié dans les actes du Congrès édités par M. Holt, C.
Cowan, P. Grant, W; Sandham, éditeurs à Edimbourg.
Les segments ayant un nombre impair d'échantillons tel que celui représenté à la figure 4 sont traités selon H.J. Barnard en augmentant artificiellement la longueur du segment d'une région par un point ajouté à une extrémité du segment, soit à l'extrémité de début, soit à l'extrémité de fin du segment.
La valeur de l'échantillon de ce point artificiel est fixée arbitrairement.
Le segment est de plus étendu par symétrisation ou périodisation.
Les figures 4 et 5 illustrent le traitement d'un segment de longueur impaire par l'algorithme de Barnard. Dans cet exemple le segment (xl, x2, ...,x7) ayant un nombre impair de points est prolongé par un point x8 artificiel et symétrisé. La valeur correspondante de l'échantillon x8 est calculée de sorte que la composante de détail v correspondant au filtrage de x6, x7 et x8 ait une valeur nulle.
Selon cette technique on peut alors calculer la composante d'approximation manquante u4 et disposer d'autant de composantes vl, v2, v3, ul, u2, u3, u4 que d'échantillons xl, x2, ..., x7 d'origine.
On obtient ainsi autant de composantes que d'échantillons pour un segment mais en introduisant un échantillon artificiel.
Lors de la reconstruction, on calcule les échantillons d'un segment ayant la même longueur qu'initialement, les échantillons d'extrémité étant calculés à partir des composantes transmises.
Un inconvénient de ce procédé est l'apparition de distorsions sur les régions d'images transmises et reconstruites. De telles distorsions apparaissent sur les bords des segments et correspondent à ces échantillons artificiels.
Un but de l'invention est de permettre un traitement simple et sans distorsion de segments d'image de longueur quelconque, en particulier de segments de régions d'image.
Un autre but de l'invention est de limiter le nombre de données transmises pour reconstruire une image.
Enfin l'invention a pour but de permettre une reconstruction progressive des images, en particulier des régions d'image, avec le minimum de distorsions sur les premières images approximatives obtenues.
De façon surprenante, les procédés et dispositifs selon l'invention permettent de calculer des composantes d'extrémité d'un segment fini d'échantillons sans extension du segment.
Selon l'invention, il est prévu de coder ou de décoder des images sous forme de composantes d'approximation et de composantes de détail, les composantes d'approximation correspondant aux extrémités d'un segment de région d'image étant calculées par extrapolation. Les composantes de détail correspondant aux extrémités du segment sont alors calculées par déduction, en résolvant un système d'équation comportant les valeurs des échantillons, les coefficients de la transformation et les composantes d'approximation obtenues par extrapolation.
Les composantes correspondant au centre du segment sont simplement calculées en appliquant les coefficients de la transformation aux échantillons du segment.
Au moment de la transmission, le nombre des composantes d'approximation est moins grand que le nombre de composantes de détail.
L'invention permet de transmettre les composantes d'approximation uniquement si elles peuvent être calculées directement par transformation et en revanche de transmettre toutes les composantes de détail nécessaires à la reconstruction qu'elles soient calculées par transformation ou par déduction.
Le nombre total de composantes transmises correspond au plus au nombre d'échantillons sans ajout. Le débit utile n'a donc pas besoin d'être augmenté.
L'invention s'applique à toute forme d'images déjà segmentées par construction, comme celles obtenues par imagerie de synthèse.
L'invention prévoit un procédé de codage d'images par régions, une image étant fragmentée en régions , une région d'image étant segmentée en segments, chaque segment étant formé d'une séquence de points de la région d'image, un segment ayant des extrémités correspondant à des contours de la région, le procédé comportant des étapes consistant à:
- obtenir des composantes d'approximation et des composantes de détail correspondant à une partie centrale d'un segment, en effectuant une transformation discrète sur les échantillons d'image correspondant au segment;
le procédé comportant des étapes particulières consistant à:
- calculer des composantes d'approximation correspondant à des parties d'extrémité du segment, en extrapolant des valeurs de composantes d'approximation de la partie centrale du segment; et,
- déduire des composantes de détail correspondant à des parties d'extrémité du segment, à partir des composantes d'approximation calculées par extrapolation et des échantillons correspondant à des parties d'extrémité du segment, de manière à permettre une reconstruction parfaite des échantillons du segment d'image.
L'invention prévoit un procédé de décodage d'images par régions, une région d'image étant segmentée en segments, chaque segment étant formé d'une séquence de points de la région d'image, un segment ayant des extrémités correspondant à des contours de la région, le procédé comportant des étapes consistant à
- reconnaître un segment à partir de données de segmentation d'une image;
- recevoir des composantes du segment;
- reconstituer des échantillons correspondant à une partie centrale du segment, en effectuant une transformation discrète inverse sur les composantes reçues
le procédé comportant des étapes particulières consistant à
- calculer des composantes d'approximation correspondant à des parties d'extrémité du segment, en extrapolant des valeurs de composantes d'approximation reçues ; et,
- reconstituer des échantillons correspondant aux parties d'extrémité du segment, en effectuant une transformation discrète inverse sur des composantes d'approximation calculées par extrapolation et sur des composantes reçues.
De façon avantageuse, on transmet un nombre de composantes inférieur ou égal au nombre d'échantillons prélevés, en particulier on transmet moins de composantes d'approximation que de composantes de détail.
L'invention est de préférence mise en oeuvre avec un décodeur d'images par régions, comportant:
- des moyens de reconnaissance d'une segmentation d'image,
- des moyens de filtrage ayant un ordre, les moyens de filtrage recevant en entrée des composantes de segment d'image et fournissant en sortie des échantillons reconstruits de segment d'image, après avoir effectué une transformation discrète sur les composantes du segment, la transformation étant effectuée sur un nombre de composantes correspondant à l'ordre du filtrage, et
- des moyens de calcul fournissant des composantes d'approximation manquantes, selon la segmentation reconnue, parmi les composantes nécessaires à la reconstruction parfaite du segment d'image,
caractérisé en ce que les moyens de calcul effectuent une extrapolation de composantes d'approximation reçues pour fournir les composantes d'approximation manquantes.
L'invention sera mieux comprise à la lecture de la description et des dessins qui vont suivre, donnés uniquement à titre d'exemples non limitatifs; sur les dessins annexés
- La figure 1 précédemment décrite illustre une décomposition en régions d'une image numérisée selon une technique connue;
- la figure 2 illustre une décomposition en sous-images de l'image de la figure 1 selon une technique connue;
- les figures 3a à 3k illustrent une segmentation de l'image de la figure 1 en segments de région d'image selon une technique connue;
- la figure 4 illustre l'extension du segment Sl3 de la figure 3i et le calcul de composantes du segment selon une technique connue;
- la figure 5 illustre un exemple de calcul de valeurs de composantes à partir de valeurs d'échantillons du segment de la figure 4 selon une technique connue;
- la figure 6 représente un exemple de transformation discrète ou de filtrage mis en oeuvre par un procédé ou un dispositif selon l'invention;
- la figure 7 représente un exemple de calcul de composantes suivant la transformation de la figure 6 selon l'invention;
- la figure 8 représente un exemple de réalisation de moyens de filtrage selon l'invention, effectuant le calcul par transformation des figures 6 et 7 ;
- La figure 9 représente un exemple de réalisation de dispositif de codage et de décodage de segments de régions d'image utilisant une série de moyens de filtrage de la figure 8 selon l'invention;
- les figures 1 0a et 10b représentent un autre exemple de transformation discrète ou de filtrage mis en oeuvre par le procédé de codage ou le dispositif selon l'invention;
- la figure 11 représente une étape de filtrage ou de décomposition d'échantillons en composantes d'approximation et de détail mis en oeuvre par le procédé de codage d'image ou le dispositif selon l'invention
- la figure 12 représente une autre étape de filtrage ou d'extrapolation de composantes, mis en oeuvre par le procédé de codage d'image ou le dispositif selon l'invention;
- les figures 13a et 13b représentent un autre exemple de transformation discrète ou de filtrage mis en oeuvre par le procédé de décodage d'image ou le dispositif selon l'invention
- la figure 14 représente une étape de filtrage ou d'extrapolation de composantes mis en oeuvre par le procédé de décodage d'image ou le dispositif selon l'invention
- la figure 15 représente un autre exemple de réalisation de moyens de filtrage selon l'invention, effectuant les transformations des figures 10a, 10b, 13a et 13b ;
- la figure 16 représente une variante de l'autre exemple de réalisation de moyens de filtrage selon l'invention, effectuant les transformations des figures 10a, 10b, 13a et 13b;
- la figure 17 représente un dispositif de traitement d'image mettant en oeuvre plusieurs moyens de filtrage, selon l'invention;
- la figure 18 représente un diagramme de quantification variable des échantillons mis en oeuvre par un procédé ou un dispositif selon l'invention; et,
- la figure 19 schématise une décomposition d'image en sous-images mise en oeuvre par un procédé ou un dispositif selon l'invention.
L'invention est mise en oeuvre avec des techniques de traitement d'image connues et qui ne seront pas détaillées dans la présente.
En particulier, l'image est fragmentée en régions et les régions sont segmentées à l'aide d'algorithmes de reconnaissance de régions et d'algorithmes de segmentation connus, par exemple un algorithme d'extraction de contour. De plus amples détails sur la segmentation seront trouvés dans les publications suivantes:
- article de F. Dufaux intitulé "Vector quantization based motion
Fields segmentation under the entropy criterion", paru dans la revue "Journal of Visual Communication and Image Representation", vol. 5, n" 4, pp. 356369, décembre 1994.
- article de D.W. Murray intitulé "Scene segmentation from visual motion using global optimization", paru dans la revue "IEEE Trans. Pattern
Anal. and Machine Intell.", vol. PAMI-9, n" 2, pp.220-228, mars 1987.
- article de M. Hoetter intitulé "Image segmentation based on object oriented mapping parameter estimation", paru dans la revue "Signal
Processing", vol. 15, nO 3, pp. 315-334, octobre 1988.
- article de S. Peleg intitulé "Motion based segmentation" paru dans les actes du congrès "International Conference on Pattern Recognition", pages 109-113, congrès qui s'est déroulé à Atlantic City, NJ en juin 1990.
- article de F. Dufaux intitulé "Spatio-temporal segmentation based on motion and static segmentation", paru dans les actes du congrès "ICIP'95", congrès qui s'est déroulé à Washington, DC en octobre 1995.
- article de P. Salembier intitulé "Hierarchical morphological segmentation for image sequence coding", paru dans la revue "IEEE Trans.
Image Proces.", vol. 3, n" 5, pp. 639-651, septembre 1994.
Dans la description qui suit on réserve l'usage des termes aux définitions suivantes
Dimension s'applique aux images et aux filtres (et transformation correspondante), et désigne le nombre d'axes sur lesquels se développe l'image ou le filtre, les images ayant communément la dimension 2. Les filtres peuvent être de dimension 1 ou linéaires s'ils sont formés d'une suite de coefficients s'appliquant à une suite linéaire d'échantillons comme une ligne, une colonne ou plus généralement un segment d'image. Les filtres peuvent être d'ordre 2 ou matriciels s'ils sont formés d'une suite matricielle de coefficients s'appliquant à une suite matricielle d'échantillons de l'image, la matrice d'échantillon comportant des lignes et colonnes d'échantillons d'une image de dimension 2 donc.
Ordre s'applique aux filtres et aux transformations et désigne le nombre de coefficients de pondération qu'ils contiennent, lorsqu'ils sont de dimension 1. Lorsqu'ils sont de dimension 2, les filtres et transformations ont un premier ordre correspondant au nombre de coefficients d'une ligne de leur matrice et un second ordre correspondant au nombre de coefficients d'une colonne de leur matrice.
On note que les filtres ont une dimension et un ou plusieurs ordre(s).
Rang désigne le numéro d'un échantillon xi parmi les n échantillons (xl, x2, ..., xi, ..., xn) d'un segment.
Longueur, ou taille, désigne le nombre total d'échantillons ou de points d'un segment ou d'une image.
Niveau s'applique aux filtres et aux transformations et désigne le numéro ou le nombre de fois qu'un filtrage ou une transformation est répété sur les échantillons d'un segment de région d'image.
L'invention va être maintenant décrite à partir d'un exemple particulièrement simple de transformation discrète, la transformée de Haar.
Comme visible à la figure 6, selon cette transformation, deux échantillons xl et x2 d'un segment sont décomposés en deux composantes:
- une composante moyenne a2, calculée selon la formule suivante:
a2=xl +x2
2
- une composante différentielle b2, calculée selon la formule suivante:
b2=xl -x2
2
Cette transformation est de préférence effectuée par des filtres numériques ayant des coefficients de pondération comme indiqués sur la figure 6.
Une suite de n échantillons (xO, xl, ..., xn) d'un segment est décomposée, selon la transformée de Haar en deux suites de composantes (al, a2, ..., an) et (bl, b2, .., bn), n étant un nombre entier. Ces deux suites sont généralement appelées sous-bandes basse fréquence et sous-bandes haute fréquence respectivement. La suite de composantes moyennes (al, a2, ..., an) contient en effet des informations sur les basses fréquences spatiales du segment d'image et la suite de composantes différentielles (bl, b2 ..., bn) contient des informations sur les fréquences spatiales élevées du segment d'image.
L'information visuelle principale est généralement contenue dans les composantes moyennes a.
On remarque que la décomposition d'une suite d'échantillons (xO, xl, ..., xn) en deux sous-suites de composantes (al, a2, ..., an) et (bl, b2, ..., bn) doublerait approximativement le nombre de données.
Afin de supprimer les redondances d'informations, seule une composante sur deux est calculée et transmise. Les composantes moyennes et différentielles sont ainsi sous échantillonnées d'un rapport 2. Lors de la décomposition d'une suite de n échantillons (xl, x2, ..., xn) on transmet par exemple seulement les composantes de rang pair (a2, a4, ..., ap) et (b2, b4, ..., bp), p étant un entier pair.
Une telle décomposition, à partir d'une transformation discrète comme la transformée de Haar, permet une compression de données car on peut abandonner les composantes différentielles b qui contiennent généralement des informa
Pour un nombre p pair d'échantillons (xl, x2, ..., xp) la décomposition fournit un même nombre p de composantes (a2, a4, ..., ap, b2, b4, ..., bp) sans redondance ni perte d'information. La reconstruction parfaite du segment est possible en se basant sur une transformation inverse. Dans l'exemple de la transformée de Haar, la transformée inverse est donnée par les formules suivantes
xl =a2+b2 x2=a2-b2
où xl est un échantillon reconstruit, et
x2 est un autre échantillon reconstruit.
Pour un nombre i impair d'échantillons (xl, x2, ..., xi) on ne peut plus procéder au calcul et au sous échantillonnage de toutes les composantes. La figure 7 montre par exemple le traitement d'un segment S13 comportant sept échantillons (xl, x2, ..., x7).
En procédant à une transformation d'ordre 2 (c'est-à-dire portant sur 2 échantillons à la fois) comme la transformée de Haar illustrée figure 6, on obtient six composantes (a2, a4, a6, b2, b4, b6) correspondant aux six premiers échantillons (xl, ..., x6) du segment S13. Mais la transformée ne peut s'appliquer sur le seul échantillon impair x7.
Il faudrait en effet disposer d'une paire d'échantillons (x7, x8) pour obtenir les composantes moyenne a8 et différentielle b8 par la transformation d'ordre 2.
Or, il faut disposer des composantes a8 et b8 pour calculer l'échantillon .7 par la transformation inverse et reconstruire le segment (x 1 x2 ..., x7). On constate ici que pour une reconstruction parfaite il faut disposer d'un nombre de composantes (a2, b2, a4, b4, ..., a8, b8) égal ou plus élevé au nombre d'échantillons (xl, x2,..., x7) à reconstruire.
De telles composantes, nécessaires à la reconstruction parfaite des échantillons du segment, mais qui ne peuvent être calculées directement par la transformation discrète, seront appelées composantes manquantes. Les composantes manquantes correspondent généralement aux parties d'extrémité du segment. Plus précisément, les composantes manquantes sont les composantes qui pourraient être calculées en effectuant la transformation discrète sur des échantillons du segment situés en deçà de son extrémité et sur des échantillons ne faisant pas partie du segment, donc situés au-delà de l'extrémité du segment.
Selon une caractéristique de l'invention, on calcule alors une partie des composantes manquantes en extrapolant les valeurs de composantes déjà obtenues par transformation. Les composantes manquantes extrapolées sont de préférence les composantes basse fréquence comme les composantes moyennes. Dans notre exemple de la figure 7 on calcule ainsi par extrapolation la composante moyenne a8. On peut effectuer une extrapolation linéaire sur les composantes moyennes déjà calculées a4, a6 pour obtenir une valeur de la composante moyenne a8 selon la formule suivante
a8=2a6-a4
où a6 est la valeur de la composante moyenne calculée par transformée de Haar sur les échantillons x5 et x6 ; et
a4 est la valeur de la composante moyenne calculée par transformée de Haar sur les échantillons x3 et x4.
De façon générale on effectue une extrapolation, notamment polynomiale, sur les composantes moyennes (a) déjà obtenues pour calculer les valeurs de composantes moyennes manquantes.
La composante moyenne manquante peut aussi être extrapolée en recopiant la valeur d'une composante moyenne déjà obtenue, suivant l'exemple de la formule suivante:
a8 = a6
L'extrapolation peut encore consister à donner une valeur arbitraire à la composante moyenne manquante, sans considération de lissage. Par exemple, la composante peut prendre les valeurs particulières suivantes
a8 = 1
ou a8 = 0
L'extrapolation fournit ainsi une partie des composantes manquantes, mais pour éviter de reconstruire des échantillons d'image approximatifs, l'autre partie des composantes manquantes n'est pas obtenue par ce moyen.
L'invention prévoit, selon une autre caractéristique, de déduire les autres composantes manquantes à partir des composantes extrapolées et des échantillons correspondant. Les composantes manquantes déduites sont de préférence des composantes haute fréquence, comme les composantes différentielles.
Dans notre exemple de la figure 7, on déduit ainsi la valeur de la composante différentielle b8 à partir de la composante moyenne a8 extrapolée et de la valeur de l'échantillon x7. Ces valeurs sont en effet liées par l'équation suivante: b8=x7-a8
où x7 est un échantillon d'extrémité du segment de valeur connue, et
a8 est une composante moyenne du segment de valeur connue.
De préférence, on déduit la valeur d'une composante différentielle d'extrémité en résolvant l'équation donnant la valeur de l'échantillon d'extrémité en fonction des composantes moyenne et différentielle d'extrémité.
Nous allons voir que ce procédé illustré avec une transformation d'ordre 2 et avec au plus deux composantes manquantes peut être appliqué avec des transformations discrètes d'ordre supérieur.
On remarque que les composantes (a2, b2, a4, b4, ..., a8, b8) finalement obtenues sont en nombre plus élevé que les échantillons du segment correspondant.
Cependant, l'invention permet avantageusement de réduire le nombre de composantes à transmettre.
Dans notre exemple de la figure 7, il suffit en effet de transmettre seulement les sept composantes a2, b2, a4, b4, a6, b6 et b8 pour reconstruire totalement les sept échantillons xl, x2, x3, x4, x5, x6 et x7. Il n'est pas nécessaire de transmettre la composante moyenne a8 extrapolée, par exemple à partir des composantes moyennes a4 et a6. Il suffit en effet que le dispositif de reconstruction d'image connaisse le mode d'extrapolation pour qu'il calcule de façon interne la composante moyenne a8 par extrapolation des composantes moyennes transmises, comme a4 et a6. Le dispositif dispose alors de toutes les composantes (a2, b2, a4, b4, a6, b6, a8, b8) pour reconstruire totalement le segment (.l x2, x3, x4, x5, x6, x7).
De façon générale, l'invention permet de ne pas transmettre les composantes extrapolées. On transmet donc les composantes du segment obtenues directement par la transformation discrète et les composantes déduites.
Lors du décodage de l'image, on reçoit les composantes obtenues par transformation, les composantes déduites et des données de segmentation permettant de reconnaître la taille du segment.
En extrapolant de façon interne les composantes obtenues par transformation, on recalcule la valeur des composantes moyennes manquantes, dites composantes extrapolées. On dispose alors de toutes les composantes pour la reconstruction du segment de région d'image. La reconstruction s'opère en appliquant la transformation inverse sur toutes ces composantes.
Remarquons que selon une caractéristique de l'invention, on transmet un nombre de composantes moyennes moins élevé que le nombre de composantes différentielles sans cependant perdre d'information sur le segment à reconstruire.
Dans notre exemple mettant en oeuvre la transformée de Haar d'ordre 2, on peut transmettre ainsi trois composantes moyennes a2, a4, a6 et quatre composantes différentielles b2, b4, b6, b8, la composante moyenne a8 calculée par extrapolation n'étant pas transmise. Notons dans cet exemple que la différence entre le nombre de composantes moyennes transmises et le nombre de composantes différentielles a pour valeur 1 et reste inférieur à l'ordre 2 de la transformation effectuée, propriété qui apparaîtra clairement par la suite.
La figure 8 illustre un exemple de réalisation de codeur/décodeur d'image mettant en oeuvre l'invention. Le codeur est représenté sur la partie gauche de la figure, le décodeur étant situé à droite. Le codeur comporte une ligne d'arrivée des données d'échantillonnage x relié d'une part à un filtre A suivi par un sous-échantillonneur, et d'autre part à un filtre B suivi également par un sous-échantillonneur. Les sous-échantillonneurs sélectionnent une donnée sur deux parmi les données qui leur sont fournies en entrée, cette fonction étant de préférence effectuée par le filtre A ou B lui-même.
Le filtre A est par exemple un filtre numérique sommateur, effectuant le calcul d'une composante moyenne an, en additionnant deux échantillons xn-l et xn suivi d'une réduction de moitié selon la transformée de Haar présentée précédemment. Le filtre B est par exemple un filtre numérique soustracteur effectuant le calcul d'une composante différentielle bn en soustrayant l'échantillon xn à l'échantillon xn-l, suivi d'une réduction de moitié.
Pour effectuer l'extrapolation lorsque n est impair, il est prévu des circuits de calcul H1 et H2 calculant respectivement la composante moyenne extrapolée an + 1 et la composante différentielle déduite bn+ 1. Le circuit de calcul H 1 effectue, lorsque n est impair, une recopie de composante ou une extrapolation linéaire ou polynomiale à partir des composantes moyennes (a2, a4, ..., ap) calculées par le filtre A et sous-échantillonnées pour obtenir la composante moyenne manquante an+l. Le circuit de calcul H2 effectue, lorsque n est impair, une résolution d'équation. Dans l'exemple de la transformée de Haar, le circuit H2 soustrait la composante extrapolée an+l à l'échantillon xn d'extrémité de segment pour obtenir la composante différentielle manquante bn+l.
Le canal de transmission représenté en pointillé communique les données a et b au décodeur. On notera que seules les composante moyennes (a2, a4, ap) et (b2, b4,..., bp, bp+2) sont transmises, ap+2 étant omise.
Réciproquement, le décodeur reçoit les composantes a et b qui sont respectivement réparties sur deux lignes.
La ligne des composantes moyennes a est reliée à un circuit I de calcul de la composante extrapolée ap+2 suivi d'un suréchantillonneur et d'un filtre
J. Le circuit I complète la suite de composantes (a2, a4, ..., ap) par la composante ap+2 si le segment est impair. Dans cet exemple de réalisation le suréchantillonneur transmet les composantes (a2, a4 ..., ap) ou (a2, a4, ap, ap+2) en intercalant une donnée de valeur nulle entre chaque composante. Le circuit J selon cet exemple additionne deux données reçues successivement sur son entrée, comme indiqué figure 8.
La ligne des composantes différentielles b est reliée directement à un suréchantillonneur suivi d'un filtre K. Le filtre K selon cet exemple soustrait deux données reçues successivement sur son entrée. Les sorties des deux filtres J et K sont connectées à deux entrées d'un additionneur qui fournit ainsi les échantillons reconstruits x. les opérations effectuées par chacun de ces circuits sont détaillées sur la figure 8. D'autres variantes de réalisation de codeur ou de décodeur sont à la portée de l'homme du métier sans sortir du cadre de la présente invention.
Un avantage d'un tel dispositif de codage et/ou de décodage est qu'il permet une reconstruction parfaite des échantillons x lorsque les données a et b sont transmises comme décrit précédemment.
Un autre avantage est que le dispositif permet une compression de données en abandonnant une partie des composantes issues du codeur comme les composantes différentielles b. On obtient alors en sortie du décodeur des valeurs approximatives d'échantillons x fournissant une reconstruction grossière du segment de région d'image.
Une répétition du procédé de décomposition selon l'invention sur les composantes (a) déjà obtenues peut être effectuée. On obtient alors des composantes (a') codées au niveau 2. Par exemple les composantes moyennes (a2, a4, a6, a8) obtenues précédemment peuvent être fournies en entrée d'un codeur et considérées comme une suite d'échantillons pour effectuer une nouvelle transformation. On obtient alors des composantes moyennes de niveau 2 (a4', a8') et des composantes différentielles de niveau 2 (b4', b8').
Les composantes différentielles b pourraient être aussi décomposées au niveau 2. Cependant ces composantes contiennent des informations secondaires dont la décomposition est généralement moins intéressante.
La figure 9 illustre une réalisation correspondante de codeur et de décodeur dans laquelle les moyens de filtrages comportent plusieurs groupes de filtres, les groupes de filtres étant semblables à ceux de la figure 8 et de niveau distinct, les groupes de filtres étant reliés en série.
Pour récapituler, la décomposition au niveau 1 des échantillons x d'un segment fournit:
- des composantes différentielles b, et
- des composantes moyennes a.
La décomposition au niveau 2 des composantes moyennes a fournit ensuite
- des composantes différentielles b' de niveau 2, et
- des composantes moyennes a' de niveau 2.
Le décodage des composantes a' et b' de niveau 2 permet de reconstruire les composantes moyennes a de niveau 1.
Une hiérarchisation des informations sur l'image est ainsi obtenue.
Après le codage de l'image au niveau 2, les composantes peuvent être transmises dans l'ordre décroissant d'importance suivant
(a', b', b)
où a' désigne les n/4 composantes moyennes de niveau 2 du segment,
b' désigne les n/4 composantes différentielles de niveau 2, et
b désigne les n/2 composantes différentielles de niveau 1,
le segment comportant n échantillons.
Considérons par exemple une décomposition à l'ordre 4 d'un segment de 16 échantillons. On obtient:
1 composante moyenne de niveau 4 notée a"'
1 composante différentielle de niveau 4 notée b"'
2 composantes différentielles de niveau 3 notées b"
4 composantes différentielles de niveau 2 notées b'
8 composantes différentielles de niveau 1 notées b
L'ensemble de ces 16 composantes (a"', b"', b", b', b) permettent la reconstruction parfaite des 16 échantillons du segment.
Une compression des données du segment peut être effectuée. On obtient ainsi une compression de moitié des données en abandonnant les composantes moyennes b de niveau 1 donc en transmettant seulement les composantes (a"', b"', b", b').
De plus, on peut encore comprimer les données d'un rapport 16 par cette décomposition de niveau 4 en abandonnant toutes les composantes calculées sauf la composante moyenne a"' de niveau 4.
Le segment de 16 échantillons que l'on reconstruit contient alors uniquement l'information donnée par la composante a"'.
De préférence, les composantes extrapolées ne sont pas prises en compte lors d'une décomposition suivante, donc de niveau supérieur.
Considérons un nouvel exemple de décomposition de niveau 4 par la transformation de Haar (d'ordre 2) sur un segment impair de 31 échantillons donc fournissant des composantes extrapolées.
On dispose de 31 échantillons notés (x 1, x2, ..., x31). La décomposition de niveau 1 fournit 15 composantes moyennes transformées (a2, a4, ..., a30) et une composante moyenne extrapolée a32.
La décomposition de niveau 2 est avantageusement appliquée aux 15 composantes moyennes transformées pour limiter le nombre de composantes à transmettre.
On obtient par décomposition de niveau croissant les composantes suivantes:
- 7 composantes moyennes de niveau 2 (a'4, a'8,..., a'28),
- 3 composantes moyennes de niveau 3 (a"8, a"l6, a"24), et
- 1 composante moyenne de niveau 4 (a"' 16).
Finalement avec les notations précédentes en décomposant les 31 échantillons (xl, ..., x31) on obtient une suite de 31 composantes de niveau décroissant, notées comme suit:
(la"', 2b"', 4b", 8b', 16b)
Le procédé selon l'invention fournit donc autant de composantes qu'il y a d'échantillons dans le segment.
Une telle suite de n composantes permet la reconstruction parfaite du segment à n échantillons, propriété qui ne sera pas démontrée dans la présente.
Nous allons détailler un second exemple de transformation d'ordre supérieur, ce qui permettra de distinguer les propriétés et caractères généraux de l'invention et de mieux comprendre son intérêt.
Dans ce second exemple, deux transformées d'ordre 4 sont mises en oeuvre afin d'obtenir deux types de composantes correspondants à un segment. Chaque composante est donc calculée à partir de 4 échantillons de segment d'image.
La figure 10a illustre la première transformée qui fournit une composante cn, n étant un nombre entier désignant le rang de la composante calculée. Des coefficients de pondération 1, 3, 3 et 1, visibles figure 10a, sont appliqués respectivement aux échantillons xn-l, xn, xn+l et xn+2 pour calculer la composante cn.
Par exemple la composante c2 est calculée selon la formule suivante
c2 = xl + 3.x2 + 3.x3 + x4
La figure 10b illustre la seconde transformée d'ordre 4 qui fournit une composante dn.
Des coefficients de pondération -1, -3, 3 et 1, visibles figure 10b, distinguent cette seconde transformée de la première transformée (comparer à la figure 10a).
Une composante d2 est par exemple obtenue selon la formule suivante
d2 = -xl - 3.x2 + 3.x3 + x4
Dans la suite de la description et dans les revendications, on appellera composantes d'approximation les composantes qui donnent des informations générales sur les échantillons du segment d'image, comme les composantes cn de ce second exemple ou les composantes moyennes an obtenues par transformée de Haar dans le premier exemple. Les composantes dn et les composantes différentielles bn obtenues par transformée de Haar seront appelées composantes de détail puisqu'elles donnent des informations secondaires sur le segment d'image.
Sur la figure 11, on a considéré l'application de cette transformation d'ordre 4 à un segment S15 de longueur 15 suivi d'un sous échantillonnage.
Le sous échantillonnage conserve une composante sur deux, soit dans cet exemple uniquement les composantes cp, dp de rang p pair.
La première transformée schématisée en traits pleins fournit directement 6 composantes d'approximation c2, c4, c6, c8, c10 et c12 à partir des 15 échantillons (xl, x2, ..., xl5).
La seconde transformée schématisée en traits interrompus fournit directement 6 composantes de détail d2, d4, d6, d8, dlO et dl2 à partir des 15 échantillons (xl, x2 ..., x15).
Ces 12 composantes (c2, d2, c4, d4, c6, d6, c8, d8, c10, dlo, c12, d12) ne permettent pas de reconstruire directement la totalité des 15 échantillons du segment S 15 d'image.
Comme visible figure 11, les transformées inverses, qui seront détaillées ci-après, permettent de reconstituer seulement 10 échantillons (x3, x4, ...., x x12) correspondant à une partie centrale C15 du segment S15. On constate ici que les transformations discrètes appliquées à un segment fini non étendu ne permettent pas la reconstruction directe des parties d'extrémité des segments d'images.
Pour reconstruire totalement le segment S15, les transformées inverses d'ordre 4 doivent disposer de 18 composantes. Les composantes manquantes sont dans cet exemple les composantes d'approximation cO, c14, c16 et les composantes de détail dO, d14, dl6.
Notons que le nombre de composantes manquantes augmente avec l'ordre de la transformation appliquée. Ainsi dans l'exemple de la transformée de Haar d'ordre 2 on a signalé 2 composantes manquantes a8 et b8. Dans notre second exemple de transformation d'ordre 4, il y a 6 composantes manquantes.
Selon une caractéristique de l'invention, il est prévu qu'après avoir obtenu les composantes d'approximation c2,c4,c6,c8,c10,c12 en effectuant la transformation discrète sur les échantillons xl ,x2,.. .,x 15 du segment S15 d'image, on calcule les composantes d'approximation cO, c14, c16 manquantes en extrapolant les valeurs des composantes d'approximation déjà obtenues.
L'extrapolation peut être effectuée en recopiant la valeur d'une composante d'approximation déjà obtenue selon l'exemple suivant: cO=c2
L'extrapolation peut encore consister en une extrapolation linéaire à partir de deux composantes d'approximation déjà obtenues selon l'exemple suivant:
cO = 2c2 - c4
Plus généralement, l'extrapolation est une extrapolation polynomiale faisant intervenir les composantes d'approximation déjà obtenues selon l'exemple de la formule suivante: cO = ac2 + Bc4 + Xc6 + 6c8 + EclO + 5c12
où a, ss, x, 8, g, 5 désignent des constantes.
La figure 12 indique par exemple que la composante d'approximation cO est obtenue par extrapolation des composantes d'approximation c2 et c4 et que les composantes d'approximation c14 et c12 sont obtenues par extrapolation des composantes d'approximation c10 et c12.
Selon une autre caractéristique de l'invention, les autres composantes manquantes, c'est-à-dire les composantes de détail dO,d 1 4,d 16 correspondant aux parties d'extrémités du segment S15 sont déduites des valeurs des composantes extrapolées et des échantillons.
On remarque en effet que les valeurs des composantes et des échantillons sont liées par un système d'équation.
Dans notre exemple de transformation d'ordre 4, les transformées utilisées fournissent ainsi un système formé des équations suivantes
dl4 = - x13 - 3.x14 + 3.x15 + x16
c14 = x13 + 3.xi4 + 3.x15 + x16
où d14 est une composante de détail non déterminée, et peut être considérée comme une variable inconnue ; et
cl4 est une composante d'approximation extrapolée, de valeur connue
x13 est un échantillon du segment S15 de valeur connue
x14 est un échantillon du segment S15 de valeur connue
xl 5 est un échantillon du segment S 15 de valeur connue
x16 n'est pas un échantillon du segment S15, et peut être considéré comme une variable inconnue des équations.
Ce système d'équation peut être résolu et n'admet que la solution suivante
d14 = c14 - 6.x14 - 2.xl3
La valeur de la composante de détail manquante dl4 est ainsi calculable.
On remarque que de façon avantageuse, l'obtention des composantes manquantes peut être faite à partir de l'équation de reconstruction, équation correspondant à une transformée inverse détaillée ci-après, au lieu de résoudre un système d'équations.
A partir de la transformée de la figure 13b on obtient ainsi l'équation suivante:
dl4 = c14 + 16.x13 - 3.c12 - 3.dl2
Cette équation se résout directement.
Par suite on obtient les autres composantes manquantes en résolvant une équation de reconstruction.
Dans notre exemple, on déduit ainsi la composante de détail dl6 manquante en résolvant l'équation suivante:
d16 = c16 + 16.x15 - 3.c14 - 3.d14
Enfin dans cet exemple, on déduit la dernière composante de détail dO manquante en résolvant l'équation issue de la figure 13b suivante:
dO = -cO + 3c2 - 3d2 - 16.x2
Sur l'exemple de la figure 12, l'extrapolation des composantes d'approximation cO, c14 et c16 manquantes est schématisée par des traits pleins, à partir des composantes d'approximation c4, c2, c 10 et c 12 ; la déduction des composantes de détail est schématisée par des traits interrompus, à partir des composantes d'approximation et des échantillons du segment comme suit:
- la composante de détail dO manquante est déduite des échantillons xl, x2, de la composante d'approximation cO extrapolée et de la composante de détail d2 obtenue directement par transformation.
- la composante de détail d14 manquante est déduite des échantillons x13, x14, x15 et de la composante d'approximation c14 extrapolée.
- la composante de détail dol 6 manquante est déduite des composantes c14, d14, c16 et de l'échantillon x15.
De façon générale, on démontre que pour chaque composante de détail manquante, il existe un système d'équations ou une équation admettant une solution et une seule. Cette propriété ne sera pas démontrée dans la présente.
Ainsi, on déduit une valeur déterminée pour chaque composante de détail manquante. Après ces étapes, selon l'invention, on dispose donc de toutes les composantes nécessaires à la reconstruction.
La reconstruction du segment S15 à partir des composantes (cO, dO, c2, d2, c4, ..., clO, dlO, c12, dl2, c14, dl4, c16, d16) va maintenant être détaillée.
Les figures 13a et 13b illustrent les transformées inverses d'ordre 4 correspondant aux transformées directes d'ordre 4 utilisées dans ce second exemple et illustrés aux figures lOa et lOb.
Une première transformée inverse, schématisée figure 13a, permet de calculer un échantillon reconstruit xI, de rang p pair, à partir des composantes cp-2, dp-2, cp et dp, en appliquant des coefficients de pondération - 1, -1, 3 et -3 respectivement.
Une deuxième transformée inverse, schématisée figure 13b, permet de calculer un échantillon reconstruit xi de rang i impair à partir des composantes ci-l, di-l, ci+l et di+l, en appliquant des coefficients de pondération 3, 3, -1 et 1 respectivement.
Ces deux transformées inverses forment une transformation d'ordre 4 inverse de la transformation directe d'ordre 4 présentée aux figures 1 Oa et lOb.
Ces transformées appliquées aux composantes c2,d2,c4,d4,c6,d6,c8,d8,c 1 O,d 1 O,c 12 et dol 2, obtenues directement par transformation et transmises comme illustré figure 11, permettent de calculer les échantillons reconstruits (x3,x4,...,x12) correspondant à la partie centrale
C 15 du segment.
La figure 14 indique que ces transformées appliquées aux composantes cO,dO,c2,d2,c12,dl 2,c 14,d14,ç16,d16 correspondant aux parties d'extrémités E15, E15' du segment permettent de reconstruire les échantillons xl et x2 de la partie d'extrémité E15, ainsi que les échantillons x13 x14 et xl5 de la partie d'extrémité E15'.
Toutefois, la reconstruction parfaite du segment S15 ne nécessite pas la transmission des 18 composantes (cO,dO,c2,d2,...,c14,d14,d16,d16) ainsi obtenues.
La transmission des composantes d'approximation cO,c14,c16 que l'on peut obtenir par extrapolation n'est pas nécessaire.
De façon avantageuse, on transmet donc 15 composantes (dO,c2,d2,...,c12,dl2,dl4,dl6) vers le dispositif de décodage. Le décodeur reconstruit les 15 échantillons (x . sx2*. . après avoir calculé par extrapolation les composantes d'approximation manquantes cO,c14, et c16 comme établi précédemment.
La réalisation de dispositif de codage et de décodage adapté à la mise en oeuvre de telles transformations discrètes est illustrée aux figures 15 et 16.
La figure 15 représente sur ses parties gauche et droite respectivement une réalisation de codeur et de décodeur selon l'invention séparés par un canal de transmission t représenté en pointillés.
Le codeur est constitué d'un premier filtre C suivi d'un sous échantillonneur. Le filtre C fournit les composantes d'approximation calculables directement par transformation directe comme établi précédemment, par exemple la transformée d'ordre 4 de la figure lOa.
Un deuxième filtre D est prévu dans le codeur pour calculer les composantes de détail calculables par transformation directe, par exemple la transformée d'ordre 4 de la figure lOb.
Le premier et le deuxième filtres C, D reçoivent en entrée les échantillons x. Un registre Y peut être prévu pour disposer les échantillons x arrivant en série sur des lignes parallèles reliées à des entrées parallèles des filtres C et D. Ainsi les filtres C, D disposent à un instant sur leurs entrées de tous échantillons reconstruits x en fonction des composantes d'approximation c reçues et des composantes c extrapolées par le filtre L.
Un sixième filtre N reçoit en entrée les composantes de détail d après suréchantillonnage. Le filtre N effectue une autre partie du calcul des échantillons reconstruits x en fonction des composantes de détail d reçues.
Deux entrées d'un additionneur reçoivent respectivement les résultats des calculs des cinquièmes et sixièmes filtres M et N. Par sommation, l'additionneur reconstitue la valeur des échantillons x reconstruits à partir des calculs effectués en partie.
Notons que dans la réalisation illustrée figure 15 comme dans la réalisation illustrée figure 8, des filtres M et N du décodeur effectuent partiellement les calculs de reconstruction. Cette disposition a l'avantage de permettre une reconstruction progressive de l'image.
Ainsi lorsque la transmission des composantes de détail d est abandonnée, la sortie du sixième filtre N ne comporte aucune donnée. Les données disponibles en sortie de l'additionneur correspondent alors aux calculs partiels du cinquième filtre M.
De préférence, les résultats de ces calculs partiels effectués sur les composantes d'approximation c correspondent à des valeurs grossières des échantillons x donc à des segments d'image grossiers.
Cependant lorsque les composantes de détail parviennent au décodeur, le cinquième filtre N fournit des données corrigeant les segments grossiers affichés. On obtient ainsi une reconstruction progressive de l'image affichée.
La figure 16, analogue à la figure 15, représente dans sa partie droite une variante de réalisation de décodeur selon l'invention. Cette variante de décodeur comporte, après un filtre L analogue au précédent, un registre R recevant toutes les composantes d'approximation c et de détail d nécessaires à la reconstruction de segments d'image. Le registre R permet que les composantes arrivant successivement soient disposées sur des entrées parallèles de filtres.
Un septième filtre P reçoit ainsi à un instant toutes les composantes c et d nécessaires pour reconstruire un échantillon x. Le septième filtre P calcule par exemple un échantillon xp de rang p pair reconstruit selon la transformée inverse illustrée figure 13a.
De même, un huitième filtre Q reçoit simultanément toutes les composantes c et d. Le filtre Q calcule par exemple un échantillon xp-l de rang impair reconstruit selon la transformée inverse illustrée figure 13b.
Un multiplexeur transmet alternativement les échantillons reconstruits jmx-1 de rang impair et px de rang pair pour reconstituer l'ensemble des échantillons (xn) du segment d'image.
Cette variante de réalisation ne permet cependant pas une reconstruction progressive.
Une répétition de la décomposition selon la transformation de
Daubechies d'ordre 4 peut être effectuée comme avec la transformée de Haar. d'ordre 2 en suivant l'exemple de la figure 9. On obtient ainsi des composantes d'approximation (c') d'ordre 2 et des composantes de détail (d') d'ordre 2. Par exemple la décomposition réitérée au niveau 2 des échantillons (xl, x2, ..., x15) du segment S15 fournit les composantes suivantes
- 2 composantes d'approximation c4' et c8' de niveau 2,
- 4 composantes de détail dO', d4', d8' et dl2' de niveau 2, et
- 9 composantes de détail dO, d2, d4, d6, d8, dlO, dl2, dl4 et dl6 de niveau 1.
Dans cet exemple, la décomposition ne peut pas être répétée à un niveau supérieur car on ne dispose pas du minimum de 4 composantes d'approximation pour appliquer à nouveau la décomposition d'ordre 4.
Les deux exemples de transformations précédents nous ont permis de voir que l'invention peut être mise en oeuvre avec des transformations d'ordre 2 et d'ordre 4. De façon générale, l'invention peut être mise en oeuvre avec une transformation d'ordre quelconque.
Cette généralisation, à la portée de l'homme du métier, ne sera pas détaillée dans la présente.
De préférence, l'invention est mise en oeuvre avec des transformations ayant des moments nuls. Cette précision signifie que pour un signal polynomial, c'est-à-dire une suite d'échantillons prenant les valeurs discrètes successives d'un polynôme, la transformation fournit une suite de composantes de détail nulles. Avantageusement, il n'est alors pas nécessaire de transmettre la valeur des composantes de détail. De plus l'image est reconstruite parfaitement dès que les composantes d'approximation sont reçues.
Par exemple, la transformation de Haar est une transformation comportant un moment nul. Lorsqu'elle est appliquée à un signal d'image polynomial de degré 0, c'est-à-dire un signal constant, toutes les composantes différentielles obtenues par la transformation du segment seront évidemment nulles.
Selon un autre exemple, la transformation de Daubechies d'ordre 4 indiquée précédemment comporte deux moments nuls. Lorsque cette transformation est appliquée à un signal d'image polynomial de degré 1, c'est-à-dire un signal linéaire, toutes les composantes de détail obtenues par la transformation du segment seront identiquement nulles.
Par suite, à partir de signaux d'image polynomiaux de degré 2, c'est-àdire de signaux paraboliques, on obtiendra des composantes de détail identiquement nulles en utilisant une transformation d'ordre 6 comportant trois moments nuls. Un exemple de signal polynomial de degré 2 est donné par la suite d'échantillons (xn) suivante
xn = n2
où n désigne le rang de l'échantillon.
Enfin, l'invention est de préférence mise en oeuvre avec des transformations inversibles. Les transformations inversibles permettent un sous-échantillonnage des composantes. Par transformée de Haar, par exemple, on a vu qu'on pouvait calculer des composantes moyennes aO, al, a2, ..., ap, ap+l, et des composantes de détail bO, bl, b2, ..., bp, bp+l.
Comme les transformées de Haar d'ordre 2 sont inversibles, les composantes moyennes de rang impair al, a3, ..., ap+l et les composantes de détail de rang impair bl, b3, ..., bp+l ne sont pas nécessaires pour reconstruire un échantillon x.
De même les transformées de Daubechies d'ordre 4 sont inversibles.
Pour reconstruire un échantillon x, on a besoin seulement de 2 composantes d'approximations cp et cp+2 et de 2 composantes de détail dp et dp+2 au lieu des 4 composantes d'approximation cp, cp+ I, cp+2, cp+3 et des 4 composantes de détail dp, dp+l, dp+2, dp+3 calculables.
Un sous-échantillonnage de rapport deux peut alors être prévu pour sélectionner une composante calculée sur deux. De façon équivalente le filtre effectuant la transformation peut calculer seulement une composante sur deux.
La longueur d'un segment décomposé par transformation ne doit toutefois pas être inférieure à deux fois tordre de la transformation.
Selon une variante plus complexe, il est prévu d'effectuer la décomposition d'un segment par une transformation comportant deux transformées d'ordre différent. Les composantes d'approximation sont calculées selon cette variante par une transformée G d'ordre g. Les composantes de détail sont calculées selon cette variante par une autre transformée H d'ordre h.
Dans ce cas plus complexe, on démontre qu'un tel couple de transformées (G, H) permet de traiter uniquement des segments de longueur n telle que:
n > g+h-2
où n désigne la longueur du segment c'est-à-dire le nombre entier d'échantillons du segment.
Cette variante complexe permet avantageusement de calculer les composantes d'approximation sur un nombre g d'échantillons supérieur au nombre h d'échantillons à partir de laquelle les composantes de détail sont calculées.
Il est préférable en effet que les composantes moyennes ou les composantes basse fréquence, et plus généralement les composantes d'approximation, soient calculées sur un grand nombre d'échantillons.
Des transformations d'ordre élevé sont généralement utilisées en traitement d'image afin de fournir des données calculées sur un grand nombre d'échantillons. Il est préférable, par exemple, de calculer des composantes moyennes à partir d'un nombre élevé d'échantillon ou de faire des extrapolations polynomiales de degré élevé. Mais les régions d'images peuvent comporter des segments très courts, comportant par exemple deux points donc deux échantillons.
Dans le cas d'un segment comportant un seul point il est prévu de transmettre simplement la valeur de l'échantillon, sans procéder à un filtrage.
L'invention prévoit avantageusement que le filtrage des segments d'image est effectué par un groupe de filtres, les filtres ayant des ordres différents, de manière à effectuer le filtrage d'un segment par un filtre de la série ayant un ordre adapté au nombre d'échantillons du segment.
Un exemple de réalisation de codeur et de décodeur comportant un tel groupe de filtres est schématisé à la figure 16.
Sur la figure 17, la partie gauche représente le codeur qui comporte un circuit S et une série de filtres F1, F2, F3 et F4, d'ordre 2, 4, 6 et 8 respectivement.
* Le circuit S reconnaît la longueur d'un segment et sélectionne un filtre parmi les filtres Fl, F2, F3, F4 en fonction de la longueur du segment à traiter.
Le circuit S reçoit par exemple des données s de segmentation et envoie des signaux de sélection vl, v2, v3 et v4 aux filtres Fl, F2, F3 et F4, respectivement.
Les échantillons x de segment sont ainsi traités par un filtre adapté et décomposés en composantes (c, d).
Le filtre Fl d'ordre 2 traite ainsi des segments de longueur 3, comme le segment (xl, x2, x3) illustré figure 17, ou d'une longueur supérieure. Le filtre F2 d'ordre 4 traite les segments de longueur 7 ou plus. Le filtre F3 d'ordre 6 traite les segments de longueur 11 ou plus. Le filtre F4 d'ordre 8 traite les segments de longueur 15 ou plus.
Les segments de longueur 2 sont décomposés par transformation de
Haar.
Quant au segment de longueur 1, la valeur de l'unique échantillon est transmise directement, sans filtrage, comme s'il s'agissait d'une composante d'approximation.
Chacun de ces filtres Fl, F2, F3, F4 effectue les calculs des composantes d'approximation c et de détail d par des transformées d'ordre correspondant.
Le filtre Fl est composé par exemple des filtres A, B, Hl et H2 de la figure 8 et effectue les transformées de Haar d'ordre 2 correspondantes. Le filtre F2 est composé par exemple des filtres C, D et E de la figure 15 et effectue les transformées de Daubechies d'ordre 4 correspondantes. Le canal de transmission t transmet les données de segmentation s et les composantes c, d nécessaires à la reconstruction des échantillons des segments de région d'image.
Le décodeur représenté en partie droite de la figure 17 comporte réciproquement un circuit T de reconnaissance des données s de segmentation et des filtres de reconstruction G1, G2, G3 et G4 d'ordre 2, 4, 6 et 8 respectivement. Les filtres G1, G2, G3 et G4 sont commandés par les signaux de sélection wl, w2, w3 et w4 délivrés par le circuit T selon la longueur des segments. Chaque filtre Gi, G2, G3 ou G4 effectue, lorsqu'il est sélectionné, les extrapolations, déductions et transformées inverses sur les composantes c, d transmises par le canal t. Le filtre G1 reconstruit des segments de longueur supérieure ou égale à 3 échantillons à partir des composantes (c2, d2, d4...) transmises. Le filtre Gl est par exemple constitué des filtres I, J et K de la figure 8. De même, le filtre G2, reconstruit des segments de longueur supérieure ou égale à 7 échantillons à partir des composantes (dO, c2, d2, c4, d4, d6, d8, ...) transmises. Le filtre G2 est par exemple constitué des filtres L, M, N de la figure 15.
Enfin les échantillons x reconstruits par de tels filtres G1, G2, G3 et
G4 sont recueillis pour affichage de l'image.
Un tel dispositif de codage et/ou décodage de segments de régions d'image a l'avantage de permettre un traitement des segments par des filtres de longueur la plus élevée possible donc par le filtrage le plus extensif possible.
Nous allons maintenant décrire plus en détail des étapes préférées de réitération du procédé ou de réitération du filtrage selon l'invention. De telles réitérations suivent le principe de répétition d'une transformation évoquée précédemment avec la transformation de Daubechies d'ordre 4 et avec la transformée de Haar d'ordre 2, répétition illustrée par exemple figure 9.
Comme indiqué précédemment, la réitération du procédé ou du filtrage fournit des composantes de niveau croissant et permet de hiérarchiser les composantes ainsi obtenues ou filtrées.
Cette hiérarchisation permet d'abandonner la transmission des données de niveaux inférieurs.
Selon une variante avantageuse, il est prévu de moduler la précision de quantification des composantes selon leur niveau de transformation ou de filtrage. Les composantes de niveau le plus élevé sont de préférence quantifiées le plus précisément possible tandis que les composantes de niveau inférieur, comme les composantes de détail d de niveau 1, sont quantifiées grossièrement.
La figure 18 illustre la quantification de la valeur des composantes de niveau croissant sur un nombre de bit croissant.
Selon l'exemple de la figure 18, la quantification des composantes également appelée codage peut se faire comme suit:
- 2 bits de codage pour les composantes différentielles b ou de détail d de niveau 1
- 4 bits pour les composantes b' ou d' de niveau 2
- 8 bits pour les composantes b" ou d" de niveau 3
- 16 bits pour les composantes moyennes a" ou d'approximation c" de niveau 3.
Ainsi les composantes contenant les informations les plus générales sont quantifiées ou codées avec le plus de précision possible.
En outre, une variante avantageuse consiste à prévoir des tables de quantification dans lesquelles un nombre binaire correspond à un niveau de gris précis. On obtient ainsi un codage non linéaire des niveaux de gris et une réduction de la taille mémoire occupée par les données.
Le filtrage sur deux dimensions des images est obtenu en prévoyant que les régions d'images sont traitées selon l'invention par ligne et par colonne successivement.
L'invention peut être mise en oeuvre directement avec des filtres matriciels, donc de dimension 2, les filtres matriciels étant obtenus par la composition de filtres linéaires.
Ainsi les échantillons de régions d'image peuvent être d'abord groupés en segments horizontaux et décomposés (ou filtrés) en composantes intercalaires puis que ces composantes intercalaires sont groupées en segments verticaux et décomposées verticalement en composantes primaires.
Le filtrage de dimension 2 est donc obtenu par une succession d'un filtrage linéaire horizontal et d'un filtrage linéaire vertical, ou inversement.
Notons que le filtrage de dimension 2 fournit environ trois fois moins de composantes d'approximation que de composantes de détail. Par exemple, le filtrage d'une image de 256 x 256 soit 65536 pixels ou points d'images fournit ainsi un peu moins de 128 x 128 soit 16384 composantes d'approximations et un peu plus de 49152 composantes de détail. On a vu en effet qu'à la place des composantes d'approximation manquantes on transmet les composantes de détail nécessaires à la reconstruction selon l'invention.
Un tel filtrage de niveau 1 peut être suivi de filtrages de niveaux croissants dont nous allons détailler un algorithme.
Sur la figure 19, on a schématisé un mode préféré de décompositions successives d'une image I en sous images de niveaux croissants.
On lira l'algorithme qui va suivre en remplaçant la notation abrégée "calculer X par approximation horizontale de Y " par "calculer une sousimage Xformée des composantes d'approximation issues de la décomposition horizontale de la sous-image Y'.
De même on remplacera "calculer X par détail vertical de Y" par "calculer une sous-image X formée des composantes de détail issues de la décomposition verticale de la sous-image Y".
Avec les références de la figure 19, sur laquelle,
I désigne l'image d'origine;
LL la sous-image de niveau 1 après décomposition horizontale puis verticale de l'image I;
LL2 la sous-image de niveau 2;
LL3 la sous-image de niveau 3 ; et, les autres notations désignent des sous-images d'intercalaires. L'algorithme de décomposition au niveau 3 selon les dimensions horizontales et verticales d'une image I comporte les étapes suivantes
- Calculer L par approximation horizontale de l;
- Calculer LL par approximation verticale de L;
- Calculer L2 par approximation horizontale de LL;
- Calculer LL2 par approximation verticale de L2;
- Calculer L3 par approximation horizontale de LL2;
- Calculer LL3 par approximation verticale de L3;
- Quantifier LL3;
- Calculer lh par détail vertical de L3 et déduction de LL3;
- Quantifier lh3
- Reconstruire L3, à l'erreur de quantification près;
- Calculer h3 par détail horizontal de LL2 et déduction de L3;
- Calculer hl3 par approximation verticale de h3;
- Quantifier hui3;
- Calculer hh3 par détail vertical de h3 et déduction de hi3
- Quantifier hh3;
- Reconstruire h3, à l'erreur de quantification près;
- Reconstruire LL2, à l'erreur de quantification près;
- Calculer 1h2 par détail vertical de L2 et déduction de LL2;
- Quantifier lh2;
- Calculer h2 par détail horizontal de LL et déduction de L2;
- Calculer hl2 par approximation verticale de h2;
- Quantifier hl ;
- Calculer hh2 par détail vertical de h2 et déduction de hl2;
- Quantifier hh2;
- Reconstruire h2, à l'erreur de quantification près;
- Reconstruire LL, à l'erreur de quantification près
- Calculer Ih par détail vertical de L et déduction de LL;
- Quantifier Ih;
- Reconstruire L, à l'erreur de quantification près;
- Calculer h par détail horizontal de I et déduction de L
- Calculer hl par approximation verticale de h;
- Quantifier hi;
- Calculer hh par détail vertical de h et déduction de hl;
- Quantifier hh;
- Reconstruire h, à l'erreur de quantification près ; et,
- Reconstruire I, à l'erreur de quantification près.
La généralisation de cet algorithme à des niveaux de décomposition supérieure est à la portée de l'homme du métier.
Pour conclure, l'avantage principal de l'invention est de permettre une compression de données modulables selon la région codée.
L'invention a aussi l'avantage de permettre une transmission progressive des images.
Un autre avantage de l'invention est de limiter le débit de données à transmettre, le nombre de données à transmettre pour une reconstruction parfaite de segment d'image étant idéalement égal au nombre de données d'échantillonnage du segment d'image.
Pour le spectateur, il apparaît que les images obtenues selon l'invention sont plus lissées et qu'elles comportent moins d'artefact qu'avec les techniques connues.
En particulier il apparaît moins d'ondulations sur les contours des régions d'images et sur les bords des images elles-mêmes.
Enfin, ces caractéristiques et avantages de l'invention permettent une application à la norme de transmission MPEG 4 (abréviation correspondant à
Groupe d'Expert sur les images mobiles) en cours d'élaboration.
D'autre améliorations, caractéristiques et avantages de l'invention, apparaîtront à l'homme du métier sans sortir du cadre de la présente invention.

Claims (16)

REVENDICATIONS
1. Procédé de codage d'images par régions, une image (1) étant fragmentée en régions (RO,RI,R2), une région (roi) d'image étant segmentée en segments (S4, S7, S10, S13, S15), chaque segment (S15) étant formé d'une séquence de points (nO, n1, ..., n14) de la région d'image, un segment (S15) ayant des extrémités (nO, n14) correspondant à des contours (Z) de la région, le procédé comportant des étapes consistant à:
- acquérir des échantillons (x1,x2,...,x15) numériques des points du segment (S 15) de la région d'image
- obtenir des composantes (c2,c4,...,c12) d'approximation et des composantes (d2,d4,...,d12) de détail correspondant à une partie centrale (C15) d'un segment, en effectuant une transformation discrète sur les échantillons (x1,x2,...,x15) d'image correspondant au segment (S 15);
le procédé étant caractérisé en ce qu'il comporte des étapes consistant à:
- calculer des composantes (cO,c 14,c16) d'approximation correspondant à des parties (E15,E15') d'extrémité du segment, en extrapolant des valeurs de composantes (c2, c4, c 10, c12) d'approximation de la partie centrale (C15) du segment; et,
- déduire des composantes (dO, d14, d16) de détail correspondant à des parties d'extrémité (E15, E15') du segment, à partir des composantes (cO, c14, c16) d'approximation calculées par extrapolation et des échantillons (xl, x2, x13, x14, x15) correspondant à des parties d'extrémité (E15, E15') du segment, de manière à permettre une reconstruction parfaite des échantillons (xi x2 ., x15) du segment (S 15) d'image.
2. Procédé de codage selon la revendication 1, dans lequel pour un segment (S15) ayant un nombre déterminé d'échantillons (xl,x2,...,x15), on effectue une transformation discrète ayant un ordre déterminé sur les échantillons (xn-l, xn, xn+ 1, xn+2) du segment, pour obtenir des composantes d'approximation (cO, c2, ..., c16) et des composantes de détail (dO,d2,...,dl6) et dans lequel on transmet un nombre de composantes inférieur ou égal au nombre d'échantillons du segment, caractérisé en ce qu'on transmet un nombre de composantes d'approximation (c2, c4, ..., c12) inférieur ou égal au nombre de composantes de détail (dO,d2,d4,...,dl2,d14,dl6), la différence entre le nombre de composantes d'approximation du segment transmis et le nombre de composantes de détail du segment transmis pouvant atteindre l'ordre de la transformation effectuée.
3. Procédé de codage selon la revendication 2, caractérisé en ce que les composantes transmises sont sous-échantillonnées d'un rapport deux par rapport aux composantes que la transformation discrète permet d'obtenir.
4. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce que la déduction des composantes de détail (dO,dl4,dl6) est effectuée en résolvant une équation ou un système d'équations comportant des composantes d'approximation (c2,c4,c14,c16) calculées par extrapolation et des échantillons (xl,x2,x14,x15) correspondant à des parties d'extrémités (E 15,E15') du segment (S 15).
5. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce que la déduction des composantes (dO,dl4,dl6) de détail est effectuée en résolvant une équation correspondant à une transformation discrète inverse.
6. Procédé de décodage d'images par régions, une image (I) étant fragmentée en régions (RO,RI,R2), une région (roi) d'image étant segmentée en segments (S4, S7, S10, S13, S15), chaque segment (S15) étant formé dhne séquence de points (nO, nl, ..., nl4) de la région d'image, un segment (S 15) ayant des extrémités (nO, nl4) correspondant à des contours (Z) de la région, le procédé comportant des étapes consistant à
- reconnaître un segment (S 15) à partir de données (s) de segmentation d'une image;
- recevoir des composantes (c, d) du segment;
- reconstruire des échantillons (9, x4, ..., x15) correspondant à une partie centrale (C15) du segment (S15), en effectuant une transformation discrète inverse sur les composantes (c2, c4, ..., c12, dO, d2, ..., d16) reçues
le procédé étant caractérisé en ce qu'il comporte des étapes consistant a:
- calculer des composantes (cO,c14,c16) d'approximation correspondant à des parties d'extrémité (E15,E15') du segment, en extrapolant des valeurs de composantes (c2, c4, c 10, c12) d'approximation reçues ; et,
- reconstituer des échantillons (xl, x2, x 13 , x15) correspondant aux parties d'extrémité (El 5,E 15') du segment, en effectuant une transformation discrète inverse sur des composantes (cO,c 1 4,c 16) d'approximation calculées par extrapolation et sur des composantes (c2,...,c12,dO,...,dl6) reçues.
7. Procédé de décodage selon la revendication 6, dans lequel on reçoit un nombre de composantes inférieur ou égal à un nombre d'échantillons d'un segment à reconstruire et dans lequel on effectue une transformation discrète inverse (cp-2, dp-2, cp, dp) ayant un ordre déterminé sur les composantes d'approximation (c2, c4, ..., c12) et de détail (dO, d2, ..., dol 6) reçues pour reconstruire les échantillons (x1, x2, ..., x15) du segment (S15), caractérisé en ce qu'on reçoit un nombre de composantes d'approximation (c2, c4, c12) inférieur ou égal au nombre de composantes de détail (dO, d2, ..., dl6), la différence entre le nombre de composantes de détail d'un segment reçu et le nombre de composantes d'approximation du segment reçu pouvant atteindre l'ordre de la transformation discrète inverse effectuée.
8. Procédé selon l'une des revendications précédentes caractérisé en ce que l'extrapolation des composantes d'approximation est une extrapolation polynomiale.
9. Procédé selon l'une des revendications précédentes, caractérisé en ce que pour un segment ayant un nombre déterminé d'échantillons, la transformation discrète effectuée sur les composantes ou sur les échantillons du segment, a un ordre sensiblement inférieur au nombre d'échantillons du segment.
10. Procédé selon l'une des revendications précédentes, caractérisé en ce que, pour des segments ayant des nombres différents d'échantillons, le codage et/ou le décodage des régions d'image est effectué par un groupe de transformations discrètes (F1, F2, F3, F4), les transformations discrètes (F1,
F2) du groupe ayant des ordres différents, de manière obtenir des composantes ou à reconstruire des échantillons d'un segment par une transformation du groupe ayant un ordre adapté au nombre d'échantillons du segment.
11. Procédé de codage ou de décodage d'images par régions caractérisé en ce que l'on répète un procédé de codage ou de décodage selon l'une des revendications précédentes.
12. Dispositif de traitement d'images par régions mettant en oeuvre un procédé selon l'une des revendications précédentes.
13. Décodeur d'images par régions, comportant:
- des moyens (T) de reconnaissance d'une segmentation (s) d'image,
- des moyens de filtrage (61,62,63,64) d'ordre déterminé, les moyens de filtrage recevant en entrée des composantes (c, d) de segment d'image et fournissant en sortie des échantillons (x) reconstruits de segment d'image, après avoir effectué une transformation discrète sur les composantes (c2, c4, ..., c12, dO, d2 ..., d16) du segment, la transformation étant effectuée sur un nombre de composantes (cp-2, dp-2, cp, dp) correspondant à l'ordre du filtrage (G2), et
- des moyens de calcul (L) fournissant des composantes (cO, c14, c16) d'approximation manquantes, selon la segmentation reconnue, parmi les composantes (cO, c2, ..., c16, dO, d2, ..., d16) nécessaires à la reconstruction parfaite du segment d'image,
caractérisé en ce que les moyens (L) de calcul effectuent une extrapolation de composantes d'approximation (c2, c4, c 10, c12) reçues pour fournir les composantes d'approximation (cO, c14, c16) manquantes.
14. Décodeur d'images selon la revendication 13, caractérisé en ce que les composantes d'approximations (cO, c14, c16) calculées par extrapolations sont fournies en entrée des moyens (M, N) de filtrage qui fournissent des échantillons (xl, x2, x13, xl4 x15) manquants, selon la segmentation (S15) reconnue, parmi les échantillons (x1,..., x2...., xi 5) du segment d'image (1).
15. Décodeur d'images selon la revendication 13 ou la revendication 14, caractérisé en ce que les moyens de filtrage comportent un groupe de filtres (G1, G2, G3, G4), les filtres (G1,G4) du groupe ayant des ordres différents, de sorte que, pour un segment (S15) ayant un nombre déterminé d'échantillons, un filtre (G4) ayant un ordre adapté est utilisé, et que, pour un autre segment (S4) ayant un autre nombre déterminé d'échantillons, un autre filtre (G1) du groupe est utilisé, l'autre filtre ayant un autre ordre adapté à l'autre nombre d'échantillons.
16. Décodeur d'images selon l'une des revendications 13, 14 et 15 caractérisé en ce que les moyens de filtrages comportent plusieurs groupes de filtres, un groupe de filtres étant semblable à un autre groupe de filtres et chaque groupe de filtre ayant un niveau distinct, les groupes de filtres étant reliés en série.
FR9700813A 1997-01-21 1997-01-21 Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension Expired - Fee Related FR2758636B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR9700813A FR2758636B1 (fr) 1997-01-21 1997-01-21 Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9700813A FR2758636B1 (fr) 1997-01-21 1997-01-21 Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension

Publications (2)

Publication Number Publication Date
FR2758636A1 true FR2758636A1 (fr) 1998-07-24
FR2758636B1 FR2758636B1 (fr) 2000-12-29

Family

ID=9502977

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9700813A Expired - Fee Related FR2758636B1 (fr) 1997-01-21 1997-01-21 Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension

Country Status (1)

Country Link
FR (1) FR2758636B1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004369A1 (fr) * 1997-07-14 1999-01-28 Sharp Kabushiki Kaisha Procede de transformation d'ondelettes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295201A (en) * 1992-01-21 1994-03-15 Nec Corporation Arrangement of encoding motion image signals using motion compensation and orthogonal transformation
EP0649258A2 (fr) * 1993-10-15 1995-04-19 AT&T Corp. Codeur par transformation de blocs pour segments d'image de formes arbitraires

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295201A (en) * 1992-01-21 1994-03-15 Nec Corporation Arrangement of encoding motion image signals using motion compensation and orthogonal transformation
EP0649258A2 (fr) * 1993-10-15 1995-04-19 AT&T Corp. Codeur par transformation de blocs pour segments d'image de formes arbitraires

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BARNARD H J ET AL: "Efficient signal extension for subband/wavelet decomposition of arbitrary length signals", VISUAL COMMUNICATIONS AND IMAGE PROCESSING '93, CAMBRIDGE, MA, USA, 8-11 NOV. 1993, vol. 2094, pt.2, ISSN 0277-786X, PROCEEDINGS OF THE SPIE - THE INTERNATIONAL SOCIETY FOR OPTICAL ENGINEERING, 1993, USA, pages 966 - 975, XP002034347 *
GILGE M ET AL: "CODING OF ARBITRARILY SHAPED IMAGE SEGMENTS BASED ON A GENERALIZED ORTHOGONAL TRANSFORM", SIGNAL PROCESSING. IMAGE COMMUNICATION, vol. 1, no. 2, 1 October 1989 (1989-10-01), pages 153 - 180, XP000234866 *
MARTUCCI S A: "SIGNAL EXTENSION AND NONCAUSAL FILTERING FOR SUBBAND CODING OF IMAGES", VISUAL COMMUNICATION AND IMAGE PROCESSING '91: VISUAL COMMUNICATION, BOSTON, NOV. 11 - 13, 1991, vol. 1605 PART 1/02, 11 November 1991 (1991-11-11), KOU-HU TZOU;TOSHIO KOGA, pages 137 - 148, XP000479225 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004369A1 (fr) * 1997-07-14 1999-01-28 Sharp Kabushiki Kaisha Procede de transformation d'ondelettes
US6233357B1 (en) 1997-07-14 2001-05-15 Sharp Laboratories Of America, Inc. Arbitrary shape wavelet transform with phase alignment

Also Published As

Publication number Publication date
FR2758636B1 (fr) 2000-12-29

Similar Documents

Publication Publication Date Title
EP0448491B1 (fr) Procédé de codage et de transmission à au moins deux niveaux de qualité d'images numériques appartenant à une séquence d'images, et dispositifs correspondants
Konstantinides et al. Noise estimation and filtering using block-based singular value decomposition
EP0398830B1 (fr) Procédé et dispositif de compression de données d'image par transformation mathématique
EP0542974B1 (fr) Codeur-Décodeur sous-bandes de signaux de télévision à niveaux de résolution différents.
FR2727817A1 (fr) Transmission d'image progressive utilisant des transformations d'ondelettes discretes
FR2724792A1 (fr) Procede de compression de donnees utilisant des ondes elementaires implantees reversibles
FR2697704A1 (fr) Procédé et dispositif de segmentation en sous-bandes et de reconstruction d'un signal numérique, et dispositif correspondant.
FR2790173A1 (fr) Dispositif et procede de transformation de signal numerique
JP2001507193A (ja) 圧縮データから高周波成分を回復させるための向上した推定器
FR2670348A1 (fr) Dispositif de codage d'images appartenant a une sequence d'images, a rearrangement des lignes avant transformation mathematique, systeme de transmission d'images, recepteur et procede de codage correspondants.
Tanaka et al. Multiresolution image representation using combined 2-D and 1-D directional filter banks
FR2906093A1 (fr) Procedes et dispositifs de codage et de decodage, systeme de telecommunication et programme d'ordinateur les mettant en oeuvre
FR2886787A1 (fr) Procede et dispositif de codage et de decodage d'une sequence d'images
FR2792432A1 (fr) Dispositif et procede de transformation de signal numerique
FR2887711A1 (fr) Procede de codage et decodage hierarchique
FR2927744A1 (fr) Procede et dispositif de filtrage d'un signal numerique.
FR2758636A1 (fr) Traitement d'images par regions utilisant une transformation discrete sur des segments finis sans extension
Kumar et al. Super resolution reconstruction of compressed low resolution images using wavelet lifting schemes
WO2019057368A1 (fr) Procedes de codage et de decodage d'une image
FR2927745A1 (fr) Procede et dispositif de codage d'un signal numerique.
FR3058547A1 (fr) Procede et dispositif de restauration d'image numerique
WO2004107761A1 (fr) Procede de codage et/ou de decodage de groupes d'images
KR100854726B1 (ko) 역 이산 웨이블릿 변환을 이용한 이미지 복원 방법 및 장치
Wicaksono et al. Pyramid M-Shaped Network for Ordered Dithering Block Truncation Coding Image Restoration
WO1993002526A1 (fr) Procede de compression de sequences d'images numeriques

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20081029