Les algorithmes de compression de signaux (sons, images, mesures physiques...) utilisent des techniques de Traitement Numérique du Signal (TNS, ou DSP en anglais) pour modéliser et analyser les données. Ils font souvent appel à des filtres numériques, dont la plupart calculent simultanément la somme et la différence de deux échantillons. Chacun de ces calculs double la dynamique des signaux, donc augmente l'espace nécessaire pour représenter les résultats. Pourtant il suffit de 2N bits pour représenter deux nombres de N bits, et non 2N+2. Il est facile d'économiser un bit, mais se passer du deuxième est une autre aventure mathématique !
Alors que la conception du compacteur basé sur l'algorithme 3R se poursuit (les progrès sont présentés dans les colonnes d'Open Silicium n°16, 17 et 18) , j'évalue toujours des techniques pour comprimer les images et les sons, facilement et sans perte. C'est un sujet qui me passionne depuis plus de 15 ans et plusieurs articles sur la compression ont été publiés dans GNU/Linux Magazine. Aujourd'hui, j'ai une application concrète donc je reprends de plus belle !
1. Un peu de contexte
Le choix des méthodes de filtrage et de prédiction dépend d'innombrables paramètres et contraintes, comme le type des opérations arithmétiques utilisables. Les plus importantes et fondamentales sont l'addition et la soustraction, mais elles ont un inconvénient de taille.
Pourtant ces opérations sont essentielles à toutes les méthodes d'analyse de signaux, dont les plus connues sont :
- les filtres cascadés (ou « banques de filtres », utilisées par Sony dans le codec...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première