adv601

Composant de compression d'images
par ondelettes de
Analog Devices


présenté par Jacques WEISS



Description générale

L'adv601 est un composant permettant la compression/décompression d'images de télévision en temps réel ; il permet la réalisation d'un codec vidéo avec un boîtier (160 broches) et une mémoire de trames (256k*16b), il intègre toute la logique de communication avec l'extérieur.

Le signal video est conforme à la recommandation CCIR-601 pour des images TV (625/2:1/50 Hz ou 525/2:1/60 Hz), numérisées sur 8 ou 10 bits à 13,5 MHz; le composant dispose d'un interface vers un processeur et vers un DSP (par liaison série). La figure suivante présente la constitution de ce composant:


Fig. 1 : Constitution de l'adv601

Le composant exploite le principe d'analyse multirésolution par ondelettes associé à une quantification scalaire et 2 codages entropiques (RLE et Huffman) ; le taux de compression annoncés vont de 4:1, pour une compression sans dégradation notable (sur des images naturelles), à 350:1, pour des images aux formes "discernables".


Fig. 2 : Étapes du traitement dans l'adv601

Coeur de traitement Ondelettes (Wavelet Kernel)

Le principe du traitement correspond à celui indiqué dans ma page sur les ondelettes avec 5 couches de traitement (figure ci-dessous) dont la première ne s'adresse qu'à l'axe horizontal (on n'effectue le traitement que sur la trame et non l'image).


Fig. 3 : Couches d'ondelettes dans l'adv601

La figure suivante présente l'incidence de cette analyse sur l'image :


Fig. 4 : Décomposition de l'image par l'adv601

Ainsi le résultat est obtenu dans 5 groupes de blocs :

CoucheBloc Filtrage Décimation
1APH X 2
2B
C
D
PHX + PHY
PHX + PBY
PBX + PHY
8
3E
F
G
PHX + PHY
PHX + PBY
PBX + PHY
32
4H
I
J
PHX + PHY
PHX + PBY
PBX + PHY
128
5K
L
M
N
PHX + PHY
PHX + PBY
PBX + PHY
PBX + PBY
512

Ainsi, tous les blocs (à l'exception du bloc N) ont une distribution des valeurs centrée sur 0 avec un écrat type relativement faible (histogramme serré). Les figures suivantes présentent une illustration du traitement sur une image


Fig. 5 : Image source


Fig. 6 : Résultat du traitement

La figure suivante présente le processus de quantification utilisé par le composant; le coefficient de quantification est défini pour chaque bloc de l'image.


Fig. 7 : Processus de quantification

Après cette phase de quantification, on peut présumer qu'une grande majorité des points sera nulle ; pour exploiter cela, l'ADV601 effectuer tout d'abord un codage par plages (RLE) puis un codage entropique (Huffman); le composant propose 3 tables d'huffman censées être optimisées par rapport à la distribution des valeurs.


Cette page ne fait qu'une présentation sommaire de ce composant, vous trouverez de informations plus précises sur le serveur ftp d'Analog Devices

N'oubliez pas d'aller jeter un oeil sur le serveur www.wavelet.org, vous y trouverez bon nombre de choses intéressantes sur l'état de l'art dans le domaine.