Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DIGITAL DATA COMPRESSION
Document Type and Number:
WIPO Patent Application WO/2017/103002
Kind Code:
A1
Abstract:
Method for compressing digital data, characterised in that it comprises the steps of: extrapolating (E11) the value of each sample of data to be compressed (ECn) as a function of the value of at least one preceding sample, in order to produce an extrapolated sample (EEn), differentiating (E12) between each extrapolated sample and the corresponding sample of data to be compressed, in order to produce a differentiated sample (EDn), and deleting (E13) redundancy between successive differentiated samples produced by the differentiating stage.

Inventors:
THEVENIN MATHIEU (FR)
THOMINE OLIVIER (FR)
LATU GUILLAUME (FR)
Application Number:
PCT/EP2016/081284
Publication Date:
June 22, 2017
Filing Date:
December 15, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
COMMISSARIAT ENERGIE ATOMIQUE (FR)
International Classes:
H03M7/30
Domestic Patent References:
WO1985002732A11985-06-20
WO2012059124A12012-05-10
Other References:
MOHAMMAD ARIF ET AL: "Effect on Speech Compression by Combined Delta Encoding and Huffman Coding Scheme", WIRELESS PERSONAL COMMUNICATIONS., vol. 79, no. 3, 28 August 2014 (2014-08-28), NL, pages 2371 - 2381, XP055292432, ISSN: 0929-6212, DOI: 10.1007/s11277-014-1989-3
Attorney, Agent or Firm:
BREVALEX (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé de compression de données numériques, caractérisé en ce qu'il comporte des étapes de :

Extrapolation (Eli) de la valeur de chaque échantillon de données à compresser (ECn) en fonction de la valeur d'au moins un échantillon précédent, pour produire un échantillon extrapolé (EEn),

Différenciation (E12) entre chaque échantillon extrapolé et l'échantillon de données à compresser correspondant, pour produire un échantillon différencié (EDn),

Suppression (E13) de redondance entre échantillons différenciés successifs produits par l'étape de différenciation.

2. Procédé de compression de données numériques selon la revendication 1, caractérisé en ce que l'extrapolation (Eli) de la valeur d'un échantillon de données à compresser est une recopie de l'échantillon précédent.

3. Procédé de compression de données numériques selon la revendication 1 ou 2, caractérisé en ce qu'il comporte une étape de conditionnement de chaque échantillon de données à compresser de manière à mettre en forme les données à compresser.

4. Procédé de compression de données numériques selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comporte une étape de concaténation (E13) d'échantillons différenciés successifs dans lesquels la redondance a été supprimée.

5. Procédé de décompression de données numériques compressées par le procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il comporte des étapes de : Réintroduction (E20) de redondance dans le signal compressé, pour produire des échantillons reconstitués (EDRn),

Dédifférenciation (E21) entre chaque échantillon reconstitué (EDRn) et un échantillon estimé correspondant (EESn), pour produite un échantillon dédifférencié (EDDn),

Estimation (E22) de la valeur de chaque échantillon estimé suivant à partir de la valeur d'au moins un échantillon dédifférencié précédemment produit (EDDn- i). 6. Procédé de décompression de données numériques selon la revendication 5, caractérisé en ce que l'estimation (E22) de la valeur d'un échantillon estimé suivant est effectuée par la même fonction que pour l'extrapolation lors de la compression de données. 7. Dispositif de compression de données, caractérisé en ce qu'il comporte :

Des moyens (11) d'extrapolation de la valeur de chaque échantillon de données à compresser en fonction de la valeur d'au moins un échantillon précédent, pour produire un échantillon extrapolé,

Des moyens (12) de différenciation entre chaque échantillon extrapolé et l'échantillon de données à compresser correspondant, pour produire un échantillon différencié,

Des moyens (13) de suppression de redondance entre échantillons différenciés successifs produits par l'étape de différenciation.

8. Dispositif de décompression de données compressées par le dispositif selon la revendication 7, caractérisé en ce qu'il comporte :

Des moyens (20) de réintroduction de redondance dans le signal compressé, pour produire des échantillons reconstitués, Des moyens (21) de dédifférenciation entre chaque échantillon reconstitué et un échantillon estimé correspondant, pour produite un échantillon dédifférencié,

Des moyens (22) d'estimation de la valeur de chaque échantillon estimé suivant à partir de la valeur d'au moins un échantillon dédifférencié précédemment produit.

9. Programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé selon l'une quelconque des revendications 1 à 6 lorsque ledit programme est exécuté par un ordinateur.

10. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé selon l'une quelconque des revendications 1 à 6.

Description:
COMPRESSION DE DONNEES NUMERIQUES

DESCRIPTION

DOMAINE TECHNIQUE La présente invention concerne la compression de données numériques.

Elle s'applique à un grand nombre de domaines, par exemple la transmission ou le stockage de signaux tels des images ou des sons.

ÉTAT DE LA TECHNIQUE ANTÉRIEURE

Les techniques de compression de données comportent fréquemment une détection de répétition de motifs. Les motifs répétés sont ensuite codés à partir de symboles nécessitant moins de données que les données originales.

En outre, il est possible de conditionner les données avant leur compression, de manière à faire apparaître des redondances capables d'améliorer ce type de codage.

II est encore possible de déterminer les variations dans les données consécutives, et de ne coder que ces variations, comme dans US 6 327 671 ou US 6 038 536.

L'article intitulé « The FPC Double-Précision floating-point compression Algorithm and its implementation », de M. Burtscher & P. Ratanaworabhan, concerne une technique de compression de données avec pertes. On voit à la figure 1 qu'une erreur issue d'une décompression avec perte est déterminée. L'erreur ainsi déterminée est compressée. Cette technique implique donc des opérations de compression et de décompression de données dans la seule phase de compression.

L'article "Effect on Speech Compression by Combined Delta Encoding and Huffman Coding Scheme" de Mohammad Arif et Al., Wireless Personal Communications, vol. 79, n° 3, 28 août 2014, pages 2371-2381, divulgue une compression de signal de parole qui comporte tout d'abord un delta codage qui consiste à laisser inchangé un premier échantillon de signal puis à calculer les différences successives entre échantillons successifs du signal. Ce signal delta-codé subit ensuite un codage de Huffman. Cette compression de données est une compression avec pertes dans le cas de nombres à virgule flottante.

EXPOSÉ DE L'INVENTION

L'invention vise à résoudre les problèmes de la technique antérieure en fournissant un procédé de compression de données numériques, caractérisé en ce qu'il comporte des étapes de :

Extrapolation de la valeur de chaque échantillon de données à compresser en fonction de la valeur d'au moins un échantillon précédent, pour produire un échantillon extrapolé,

Différenciation entre chaque échantillon extrapolé et l'échantillon de données à compresser correspondant, pour produire un échantillon différencié,

Suppression de redondance entre échantillons différenciés successifs produits par l'étape de différenciation.

Grâce à l'invention, les données sont compressées sans perte. La compression utilisée est un algorithme d'ordre N, donc de complexité linéaire, ce qui correspond à la vitesse la plus rapide théoriquement atteignable.

Le temps de calcul nécessaire demeure faible.

Le coût d'implémentation reste limité. En particulier, l'invention peut être mise en œuvre à moindre coût sur puce en silicium.

L'invention est avantageuse dans de nombreuses applications, car elle permet une augmentation du débit de données transmises sur un canal de bande passante limitée ou encore une augmentation du volume de données stockées dans une mémoire de taille donnée.

Selon une caractéristique préférée, l'extrapolation de la valeur d'un échantillon de données à compresser est une recopie de l'échantillon précédent. Ce type d'extrapolation est simple à mettre en œuvre.

Selon une caractéristique préférée, le procédé de compression de données numériques comporte une étape de conditionnement de chaque échantillon de données à compresser de manière à mettre en forme les données à compresser. La mise en forme peut faciliter les traitements ultérieurs.

Selon une caractéristique préférée, le procédé de compression de données numériques comporte une étape de concaténation d'échantillons différenciés successifs dans lesquels la redondance a été supprimée.

L'invention concerne aussi un procédé de décompression de données numériques compressées par le procédé précédemment présenté, caractérisé en ce qu'il comporte des étapes de :

Réintroduction de redondance dans le signal compressé, pour produire des échantillons reconstitués,

Dé-différenciation entre chaque échantillon reconstitué et un échantillon estimé correspondant, pour produite un échantillon dé-différencié,

Estimation de la valeur de chaque échantillon estimé suivant à partir de la valeur d'au moins un échantillon dé-différencié précédemment produit.

Selon une caractéristique préférée, l'estimation de la valeur d'un échantillon estimé suivant est effectuée par la même fonction que pour l'extrapolation lors de la compression de données.

L'invention concerne aussi un dispositif de compression de données, caractérisé en ce qu'il comporte :

Des moyens d'extrapolation de la valeur de chaque échantillon de données à compresser en fonction de la valeur d'au moins un échantillon précédent, pour produire un échantillon extrapolé,

Des moyens de différenciation entre chaque échantillon extrapolé et l'échantillon de données à compresser correspondant, pour produire un échantillon différencié,

Des moyens de suppression de redondance entre échantillons différenciés successifs produits par l'étape de différenciation.

L'invention concerne aussi un dispositif de décompression de données compressées par le dispositif précédemment présenté, caractérisé en ce qu'il comporte : Des moyens de réintroduction de redondance dans le signal compressé, pour produire des échantillons reconstitués,

Des moyens de dé-différenciation entre chaque échantillon reconstitué et un échantillon estimé correspondant, pour produite un échantillon dé-différencié,

Des moyens d'estimation de la valeur de chaque échantillon estimé suivant à partir de la valeur d'au moins un échantillon dé-différencié précédemment produit.

Pour la décompression, il y a ainsi un rebouclage de l'estimation des échantillons.

Le procédé de décompression, et les dispositifs de compression et décompression présentent des avantages analogues à ceux précédemment présentés.

Dans un mode particulier de réalisation, les étapes du procédé selon l'invention sont mises en œuvre par des instructions de programme d'ordinateur.

En conséquence, l'invention vise aussi un programme d'ordinateur sur un support d'informations, ce programme étant susceptible d'être mis en œuvre dans un ordinateur, ce programme comportant des instructions adaptées à la mise en œuvre des étapes d'un procédé tel que décrit ci-dessus.

Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.

L'invention vise aussi un support d'informations lisible par un ordinateur, et comportant des instructions de programme d'ordinateur adaptées à la mise en œuvre des étapes d'un procédé tel que décrit ci-dessus.

Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette ou un disque dur. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.

Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé selon l'invention.

Les dispositifs de compression et décompression selon l'invention peuvent être implémentés sur circuit, par exemple par assemblage direct de transistors ou de portes logiques.

BRÈVE DESCRIPTION DES DESSINS

D'autres caractéristiques et avantages apparaîtront à la lecture de la description suivante d'un mode de réalisation préféré, donné à titre d'exemple non limitatif, décrit en référence aux figures dans lesquelles :

La figure 1 représente un dispositif de compression de données numériques selon un mode de réalisation de l'invention,

La figure 2 représente un mode de réalisation de module de suppression de redondance mis en œuvre dans le dispositif de la figure 1,

La figure 3 représente un dispositif de décompression de données numériques selon un mode de réalisation de l'invention,

La figure 4 représente un dispositif de compression de données numériques selon un autre mode de réalisation de l'invention,

La figure 5 représente un dispositif de décompression de données numériques selon un autre mode de réalisation de l'invention,

La figure 6 représente un procédé de compression de données numériques selon un mode de réalisation de l'invention,

La figure 7 représente un procédé de décompression de données numériques selon un mode de réalisation de l'invention, La figure 8 représente un mode de réalisation particulier de mise en œuvre de dispositif de compression de données selon l'invention.

EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS

Selon un mode de réalisation préféré, représenté à la figure 1, le dispositif de compression de données numériques comporte un module de conditionnement 10 qui reçoit les données à compresser.

Dans toute la suite, on considère à titre d'exemple des échantillons de données qui sont des octets. Bien entendu, il est possible de considérer des mots de taille différente, strictement supérieure à 1 bit, par exemple 32 ou 64 bits.

Le conditionnement est une opération optionnelle de mise en forme des données dans le but de faciliter le travail des modules suivants et donc d'améliorer les performances du dispositif. Le conditionnement des données est par exemple le codage des données selon un code de gray, ce qui permet de ne modifier qu'un seul bit à la fois quand un nombre est augmenté d'une unité. I l est a ussi possible de changer l'endianness du signal (big endian, little endian), ou encore de modifier l'emplacement du bit de signe, afin d'adapter l'ordre des bits aux traitements ultérieurs.

Une sortie du module de conditionnement 10 est reliée à une entrée d'un module d'extrapolation 11. Le module de conditionnement 10 reçoit des échantillons de données à compresser E n , et délivre des échantillons de données à compresser conditionnées EC n au module d'extrapolation 11. L'entier n représente un indice courant d'échantillon, variant entre 1 et une valeur N.

Si le dispositif ne comporte pas de module de conditionnement, le module d'extrapolation 11 reçoit les échantillons de données à compresser E n et leur applique ses traitements.

Le module d'extrapolation 11 applique aux échantillons qu'il reçoit une fonction d'extrapolation qui produit une estimation de la valeur de l'échantillon courant. Différentes fonctions d'extrapolation peuvent être mises en œuvre. De préférence, la fonction d'extrapolation dépend de la nature du signal à compresser. A titre d'exemple, la fonction d'extrapolation estime la valeur de l'échantillon courant EC n en fonction de la valeur d'au moins un échantillon précédent ECn-i, ECn-2, etc. Dans ce cas, la fonction d'extrapolation est par exemple une recopie de l'échantillon précédent. Elle peut également être une fonction, linéaire ou non, de plusieurs échantillons précédents. Alternativement, elle peut encore être une fonction parabolique ou exponentielle.

Si la fonction d'extrapolation estime la valeur de l'échantillon courant EC n en fonction de la valeur d'au moins un échantillon précédent EC n -i, EC n - 2 , etc., on a : EE n = f(EC n -i, ECn-2, ..·), où EE n représente un échantillon extrapolé courant. Si la fonction d'extrapolation est une recopie de l'échantillon précédent, on a : EE n = EC n -i.

Une sortie du module d'extrapolation 11 est reliée à une entrée d'un module de différenciation 12. Le module d'extrapolation 11 délivre des échantillons estimés, ou extrapolés, EE n au module de différenciation 12.

De même, la sortie du module de conditionnement 10 est reliée à une entrée du module de différenciation 12. Le module de conditionnement 10 délivre des échantillons de données à compresser conditionnées EC n au module de différenciation 12.

Si le dispositif ne comporte pas de module de conditionnement, le module de différenciation 12 reçoit les échantillons de données à compresser E n .

La différenciation met en œuvre une fonction déterministe qui associe une unique valeur d'échantillon différencié ED n à un couple de valeurs d'échantillon conditionné et d'échantillon extrapolé correspondant (EC n , EE n ).

Les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé correspondant EE n sont a priori proches, si l'extrapolation fonctionne bien. La fonction de différenciation exploite la redondance existant entre les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé correspondant EE n . Par exemple, la fonction d'extrapolation est la fonction XOR appliquée bit à bit sur les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé correspondant EE n . En variante, la fonction d'extrapolation est une soustraction non signée. Une sortie du module de différenciation 12 est reliée à une entrée d'un module de suppression de redondance 13. Le module de différenciation 12 délivre des échantillons différenciés ED n au module de suppression de redondance 13. La figure 2 représente un mode de réalisation de module de suppression de redondance 13 qui travaille sur des blocs de P valeurs successives d'échantillons différenciés et détermine la redondance entre ces P valeurs. Par exemple, le résultat est le nombre NB de bits successifs de poids fort qui ont comme valeur « 0 » dans chacun des P échantillons différenciés considérés. Selon d'autres mises en œuvre, il est aussi possible de considérer les bits successifs de poids fort qui ont comme valeur « 1 » dans chacun des P échantillons différenciés considérés, ou encore les bits successifs redondants de poids faible. La valeur P est prédéterminée, ou en variante, elle est variable et est codée dans les données de compression.

Les P valeurs successives d'échantillons différenciés sont mémorisées puis tronquées des NB bits successifs redondants.

Enfin, les P valeurs tronquées, c'est-à-dire les parties non-redondantes des P valeurs successives d'échantillons différenciés, sont concaténées. Le signal de sortie du module 13 est le signal de données compressées produit par le dispositif de compression selon l'invention. Le signal de sortie du module 13 comporte des mots dont chacun correspond à P valeurs traitées et est formé du nombre NB et des P valeurs tronquées.

La figure 3 représente un mode de réalisation de dispositif de décompression de données compressées par le dispositif de la figure 1.

Le dispositif de décompression comporte un module de dé- concaténation 20 qui reçoit le signal compressé et effectue des opérations inverses de celles du module de suppression de redondance 13 précédemment décrit.

Dans le cas d'une suppression de redondance réalisée comme dans l'exemple exposé en référence à la figure 2, le module de dé-concaténation 20 lit le nombre NB et les P valeurs tronquées d'un mot reçu. Il ajoute les NB bits qui avaient été tronqués à chacune des P valeurs du mot reçu. Par exemple, il ajoute NB bits de poids fort qui ont comme valeur « 0 ». Le module 20 effectue une réintroduction de la redondance dans les données qu'il reçoit et reconstitue ainsi les valeurs des échantillons différenciés. Un échantillon différencié reconstitué EDR n est identique à l'échantillon correspondant produit par le module de différenciation 12 du dispositif de compression de données. Un échantillon différencié reconstitué EDR n représente l'erreur de la fonction d'extrapolation appliquée par le module 12 lors de la compression des données.

Une sortie du module de dé-concaténation 20 est reliée à une entrée d'un module de dédifférenciation 21. Le module de dé-concaténation 20 délivre les échantillons différenciés reconstitués EDR n au module de dédifférenciation 21.

Une sortie d'un module d'estimation 22 est reliée à une autre entrée du module de dédifférenciation 21. Une sortie du module de dédifférenciation 21 est reliée à une entrée du module d'estimation 22.

Le module d'estimation 22 utilise une fonction identique à celle utilisée par le module d'extrapolation 11 du dispositif de compression de données. A partir des échantillons précédemment dédifférenciés EDD n fournis par le module de dédifférenciation 21, le module d'estimation 22 produit des échantillons estimés EES n . Par exemple, si la fonction d'estimation est une recopie de l'échantillon précédent, on a alors : EES n = EDD n- i, où EDD n -i représente l'échantillon précédemment dédifférencié.

Ces échantillons estimés EES n sont fournis au module de dédifférenciation 21 qui applique une fonction inverse de la fonction appliquée par le module de différenciation 12 du dispositif de compression de données. Le module de dédifférenciation 21 produit un échantillon dédifférencié EDD n en fonction de l'échantillon estimé EES n et de l'échantillon différencié reconstitué correspondant EDR n fourni par le module 20.

Selon un mode de réalisation préféré, la fonction de différenciation est la fonction « XOR ». Dans ce cas, la fonction appliquée par le module de dédifférenciation 21 est également la fonction « XOR ».

La sortie du module de dédifférenciation 21 est également reliée à une entrée d'un module de déconditionnement 23. Ce module est optionnel et est mis en œuvre lorsque le dispositif de compression de données comporte un module de conditionnement 10.

Le module de déconditionnement 23 effectue des opérations inverses de celles effectuées par le module de conditionnement 10. Par exemple, si le conditionnement comporte le passage d'un codage de type « big endian » à un codage «de type « little endian », alors le déconditionnement réalise la transformation inverse.

Le signal de sortie du module 23 est le signal de données décompressées produit par le dispositif de décompression selon l'invention. Bien entendu, si les opérations de conditionnement/déconditionnement ne sont pas mises en œuvre, alors c'est le signal de sortie du module 21 qui est le signal de données décompressées produit par le dispositif de décompression selon l'invention.

La figure 4 représente un autre mode de réalisation de dispositif de compression de données selon l'invention.

Par rapport au mode de réalisation de la figure 1, le module optionnel de conditionnement est déplacé. Plus précisément, le dispositif de compression de données comporte un module d'extrapolation 11, un module de différenciation 12 et un module de suppression de redondance 13 qui sont analogues à ceux précédemment décrits et qui sont désignés respectivement par les mêmes références numériques.

Le dispositif de compression de données comporte un premier module de conditionnement 10i entre la sortie du module d'extrapolation 11 et la première entrée du module de différenciation 12 et un second module de conditionnement 10 2 reliée à la seconde entrée du module de différenciation 12.

Le conditionnement des données a donc lieu juste avant la différenciation entre les données à compresser et les données extrapolées.

La figure 5 représente un autre mode de réalisation de dispositif de décompression de données selon l'invention, correspondant au dispositif de compression de la figure 4.

Par rapport au mode de réalisation de la figure 3, le module optionnel de déconditionnement est déplacé. Plus précisément, le dispositif de décompression de données comporte un module de dé-concaténation 20, un module de dédifférenciation 21 et un module d'estimation 22 qui sont analogues à ceux précédemment décrits et qui sont désignés respectivement par les mêmes références numériques.

Les modules de dé-concaténation 20 et de dédifférenciation 21 travaillent sur des données qui sont conditionnées. Le dispositif de décompression de données comporte un module de déconditionnement 23 entre la sortie du module dédifférenciation 21 et la sortie du dispositif. Le module d'estimation 22 a une entrée reliée à la sortie du module de déconditionnement 23. Ainsi, le module d'estimation 22 travaille sur des données qui ne sont pas conditionnées, comme le module d'extrapolation 11 du dispositif de compression de données.

Un module de conditionnement 24 est relié entre une sortie du module d'estimation 22 et une entrée du module de dédifférenciation 21. Ainsi, les deux entrées du module de dédifférenciation 21 reçoivent des données qui sont conditionnées. Le conditionnement effectué par le module 24 est identique à celui effectué par les modules 10i et 10 2 du dispositif de compression de données décrit en référence à la figure 4.

La figure 6 représente le fonctionnement du dispositif de compression de données de la figure 1, sous la forme d'un organigramme comportant des étapes E10 à E13.

L'étape E10 est un conditionnement des échantillons de données à compresser E n . Ce conditionnement est optionnel. Le conditionnement des données est une mise en forme des données dans le but de faciliter leur compression.

L'étape de conditionnement E10 produit des échantillons de données à compresser conditionnées EC n .

L'étape suivante Eli est une extrapolation réalisée sur les échantillons conditionnés EC n . Si le conditionnement n'est pas effectué, l'extrapolation est effectuée sur les échantillons de données à compresser E n . De même, les traitements ultérieurs effectués sur les échantillons conditionnés le sont sur les échantillons de données à compresser.

Différentes fonctions d'extrapolation peuvent être mises en œuvre. De préférence, la fonction d'extrapolation dépend de la nature du signal à compresser. A titre d'exemple, la fonction d'extrapolation estime la valeur de l'échantillon courant EC n en fonction de la valeur d'au moins un échantillon précédent ECn-i, ECn-2, etc. Dans ce cas, la fonction d'extrapolation est par exemple une recopie de l'échantillon précédent. Elle peut également être une fonction, linéaire ou non, de plusieurs échantillons précédents. Alternativement, elle peut encore être une fonction parabolique ou exponentielle.

L'étape suivante E12 est une différenciation effectuée sur chaque couple d'échantillon conditionné et d'échantillon extrapolé correspondant (EC n , EE n ). La différenciation met en œuvre une fonction déterministe qui associe une unique valeur d'échantillon différencié ED n à un couple de valeurs d'échantillon et d'échantillon extrapolé correspondant (EC n , EE n ).

Les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé EE n correspondant sont a priori proches, si l'extrapolation fonctionne bien. La fonction de différenciation exploite la redondance existant entre les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé correspondant EE n . Par exemple, la fonction d'extrapolation est la fonction XOR appliquée bit à bit sur les valeurs d'échantillon conditionné EC n et d'échantillon extrapolé correspondant EE n . En variante, la fonction d'extrapolation est une soustraction non signée.

L'étape suivante E13 est une suppression de redondance dans les échantillons différenciés ED n . A titre d'exemple, la suppression de redondance est effectuée comme décrit en référence à la figure 2.

Dans ce cas, la suppression de redondance considère des blocs de P valeurs successives d'échantillons différenciés et détermine la redondance entre ces P valeurs. Par exemple, le résultat est le nombre NB de bits successifs de poids fort qui ont comme valeur « 0 ». La valeur P est prédéterminée, ou en variante, elle est variable et est codée dans les données de compression.

Les P valeurs successives d'échantillons différenciés sont mémorisées puis tronquées des NB bits successifs redondants. Enfin, les P valeurs tronquées sont concaténées. Le résultat de l'étape E13 est le signal de données compressées. Ce signal comporte des mots dont chacun correspond à P valeurs traitées et est formé du nombre NB et des P valeurs tronquées.

La figure 7 représente le fonctionnement du dispositif de décompression de données de la figure 3, sous la forme d'un organigramme comportant des étapes E20 à E23.

L'étape E20 est une dé-concaténation qui effectue des opérations inverses de celles de l'étape de suppression de redondance E13 précédemment décrit. Cette étape comporte une dé-concaténation proprement dite du signal compressé et une réintroduction de redondance dans le signal compressé.

Dans le cas d'une suppression de redondance réalisée comme dans l'exemple exposé en référence à la figure 2, le nombre NB et les P valeurs tronquées d'un mot reçu sont lus. Les NB bits qui avaient été tronqués sont ajoutés à chacune des P valeurs du mot reçu. Par exemple, NB bits de poids fort qui ont comme valeur « 0 » sont ajoutés aux valeurs tronquées. Les valeurs des échantillons différenciés qui représentent l'erreur de la fonction d'extrapolation appliquée par l'étape Eli lors de la compression des données sont ainsi reconstituées. L'étape E20 a pour résultat des valeurs d'échantillons différenciés reconstitués EDR n .

L'étape suivante E21 est une dédifférenciation qui applique aux échantillons différenciés reconstitués EDR n une fonction inverse de la fonction appliquée par l'étape de différenciation E12 du procédé de compression de données.

L'étape E21 produit un échantillon dédifférencié courant EDD n en fonction de l'échantillon différencié reconstitué correspondant EDR n résultant de l'étape E20 et d'un échantillon estimé correspondant EES n résultant de l'étape E22 décrite dans la suite.

L'étape suivante E22 est une estimation qui utilise une fonction identique à celle utilisée par l'étape d'extrapolation Eli du procédé de compression de données. A partir des échantillons précédemment dédifférenciés EDD n fournis par l'étape de dédifférenciation E21, l'étape d'estimation E22 produit des échantillons estimés EES n . Par exemple, l'estimation est une recopie de l'échantillon précédent : EES n = EDD n -i, où EDDn i représente l'échantillon précédemment dédifférencié.

Ces échantillons estimés EES n sont utilisés par l'étape de dédifférenciation E21 qui applique une fonction inverse de la fonction appliquée par l'étape de différenciation E12 du procédé de compression de données. Selon un mode de réalisation préféré, la fonction de différenciation est la fonction « XOR ». Dans ce cas, la fonction appliquée par le module de dédifférenciation 21 est également la fonction « XOR ».

L'étape E21 est également suivie de l'étape E23 de déconditionnement des échantillons dédifférenciés EDD n produits à l'étape E21. Cette étape est optionnelle et est mise en œuvre lorsque le procédé de compression de données comporte une étape de conditionnement E10.

L'étape de déconditionnement E23 effectue des opérations inverses de celles effectuées par l'étape de conditionnement E10. Par exemple, si le conditionnement comporte le passage d'un codage de type « big endian » à un codage «de type « little endian », alors le déconditionnement réalise la transformation inverse.

Le signal produit à l'étape E23 est le signal de données décompressées produit par le procédé de décompression selon l'invention. Bien entendu, si les opérations de conditionnement/déconditionnement ne sont pas mises en œuvre, alors c'est le signal produit à l'étape E21 qui est le signal de données décompressées produit par le procédé de décompression selon l'invention.

Selon un autre mode de réalisation, les étapes de conditionnement et de déconditionnement des procédés de compression et décompression de données peuvent être mises en œuvre respectivement après l'extrapolation et après la dédifférenciation, en ajoutant une étape de conditionnement entre l'estimation et la dédifférenciation dans le procédé de décompression de données.

Les procédés de compression et décompression de données selon l'invention peuvent être mis en œuvre par un ou des circuit(s) intégré(s) dédié(s) ou par des processeurs programmables, ou encore sous la forme de programmes d'ordinateur mémorisés dans la mémoire d'un ordinateur. Ainsi, la figure 8 représente un mode de réalisation particulier de mise en œuvre de la compression de données selon l'invention.

Le dispositif de compression de données a la structure générale d'un ordinateur. Il comporte notamment un processeur 100 exécutant un programme d'ordinateur mettant en œuvre le procédé selon l'invention, une mémoire 101, une interface d'entrée 102 et une interface de sortie 103.

Ces différents éléments sont classiquement reliés par un bus 105.

L'interface d'entrée 102 est destinée à recevoir les données à compresser.

Le processeur 100 exécute les traitements précédemment exposés. Ces traitements sont réalisés sous la forme d'instructions de code du programme d'ordinateur qui sont mémorisées par la mémoire 101 avant d'être exécutées par le processeur 100.

La mémoire 101 peut en outre mémoriser les résultats des traitements effectués.

L'interface de sortie 103 fournit les données compressées qui peuvent ensuite être mémorisées et/ou transmises de manière conventionnelle.

Bien entendu, le procédé et le dispositif correspondants de décompression de données sont mis en œuvre de manière similaire. Un même dispositif peut aussi mettre en œuvre la compression et la décompression de données.