FR2778038A1 - Encoding method for digital signals - Google Patents

Encoding method for digital signals Download PDF

Info

Publication number
FR2778038A1
FR2778038A1 FR9805246A FR9805246A FR2778038A1 FR 2778038 A1 FR2778038 A1 FR 2778038A1 FR 9805246 A FR9805246 A FR 9805246A FR 9805246 A FR9805246 A FR 9805246A FR 2778038 A1 FR2778038 A1 FR 2778038A1
Authority
FR
France
Prior art keywords
coding
blocks
block
scalar
cost
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
FR9805246A
Other languages
French (fr)
Other versions
FR2778038B1 (en
Inventor
Maryline Charrier
Felix Henry
Patrice Onno
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to FR9805246A priority Critical patent/FR2778038B1/en
Priority to US09/232,215 priority patent/US6501860B1/en
Publication of FR2778038A1 publication Critical patent/FR2778038A1/en
Application granted granted Critical
Publication of FR2778038B1 publication Critical patent/FR2778038B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/62Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding by frequency transforming in three dimensions

Landscapes

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

Abstract

The signal encoding method involves dividing (E2) the signal into blocks (Bp,n). A coding cost function is computed (E5) for each, for a first coding mode and for a scalar quantification coding mode. One coding mode is attributed (E6) to each block, according to cost. The attribution is then iterated to convergence. Scalar encoding blocks are then grouped, and trellis encoding is applied (E9).

Description

La présente invention concerne un dispositif et un procédé deThe present invention relates to a device and a method for

codage d'un signal numérique.coding of a digital signal.

Le codage a pour but de compresser le signal, ce qui permet de transmettre, respectivement mémoriser, le signal numérique en réduisant le temps de transmission, ou le débit de transmission, respectivement en  The purpose of coding is to compress the signal, which makes it possible to transmit, respectively memorize, the digital signal by reducing the transmission time, or the transmission rate, respectively by

réduisant la place mémoire utilisée.  reducing the memory space used.

L'invention se situe dans le domaine de la compression avec perte  The invention is in the field of lossy compression

de signaux numériques.digital signals.

Un procédé connu de codage de signal numérique, en l'occurrence d'une image numérique, est le codage par quantification codée en treillis qui est décrit par exemple dans l'article intitulé "Trellis Coded Quantization of Memoryless and Gauss-Markov Sources" de M.W. Marcellin et T.R. Fischer, paru dans IEEE Transactions on Communications, Vol. 38, n 1, Janvier 1990, ainsi que dans l'article "Universal Trellis Coded Quantization" de J.H. Kasner, M.W. Marcellin et B.R. Hunt, disponible par Internet à l'adresse  A known method for coding a digital signal, in this case a digital image, is coding by lattice coded quantization which is described for example in the article entitled "Trellis Coded Quantization of Memoryless and Gauss-Markov Sources" by MW Marcellin and TR Fischer, published in IEEE Transactions on Communications, Vol. 38, no. 1, January 1990, as well as in the article "Universal Trellis Coded Quantization" by J.H. Kasner, M.W. Marcellin and B.R. Hunt, available on the Internet at

http://vail.ece. arizona.edu/Publications.html.  http: //vail.ece. arizona.edu/Publications.html.

Ce procédé présente l'avantage de minimiser l'erreur de  This method has the advantage of minimizing the error of

quantification, grâce à l'utilisation du codage en treillis.  quantification, through the use of trellis coding.

En outre, afin d'améliorer le rapport compression sur distorsion, les inventeurs de la présente invention ont combiné ce procédé avec un autre mode de codage. Dans ce cas, des blocs du signal a coder se voient attribuer l'un ou l'autre mode de codage, de manière à sélectionner pour chaque bloc le mode de codage le plus approprié, c'est-à-dire fournissant le rapport  In addition, in order to improve the compression to distortion ratio, the inventors of the present invention have combined this method with another coding mode. In this case, blocks of the signal to be coded are assigned one or the other coding mode, so as to select for each block the most suitable coding mode, that is to say providing the ratio

compression sur distorsion le plus élevé.  highest distortion compression.

Par bloc, on entend ici un ensemble de coefficients extraits du signal  By block, we mean here a set of coefficients extracted from the signal

pour former un vecteur.to form a vector.

Le codage par quantification codée en treillis s'applique à une suite de blocs. Pour que ce codage soit optimal, il est nécessaire que la suite soit fixée et connue à l'avance. Cela signifie que pour attribuer de manière optimale ce mode à un bloc donné, il faudrait auparavant connaître l'ensemble des blocs auxquels ce mode est attribué, et donc connaître le résultat de l'attribution. Il y a donc une difficulté pour attribuer de manière optimale les modes de codage aux blocs et par conséquent pour obtenir un rapport compression sur distorsion  Lattice coded quantization coding applies to a series of blocks. For this coding to be optimal, the sequence must be fixed and known in advance. This means that to optimally assign this mode to a given block, it would first be necessary to know all the blocks to which this mode is assigned, and therefore to know the result of the assignment. There is therefore a difficulty in optimally assigning the coding modes to the blocks and therefore in obtaining a compression-to-distortion ratio.

le plus élevé possible.as high as possible.

La présente invention vise à remédier aux inconvénients de la technique antérieure, en fournissant un dispositif et un procédé de compression de signal numérique qui permet d'attribuer le mode de codage par quantification codée en treillis à des blocs formés dans le signal, avec une  The present invention aims to remedy the drawbacks of the prior art, by providing a digital signal compression device and method which makes it possible to assign the coding mode by lattice coded quantization to blocks formed in the signal, with a

grande simplicité de mise en oeuvre.  great simplicity of implementation.

A cette fin, I'invention propose une optimisation itérative de l'attribution d'un codage par quantification scalaire et d'un autre mode de  To this end, the invention proposes an iterative optimization of the allocation of a coding by scalar quantization and of another mode of

codage, à des blocs formés dans un signal numérique.  coding, to blocks formed in a digital signal.

Plus précisément, I'invention concerne un procédé de codage de signal numérique, caractérisé en ce qu'il comporte les étapes de - division du signal en blocs, - mise à jour à laquelle est calculé un coût de codage de chacun des blocs, pour au moins un premier mode de codage et pour un mode de codage par quantification scalaire, - attribution de l'un des modes de codage à chacun des blocs, selon un critère d'attribution dépendant du coût de codage, - réitération des étapes de mise à jour et d'attribution, de manière à satisfaire un critère de convergence, - liaison des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former une suite de blocs, - codage de la suite de blocs par quantification codée en treillis d'une  More specifically, the invention relates to a digital signal coding method, characterized in that it comprises the steps of - dividing the signal into blocks, - updating at which a coding cost of each of the blocks is calculated, for at least a first coding mode and for a coding mode by scalar quantization, - allocation of one of the coding modes to each of the blocks, according to an allocation criterion depending on the coding cost, - reiteration of the setting steps updated and allocated, so as to satisfy a convergence criterion, - linking of the blocks to which the coding mode by scalar quantification has been allocated, to form a series of blocks, - coding of the series of blocks by quantization coded in lattice of a

suite de coefficients extraits des blocs de la suite.  series of coefficients extracted from the blocks of the series.

Corrélativement, I'invention propose un dispositif de codage de signal numérique, caractérisé en ce qu'il comporte: - des moyens de division de signal numérique en blocs, - des moyens de mise à jour adaptés à calculer un coût de codage de chacun des blocs, pour au moins un premier mode de codage et pour un mode de codage par quantification scalaire, - des moyens d'attribution de l'un des modes de codage à chacun des blocs, selon un critère d'attribution dépendant du coût de codage, les moyens de mise à jour et d'attribution étant adaptés à être mis en oeuvre de manière itérative, de manière à satisfaire un critère de convergence, - des moyens de liaison des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former une suite de blocs, - des moyens de codage de la suite de blocs par quantification  Correlatively, the invention proposes a digital signal coding device, characterized in that it comprises: - means for dividing digital signal into blocks, - updating means adapted to calculate a coding cost for each of the blocks, for at least a first coding mode and for a coding mode by scalar quantization, - means for allocating one of the coding modes to each of the blocks, according to an allocation criterion dependent on the coding cost , the updating and allocation means being adapted to be implemented iteratively, so as to satisfy a convergence criterion, - means for linking the blocks to which the coding mode by scalar quantification has been allocated, to form a series of blocks, - means for coding the series of blocks by quantization

codée en treillis d'une suite de coefficients extraits des blocs de la suite.  lattice coded from a series of coefficients extracted from the blocks of the series.

Grâce au procédé et au dispositif selon l'invention, l'attribution de la quantification scalaire aux blocs constitue une bonne approximation de l'attribution du mode de codage par quantification codée en treillis et présente  Thanks to the method and the device according to the invention, the allocation of scalar quantization to the blocks constitutes a good approximation of the allocation of the coding mode by lattice coded quantization and presents

l'avantage d'être simple et rapide à mettre en oeuvre.  the advantage of being simple and quick to implement.

En outre, le procédé et le dispositif selon l'invention permettent d'obtenir un rapport compression sur distorsion élevé. En effet, grâce aux itérations de mise à jour et d'attribution, I'invention améliore l'attribution des modes de codage aux blocs. Ces demrniers sont ainsi codés de manière adaptée. Selon une caractéristique préférée, le coût de codage de chaque bloc est une somme pondérée du débit et de l'erreur de codage du bloc considéré. Ce coût de codage est simple à mettre en oeuvre et donne des  In addition, the method and the device according to the invention make it possible to obtain a high compression-to-distortion ratio. Indeed, thanks to the iterations of updating and attribution, the invention improves the attribution of the coding modes to the blocks. These latter are thus coded in a suitable manner. According to a preferred characteristic, the coding cost of each block is a weighted sum of the bit rate and of the coding error of the block considered. This coding cost is simple to implement and gives

résultats satisfaisants.satisfactory results.

Selon une caractéristique préférée, à une itération donnée, le calcul du coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré quelconque, comporte les étapes de: - groupement des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former un groupe de blocs, - codage du groupe de blocs par quantification scalaire, - détermination d'un codeur entropique adapté à la distribution des symboles issus de la quantification scalaire des blocs du groupe, - codage entropique du bloc considéré quantifié, par le codeur entropique précédemment déterminé,  According to a preferred characteristic, at a given iteration, the calculation of the coding cost for the coding mode by scalar quantization of any block considered to be arbitrary, comprises the steps of: - grouping of the blocks to which the coding mode by quantification has been assigned scalar, to form a group of blocks, - coding of the group of blocks by scalar quantification, - determination of an entropy coder adapted to the distribution of symbols resulting from the scalar quantification of the blocks of the group, - entropy coding of the block considered quantified, by the entropy coder previously determined,

- extraction du débit de codage du bloc considéré.  - extraction of the coding rate of the block considered.

Selon une caractéristique préférée, à une itération donnée, le calcul du coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré quelconque, comporte l'étape de détermination de la distorsion  According to a preferred characteristic, at a given iteration, the calculation of the coding cost for the coding mode by scalar quantification of any block considered, includes the step of determining the distortion

associée au codage du bloc considéré par quantification scalaire.  associated with the coding of the block considered by scalar quantization.

Le débit et la distorsion de codage par quantification scalaire sont  The scalar quantization rate and distortion are

déterminés avec des calculs simples et rapides à effectuer.  determined with simple and quick calculations.

Selon une autre caractéristique préférée, le critère d'attribution minimise le coût de codage. L'attribution d'un mode de codage à un bloc revient à comparer deux coûts de codage et à sélectionner le mode de codage  According to another preferred characteristic, the award criterion minimizes the cost of coding. Assigning a coding mode to a block means comparing two coding costs and selecting the coding mode

associé au coût le plus faible.associated with the lowest cost.

Selon une caractéristique préférée, le procédé comporte en outre une étape d'initialisation à laquelle le mode de codage par quantification scalaire est attribué à chacun des blocs. Cette étape permet de calculer un  According to a preferred characteristic, the method also comprises an initialization step to which the coding mode by scalar quantization is assigned to each of the blocks. This step calculates a

premier coût de codage par quantification scalaire pour chacun des blocs.  first coding cost by scalar quantization for each of the blocks.

Selon une caractéristique préférée, le critère de convergence est satisfait lorsque les mêmes modes de codage sont respectivement attribués aux mêmes blocs à deux itérations successives de l'étape d'attribution. Ce  According to a preferred characteristic, the convergence criterion is satisfied when the same coding modes are respectively allocated to the same blocks in two successive iterations of the allocation step. This

critère est fiable tout en étant simple à mettre en oeuvre.  criterion is reliable while being simple to implement.

Selon une caractéristique préférée, un indicateur est associé à chaque bloc pour indiquer quel mode de codage est attribué à chaque bloc. Cet  According to a preferred characteristic, an indicator is associated with each block to indicate which coding mode is assigned to each block. This

indicateur est ensuite utilisé lors du décodage des blocs.  flag is then used when decoding the blocks.

Selon une caractéristique préférée, le premier mode de codage est une mise à une valeur prédéterminée des coefficients du bloc. Ce mode de codage présente les avantages d'être une bonne approximation des blocs contenant peu d'information, d'être très simple à mettre en oeuvre et d'avoir un  According to a preferred characteristic, the first coding mode is a setting to a predetermined value of the coefficients of the block. This coding mode has the advantages of being a good approximation of blocks containing little information, of being very simple to implement and of having a

débit de codage associé qui est nul.  associated coding rate which is zero.

L'invention vise aussi un appareil de traitement de signal numérique, comportant des moyens de mise en oeuvre du procédé de codage, ou encore  The invention also relates to a digital signal processing apparatus, comprising means for implementing the coding method, or else

comportant le dispositif de codage, tels qu'exposés ci-dessus.  comprising the coding device, as set out above.

Les avantages du dispositif de codage et de cet appareil de traitement de signal numérique, sont identiques à ceux du procédé de codage  The advantages of the coding device and of this digital signal processing apparatus are identical to those of the coding method.

précédemment exposés.previously exposed.

Un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible,  A means of storing information, readable by a computer or by a microprocessor, integrated or not in the device, possibly removable,

mémorise un programme mettant en oeuvre le procédé de codage.  stores a program implementing the coding method.

Les caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture d'un mode préféré de réalisation illustré par les dessins ci-joints, dans lesquels: - la figure 1 est un bloc diagramme d'un mode de réalisation d'un dispositif de codage de signal numérique selon l'invention; - la figure 2 est un circuit de décomposition en sous-bandes de fréquence, inclus dans le dispositif de la figure 1; - la figure 3 est une image numérique à coder par le dispositif de codage selon l'invention; - la figure 4 est une image décomposée en sous-bandes par le circuit de la figure 2; - la figure 5 est une image décomposée en sous-bandes puis divisée en blocs; - la figure 6 représente un circuit de codage par quantification codée en treillis, inclus dans le dispositif de la figure 1; - la figure 7 est un bloc diagramme d'un mode de réalisation d'un dispositif de décodage selon l'invention; - la figure 8 est un algorithme de codage d'un signal numérique selon l'invention; - la figure 9 est un algorithme de décodage d'un signal numérique  The characteristics and advantages of the present invention will appear more clearly on reading a preferred embodiment illustrated by the attached drawings, in which: - Figure 1 is a block diagram of an embodiment of a device digital signal coding according to the invention; - Figure 2 is a decomposition circuit into frequency sub-bands, included in the device of Figure 1; - Figure 3 is a digital image to be coded by the coding device according to the invention; - Figure 4 is an image broken down into sub-bands by the circuit of Figure 2; - Figure 5 is an image broken down into sub-bands and then divided into blocks; - Figure 6 shows a coding circuit by lattice coded quantization, included in the device of Figure 1; - Figure 7 is a block diagram of an embodiment of a decoding device according to the invention; - Figure 8 is an algorithm for coding a digital signal according to the invention; - Figure 9 is an algorithm for decoding a digital signal

selon l'invention.according to the invention.

Selon le mode de réalisation choisi et représenté à la figure 1, un dispositif de codage selon l'invention est destiné à coder un signal numérique dans le but de le compresser. Le dispositif de codage est intégré dans un appareil 100, qui est par exemple un appareil photographique numérique, ou un camescope numérique, ou un système de gestion de base de données, ou  According to the embodiment chosen and shown in Figure 1, a coding device according to the invention is intended to code a digital signal in order to compress it. The coding device is integrated into an apparatus 100, which is for example a digital camera, or a digital camcorder, or a database management system, or

encore un ordinateur.still a computer.

Le signal numérique à compresser SI est dans ce mode particulier  The digital signal to be compressed SI is in this particular mode

de réalisation une suite d'échantillons numériques représentant une image.  a series of digital samples representing an image.

Le dispositif comporte une source de signal 1, ici de signal d'image.  The device comprises a signal source 1, here an image signal.

De manière générale, la source de signal soit contient le signal numérique, et est par exemple une mémoire, un disque dur ou un CD-ROM, soit convertit un signal analogique en signal numérique, et est par exemple un camescope analogique associé à un convertisseur analogiquenumérique. Une sortie 11 de la source de signal est reliée à un circuit d'analyse, ou de décomposition en sous-bandes 2. Le circuit de décomposition 2 possède des sorties 21 qui sont reliées à un circuit de division en blocs 4. Le circuit 4 a des sorties 41 reliées à  In general, the signal source either contains the digital signal, and is for example a memory, a hard disk or a CD-ROM, or converts an analog signal into a digital signal, and is for example an analog camcorder associated with a converter analog digital. An output 11 of the signal source is connected to an analysis or sub-band decomposition circuit 2. The decomposition circuit 2 has outputs 21 which are connected to a block division circuit 4. The circuit 4 has outputs 41 connected to

un circuit de sélection 5.a selection circuit 5.

Le circuit de sélection 5 comporte plusieurs circuits de codage, par exemple un premier et un second circuits 51 et 52, qui codent les blocs reçus du circuit 4 selon un premier et un second modes de codage. Le premier mode de codage est ici une mise à une valeur prédéterminée, par exemple nulle, des coefficients des blocs, et le second mode de codage est une quantification  The selection circuit 5 comprises several coding circuits, for example a first and a second circuit 51 and 52, which code the blocks received from circuit 4 according to a first and a second coding mode. The first coding mode here is a setting to a predetermined value, for example zero, of the coefficients of the blocks, and the second coding mode is a quantization

scalaire des coefficients de chacun des blocs.  scalar of the coefficients of each of the blocks.

Une sortie 511 du circuit 51 et une sortie 524 du circuit 52 sont reliées à un circuit de comparaison 53, dont une première sortie 531 est reliée à un circuit de traitement 8 et dont une seconde sortie 532 est reliée à un circuit de codage 6. Le fonctionnement du circuit de sélection 5 sera exposé dans la suite. Le circuit de codage 6 comporte un circuit de liaison 61. Ce demrnier a une sortie 614 reliée à un circuit 62 de codage par quantification codée en  An output 511 of circuit 51 and an output 524 of circuit 52 are connected to a comparison circuit 53, of which a first output 531 is connected to a processing circuit 8 and of which a second output 532 is connected to a coding circuit 6. The operation of the selection circuit 5 will be explained below. The coding circuit 6 comprises a link circuit 61. This latter has an output 614 connected to a coding circuit 62 by quantization coded in

treillis, dit TCQ d'après l'Anglais "Treillis Coded Quantization".  lattice, said TCQ after the English "Lattice Coded Quantization".

Le circuit 62 a des sorties 624 et 622 reliée à un circuit 63 de codage entropique dont une sortie 634 est reliée au circuit de traitement 8, qui est par  The circuit 62 has outputs 624 and 622 connected to an entropy coding circuit 63, one output 634 of which is connected to the processing circuit 8, which is by

exemple un circuit de transmission, ou une mémoire.  example a transmission circuit, or a memory.

La source d'image 1 est un dispositif pour générer une suite d'échantillons numériques représentant une image IM. La source 1 comporte une mémoire d'image et fournit un signal numérique d'image SI à l'entrée du circuit de décomposition 2. Le signal d'image SI est une suite de mots numériques, par exemple des octets. Chaque valeur d'octet représente un pixel  The image source 1 is a device for generating a series of digital samples representing an IM image. The source 1 comprises an image memory and supplies a digital image signal SI to the input of the decomposition circuit 2. The image signal SI is a series of digital words, for example bytes. Each byte value represents one pixel

de l'image IM, ici à 256 niveaux de gris, ou image noir et blanc.  of the IM image, here at 256 gray levels, or black and white image.

Le circuit de décomposition en sous-bandes 2, ou circuit d'analyse, est un ensemble classique de filtres, respectivement associés à des décimateurs par deux, qui filtrent le signal d'image selon deux directions, en sous-bandes de hautes et basses fréquences spatiales. Selon la figure 2, le circuit 2 comporte trois blocs successifs d'analyse pour décomposer l'image IM  The sub-band decomposition circuit 2, or analysis circuit, is a conventional set of filters, respectively associated with decimators in pairs, which filter the image signal in two directions, in high and low sub-bands spatial frequencies. According to FIG. 2, circuit 2 comprises three successive analysis blocks for decomposing the IM image

en des sous-bandes selon trois niveaux de résolution.  in sub-bands according to three levels of resolution.

De manière générale, la résolution d'un signal est le nombre d'échantillons par unité de longueur utilisés pour représenter ce signal. Dans le cas d'un signal d'image, la résolution d'une sous-bande est liée au nombre d'échantillons par unité de longueur utilisés pour représenter cette sous-bande horizontalement et verticalement. La résolution dépend du nombre de décimations effectuées, du facteur de décimation et de la résolution de l'image initiale. Le premier bloc d'analyse reçoit le signal numérique d'image et l'applique à deux filtres numériques respectivement passe-bas et passe-haut 21 et 22 qui filtrent le signal d'image selon une première direction, par exemple horizontale dans le cas d'un signal d'image. Après passage par des décimateurs par deux 210 et 220, les signaux filtrés résultant sont respectivement appliqués à deux filtres passe-bas 23 et 25, et passe- haut 24 et 26, qui les filtrent selon une seconde direction, par exemple verticale dans le cas d'un signal d'image. Chaque signal filtré résultant passe par un décimateur par deux respectif 230, 240, 250 et 260. Le premier bloc délivre en sortie quatre sous-bandes LL1, LH1, HL1 et HH1 de résolution RES1 la plus élevée  In general, the resolution of a signal is the number of samples per unit of length used to represent this signal. In the case of an image signal, the resolution of a sub-band is linked to the number of samples per unit of length used to represent this sub-band horizontally and vertically. The resolution depends on the number of decimations performed, the decimation factor and the resolution of the initial image. The first analysis block receives the digital image signal and applies it to two digital low-pass and high-pass filters 21 and 22 respectively which filter the image signal in a first direction, for example horizontal in the case an image signal. After passing through decimators by two 210 and 220, the resulting filtered signals are respectively applied to two low-pass filters 23 and 25, and high-pass filters 24 and 26, which filter them in a second direction, for example vertical in the case an image signal. Each resulting filtered signal passes through a decimator with two respective 230, 240, 250 and 260. The first block outputs four sub-bands LL1, LH1, HL1 and HH1 with the highest RES1 resolution

dans la décomposition.in decomposition.

La sous-bande LL1 comporte les composantes, ou coefficients, de basse fréquence, selon les deux directions, du signal d'image. La sous-bande LH, comporte les composantes de basse fréquence selon une première  The LL1 sub-band comprises the components, or coefficients, of low frequency, in both directions, of the image signal. The LH sub-band, comprises the low frequency components according to a first

direction et de haute fréquence selon une seconde direction, du signal d'image.  direction and high frequency in a second direction, of the image signal.

La sous-bande HL1 comporte les composantes de haute fréquence selon la première direction et les composantes de basse fréquence selon la seconde direction. Enfin, la sous-bande HH1 comporte les composantes de haute  The HL1 sub-band comprises the high frequency components in the first direction and the low frequency components in the second direction. Finally, the HH1 sub-band contains the high

fréquence selon les deux directions.  frequency in both directions.

Chaque sous-bande est une image construite à partir de l'image d'origine, qui contient de l'information correspondant à une orientation respectivement verticale, horizontale et diagonale des contours de l'image,  Each sub-band is an image constructed from the original image, which contains information corresponding to a respectively vertical, horizontal and diagonal orientation of the contours of the image,

dans une bande de fréquence donnée.  in a given frequency band.

La sous-bande LL1 est analysée par un bloc d'analyse analogue au précédent pour fournir quatre sous-bandes LL2, LH2, HL2 et HH2 de niveau de résolution RES2 intermédiaire dans la décomposition. La sous-bande LL2 comporte les composantes de basse fréquence selon les deux directions d'analyse, et est à son tour analysée par le troisième bloc d'analyse analogue aux deux précédents. Le troisième bloc d'analyse fournit des sous-bandes LL3, LH3, HL3 et HH3, de résolution RES3 la plus faible dans la décomposition,  The LL1 sub-band is analyzed by an analysis block similar to the previous one to provide four LL2, LH2, HL2 and HH2 sub-bands of intermediate RES2 resolution level in the decomposition. The LL2 sub-band comprises the low frequency components according to the two directions of analysis, and is in turn analyzed by the third analysis block similar to the previous two. The third analysis block provides LL3, LH3, HL3 and HH3 sub-bands, with the lowest RES3 resolution in the decomposition,

résultant du découpage en sous-bandes de la sous-bande LL2.  resulting from the division into sub-bands of the sub-band LL2.

Chacune des sous-bandes de résolution RES2 et RES3 correspond  Each of the resolution sub-bands RES2 and RES3 corresponds

également à une orientation dans l'image.  also to an orientation in the image.

La décomposition effectuée par le circuit 2 est telle qu'une sous- bande d'une résolution donnée est découpée en quatre sous-bandes de résolution inférieure et a donc quatre fois plus de coefficients que chacune des  The decomposition performed by circuit 2 is such that a sub-band of a given resolution is cut into four sub-bands of lower resolution and therefore has four times more coefficients than each of the

sous-bandes de résolution inférieure.  lower resolution sub-bands.

Une image numérique IM en sortie de la source d'image 1 est représentée de manière schématique à la figure 3, tandis que la figure 4 représente l'image IMD résultant de la décomposition de l'image IM, en dix sous-bandes selon trois niveaux de résolution, par le circuit 2. L'image IMD comporte autant d'information que l'image d'origine IM, mais l'information est  A digital IM image at the output of image source 1 is represented diagrammatically in FIG. 3, while FIG. 4 represents the IMD image resulting from the decomposition of the IM image, into ten sub-bands according to three resolution levels, by circuit 2. The IMD image contains as much information as the original IM image, but the information is

fréquentiellement découpée selon trois niveaux de résolution.  frequently divided according to three levels of resolution.

Le niveau de plus basse résolution RES3 comporte les sous-bandes LL3, HL3, LH3 et HH3, c'est-à-dire les sous-bandes de basse fréquence selon les deux directions d'analyse. Le second niveau de résolution RES2 comporte les sous-bandes HL2, LH2 et HH2 et le niveau de plus haute résolution RES1  The lower resolution level RES3 comprises the sub-bands LL3, HL3, LH3 and HH3, that is to say the low-frequency sub-bands according to the two directions of analysis. The second resolution level RES2 comprises the sub-bands HL2, LH2 and HH2 and the higher resolution level RES1

comporte les sous-bandes de plus haute fréquence HL1, LH1 et HH1.  includes the higher frequency sub-bands HL1, LH1 and HH1.

Bien entendu, le nombre de niveaux de résolution, et par conséquent de sous-bandes, peut être choisi différemment, par exemple 13 sous-bandes et quatre niveaux de résolution, pour un signal bi-dimensionnel tel qu'une image. Le nombre de sous-bandes par niveau de résolution peut également être différent. Les circuits d'analyse et de synthèse sont adaptés à la  Of course, the number of resolution levels, and therefore of sub-bands, can be chosen differently, for example 13 sub-bands and four resolution levels, for a two-dimensional signal such as an image. The number of sub-bands per resolution level can also be different. The analysis and synthesis circuits are adapted to the

dimension du signal traité.dimension of the signal processed.

Les sous-bandes formées par le circuit 2 sont fournies au circuit de division 4, selon un ordre de sous-bande a priori quelconque, mais prédéterminé. Il est à noter que la décomposition en sous-bandes de fréquence du signal n'est pas essentielle pour l'invention, qui peut être mise en oeuvre pour  The sub-bands formed by the circuit 2 are supplied to the division circuit 4, according to an a priori arbitrary but predetermined sub-band order. It should be noted that the decomposition into frequency sub-bands of the signal is not essential for the invention, which can be implemented for

un signal numérique qui n'a pas été décomposé en sous-bandes.  a digital signal that has not been broken down into sub-bands.

Il est a noter également qu'une sous-bande du signal numérique est ellemême un signal numérique, et que selon l'invention, elle est traitée  It should also be noted that a sub-band of the digital signal is itself a digital signal, and that according to the invention, it is processed

indépendamment des autres sous-bandes.  independently of the other sub-bands.

Comme représenté à la figure 5, le circuit de division 4 divise chaque sous-bande de détail en bloc. Selon le mode de réalisation choisi, toutes les sous-bandes de détail fournies au circuit 4 sont divisées en un même nombre N de blocs Bpr, o l'indice p est un entier, ici entre 1 et 9, qui représente l'ordre de la sous-bande considérée et l'indice n, entre 1 et N, est un entier qui représente l'ordre du bloc dans la sous- bande considérée. Les blocs  As shown in Figure 5, the division circuit 4 divides each detail sub-band into a block. According to the embodiment chosen, all the detail sub-bands supplied to circuit 4 are divided into the same number N of blocks Bpr, where the index p is an integer, here between 1 and 9, which represents the order of the sub-band considered and the index n, between 1 and N, is an integer which represents the order of the block in the sub-band considered. Blocks

sont ici de forme carrée, mais peuvent être en variante de forme rectangulaire.  are here square, but may alternatively be rectangular.

De manière générale, un bloc est un ensemble de coefficients extraits de la  Generally, a block is a set of coefficients extracted from the

sous-bande pour former un vecteur.sub-band to form a vector.

L'ordre des blocs est a priori quelconque, mais prédéterminé. Pour des raisons pratiques, les blocs sont ordonnés de la même manière dans  The order of the blocks is a priori arbitrary, but predetermined. For practical reasons, blocks are ordered in the same way in

toutes les sous-bandes, par exemple de gauche à droite et de haut en bas.  all sub-bands, for example from left to right and from top to bottom.

En conséquence du mode de division en blocs, la surface des blocs est divisée par quatre en passant de la résolution RES1 à la résolution RES2, et  As a consequence of the mode of division into blocks, the surface of the blocks is divided by four while passing from the resolution RES1 to the resolution RES2, and

de la résolution RES2 à la résolution RES3.  from resolution RES2 to resolution RES3.

Cette division en blocs est simple à mettre en oeuvre, puisque toutes les sous-bandes sont divisées en un même nombre de blocs. Cependant, pour la mise en oeuvre de l'invention, le nombre et le format des blocs peuvent être  This division into blocks is simple to implement, since all the sub-bands are divided into the same number of blocks. However, for the implementation of the invention, the number and the format of the blocks can be

différents d'une résolution à l'autre et d'une sous-bande à l'autre.  different from one resolution to another and from one sub-band to another.

Le circuit de sélection 5 sélectionne le premier ou le second mode de codage pour chacun des blocs fournis par le circuit 4, comme détaillé dans  The selection circuit 5 selects the first or the second coding mode for each of the blocks supplied by the circuit 4, as detailed in

la suite.the following.

Le premier mode de codage (circuit 51) consiste à mettre tous les coefficients du bloc à une valeur prédéterminée, par exemple la valeur zéro. Ce codage est très économique en nombre de bits, puisqu'il n'implique la transmission ou la mémorisation d'aucune donnée de codage, et par conséquent nécessite un débit de transmission nul. Cependant, I'erreur de  The first coding mode (circuit 51) consists in setting all the coefficients of the block to a predetermined value, for example the value zero. This coding is very economical in number of bits, since it does not involve the transmission or storage of any coding data, and therefore requires a zero transmission rate. However, the error of

codage risque d'être grande si le bloc considéré n'est pas d'énergie faible.  coding is likely to be large if the block considered is not of low energy.

Le second mode de codage (circuit 52) est une quantification scalaire uniforme de chacun des coefficients du bloc puis codage des indices issus de la quantification par un codage entropique, par exemple un codage de Huffman. Pour chacun des blocs, le circuit 53 compare les deux codages selon un critère pour sélectionner le codage le plus approprié, selon ce critère, pour chaque bloc considéré. A cette fin, le circuit 5 réalise de manière itérative les opérations suivantes. Le circuit 53 détermine les débits Rlp, et R2,pn nécessaires pour transmettre le bloc codé par chacun des deux circuits 51 et 52, ainsi que les erreurs de codage, ou distorsion, D1,p,n et D2,pn provoquées par le codage réalisé par chacun des deux circuits 51 et 52. Les erreurs Dpn et D2,pn mesurent respectivement l'erreur quadratique apportée dans l'image reconstruite par le codage du bloc considéré, selon le premier et le second mode de codage. Dans le cas o la décomposition en sous- bande est orthogonale, les erreurs D1,p et D2,p,n sont égales aux erreurs quadratiques  The second coding mode (circuit 52) is a uniform scalar quantization of each of the coefficients of the block then coding of the indices resulting from the quantification by an entropic coding, for example a Huffman coding. For each of the blocks, the circuit 53 compares the two codings according to a criterion to select the most appropriate coding, according to this criterion, for each block considered. To this end, the circuit 5 performs iteratively the following operations. Circuit 53 determines the rates Rlp, and R2, pn necessary to transmit the block coded by each of the two circuits 51 and 52, as well as the coding errors, or distortion, D1, p, n and D2, pn caused by the coding. produced by each of the two circuits 51 and 52. The errors Dpn and D2, pn respectively measure the quadratic error provided in the image reconstructed by the coding of the block considered, according to the first and the second coding mode. In the case where the subband decomposition is orthogonal, the errors D1, p and D2, p, n are equal to the quadratic errors

entre le bloc original et le bloc reconstruit.  between the original block and the reconstructed block.

Le circuit 53 compare ensuite, pour chacun des blocs, les sommes R1,p,n + k.Dp,n et R2,p,n + k.D2,p,n, O X est un coefficient de réglage du rapport compression/distorsion. Le codage pour lequel la somme est la plus faible est  The circuit 53 then compares, for each of the blocks, the sums R1, p, n + k.Dp, n and R2, p, n + k.D2, p, n, OX is a coefficient for adjusting the compression / distortion ratio . The coding for which the sum is the lowest is

sélectionné, pour chacun des blocs considérés.  selected, for each of the blocks considered.

La sélection itérative du mode de codage est détaillée dans la suite  The iterative selection of the coding mode is detailed below.

(figure 8).(figure 8).

Un indicateur Ip, est associé à chacun des blocs pour indiquer quel est le codage sélectionné par le circuit 53. L'indicateur Ip,n est par exemple un bit qui est mis à zéro si le bloc considéré est codé par mise à zéro, et qui est  An indicator Ip, is associated with each of the blocks to indicate which is the coding selected by the circuit 53. The indicator Ip, n is for example a bit which is set to zero if the block considered is coded by setting to zero, and who is

mis à un sinon. L'indicateur Ipn fait partie de la forme codée du bloc considéré.  set to one otherwise. The Ipn indicator is part of the coded form of the block considered.

Les circuits 51, 52 et 53 effectuent ainsi une séparation de l'information pertinente et de l'information non pertinente. L'information non pertinente, c'est-à-dire les blocs à coder par mise à zéro, ont comme forme codée leur indicateur Ipn L'information pertinente, c'est-à-dire les autres blocs,  Circuits 51, 52 and 53 thus separate the relevant information from the irrelevant information. The irrelevant information, that is to say the blocks to be coded by zeroing, have as coded form their indicator Ipn The relevant information, that is to say the other blocks,

vont ensuite être codés par les circuits 61, 62 et 63.  will then be coded by circuits 61, 62 and 63.

Le circuit 53 transmet au circuit de liaison 61 I'indicateur Ipn de chaque bloc codé. Le circuit de liaison 61 prend en compte les blocs qui ne sont pas codés par mise à zéro et lie ces blocs de manière à former une suite de blocs {Bm}, m étant un entier compris entre 1 et M, et M étant le nombre de blocs de la suite. Pour former la suite, les blocs sont par exemple considérés de gauche à droite et de haut en bas, dans chaque bande de fréquence. Le  The circuit 53 transmits to the link circuit 61 the indicator Ipn of each coded block. The link circuit 61 takes into account the blocks which are not coded by zeroing and links these blocks so as to form a series of blocks {Bm}, m being an integer between 1 and M, and M being the number of blocks from the suite. To form the sequence, the blocks are for example considered from left to right and from top to bottom, in each frequency band. The

circuit 61 fournit cette suite au circuit de quantification 62.  circuit 61 provides this continuation to the quantization circuit 62.

Le circuit 62 de quantification codée en treillis est représenté à la  The trellis coded quantization circuit 62 is shown in the

figure 6.figure 6.

Le circuit 62 comporte un circuit 621 de codage selon l'algorithme de Viterbi, un registre à décalage 622, un circuit de sélection de dictionnaire 623 et des moyens de mémoire 624 pour mémoriser des dictionnaires de vecteurs de code. Le codage par quantification codée en treillis est décrit par exemple  The circuit 62 comprises a coding circuit 621 according to the Viterbi algorithm, a shift register 622, a dictionary selection circuit 623 and memory means 624 for storing dictionaries of code vectors. The coding by lattice coded quantization is described for example

dans l'article intitulé "Trellis Coded Quantization of Memoryless and Gauss-  in the article titled "Trellis Coded Quantization of Memoryless and Gauss-

Markov Sources" de M.W. Marcellin et T.R. Fischer, paru dans IEEE Transactions on Communications, Vol. 38, n 1, Janvier 1990, ainsi que dans l'article "Universal Trellis Coded Quantization" de J.H. Kasner, M. W. Marcellin et B.R. Hunt, disponible par Internet à l'adresse  Markov Sources "by MW Marcellin and TR Fischer, published in IEEE Transactions on Communications, Vol. 38, no 1, January 1990, as well as in the article" Universal Trellis Coded Quantization "by JH Kasner, MW Marcellin and BR Hunt, available by Internet at the address

http://vail.ece.arizona.edu/Publications.html.  http://vail.ece.arizona.edu/Publications.html.

De manière générale le circuit de codage 62 code une suite de symboles {Sk} pour fournir deux flux binaires i(k) et j(k), o i(k) représente une suite de transitions et j(k) représente une suite d'indices des dictionnaires de vecteurs de code. Dans le contexte de l'invention, les symboles Sk sont les  In general, the coding circuit 62 codes a series of symbols {Sk} to provide two bit streams i (k) and j (k), where i (k) represents a series of transitions and j (k) represents a series of indices of code vector dictionaries. In the context of the invention, the symbols Sk are the

coefficients extraits de blocs Bp,n liés par le circuit 61.  coefficients extracted from blocks Bp, n linked by circuit 61.

Le fonctionnement du circuit 62 est celui d'une machine à états finis, le passage d'un état à un autre étant identifié par une transition. Dans un premier mode de réalisation, chaque état correspond à un dictionnaire et est  The operation of circuit 62 is that of a finite state machine, the transition from one state to another being identified by a transition. In a first embodiment, each state corresponds to a dictionary and is

identifié par les deux valeurs binaires i(k-2) et i(k-1).  identified by the two binary values i (k-2) and i (k-1).

Chacun des dictionnaires contient des vecteurs de code qui sont chacun identifiés par un indice dans le dictionnaire concerné. Un vecteur de code est par conséquent complètement identifié par son indice et par l'état  Each of the dictionaries contains code vectors which are each identified by an index in the dictionary concerned. A code vector is therefore completely identified by its index and by the state

représentant le dictionnaire auquel il appartient.  representing the dictionary to which it belongs.

Les transitions possibles de la machine à états finis, pour la suite de symboles à coder, forment une structure régulière, ou treillis. Le circuit 621 met en oeuvre un algorithme de Viterbi pour déterminer un chemin optimal dans le treillis. Le chemin est optimal au sens d'un coût qui est minimisé sur tout le treillis, donc sur toute la suite à coder. Le coût d'une transition est l'erreur quadratique mesurée entre le symbole à coder et le vecteur de code sélectionné dans le dictionnaire identifié par l'état dans lequel aboutit la transition. Le coût d'un état du treillis est la somme des coûts des transitions aboutissant à cet état. L'algorithme de Viterbi calcule le coût minimal de chaque état pour déterminer le chemin optimal représenté par la suite de  The possible transitions of the finite state machine, for the series of symbols to be coded, form a regular structure, or trellis. Circuit 621 implements a Viterbi algorithm to determine an optimal path in the trellis. The path is optimal in the sense of a cost which is minimized over the entire trellis, therefore over the entire sequence to be coded. The cost of a transition is the quadratic error measured between the symbol to be coded and the code vector selected in the dictionary identified by the state in which the transition ends. The cost of a trellis state is the sum of the costs of the transitions leading to this state. The Viterbi algorithm calculates the minimum cost of each state to determine the optimal path represented subsequently by

transitions i(k).transitions i (k).

Dans un second mode de réalisation, le nombre d'états est supérieur au nombre de dictionnaires. Par exemple, quatre dictionnaires et huit états sont utilisés. Le registre à décalage mémorise alors trois valeurs binaires pour  In a second embodiment, the number of states is greater than the number of dictionaries. For example, four dictionaries and eight states are used. The shift register then stores three binary values for

définir les huit états. Chaque état est associé à deux dictionnaires.  define the eight states. Each state is associated with two dictionaries.

Dans tous les cas, le circuit 62 foumrnit les deux flux binaires i(k) et j(k) au circuit de codage entropique 63 qui les combine et réalise un codage  In all cases, the circuit 62 provides the two bit streams i (k) and j (k) to the entropy coding circuit 63 which combines them and performs coding.

entropique de la combinaison.entropy of the combination.

Le circuit 6 transmet en outre au circuit de traitement 8 les  The circuit 6 also transmits to the processing circuit 8 the

indicateurs Ipn de chacun des blocs codés, associés à la suite codée des blocs.  Ipn indicators of each of the coded blocks, associated with the coded sequence of the blocks.

En référence à la figure 7, le dispositif de décodage réalise globalement des opérations inverses de celles du dispositif de codage. Le dispositif de décodage est intégré dans un appareil 200, qui est par exemple un lecteur d'image numérique, ou de séquence vidéo numérique, ou un système  With reference to FIG. 7, the decoding device globally performs operations reverse from those of the coding device. The decoding device is integrated into an apparatus 200, which is for example a digital image player, or digital video sequence player, or a system

de gestion de base de données, ou encore un ordinateur.  database management, or even a computer.

Un même appareil peut comporter à la fois le dispositif de codage et le dispositif de décodage selon l'invention, de manière à effectuer des  The same device can include both the coding device and the decoding device according to the invention, so as to perform

opérations de codage et de décodage.  coding and decoding operations.

Le dispositif de décodage comporte une source de données codées qui comporte par exemple un circuit de réception associé à une mémoire tampon. Une sortie 20, du circuit 20 est reliée à un circuit 21 de lecture d'indicateur Ip,, dont une sortie 211 est reliée à un circuit de décodage 22. Le circuit de décodage 22 a une sortie 224 reliée à un circuit de reconstruction 23. Ce dernier a une sortie 234 reliée à un circuit 24 d'exploitation des données décodées, comportant par exemple des moyens de  The decoding device comprises a source of coded data which comprises for example a reception circuit associated with a buffer memory. An output 20 of the circuit 20 is connected to a circuit 21 for reading the indicator Ip ,, of which an output 211 is connected to a decoding circuit 22. The decoding circuit 22 has an output 224 connected to a reconstruction circuit 23 The latter has an output 234 connected to a circuit 24 for processing the decoded data, comprising for example means for

visualisation d'image.image viewing.

Le circuit 20 fournit des données codées au circuit 21, qui détermine  Circuit 20 provides coded data to circuit 21, which determines

le mode de codage utilisé pour chacun des blocs en analysant l'indicateur Ipn.  the coding mode used for each of the blocks by analyzing the Ipn indicator.

Si l'indicateur Ip,n indique que le bloc considéré est codé par mise à zéro, son décodage consiste à créer un bloc dont tous les coefficients sont à la valeur zéro. La taille du bloc créé dépend de la sous-bande en cours de  If the indicator Ip, n indicates that the block considered is coded by zeroing, its decoding consists in creating a block whose all the coefficients are at the value zero. The size of the block created depends on the sub-band being

décodage.decoding.

Si l'indicateur Ip,n indique que le bloc considéré est codé par quantification codée en treillis, le circuit 22 effectue globalement des opérations inverses de celles effectuées au codage. Pour chaque symbole à décoder, la transition i(k) est décodée pour déterminer un dictionnaire de vecteurs de code et l'indice j(k) est décodé pour déterminer un vecteur de code dans ce  If the indicator Ip, n indicates that the block considered is coded by lattice coded quantization, the circuit 22 globally performs operations opposite to those performed in coding. For each symbol to be decoded, the transition i (k) is decoded to determine a dictionary of code vectors and the index j (k) is decoded to determine a code vector in this

dictionnaire. L'ensemble des symboles décodés forme un bloc décodé.  dictionary. The set of decoded symbols forms a decoded block.

Le circuit 22 foumrnit les blocs décodés Bdpn au circuit de reconstruction 23, qui est un circuit de synthèse correspondant au circuit d'analyse 2décrit précédemment et reconstruit l'image IMd correspondant aux  The circuit 22 supplies the decoded blocks Bdpn to the reconstruction circuit 23, which is a synthesis circuit corresponding to the analysis circuit 2 described previously and reconstructs the image IMd corresponding to the

sous-bandes décodées.decoded sub-bands.

Selon un mode préféré de réalisation de l'invention, les circuits de décomposition en sous-bandes 2, de division en bloc 4, de sélection 5, de codage 6 et de traitement 8, tous inclus dans le dispositif de codage représenté à la figure 1, sont réalisés par un microprocesseur associé à des mémoires vives et mortes. La mémoire morte comporte un programme selon l'invention pour coder chacun des blocs de données, et la mémoire vive comporte des registres adaptés à enregistrer des variables modifiées au cours de l'exécution  According to a preferred embodiment of the invention, the sub-band decomposition circuits 2, block division 4, selection 5, coding 6 and processing 8, all included in the coding device represented in FIG. 1, are produced by a microprocessor associated with living and read-only memories. The read-only memory comprises a program according to the invention for coding each of the data blocks, and the random access memory comprises registers adapted to store variables modified during execution

du programme.from the program.

Le programme de codage peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une  The coding program can be stored in whole or in part in any information storage means capable of cooperating with the microprocessor. This storage means can be read by a computer or by a microprocessor. This storage means is integrated or not to the device, and can be removable. For example, it may include a magnetic strip, a

disquette, ou un CR-ROM (disque compact à mémoire figée).  floppy disk, or a CR-ROM (compact disk with frozen memory).

De même, les circuits de lecture 21, de décodage 22, de reconstruction 23, inclus dans le dispositif de décodage représenté à la figure 7, sont réalisés par un second microprocesseur associé à des mémoires vives et mortes. La mémoire morte comporte un programme selon l'invention pour décoder chacun des blocs de données, et la mémoire vive comporte des registres adaptés à enregistrer des variables modifiées au cours de l'exécution  Likewise, the reading 21, decoding 22, reconstruction 23 circuits, included in the decoding device shown in FIG. 7, are produced by a second microprocessor associated with living and read only memories. The read only memory comprises a program according to the invention for decoding each of the data blocks, and the random access memory comprises registers adapted to store variables modified during execution

du programme.from the program.

Le programme de décodage peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une  The decoding program can be stored in whole or in part in any information storage means capable of cooperating with the microprocessor. This storage means can be read by a computer or by a microprocessor. This storage means is integrated or not to the device, and can be removable. For example, it may include a magnetic strip, a

disquette, ou un CR-ROM (disque compact à mémoire figée).  floppy disk, or a CR-ROM (compact disk with frozen memory).

En référence à la figure 8, un procédé de codage selon l'invention d'une image IM, mis en oeuvre dans le dispositif de codage, comporte des étapes E1 à El1. Le procédé de codage utilise deux modes de codage  With reference to FIG. 8, a method of coding according to the invention of an IM image, implemented in the coding device, comprises steps E1 to El1. The coding process uses two coding modes

attribuables aux blocs en fonction d'un critère.  attributable to blocks according to a criterion.

L'étape E1 est la décomposition en sous-bandes de l'image IM, comme représenté à la figure 4. L'étape E1 a pour résultat les sous-bandes LL3, HL3, LH3 et HH3 de plus faible résolution RES3, les sous-bandes LH2, HL2, HH2 de résolution intermédiaire RES2, et les sous-bandes LH1, HL1 et HH1 de plus haute résolution RES1. Comme exposé plus haut, la décomposition en  Step E1 is the decomposition into sub-bands of the image IM, as shown in FIG. 4. Step E1 results in the sub-bands LL3, HL3, LH3 and HH3 of lower resolution RES3, the sub -bands LH2, HL2, HH2 of intermediate resolution RES2, and the sub-bands LH1, HL1 and HH1 of higher resolution RES1. As explained above, the decomposition into

sous-bande n'est pas essentielle pour l'invention.  sub-band is not essential for the invention.

L'étape E1 est suivie par l'étape E2 qui est la division des sous-  Step E1 is followed by step E2 which is the division of the sub-

bandes en blocs Bpn, comme représenté à la figure 5.  strips in Bpn blocks, as shown in Figure 5.

L'étape suivante E3 est une initialisation pour considérer la première sous-bande. Les sous-bandes sont prises en compte selon un ordre a priori quelconque, tout en étant prédéterminé. Chaque sous-bande est traitée  The next step E3 is an initialization to consider the first sub-band. The sub-bands are taken into account in any order a priori, while being predetermined. Each sub-band is processed

indépendamment des autres sous-bandes.  independently of the other sub-bands.

L'étape suivante E4 est une initialisation à laquelle l'indicateur Iprn de chacun des blocs Bpn de la sous-bande courante est mis à une valeur indiquant que le bloc est codé par le second mode de codage, à savoir par  The next step E4 is an initialization at which the indicator Iprn of each of the blocks Bpn of the current sub-band is set to a value indicating that the block is coded by the second coding mode, namely by

quantification scalaire.scalar quantization.

L'étape E4 est suivie par l'étape E5 qui est la mise à jour des débits  Step E4 is followed by step E5 which is the updating of flow rates

et des distorsions, pour chacun des blocs de la sous-bande considérée.  and distortions, for each of the blocks of the sub-band considered.

A cette étape, sont calculés et mémorisés: - le débit R1,pn associé au codage du bloc Bpn par mise à zéro, - la distorsion D1,p,n associée au codage du bloc Bp,,n par mise à zéro, - le débit R2,p,n associé au codage du bloc Bp,n par quantification scalaire, et - la distorsion D2,pn associée au codage du bloc Bpn par  At this stage, the following are calculated and stored: - the bit rate R1, pn associated with the coding of the block Bpn by zeroing, - the distortion D1, p, n associated with the coding of the block Bp ,, n by zeroing, - the rate R2, p, n associated with the coding of the block Bp, n by scalar quantization, and - the distortion D2, pn associated with the coding of the block Bpn by

quantification scalaire.scalar quantization.

Le débit R1,pn associé au codage du bloc Bpn par mise à zéro est nul. La distorsion Dpn associée au codage du bloc Bp,n par mise à zéro est égale à l'erreur quadratique du bloc. La distorsion D2,pn associée au codage du bloc Bp,, par quantification scalaire est égale à l'erreur quadratique du bloc déquantifié. Ces trois quantités sont calculées une seule fois, lors du premier passage par l'étape E5. En effet, ces quantités ne varient pas au cours des  The flow R1, pn associated with the coding of the block Bpn by zeroing is zero. The distortion Dpn associated with the coding of the block Bp, n by zeroing is equal to the quadratic error of the block. The distortion D2, pn associated with the coding of the block Bp ,, by scalar quantization is equal to the quadratic error of the dequantified block. These three quantities are calculated only once, during the first passage through step E5. These quantities do not vary over the

itérations ultérieures de codage.subsequent coding iterations.

Les blocs auxquels la quantification scalaire est attribuée sont groupés de manière à former un ensemble, ou groupe, de blocs à coder. A la première itération, tous les blocs de la sous-bande considérée font partie du  The blocks to which scalar quantization is assigned are grouped to form a set, or group, of blocks to be coded. At the first iteration, all the blocks of the sub-band considered are part of the

groupe à coder par quantification scalaire.  group to be coded by scalar quantization.

Le débit de codage R2,p,n du bloc Bp,. est déterminé. Pour cela, les blocs du groupe considéré sont codés par quantification scalaire, puis on détermine un codeur entropique adapté à la distribution des symboles issus de la quantification scalaire du groupe considéré, puis on applique ce codeur entropique au bloc Bp,n quantifié, pour déterminer son débit. L'étape suivante E6 est l'attribution, pour chacun des blocs de la sous-bande en cours de traitement, du mode de codage qui lui est le plus adapté, en fonction d'un critère. Le critère consiste à minimiser un coût de  The coding rate R2, p, n of the block Bp ,. is determined. For this, the blocks of the group considered are coded by scalar quantization, then an entropy coder suitable for the distribution of the symbols resulting from the scalar quantization of the group considered is determined, then this entropy coder is applied to the block Bp, n quantized, to determine its flow. The next step E6 is the allocation, for each of the blocks of the sub-band being processed, of the coding mode which is most suitable for it, according to a criterion. The criterion consists in minimizing a cost of

codage, qui est de manière générale une fonction du débit et de la distorsion.  coding, which is generally a function of bit rate and distortion.

Selon un mode préféré de réalisation, le coût de codage est la somme Rjpn + k.Dj,p,n, O x, est un coefficient de réglage du rapport compression/distorsion, et j est un entier égal à 1 ou 2, représentant le premier  According to a preferred embodiment, the coding cost is the sum Rjpn + k.Dj, p, n, O x, is a coefficient for adjusting the compression / distortion ratio, and j is an integer equal to 1 or 2, representing the first

ou le second mode de codage.or the second coding mode.

Le coefficient;X varie de zéro à l'infini. Pour des raisons pratiques, on peut utiliser de manière équivalente la somme (1-X).Rjpn +;.Dj,p,n, avec le  The coefficient; X varies from zero to infinity. For practical reasons, the sum (1-X) can be used in an equivalent manner. Rjpn +; Dj, p, n, with the

coefficient 2. variant entre zéro et un.  coefficient 2. varying between zero and one.

Le mode de codage qui minimise la somme Rj,p,n +.Djp, n est sélectionné pour coder le bloc considéré Bpn. En conséquence, la valeur de  The coding mode which minimizes the sum Rj, p, n + .Djp, n is selected to code the block considered Bpn. Consequently, the value of

l'indicateur Ipn du bloc considéré est mise à jour.  the Ipn indicator of the block in question is updated.

L'étape suivante E7 est un test de convergence. Ce test consiste à vérifier si les mêmes modes de codage sont attribués aux mêmes blocs, au cours de plusieurs, par exemple deux, répétitions successives des étapes E5 et E6. Tant que le test de convergence n'est pas satisfait, I'étape E7 est suivie de l'étape E5. Lorsque le test de convergence est satisfait, I'étape E7 est  The next step E7 is a convergence test. This test consists in checking whether the same coding modes are allocated to the same blocks, during several, for example two, successive repetitions of steps E5 and E6. As long as the convergence test is not satisfied, step E7 is followed by step E5. When the convergence test is satisfied, step E7 is

suivie de l'étape E8.followed by step E8.

En variante, un nombre maximal de répétitions des étapes E5 et E6  As a variant, a maximum number of repetitions of steps E5 and E6

est prédéterminé, de manière à limiter la durée de codage.  is predetermined, so as to limit the coding time.

L'étape E8 est une liaison des blocs auxquels la quantification scalaire a été attribuée. Les blocs sont par exemple considérés de gauche à droite et de haut en bas, dans la bande de fréquence considérée. L'étape E8 a  Step E8 is a connection of the blocks to which the scalar quantization has been assigned. The blocks are for example considered from left to right and from top to bottom, in the frequency band considered. Step E8 a

pour résultat une suite de blocs à coder {Bm}.  the result is a series of blocks to be coded {Bm}.

L'étape suivante E9 est le codage par quantification codée en treillis de la suite de blocs à coder formée à l'étape précédente. Le codage est effectué comme précédemment exposé (figure 6), et peut être suivi d'un  The next step E9 is the coding by lattice coded quantization of the series of blocks to be coded formed in the previous step. The coding is carried out as previously explained (FIG. 6), and can be followed by a

codage entropique des suites binaires obtenues.  entropy coding of the binary sequences obtained.

Le résultat de codage de la sous-bande considérée est un ensemble d'indicateurs indiquant pour chaque bloc quel mode de codage lui a été attribué après convergence, et la suite des données codées par quantification codée en  The coding result of the sub-band considered is a set of indicators indicating for each block which coding mode has been allocated to it after convergence, and the rest of the data coded by quantization coded in

treillis.trellis.

L'attribution de la quantification scalaire aux blocs est une bonne approximation de l'attribution du mode de codage par quantification codée en treillis et présente l'avantage d'être plus simple et plus rapide à mettre en oeuvre.  The allocation of scalar quantization to the blocks is a good approximation of the allocation of the coding mode by lattice coded quantization and has the advantage of being simpler and quicker to implement.

L'étape suivante E10 est un test pour déterminer si toutes les sous-  The next step E10 is a test to determine whether all of the sub-

bandes ont été traitées. S'il reste au moins une sous-bande à traiter, l'étape E10O est suivie par l'étape E 11 pour considérer la sous-bande suivante. L'étape  tapes were processed. If at least one sub-band remains to be processed, step E10O is followed by step E 11 to consider the next sub-band. The stage

E11 est suivie par l'étape E4 précédemment décrite.  E11 is followed by step E4 previously described.

En variante, les étapes de liaison et codage par quantification codée en treillis sont réalisées après une réponse positive à l'étape E10, c'est-à-dire  As a variant, the steps of linking and coding by lattice coded quantization are carried out after a positive response in step E10, that is to say

lorsqu'un mode de codage a été attribué à tous les blocs de toutes les sous-  when a coding mode has been assigned to all the blocks of all the sub-

bandes. Il est possible de former une suite de blocs par sous-bande, ou de former une seule suite de blocs pour toutes les sous-bandes, puis d'effectuer le  bands. It is possible to form a series of blocks per sub-band, or to form a single series of blocks for all the sub-bands, then perform the

codage par quantification codée en treillis des ou de la suite(s) de blocs.  coding by lattice coded quantization of or of the block sequence (s).

En référence à la figure 9, un procédé de décodage selon l'invention d'une image IM, mis en oeuvre dans le dispositif de décodage, comprend des  With reference to FIG. 9, a method of decoding according to the invention of an IM image, implemented in the decoding device, comprises

étapes E21 à E30.steps E21 to E30.

L'étape E21 est une initialisation pour considérer la première sous-  Step E21 is an initialization to consider the first sub-

bande à décoder.strip to decode.

L'étape E21 est suivie de l'étape E22 qui est une initialisation pour  Step E21 is followed by step E22 which is an initialization for

considérer le premier bloc à décoder dans la sous-bande courante. Les sous-  consider the first block to decode in the current sub-band. Money-

bandes sont décodées dans le même ordre qu'au codage, et les blocs dans une sous-bande donnée sont décodés dans le même ordre qu'au codage, bien  bands are decoded in the same order as coding, and blocks in a given subband are decoded in the same order as coding, well

que des ordres différents soient possibles.  that different orders are possible.

L'étape suivante E23 est la lecture de l'indicateur Ip,n pour déterminer quel mode de codage a été utilisé pour coder le bloc courant. L'étape E23 est suivie de l'étape E24 qui est le décodage du bloc courant. Si le bloc a été codé par mise à zéro, le décodage consiste à créer un bloc dont tous les coefficients sont à la valeur zéro. La taille du bloc créé dépend de la sous-bande en cours de décodage, et est par exemple déterminée par l'indice du bloc. Si le bloc a été codé par quantification codée en treillis, des opérations inverses de celles effectuées au codage sont effectuées. Les données de codage du bloc considéré sont extraites des suites d'indices et de transitions. Pour chaque symbole à décoder, la transition i(k) est décodée pour déterminer un dictionnaire de vecteurs de code et l'indice j(k) est décodé pour déterminer un vecteur de code dans ce dictionnaire. L'ensemble  The next step E23 is the reading of the indicator Ip, n to determine which coding mode was used to code the current block. Step E23 is followed by step E24 which is the decoding of the current block. If the block has been coded by zeroing, decoding consists in creating a block whose all the coefficients are at zero. The size of the block created depends on the sub-band being decoded, and is for example determined by the index of the block. If the block has been coded by lattice coded quantization, operations opposite to those performed in coding are performed. The coding data of the block in question is extracted from the sequences of indices and transitions. For each symbol to be decoded, the transition i (k) is decoded to determine a dictionary of code vectors and the index j (k) is decoded to determine a code vector in this dictionary. All

des symboles décodés forme un bloc décodé.  decoded symbols form a decoded block.

Le bloc décodé Bdp, est mémorisé à l'étape suivante E25.  The decoded block Bdp is stored in the next step E25.

Les étapes E26 et E28 sont des tests pour vérifier, respectivement si tous les blocs d'une sous-bande, et si toutes les sous-bandes ont été décodées. S'il reste au moins un bloc à décoder dans la sous-bande courante, l'étape E26 est suivie par l'étape E27 pour considérer le bloc suivant. L'étape  The steps E26 and E28 are tests to check, respectively if all the blocks of a sub-band, and if all the sub-bands have been decoded. If at least one block remains to be decoded in the current sub-band, step E26 is followed by step E27 to consider the next block. The stage

E27 est suivie par l'étape E23 précédemment décrite.  E27 is followed by step E23 previously described.

S'il reste au moins une sous-bande à décoder, l'étape E28 est suivie par l'étape E29 pour considérer la sous-bande suivante. L'étape E29 est suivie  If at least one sub-band remains to be decoded, step E28 is followed by step E29 to consider the next sub-band. Step E29 is followed

par l'étape E23 précédemment décrite.  by step E23 previously described.

Lorsque toutes les sous-bandes ont été décodées, c'est-à-dire que la réponse est positive à l'étape E28, cette dernière étape est suivie de l'étape E30 de construction de l'image décodée. Cette dernière peut ensuite être  When all the sub-bands have been decoded, that is to say that the response is positive in step E28, this last step is followed by step E30 of construction of the decoded image. The latter can then be

visualisée, par exemple.visualized, for example.

Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés, mais englobe, bien au contraire,  Of course, the present invention is in no way limited to the embodiments described and shown, but includes, on the contrary,

toute variante à la portée de l'homme du métier.  any variant within the reach of the skilled person.

En particulier, I'invention peut aisément être appliquée à d'autres types de signaux. Ces signaux peuvent être des signaux mono- dimensionnels tel que des sons, ou des relevés sismiques, ou encore des électrocardiogrammes; en fonction de leur nature, I'analyse des signaux est réalisée selon des fréquences  In particular, the invention can easily be applied to other types of signals. These signals can be one-dimensional signals such as sounds, or seismic readings, or even electrocardiograms; depending on their nature, the signals are analyzed according to frequencies

temporelles ou spatiales.temporal or spatial.

Ces signaux peuvent être tri-dimensionnels tels que des séquences vidéo représentées selon deux fréquences spatiales et une fréquence temporelle. On met alors en oeuvre une décomposition en sous-bandes de fréquence en dimension trois, et la décomposition du signal en vecteurs  These signals can be three-dimensional such as video sequences represented according to two spatial frequencies and one temporal frequency. We then implement a decomposition into frequency sub-bands in three dimensions, and the decomposition of the signal into vectors

s'effectue également en dimension trois.  is also done in dimension three.

Pour un signal ayant des composantes dans plusieurs bandes de fréquences, tel qu'un signal d'image en couleur ayant des composantes rouge,  For a signal with components in multiple frequency bands, such as a color image signal with red components,

verte et bleue, I'invention s'applique dans chacune des bandes de fréquence.  green and blue, the invention applies in each of the frequency bands.

Claims (29)

REVENDICATIONS 1. Procédé de codage de signal numérique d'image, caractérisé en ce qu'il comporte les étapes de: - division (E2) du signal en blocs (Bp,), - mise à jour (E5) à laquelle est calculé un coût de codage de chacun des blocs, pour au moins un premier mode de codage et pour un mode de codage par quantification scalaire, - attribution (E6) de l'un des modes de codage à chacun des blocs, selon un critère d'attribution dépendant du coût de codage, - réitération des étapes de mise à jour et d'attribution, de manière à satisfaire un critère de convergence, - liaison (E8) des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former une suite de blocs, - codage (E9) de la suite de blocs par quantification codée en treillis  1. Method for coding a digital image signal, characterized in that it comprises the steps of: - division (E2) of the signal into blocks (Bp,), - updating (E5) at which a cost is calculated coding of each of the blocks, for at least a first coding mode and for a coding mode by scalar quantification, - allocation (E6) of one of the coding modes to each of the blocks, according to a dependent allocation criterion the cost of coding, - reiteration of the updating and allocation steps, so as to satisfy a convergence criterion, - link (E8) of the blocks to which the coding mode by scalar quantification has been allocated, to form a sequence blocks, - coding (E9) of the block sequence by lattice coded quantization d'une suite de coefficients extraits des blocs de la suite.  of a series of coefficients extracted from the blocks of the series. 2. Procédé de codage selon la revendication 1, caractérisé en ce que le coût de codage de chaque bloc est une somme pondérée du débit (R1.,p,  2. Coding method according to claim 1, characterized in that the coding cost of each block is a weighted sum of the bit rate (R1., P, R2,p,,) et de l'erreur (D1,,,, D2,p.) de codage du bloc considéré.  R2, p ,,) and the coding error (D1 ,,,, D2, p.) Of the block considered. 3. Procédé de codage selon la revendication 1 ou 2, caractérisé en ce que, à une itération donnée, le calcul du coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré quelconque, comporte les étapes (E5) de: - groupement des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former un groupe de blocs, codage du groupe de blocs par quantification scalaire, - détermination d'un codeur entropique adapté à la distribution des symboles issus de la quantification scalaire des blocs du groupe, - codage entropique du bloc considéré quantifié, par le codeur entropique précédemment déterminé,  3. Coding method according to claim 1 or 2, characterized in that, at a given iteration, the calculation of the coding cost for the coding mode by scalar quantification of any block considered, comprises the steps (E5) of : - grouping of the blocks to which the coding mode by scalar quantification has been assigned, to form a group of blocks, coding of the group of blocks by scalar quantization, - determination of an entropy coder adapted to the distribution of the symbols resulting from the quantification scalar of the blocks of the group, - entropy coding of the block considered quantified, by the previously determined entropy coder, - extraction du débit (R2,p,,) de codage du bloc considéré.  - extraction of the bit rate (R2, p ,,) for coding the block in question. 4. Procédé de codage selon l'une quelconque des revendications 1 à  4. Coding method according to any one of claims 1 to 3, caractérisé en ce que, à une itération donnée, le calcul du coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré quelconque, comporte l'étape de détermination de la distorsion (D2pn) associée au codage du bloc considéré par quantification scalaire.  3, characterized in that, at a given iteration, the calculation of the coding cost for the coding mode by scalar quantization of any block considered, includes the step of determining the distortion (D2pn) associated with the coding of the block considered by scalar quantization. 5. Procédé de codage selon l'une quelconque des revendications 1 à  5. Coding method according to any one of claims 1 to 4, caractérisé en ce que le critère d'attribution minimise le coût de codage.  4, characterized in that the award criterion minimizes the cost of coding. 6. Procédé de codage selon l'une quelconque des revendications 1 à  6. Coding method according to any one of claims 1 to , caractérisé en ce qu'il comporte en outre une étape d'initialisation (E4) à laquelle le mode de codage par quantification scalaire est attribué à chacun  , characterized in that it further comprises an initialization step (E4) to which the coding mode by scalar quantization is assigned to each des blocs.blocks. 7. Procédé de codage selon l'une quelconque des revendications 1 à  7. Coding method according to any one of claims 1 to 6, caractérisé en ce que le critère de convergence est satisfait lorsque les mêmes modes de codage sont respectivement attribués aux mêmes blocs à  6, characterized in that the convergence criterion is satisfied when the same coding modes are respectively assigned to the same blocks to deux itérations successives de l'étape d'attribution.  two successive iterations of the allocation stage. 8. Procédé de codage selon l'une quelconque des revendications 1 à  8. Coding method according to any one of claims 1 to 7, caractérisé en ce qu'un indicateur (l,n) est associé à chaque bloc (Bpn) pour  7, characterized in that an indicator (l, n) is associated with each block (Bpn) for indiquer quel mode de codage est attribué à chaque bloc.  indicate which coding mode is assigned to each block. 9. Procédé de codage selon l'une quelconque des revendications 1 à  9. Coding method according to any one of claims 1 to 8, caractérisé en ce que le premier mode de codage est une mise à une valeur  8, characterized in that the first coding mode is a setting to a value prédéterminée des coefficients du bloc.  predetermined coefficients of the block. 10. Dispositif de codage de signal numérique caractérisé en ce qu'il comporte: - des moyens (4) de division de signal numérique en blocs (Bpn), - des moyens (5) de mise à jour adaptés à calculer un coût de codage de chacun des blocs, pour au moins un premier mode de codage et pour un mode de codage par quantification scalaire, - des moyens d'attribution (53) de l'un des modes de codage à chacun des blocs, selon un critère d'attribution dépendant du coût de codage, les moyens de mise à jour et d'attribution étant adaptés à être mis en oeuvre de manière itérative, de manière à satisfaire un critère de convergence, - des moyens de liaison (61) des blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former une suite de blocs, - des moyens de codage (62) de la suite de blocs par quantification  10. Digital signal coding device characterized in that it comprises: - means (4) for dividing digital signal into blocks (Bpn), - updating means (5) adapted to calculate a coding cost of each of the blocks, for at least a first coding mode and for a coding mode by scalar quantification, - means of allocation (53) of one of the coding modes to each of the blocks, according to a criterion of allocation dependent on the cost of coding, the updating and allocation means being adapted to be implemented iteratively, so as to satisfy a convergence criterion, - means of connection (61) of the blocks to which assigned the coding mode by scalar quantization, to form a series of blocks, - coding means (62) of the series of blocks by quantization codée en treillis d'une suite de coefficients extraits des blocs de la suite.  lattice coded from a series of coefficients extracted from the blocks of the series. 11. Dispositif de codage selon la revendication 10, caractérisé en ce que les moyens (5) de mise à jour sont adaptés à calculer le coût de codage de chaque bloc comme une somme pondérée du débit (R,.p,, R2p,.) et de l'erreur  11. Coding device according to claim 10, characterized in that the updating means (5) are adapted to calculate the coding cost of each block as a weighted sum of the bit rate (R, .p ,, R2p ,. ) and error (D1,pn. D2,p,n) de codage du bloc considéré.  (D1, pn. D2, p, n) coding of the block considered. 12. Dispositif de codage selon la revendication 10 ou 11, caractérisé en ce que pour calculer le coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré quelconque, les moyens de mise à jour (52) sont adaptés à: - grouper les blocs auxquels a été attribué le mode de codage par quantification scalaire, pour former un groupe de blocs, - coder le groupe de blocs par quantification scalaire, déterminer un codeur entropique adapté a la distribution des symboles issus de la quantification scalaire des blocs du groupe, - appliquer le codeur entropique précédemment déterminé au bloc considéré quantifié,  12. Coding device according to claim 10 or 11, characterized in that to calculate the coding cost for the coding mode by scalar quantification of any block considered, the updating means (52) are adapted to: - group the blocks to which the coding mode by scalar quantification has been assigned, to form a group of blocks, - code the group of blocks by scalar quantization, determine an entropy coder adapted to the distribution of the symbols resulting from the scalar quantization of the blocks of the group, - apply the entropy coder previously determined to the block considered quantified, - extraire le débit (R2,p,) de codage du bloc considéré.  - extract the coding bit rate (R2, p,) from the block in question. 13. Dispositif de codage selon l'une quelconque des revendications  13. Coding device according to any one of claims à 12, caractérisé en ce que, pour le calcul le coût de codage pour le mode de codage par quantification scalaire d'un bloc considéré, les moyens de mise à jour sont adaptés à déterminer la distorsion (D2p,) associée au codage du  to 12, characterized in that, for the calculation of the coding cost for the coding mode by scalar quantification of a block considered, the updating means are adapted to determine the distortion (D2p,) associated with the coding of the bloc considéré par quantification scalaire.  block considered by scalar quantization. 14. Dispositif de codage selon l'une quelconque des revendications  14. Coding device according to any one of claims à 13, caractérisé en ce que les moyens d'attribution (53) sont adaptés à  to 13, characterized in that the allocation means (53) are adapted to mettre en oeuvre un critère d'attribution qui minimise le coût de codage.  implement an award criterion which minimizes the cost of coding. 15. Dispositif de codage selon l'une quelconque des revendications  15. Coding device according to any one of claims 10 à 14, caractérisé en ce que les moyens d'attribution (53) sont adaptés à attribuer initialement le mode de codage par quantification scalaire à chacun  10 to 14, characterized in that the allocation means (53) are adapted to initially allocate the coding mode by scalar quantization to each des blocs.blocks. 16. Dispositif de codage selon l'une quelconque des revendications  16. Coding device according to any one of the claims à 15, caractérisé en ce qu'il est adapté à mettre en oeuvre un critère de convergence qui est satisfait lorsque les mêmes modes de codage sont respectivement attribués aux mêmes blocs à deux mises en oeuvre  to 15, characterized in that it is suitable for implementing a convergence criterion which is satisfied when the same coding modes are respectively assigned to the same blocks with two implementations successives des moyens d'attribution.  successive means of allocation. 17. Dispositif de codage selon l'une quelconque des revendications  17. Coding device according to any one of claims à 16, caractérisé en ce qu'il est adapté à associer un indicateur (Ipn) à chaque bloc (Bpn) pour indiquer quel mode de codage est attribué à chaque bloc.  to 16, characterized in that it is adapted to associate an indicator (Ipn) with each block (Bpn) to indicate which coding mode is assigned to each block. 18. Dispositif de codage selon l'une quelconque des revendications  18. Coding device according to any one of claims à 17, caractérisé en ce qu'il est adapté à mettre en oeuvre un premier mode de codage qui est une mise à une valeur prédéterminée des coefficients du  to 17, characterized in that it is suitable for implementing a first coding mode which is a setting to a predetermined value of the coefficients of the bloc.block. 19. Dispositif de codage selon l'une quelconque des revendications  19. Coding device according to any one of claims à 18, caractérisé en ce que les moyens de division, d'attribution, de quantification, de formation et de sélection sont incorporés dans: - un micro-processeur, - une mémoire morte comportant un programme pour coder chacun des blocs de données, et - une mémoire vive comportant des registres adaptés à enregistrer  to 18, characterized in that the means of division, allocation, quantification, training and selection are incorporated in: - a microprocessor, - a read-only memory comprising a program for coding each of the data blocks, and - a random access memory comprising registers suitable for recording des variables modifiées au cours de l'exécution dudit programme.  variables modified during the execution of said program. 20. Appareil (100) de traitement de signal numérique, caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre le procédé de  20. Apparatus (100) for digital signal processing, characterized in that it comprises means suitable for implementing the method of codage selon l'une quelconque des revendications 1 à 9.  coding according to any one of claims 1 to 9. 21. Appareil (100) de traitement de signal numérique, caractérisé en ce qu'il comporte le dispositif de codage selon l'une quelconque des  21. Apparatus (100) for digital signal processing, characterized in that it comprises the coding device according to any one of revendications 10 à 19.claims 10 to 19. 22. Appareil photographique numérique caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre le procédé de codage selon  22. Digital camera characterized in that it comprises means suitable for implementing the coding method according to l'une quelconque des revendications 1 à 9.  any one of claims 1 to 9. 23. Appareil photographique numérique caractérisé en ce qu'il  23. Digital camera characterized in that it comporte le dispositif de codage selon l'une quelconque des revendications 10  comprises the coding device according to any one of claims 10 à 19.  at 19. 24. Camescope numérique caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre le procédé de codage selon l'une24. Digital camcorder characterized in that it comprises means suitable for implementing the coding method according to one quelconque des revendications 1 à 9.  any of claims 1 to 9. 25. Camescope numérique caractérisé en ce qu'il comporte le  25. Digital camcorder characterized in that it includes the dispositif de codage selon l'une quelconque des revendications 10 à 19.  coding device according to any one of claims 10 to 19. 26. Procédé de codage selon l'une quelconque des revendications 1  26. Coding method according to any one of claims 1 à 9, caractérisé en ce qu'il est mis en oeuvre dans un système de gestion de  to 9, characterized in that it is implemented in a management system of base de données.database. 27. Dispositif de codage selon l'une quelconque des revendications  27. Coding device according to any one of claims. à 19, caractérisé en ce qu'il est mis en oeuvre dans un système de gestion  to 19, characterized in that it is implemented in a management system de base de données.database. 28. Ordinateur caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre le procédé de codage selon l'une quelconque des  28. Computer characterized in that it comprises means adapted to implement the coding method according to any one of revendications 1 à 9.claims 1 to 9. 29. Ordinateur caractérisé en ce qu'il comporte le dispositif de  29. Computer characterized in that it comprises the device for codage selon l'une quelconque des revendications 10 à 19.  coding according to any one of claims 10 to 19.
FR9805246A 1998-01-19 1998-04-27 DIGITAL SIGNAL CODING Expired - Fee Related FR2778038B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR9805246A FR2778038B1 (en) 1998-04-27 1998-04-27 DIGITAL SIGNAL CODING
US09/232,215 US6501860B1 (en) 1998-01-19 1999-01-19 Digital signal coding and decoding based on subbands

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9805246A FR2778038B1 (en) 1998-04-27 1998-04-27 DIGITAL SIGNAL CODING

Publications (2)

Publication Number Publication Date
FR2778038A1 true FR2778038A1 (en) 1999-10-29
FR2778038B1 FR2778038B1 (en) 2000-07-21

Family

ID=9525707

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9805246A Expired - Fee Related FR2778038B1 (en) 1998-01-19 1998-04-27 DIGITAL SIGNAL CODING

Country Status (1)

Country Link
FR (1) FR2778038B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2801743A1 (en) * 1999-11-25 2001-06-01 Canon Kk Physical magnitudes representation digital signal coding by organizing second blocks of in set of 2D data and entropy coding in one coding mode of combined together data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996034496A2 (en) * 1995-04-25 1996-10-31 Philips Electronics N.V. Device and method for coding video pictures
WO1997017797A2 (en) * 1995-10-25 1997-05-15 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996034496A2 (en) * 1995-04-25 1996-10-31 Philips Electronics N.V. Device and method for coding video pictures
WO1997017797A2 (en) * 1995-10-25 1997-05-15 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NURI V ET AL: "SPATIALLY-VARYING, ADAPTIVE SUBBAND IMAGE CODING", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING (IC, LAUSANNE, SEPT. 16 - 19, 1996, vol. 2, 16 September 1996 (1996-09-16), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 373 - 376, XP000733266 *
RINALDO R ET AL: "AN IMAGE CODING SCHEME USING BLOCK PREDICTION OF THE PYRAMID SUBBAND DECOMPOSITION", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING (IC, AUSTIN, NOV. 13 - 16, 1994, vol. 2, no. CONF. 1, 13 November 1994 (1994-11-13), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 878 - 882, XP000522741 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2801743A1 (en) * 1999-11-25 2001-06-01 Canon Kk Physical magnitudes representation digital signal coding by organizing second blocks of in set of 2D data and entropy coding in one coding mode of combined together data

Also Published As

Publication number Publication date
FR2778038B1 (en) 2000-07-21

Similar Documents

Publication Publication Date Title
TWI515720B (en) Method of compressing a digitized audio signal, method of decoding an encoded compressed digitized audio signal, and machine readable storage medium
US6501860B1 (en) Digital signal coding and decoding based on subbands
EP2183851A1 (en) Encoding/decoding by symbol planes with dynamic calculation of probability tables
FR2889382A1 (en) Multidimensional digital signal e.g. digital image, filtering method for e.g. coding device, involves obtaining filtering value of filtered sample in selecting one value among simulated filtering values of sample based on preset criterion
FR2816154A1 (en) INSERTION OF ADDITIONAL INFORMATION INTO DIGITAL DATA
FR2790173A1 (en) DIGITAL SIGNAL TRANSFORMATION DEVICE AND METHOD
EP1037196B1 (en) Method for coding, decoding and transcoding an audio signal
FR2755818A1 (en) DIGITAL SIGNAL CODING BY DECOMPOSITION IN FREQUENCY SUB-BANDS AND VECTOR QUANTIFICATION IN FINISED STATES
FR2803676A1 (en) DETERMINING A SEGMENTATION OF A DIGITAL SIGNAL TO INSERT MARKING SIGNALS AND ASSOCIATED INSERTION
FR2792150A1 (en) Video image digital signal coding-decoding method, storing signal sub signal decompressed images first position and performing iterative process to determine optimum decoding techniques
FR2792151A1 (en) Image signal coding and decoding technique, determining simplified version of signal, coding with predetermined technique and subtracting from original signal
FR2778038A1 (en) Encoding method for digital signals
FR2816138A1 (en) DECODING OF DIGITAL DATA
FR2778039A1 (en) Method of encoding digital images
CA2610467C (en) Matrix compression arrangements
FR2773927A1 (en) Digital image signal encoding and decoding technique for signal compression
FR2927745A1 (en) Digital signal filtering method for telecommunication system, involves determining optimal filter based on criterion that depends on values of sub-signal, and associating optimal filter with context function corresponding to sub-signal
FR2773926A1 (en) Digital image signal processing method for data compression
FR2776437A1 (en) Method for coding a digital image signal
FR2831729A1 (en) Digital signal processing method e.g. for video signals, involves determining minimum distance between two samples and between copies of one sample and other sample
FR2767988A1 (en) Digital signal coding and encoding
WO2008080605A1 (en) Audio encoding method and device
FR2801743A1 (en) Physical magnitudes representation digital signal coding by organizing second blocks of in set of 2D data and entropy coding in one coding mode of combined together data
FR2767986A1 (en) Digital signal coding and encoding
FR2832875A1 (en) Method and device for coding and decoding of digital signal, in particular for still images with compression

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20131231