Académique Documents
Professionnel Documents
Culture Documents
Directioa
tive
c
u
d
ie
r
l'Ingnie
note
technique
CENTRE
N AT I O N A L D E D O C U M E N TAT I O N P D A G O G I Q U E
1RWLRQVVXUODFRPSUHVVLRQ
GHVGRQQpHVGDQV
OHVDSSOLFDWLRQVPXOWLPpGLDV
Grard PUIMATTO
Service de linformatique ducative
L'exploitation de technologies multimdias pour une diffusion auprs du grand
public, et notamment dans le secteur ducatif, suppose de disposer d'quipements
dutilisation simple et d'un cot raisonnable.
Quels que soient les objets envisags sons, images naturelles fixes ou animes,
ralisations infographiques , les volumes de donnes gnrs sont considrables ;
le stockage, notamment sur un support d'dition, le transport sur les rseaux publics,
mmes dits hauts dbits , voire la simple exploitation partir dun disque dur,
supposent, ds lors quil sagit par exemple de vido, la mise en uvre de dbits
considrablement plus importants que ceux qui sont actuellement disponibles.
Une image au standard VGA + (640 x 480, 256 couleurs) occupe un octet par pixel
soit 300 ko. Dans cette dfinition, qui reste limite par rapport aux standards
audiovisuels, 25 images (soit une seconde de vido) occuperaient plus de 7 Mo, sans
parler du son ! Il est ais de comprendre que ces valeurs sont incompatibles avec la
plupart des supports informatiques actuels, et mme avec les contraintes des rseaux
publics ou privs envisageables moyen terme.
La conclusion s'impose d'elle mme : en l'tat, une telle technique de codage est
inutilisable ; il est impratif de faire tenir ces informations dans un volume
largement moindre, en un mot de les compresser.
Le propos nest pas ici de proposer une prsentation complte des techniques de
compression, mais simplement de prciser quelques notions de base sur ce sujet. Les
personnes qui doivent effectuer des choix technologiques en ce domaine, quil
sagisse de proccupations ditoriales ou plus simplement de dcisions
dquipements, trouveront sans doute dans ce document quelques lments qui
pourront les aider dcoder les discours commerciaux.
octobre 1994
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
6RPPDLUH
Introduction ............................................................................................................................................ 3
Approche historique............................................................................................................................... 4
La thorie de l'information.............................................................................................................. 4
valuation de la compression ......................................................................................................... 5
La compression des fichiers binaires.................................................................................................... 6
Les codages statistiques longueur variable .................................................................................. 6
Les codages par dictionnaires......................................................................................................... 8
Compression des images et des sons : des donnes fortement corrles........................................... 10
Codage par rptition : le Run Length Encoding ...................................................................... 12
Les compressions dgradantes........................................................................................................ 13
Les mthodes prdictives : compression diffrentielle et diffrentielle adaptative........................ 15
Au secours : les maths reviennent ! ................................................................................................ 17
Un problme spcifique : la vido numrique...................................................................................... 26
Les images animes MPEG ............................................................................................................ 27
Autres techniques utilises pour les images animes...................................................................... 30
En guise de conclusion provisoire propos des images animes.............................................. 32
Annexes ................................................................................................................................................... 37
Mthode de Huffman : exemple ..................................................................................................... 37
Mthodes Lempel Ziv : algorithmes et exemple............................................................................. 39
Compression Run Length : exemple ............................................................................................... 43
Bibliographie .......................................................................................................................................... 44
Cette Note technique est issue dune tude ralise pour le stage de formation des personnels du
rseau CNDP Images numrises (Caen, octobre 1993). Elle a pour objectif dclaircir quelque
peu un domaine complexe, et daider les consultants en ingnierie du rseau CNDP dans leurs
activits daide et de conseil, tant en matire dquipement des tablissements scolaires que de
dfinition des orientations des centres. Il est, bien entendu, hors de notre propos de prsenter de
manire rigoureuse et exhaustive les principes et techniques de compression ; cette note ne vise qu
donner une information de base, ncessaire pour mieux comprendre les nombreux articles et
documentations y faisant rfrence. Une bibliographie est propose pour ceux qui dsirent aller
plus loin.
Dans son fond et dans sa forme, cette note doit beaucoup aux relectures et aux points de vue de Michel
Banckaert, Dominique Cavet, Michel Lavacry, Alain Maillet, Nicole Rodriguez, Pierre Antoine
Taufour et Serge Torres.
La diffusion et la duplication de cette note est autorise, et mme encourage, la seule condition de
mentionner son origine en cas dutilisation totale ou partielle.
CNDP Direction de lingnierie ducative
Contact : Grard Puimatto, Service de linformatique ducative
Tlphone : (1) 46 12 84 78 (1) 46 12 84 96 (SIE)
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
,QWURGXFWLRQ
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
$SSURFKHKLVWRULTXH
/DWKpRULHGHO
LQIRUPDWLRQ
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Taille initiale
Taille aprs compression
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
1
Qcomp
/DFRPSUHVVLRQGHVILFKLHUVELQDLUHV
Une premire possibilit de compactage est de limiter la redondance des informations, sans se
proccuper de leur origine, c'est--dire en considrant tous les signifiants lmentaires (bits,
octets, mots...) comme a priori statistiquement indpendants.
Par nature indpendante des donnes traiter (images, sons, textes, fichiers excutables), la
compression des fichiers binaires est imprativement une transformation entirement
rversible. Les algorithmes de compression/dcompression utiliss se doivent d'tre non
dgradants pour garantir l'intgrit des informations traites. ce titre, on peut considrer
qu'ils relvent simplement d'un codage particulier d'un fichier.
Ces codages optimiss sont d'ailleurs de plus en plus souvent appels tre utiliss
directement par les systmes d'exploitation, au niveau le plus bas. Dans certains cas, leur mise
en uvre peut mme amener une amlioration des performances : la dure de la lecture sur
disque varie proportionnellement avec le taux de compression, et les traitements de
dcompactage peuvent se rvler moins longs que le gain obtenu. Leur intervention est alors
totalement transparente pour les utilisateurs et l'ensemble des applications.
La compression des fichiers binaires ne tient pas compte de la nature des
donnes.
Cest une opration qui doit tre entirement rversible, et on ne dispose
daucune information pralable de redondance.
/HVFRGDJHVVWDWLVWLTXHVjORQJXHXUYDULDEOH
L'origine des techniques de codage compressif est troitement lie l'optimisation des voies de
communications tlgraphiques et tlphoniques, notamment dans le cadre d'exploitations
militaires. Les tudes les plus importantes ont t dveloppes durant la deuxime guerre
mondiale et les annes suivantes, en particulier par Shannon. Le contexte particulier explique
sans doute pourquoi les problmes de compression et de cryptage sont troitement lis dans la
littrature...
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Les codages dits longueur variable (VLC variable length coding) utilisent les frquences
dapparition des lments du message pour attribuer aux plus frquents des codes courts, et
aux plus rares des codes longs. Les frquences dapparition peuvent, dans certains cas, tre
connues lavance (communications structures vocabulaire limit), mais elles doivent
gnraleemnt faire lobjet dune analyse au cours du traitement. Dans de nombreux cas, il est
ncessaire dtablir une table correspondant au message compresser, et donc deffectuer un
traitement en deux passes (analyse, puis compression proprement dite). Outre la ncessit de
relire deux fois les donnes, cette mthode ne permet pas la compression en temps rel. Pour
viter cette difficult, on value quelquefois les redondances sur une partie du fichier, qui joue
alors le rle dchantillon reprsentatif. Cependant, cette mthode est souvent peu prcise, la
reprsentativit de lchantillon ntant gnralement pas mesure. Les quipements
modernes de communication (tlcopieurs, modems) utilisent plutt une analyse en temps rel
sur des paquets de donnes de taille rduite.
Le code Shannon-Fano a t le premier algorithme statistique connatre un succs important.
Il a cependant rapidement t concurrenc par la mthode de Huffman, plus adapte aux
modes de traitement informatiques [Huffman, 1952].
/DPpWKRGHGH+XIIPDQ
3URFpGp
partir d'un tude statistique portant sur la frquence des lments signifiants prsents dans
les donnes originales, l'algorithme de Huffman attribue chacun de ces lments un code
binaire dont la taille est d'autant plus rduite que le code est frquent. Sauf dans le cas de
textes aux caractristiques rdactionnelles prcises, dans une langue donne (la frquence des
diffrentes lettres peut alors tre estime a priori), l'application de cette mthode suppose une
premire lecture des donnes, pralable au codage proprement dit, ayant pour buts une
analyse statistique et la constitution dune table de codage. La table de correspondance du
codage ainsi tablie devra tre transmise pour le dcodage (un exemple de traitement Huffman
est propos en annexe).
3HUIRUPDQFHV
Les performances de cet algorithme dpendent des caractristiques des donnes compacter,
mais il est possible de connatre le taux de compressibilit sans avoir effectuer le
compactage, uniquement partir de l'analyse statistique. Les performances peuvent aussi tre
amliores en changeant la taille des motifs dont on limite la redondance, et ventuellement en
scindant les fichiers coder. Le gain de compression moyen cit par Mark Nelson [Nelson,
1993, p. 389 et suivantes] est de 31 %, et les oprations de compactage et dcompactage se
rvlent trs lentes.
,PSOpPHQWDWLRQV
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
/HVFRGDJHVSDUGLFWLRQQDLUHV
Les codages par dictionnaires sont galement fonds sur l'analyse des rptitions dans les
donnes traiter. Cependant, il ne sagit plus ici de rechercher des occurences de signifiants
considrs comme lmentaires (gnralement des octets), mais de mots (groupes doctets)
de longueur variable. Les mots rpts prennent place dans un dictionnaire, et chacun d'eux
est remplac, dans les donnes comprsses, par sa seule adresse dans le dictionnaire.
Si on considre que le dictionnaire franais comporte environ 2 000 mots de 6 lettres, il est
possible de les coder sur 11 bits, au lieu des 30 ncessaires au minimum selon un codage
alphanumrique thorique (5 bits pour un alphabet de moins de 32 caractres), et des 48 bits
ncessaires pour un mode ASCII. En renouvelant ce procd sur les mots de diffrentes
longueurs, on peut coder les textes en mettant pour chaque mot sa longueur suivie de son
adresse dans le dictionnaire. Cet exemple montre bien quil est largement possible doptimiser
les codages classiques. Le procd expos est cependant trop simpliste pour satisfaire une
gamme tendue de besoins (ncessit de saccorder sur un dictionnaire, absence de traitement
des termes non prvus, etc.) ; il est cependant quelquefois utilis dans le cas d'univers de
communications limits un vocabulaire rduit et dots d'un dictionnaire prdfini connu du
destinataire, et ne devant donc pas tre transmis.
Pour pallier ces difficults, et produire un procd capable de sadapter une grande varit
de besoins, il est ncessaire de dfinir un dictionnaire spcifique aux donnes traiter. Cette
mthode a cependant pour inconvnients de ncessiter deux lectures du fichier traiter (la
premire pour constituer le dictionnaire, et la deuxime pour coder effectivement les donnes)
et dimposer la conservation dun dictionnaire, qui peut devenir trs lourd, en tte du fichier
produit.
Abraham Lempel et Jacob Ziv ont publi en 1977 et 1978 des algorithmes de compression
d'usage gnral (indpendant de la nature des donnes codes) fonds sur la construction d'un
dictionnaire dynamique qui n'a pas tre sauv en tant que tel, puisqu'il est reproduit
automatiquement par le dcompacteur en fonction des donnes du fichier comprim [Ziv,
1977], [Ziv, 1978].
/HVPpWKRGHV/HPSHO=LY/=/=[
note
technique
Corps de la fentre
glissante
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Tampon de lecture
q s s f h g j g j h k , g b n h , v j k h l x w c f s e r d h d f h d s z ( j k h l w x f b n b j k h o u yt r t r f b c x v
x
Donnes traiter
1. La chane jhkl lue dans le tampon est identique celle lue dans la fentre
partir du caractre 14.
2. Son codage sera donc : [14 (position) ; 4 (longueur) ; w (caractre suivant)]
3. La fentre est dcale de 5 caractres (longueur code)
Principe de fonctionnement de LZ77.
En 1978, Lempel et Ziv ont publi une nouvelle version de leur algorithme [Ziv, 1978],
abandonnant le concept de fentre glissante. Le dictionnaire se construit dynamiquement, tout
au long du traitement. Chaque signe transmis par le codeur comprend un index dans le
dictionnaire, ainsi que le caractre suivant coder. La longueur de la chane na plus tre
transmise, puisquelle est conserve dans le dictionnaire ; la concatnation de la chane
rpte avec le caractre suivant est galement place dans le dictionnaire, et devient ainsi
disponible pour la totalit du codage ultrieur. Cette nouvelle version permet de dpasser les
limites de LZ77, et amliore largement les performances, surtout sur les fichiers longs.
Cependant, une nouvelle difficult apparat : la taille du dictionnaire est limite par le mode de
codage de ses index (souvent sur 16 bits, soit 65 536 entres), et il est donc ncessaire de
grer lvnement dictionnaire plein . Une possibilit est de laisser le dictionnaire en ltat,
et de simplement lutiliser, mais cela conduit une dtrioration des performances dans le cas
de longs fichiers, qui peuvent prsenter de grands changements dans la nature des donnes ;
une autre solution est de supprimer le dictionnaire existant, et den reconstruire un autre, mais,
dans le cas de donnes homognes, cela peut conduire une dtrioration des performances.
La solution gnralement retenue est danalyser le taux de compression obtenu avec le
dictionnaire existant, et de le reconstruire seulement si on constate une dtrioration.
Terry Welch (le W de LZW) a publi en 1984 de nouvelles amliorations [Welch, 1984].
Contrairement au dictionnaire de LZ78, qui ne contient au dpart quune chane vide repre
par lindex 0 , celui de LZW comprend au dpart les codes ASCII, reprs de 0 255 ; tous
les symboles peuvent ainsi tre directements cods selon le dictionnaire, permettant ainsi
dviter la dtrioration des performances pour les fichiers ne prsentant que peu de
rptitions. De plus, Welch a galement dfini les principes de communication entre codeur et
dcodeur : le caractre autoadaptatif du procd est amlior par la possibilit dadapter
dynamiquement les paramtres au cours du codage, les modifications tant communiques au
dcodeur selon un codage spcifique. Il sagit par exemple de laugmentation de la taille des
adresses, de la purge partielle ou totale du dictionnaire, de la cration temporaire dun autre
dictionnaire, et plus gnralement de tout changement de technique de compression en cours
de traitement.
La plupart des compacteurs du march utilisant LZ et ses variantes (Arj, Pkzip...) exploitent
conjointement un algorithme statistique limit (issu de Huffman ou de Shannon-Fano), mais en
vitant l'analyse pralable de l'ensemble du fichier, trop pnalisante en termes de vitesse
CNDP DIE SIE Notions de compression
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
d'excution. Dans la plupart des cas, l'analyse est limite une fentre, dont la taille varie en
fonction des mesures de reprsentativit statistique des rsultats obtenus. D'autres variantes
prvoient d'effectuer le compactage par paquets de taille fixe, ce qui permet des codages
statistiques faciles, tout en mnageant des possibilits d'accs direct et de traitement au vol
(modems).
Le plus cit des algorithmes LZ, le LZW (perfectionnements divers apports par Welch en 84)
est sans doute aussi le moins utilis, car il a fait l'objet d'un brevet dpos par Unisys pour une
exploitation directe par le systme Unix. Dans la plupart des cas, les algorithmes mis en uvre
par les logiciels actuels sont des volutions de LZ77 ou LZ78, exploitant quelques uns des
principes mis en place par Welch, comme le codage des caractres ASCII ou ladaptation de
taille des dictionnaires.
3HUIRUPDQFHV
Les codages Lempel Ziv sont ce jour ceux qui permettent les meilleurs taux de compactage
non destructif sur la plupart des fichiers. Les possibilits de paramtrage et d'association
d'autres techniques (statistiques notamment) offrent une infinit de variations permettant
d'optimiser le rapport entre taux de compression et vitesse de traitement. Les taux obtenus sur
un jeu d'essai [Marseau, 1992] mettent en vidence des compressions deux fois plus efficaces
que celle de Huffman. Les tests effectus par Mark Nelson [Nelson, 1993] montrent des gains
de compression moyens compris entre 45 et 50 % pour les diffrentes variantes.
,PSOpPHQWDWLRQV
De trs nombreux programmes de tous types utilisent les algorithmes LZ. Outre les utilitaires
spcialiss (Arc, Pkzip, Lharc, Arj), on peut citer les logiciels de sauvegarde (QIC-122 pour
les sauvegardes bandes, PC Backup, Norton Backup, MS Backup, Sytos), les protocoles de
transmission haute vitesse par modem (V42bis), ainsi que diverses implmentations intgres
aux systmes d'exploitation (Compress sous Unix, Dblspace de DOS 6). L'ensemble des
compacteurs temps rel (Dblspace, Stacker...) utilisent ces techniques. Les variantes mises
en uvre sont souvent issues de LZ 77, qui se rvle plus performant sur les fichiers courts (le
dictionnaire, et donc l'efficacit de LZ 78 et des versions postrieures croissent avec la taille
du fichier) ; en outre, il a l'avantage d'tre dans le domaine public.
Les algorithmes Lempel Ziv sont les processus gnriques les plus efficaces
actuellement. Il existe dinnombrables variantes de ces algorithmes, dont le
LZW, qui est sans doute le plus connu, mais aussi le moins utilis, car il est
protg par brevet. Les processus de compactage et de dcompactage sont
symtriques, et procdent la construction dun dictionnaire durant le
traitement du fichier.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
&RPSUHVVLRQGHVLPDJHVHWGHVVRQV
GHVGRQQpHVIRUWHPHQWFRUUpOpHV
Une image informatique peut tre assimile un tableau de pixels, organis en lignes et
colonnes, dont chaque lment a une valeur. La dfinition de cette valeur est obtenue par une
ou plusieurs donnes numriques (gnralement une pour les images monochromes, trois pour
les images couleurs en reprsentation RVB, YUV ou YCC), ou bien par une adresse dans une
table de couleurs prdfinies, la palette (Color Look Up Table, ou CLUT).
Cependant, on constate que la couleur d'un pixel est souvent trs proche, voire identique
celle des pixels contigus. Statistiquement, il y a toujours une forte corrlation entre les valeurs
des pixels d'une mme zone d'image, et cette spcificit peut tre mise profit pour compacter
les donnes. Cette caractristique est souvent dsigne par le terme de redondance
spatiale .
Dans le cas de phnomnes variant en fonction du temps, comme le son ou les images
animes, une autre corrlation peut tre mise en vidence entre des mesures successives, et
elle est dautant plus importante que la frquence de mesure est leve. Cest la redondance
temporelle.
La quantification de ces corrlations, tant au niveau spatial pour les images fixes que temporel
pour les sons et les images animes, constitue la mesure de redondance des informations.
Cette notion, directement issue des travaux de Shannon, doit tre prise au sens de la thorie de
l'information, et non au sens commun : chaque information lmentaire se voit attribuer une
quantit d'information, d'autant plus leve qu'elle est nouvelle , c'est--dire non dductible
du contexte. Cette quantit, value en pourcentage, permet de dfinir galement la mesure de
redondance associe, qui est le complment 1 de la quantit d'information.
Alors que, au sens commun, la redondance est lie au caractre plus ou moins superflu des
informations, elle est, pour Shannon, une simple mesure mathmatique indiquant sa
compressibilit thorique. Aucune donne dune image ou dun son nest totalement
redondante, car cela signifierait quelle peut tre coup sr dduite du contexte. La
suppression des redondances comme description dune technique de compression na donc
aucun sens, puisque aucune des informations lmentaires ne prsente de redondance totale.
En fait, lensemble des techniques de compression des images exploitent la corrlation entre
des pixels voisins pour produire une valeur probable du prochain pixel coder. Le produit
de cette prdiction tant statistiquement proche de la valeur relle, il est alors possible
deffectuer le codage de manire plus conomique, par exemple simplement en codant
uniquement la diffrence avec la valeur prdite. Les ordres de grandeur des valeurs
transmettre sont alors statistiquement plus faibles, ce qui permet dutiliser un nombre plus
faible de bits, soit en codage de longueur fixe, soit en longueur variable (mthode statistique).
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Le procd Run Length ne relve pas d'une thorie mathmatique trs complexe. Il s'agit
simplement de remplacer des lments signifiants successifs identiques par un seul d'entre eux,
suivi du nombre de rptitions (un exemple de traitement RLE est donn en annexe). Ce
procd peut paratre simpliste et peu performant si on cherche l'appliquer, par exemple,
un texte : mme dans notre belle langue franaise, les rptitions nombreuses de lettres
n'apporteraient qu'une compression drisoire ! En revanche, si on l'applique une image, en
particulier dorigine infographique, il est ais de s'apercevoir que les plages de couleur
homognes sont souvent importantes, surtout si le nombre de couleurs est faible, et l'image
limite la colorisation de quelques centaines de pixels, sur un fond uniforme...
Particulirement simple mettre en uvre, c'est un procd qui a t largement utilis par les
logiciels de dessin dans les annes passes, ventuellement associ un autre algorithmes plus
complexes. Dans certains cas, le RLE est utilis pour les images animes, sans aucune
exploitation de la redondance temporelle.
3URFpGp
Si n octets successifs sont dans un mme tat, il est ais de transmettre l'octet rpt et le
nombre de rptitions. On pourra ainsi, dans la plupart des cas, coder sur 3 octets les n octets
composant le signal initial. Dans le cas de textes, voire de fichiers binaires, cette analyse
exclusivement ralise au niveau des octets successifs n'apporterait qu'une faible
amlioration ; en revanche, dans le cas dimages bit map (codes pixel par pixel), et
particulirement pour les dessins raliss main leve , les plages de rptition sont
considrables (zones de couleurs homognes), et les rsultats beaucoup plus probants.
S'il est relativement simple de coder l'octet rpter, suivi du nombre de rptitions dans
l'octet suivant, cette mthode peut se rvler trs pnalisante pour certains fichiers : la
limite, si deux octets conscutifs sont toujours diffrents, le volume du fichier compress
sera le double de celui du fichier initial ! Pour viter cet inconvnient, les versions les plus
avances du codage Run Length utilisent un code discriminant pour indiquer le dbut d'une
squence octet rpter + nombre de rptitions , les octets isols restant cods sous leur
forme initiale.
3HUIRUPDQFHV
Le format PCX de Z-soft, repris son compte par Microsoft avec les diffrentes
implmentations de Paintbrush, sans doute un des plus rpandus des formats graphiques,
septembre 1994 Page 12
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Les procds voqus plus haut ne produisent pas de dgradation, et relvent ce titre du
compactage plus que de la compression. Ds que l'on accepte de perdre des informations,
fussent-elles juges superflues, on entre dans le domaine de la compression dgradante. Se
pose alors la question de la limite acceptable la perte dinformations, de la slection des
critres opportuns et des paramtres retenir pour estimer la qualit de restitution. Le
contexte smantique n'tant pas sans importance, l'apprciation est largement subjective. Dans
le cas des images, par exemple, il est difficile d'valuer objectivement la pertinence des
informations, et l'apprciation ne peut que faire intervenir des lments subjectifs. On
comprendra aisment que les impratifs de sparation des couleurs, notamment, ne sont pas
les mmes sur un tableau de Van Gogh et sur une photo architecturale, et quaucun algorithme
ne peut faire cette diffrence !
Plusieurs modes d'appauvrissement sont envisageables, qu'il faudra choisir en fonction de
l'image traiter et des besoins. Le nombre de niveaux de couleurs peut tre rduit,
ventuellement en utilisant une table d'indexation, selon des mthodes trs simples... ou trs
complexes. Le rsultat peut se rvler trs convaincant, mais au prix de temps de calcul
parfois trs longs. galement, le nombre de points de la dfinition initiale devra tre adapt au
CNDP DIE SIE Notions de compression
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
mode de restitution utilis, et aux besoins lis l'image concerne (par exemple,
remplacement de blocs de 2 x 2 pixels par leur valeur moyenne).
Rappelons que la numrisation du son est obtenue en dcoupant le signal en fines tranches de
temps (chantillonnage, gnralement 11, 22 ou 44 kHz) puis en l'valuant par rapport une
chelle numrique de rfrence (quantification) [Dos. Ing., n13, 1993]. La numrisation d'une
image fixe, quant elle, s'effectue au travers d'un chantillonnage en zones gographiques sur
la surface de l'image, suivi d'une quantification par rapport une chelle de reprsentation du
signal lumineux ; cette reprsentation peut se faire par rapport aux couleurs primaires RVB,
comme cest gnralement le cas en informatique, ou en sparant les informations de
luminance et de chrominance, selon des techniques couramment pratiques en vido (Y/C,
YUV, YCC) [Cavet, 1994].
Dans bien des cas, l'information obtenue aprs numrisation peut se rvler trop fine pour la
chane de restitution envisage. Par exemple, les dispositifs de visualisation ne disposent pas
tous des 24 bits gnralement utiliss pour coder les couleurs, et la qualit des haut-parleurs
utiliss rend souvent tout fait superflue une dfinition d'enregistrement de type CD-Audio.
Une analyse soigne de la pertinence des informations conserves, tenant compte de
l'ensemble de la chane jusqu' la restitution finale, permet de rduire considrablement la
quantit des donnes conserves, sans dgradation lors de la restitution. Pourtant, une telle
opration consiste dj en une altration de la source, et relve donc bien dune compression
dgradante. En outre, ce type de traitement ne peut se concevoir que dans le cas de
llaboration dun support de diffusion, adapt une chane de restitution prcise ; dans le cas
dun archivage, en revanche, il sera ncessaire de prvoir une dfinition sensiblement plus
.
fine, pour prvenir des besoins futurs.
D'autre part, nombre d'informations, si elles sont technologiquement restituables, sont peu ou
pas perceptibles l'oreille ou l'il humains. La prise en compte de la sensibilit de nos
organes perceptifs permet, l encore, de minimiser les flux d'informations. Cette mthode a t
utilise trs tt en tlphonie, mais galement en vido : l'il tant plus sensible la luminance
qu' la chrominance, les codages YCC et YUV notamment codent beaucoup moins finement
les couleurs que lintensit lumineuse elle-mme (sous-chantillonnage de la chrominance).
Dans le cas d'images animes, on sait, depuis les origines du cinma, que le mouvement est
rendu par une succession d'images fixes une frquence suffisante pour la perception de l'il
humain (gnralement 25 images par seconde). Chacune de ces images doit donc tre traite
de la mme manire qu'une image fixe lors de la numrisation. Pourtant, l encore, la quantit
de donnes dpendra de la technologie choisie. Les paramtres retenus pour la numrisation
de chaque image devront entrer en ligne de compte, mais aussi le nombre dimages par
seconde (25 avec les procds vido europens, 30 en NTSC), et la technique de restitution
(affichage par trames entrelaces par exemple).
Cependant, sil est possible dadapter les paramtres de numrisation ou de codage lorsquon
connait les caractristiques de lensemble de la chane de restitution, ainsi que les utilisations
qui sont envisages (dmarche ditoriale), cette dmarche est beaucoup risque lorsque le but
de lopration est larchivage. Dans ce cas, en effet, on ignore quelles seront les performances
des matriels utiliss dans quelques annes, et, surtout, il est probablement tout fait
draisonnable dabandonner des informations alors que lon ignore le type dexploitation qui
sera fait, quelquefois des annes plus tard. Ainsi, le Photo CD conserve des images numrises
dans une dfinition seize fois plus fine que celle qui est ncessaire pour un tlviseur, pour
garantir les possibilits dutilisations futures ; et, dans bien des cas, on considre que le
meilleur moyen de conserver des films ou des squences vido reste les supports traditionnels
argentiques ou magntiques, tous encore analogiques.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Dans le cas de sons numriss, on peut constater que les niveaux de deux chantillons
successifs prsentent statistiquement une diffrence faible. On dira quil y a une forte
corrlation entre le signal obtenu sur un chantillon donn et l'chantillon prcdent, ou
encore, au sens de la thorie de linformation, que ses informations prsentent une forte
redondance.
De mme, dans le cas des images, il est ais de constater qu'il y a une forte corrlation spatiale
entre un pixel et la zone qui l'entoure : dans la trs grande majorit des cas, les images,
naturelles ou de synthse, prsentent de larges zones dont les couleurs sont trs proches (ciel,
mer, constructions, etc.).
Pour les images animes, quiconque a regard par transparence un morceau de film a pu
constater que les images successives sont trs souvent quasi semblables. la corrlation
spatiale voque plus haut s'ajoute donc une corrlation temporelle, sans doute encore plus
forte.
/HVPpWKRGHVGLIIpUHQWLHOOHVSURFpGpV
0pWKRGHGLIIpUHQWLHOOHVLPSOH
Une premire tape pour rduire la taille des donnes est de transmettre non plus la valeur de
l'chantillon, mais celle de la diffrence avec l'chantillon prcdent, qui est statistiquement
infrieure et peut donc tre code sur un nombre de bits plus rduit. L'utilisation de ce
principe pour un codage non dgradant (entirement reversible) suppose cependant un codage
des diffrences entre deux chantillons avec un codage longueur variable, la manire de la
mthode de Huffman. Or, une telle mthode, qui suppose une analyse statistique pralable de
l'ensemble des donnes, nest pas adapte ce type dutilisation : dune part, elle ne peut tre
applique en temps rel (analyse et compression en deux passes), et, dautre part, elle
ncessite des traitements de dcodage plus complexes qui peuvent se rvler incompatibles
avec les matriels de restitution grand public envisags.
La restitution du son pouvant souvent s'accommoder de quelques pertes d'informations, la
solution gnralement retenue est un codage de toutes les donnes selon un nombre identique
de bits, plus rduit que la dfinition originale de la quantification. Par exemple, dans le cas de
sons numriss sur 8 bits, le codage diffrentiel sera effectu sur seulement 4 bits, ce qui
divise le flux de donnes par deux. En revanche, les sauts damplitude suprieure 4 bits
entre deux chantillons successifs ne pourront tre fidlement restitus, mais ils sont
statistiquement peu frquents.
Exemple
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Dans le cas d'une numrisation du son sur 8 bits (256 niveaux), 22 kHz, un codage
diffrentiel sur 4 bits (16 niveaux) occasionnera au maximum un retard de 16
chantillons pour transmettre une variation damplitude maximale, maintenue durant
une dure gale au moins 16 chantillons. Un tel vnement est fort improbable, et le
1
retard moyen constat (et donc la perte de qualit) se rvle proche de zro . Les
donnes transmises sont quivalentes en volume un codage 11 kHz sur 8 bits, avec
une qualit de restitution gnralement bien suprieure.
Dans le cas des images fixes, on peut galement utiliser une mthode diffrentielle, par ligne,
ou par colonne. Chaque pixel sera alors cod partir de la diffrence avec le pixel prcdent,
et on peut alors appliquer les mthodes Huffman ou LZ aux donnes obtenues. Ce codage,
largement utilis par le pass, suppose nanmoins des traitements assez lourds (calcul des
diffrences et codage LZW) et se rvle de moins en moins performant lorsque le nombre de
couleurs augmente. Dans ce cas, il est ncessaire de raliser un codage en 3 plans
monochromes (RVB ou YCC) pour obtenir de bons rsultats.
On peut galement citer le format DYUV exploit par le CD-I, qui ne code totalement que le
premier pixel de chaque ligne, les autres tant cods par diffrence avec l'lment prcdent.
0pWKRGHGLIIpUHQWLHOOHDGDSWDWLYH
Le procd peut tre amlior en ralisant une prdiction plus prcise que la simple prise
en compte de la valeur de l'chantillon prcdent. Cela peut par exemple, dans le cas du son,
tre ralis par extrapolation de la vitesse de variation du signal sur les chantillons
prcdents. La valeur dlivre par le prdicteur est alors celle de l'chantillon prcdent,
corrige en tenant compte de la moyenne des variations constates sur quelques chantillons
passs. Le codage ainsi obtenu permet, avec un mme nombre de bits de codage, des
altrations largement plus rduites qu'avec la mthode diffrentielle simple.
La compression d'images peut galement tre ralise en calculant une valeur thorique
probable pour un pixel partir des pixels voisins, et en codant la diffrence entre ltat rel du
pixel et cette prdiction. Les mthodes classiques de compactage, comme celles de Huffman
ou de Lempel-Ziv, permettent alors de rduire la taille des donnes obtenues. Dans le cas le
plus simple, la prdiction est ralise partir de la moyenne des pixels de l'image, le
coefficient de corrlation des pixels conscutifs, et l'unique valeur du pixel prcdent.
L'algorithme obtenu est disymtrique : le codage, qui comprend une analyse pralable de la
totalit de l'image, se rvle largement plus complexe que le dcodage. Des procds plus
labors peuvent tre utiliss en tendant l'environnement un plus grand nombre de pixels
(souvent 8), ainsi qu'en dcoupant l'image de base en plusieurs images plus rduites (souvent
8x8 pixels), ce qui permet de rduire l'cart type.
Pour les images animes, les procds d'extrapolation utiliss pour le son peuvent permettre de
prdire le mouvement, mais il est souvent plus efficace de le traduire sous forme d'un vecteur
obtenu par interpolation entre deux images distantes. Cependant, dans ce cas, les images
doivent tre traites dans un ordre diffrent de celui de la restitution, ce qui contribue rendre
les traitements plus complexes, notamment en ce qui concerne le codage.
3HUIRUPDQFHV
Il est cependant possible de trouver des sons qui sadaptent trs mal cette manipulation.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
256 valeurs ; 16 bits : 65 536 valeurs). Un codage DPCM ou ADPCM sur un nombre de bits
divis par 2 offre un encombrement quivalent une frquence d'chantillonnage divise par
2, avec une qualit largement suprieure.
Dans tous les cas, le rapport de compression envisageable sans dgradation sensible ne peut
dpasser 10. En effet, le signal sonore est unidimensionnel et prsente une corrlation
beaucoup moins forte que les images.
La compression d'images selon ces mthodes donne des gains de compression temporelle trs
variables, selon la nature des donnes (entre 20 et 80 %), mais qui se dtriorent lorsque le
nombre de couleurs augmente. Les algorithmes prdictifs introduisent la notion de traitement
dissymtrique, le codage tant beaucoup plus complexe (et long) que le dcodage.
,PSOpPHQWDWLRQV
Sons : les mthodes DPCM et ADPCM sont largement utilises en tlphonie, pour laquelle
elles ont t labores. Elles sont reprises dans le cadre des spcifications Windows
Multimdia (DPCM), CD-ROM XA et CD-I (ADPCM).
En ce qui concerne les images, le format GIF, dvelopp par Compuserve, utilise la mthode
diffrentielle, associe aux mthodes de compactage traditionnelles LZ et Huffman.
Pour rduire la quantit dinformations transmettre, les procds
diffrentiels codent non plus chaque valeur, mais la diffrence avec une
valeur probable, calcule par un processus de prdiction.
Selon le degr de complexit du procd, la valeur prdite peut tre
obtenue trs simplement (lchantillon prcdent, ou le premier pixel de la
ligne peuvent servir de rfrence), ou en tenant compte de diverses
informations, comme les caractristiques globales de corrlation lies au
type des donnes, ou les valeurs et variations enregistres sur les donnes
voisines .
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
$XVHFRXUVOHVPDWKVUHYLHQQHQW
Dans le cas d'images fixes, il s'agit d'analyser un signal ne variant plus en fonction du temps,
mais bien en fonction de la position du pixel dans le pseudo-plan de l'cran ; c'est une
transformation de mme nature que la transforme de Fourier qui est invoque, mais oprant
en fonction des coordonnes X et Y du pixel. La Transformation Cosinus Discrte (DCT ou
Discrete Cosine Transform) permet de dcomposer le signal lumineux composant limage (X
et Y pour les coordonnes du pixel, Z pour sa dfinition lumineuse) selon une combinaison de
3
fonctions trigonomtriques, identifiables par leur frquence et leur amplitude .
2
Encore ne sagit-il pas ici de frquences par rapport au temps, mais par rapport la variation de X et Y.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
M a tric e 8 x 8 d e s
va le urs sp e c t ra le s
M a tric e 8 x 8 d e s
va le urs d e s p ixels
0
0
0 c(0,0)
0
2
X
j
c(i,j)
Application de la DCT
7
7
Valeur du pixel (3,2)
Plan Y
lum inance
Plan U
ch ro m ina nce 1
Plan V
ch rom ina n ce 2
1 : dcomposition d'une image en 3 plans YUV
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Blo c
X 8X 8
A pp lica tio n d e
la DCT
Y
La DCT produit elle mme une matrice de 64 coefficients (8 x 8 ), rangs selon les frquences
croissantes selon les axes horzontal et vertical. Gnralement, la plus grande partie de l'nergie
est concentre dans les basses frquences du spectre qui sont exprimes par les coefficients
les plus proches du coin suprieur gauche de la matrice.
94
78
86
107
94
88
114
116
74
96
106
86
109
113
119
121
88
98
87
105
106
123
125
101
80
108
114
109
106
110
123
120
107
93
105
103
99
105
128
120
84
107
123
98
130
111
115
113
103
118
100
126
124
136
120
119
122
117
114
127
136
128
125
128
872
-64
-8
3
-11
-2
-10
6
-59
-17
9
-12
-3
14
-3
1
9 -19 1
0
2
3
6
3
1
4 18 -10
10 -13 -10 0
19 9 17 4
-3
4 18 4
1
3
1 -9
-4 11 3 -20
-7
6
-5
6
4
3
-3
8
-4
1
11
20
11
22
-4
-17
Matrice des valeurs de luminance des pixels et sa transforme DCT [Terrasson, 1992]
140
120
Signal
100
80
60
40
3
5 Position verticale
(Y)
7
20
0
1
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
90 0
60 0
30 0
3
5
7
-30 0
1
DCT (i, j) =
Pixel (x, y) =
N 1 N 1
(2x + 1) i
(2y + 1) j
1
cos
C(i) C(j) Pixel (x, y) cos
2N
2N
2N
x= 0 y= 0
1
2N
N 1 N 1
(2y + 1) j
(2x + 1) i
cos
2N
2N
j= 0
si u = 0 ; C (u ) = 1 si u 0
o C ( u) =
2
(Pixel (x,y) dsigne la valeur du pixel de coordonnes (x,y) et
DCT(i,j) le coefficient repr par la ligne i et la colonne j dans la matrice DCT.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
$SUqVOD))7HW'&7OHVRQGHOHWWHV
Si les transformes de Fourier et autres DCT rendent de considrables services, elles sont
l'origine plus adaptes aux traitements de signaux continus stationnaires (par exemple les
signaux utiliss en radio), et seules des versions drives appauvries sont utilises en
traitement numrique. Dans le secret des laboratoires de recherche, on travaille aujourd'hui
de nouvelles transformations qui dcomposent le signal non pas en fonctions sinusodales
simples, mais en des fonctions moins rgulires, les fonctions en ondelettes . Il sagit ici de
dcomposer le signal en une combinaison de morceaux dondes, ce qui quivaut un filtrage
en sous-bandes, utilis dans les techniques de compression audio.
Bien plus adapte au traitement des images numriques, les transformations en ondelettes
permettront sans doute dans un avenir proche d'obtenir de bien meilleurs taux de compression,
avec une moindre dgradation. Cependant, lutilisation de telles mthodes suppose dans bien
des cas la ralisation de processeurs spcialiss ; compte tenu de lantriorit des mthodes
fondes sur la DCT, et de la banalisation des processeurs correspondants, on peut se poser des
questions sur lavenir de mthodes alternatives, aussi prometteuses soient-elles.
)UDFWDOHVOHUHWRXU
La dcomposition fractale des images est une autre piste souvent voque par les chercheurs.
Il s'agit ici de dterminer point par point une ou des fonctions mathmatiques particulires (les
fonctions fractales) dont les valeurs approcheront au mieux l'image initiale. Si le traitement
initial est important (il s'agit de trouver point par point la fonction qui approche le mieux le
signal), la dcompression est de nature toute diffrente puisqu'il s'agit alors seulement
d'appliquer la fonction trouve.
Essentiellement dissymtriques, les algorithmes fractals semblent pouvoir offrir des gains de
compression considrables, sous rserve de disposer de capacits de calcul suffisantes (la
compression dune image superVGA peut prendre jusqu une dizaine de minutes avec un
486 DX 33).
Les premiers logiciels et matriels de compression fractale sont commercialiss aux Etats
Unis, et mme imports, quoiqu'un peu confidentiellement, en France. Ils sont aujourd'hui
capables de traiter une image 640 X 480, 16 millions de couleurs en quelques minutes pour la
compression, alors que l'affichage se fait plus rapidement que pour les images JPEG
quivalentes (moins dune seconde). Un taux de compression de 1 % (!), vrifiable par la taille
du fichier (de 900 ko 9 ko), permet d'afficher une image sans dgradation notable, alors
qu'une compression JPEG dans les mmes proportions ne permet la restitution que d'un vague
damier.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Encore convient-il de prciser que ce procd ne convient pas tous types dimages. Une
particularit de cette mthode est quelle produit un codage entirement vectoris, et ne
conduit donc aucun effet de pixlisation. Il est mme possible de restituer limage une
dfinition suprieure celle de dpart (gnralement 2 fois plus fine) ! Bien entendu, les
points intermdiaires sont produits par calcul, partir de la fonction fractale obtenue, sans
rapport direct avec limage de dpart. Si limage traite est suffisamment rgulire , le
rsultat peut tre tonnant, mais il peut galement se rvler dcevant dans le cas de contours
trs finement cisels.
Le logiciel Images Incorporated, de la socit Iterad System Inc, est disponible auprs de la
4
socit Image etc. (environ 3 500 F HT), qui diffuse galement une bote outils de
dveloppement (Color Box Compression SDK). Une carte dextension, permettant une
compression plus rapide, est galement propose.
Ce procd a t notamment utilis par Microsoft pour lencyclopdie Encarta. Il permet de
stocker un trs grand nombre dimages sur un support (par exemple, 10 images 640 X 480 en
16 millions de couleurs sur une disquette), mais requiert un logiciel spcifique pour la
dcompression. L'absence de normalisation de cette solution reste cependant une limite son
exploitation.
Des transformations mathmatiques dune autre nature que les
dcompositions frquentielles peuvent galement conduire des
compressions performantes. On cite, par exemple, les fonctions fractales
ou en ondelettes . Cependant, ces nouvelles techniques se heurtent la
gnralisation des transformations spectrales (DCT), qui ont dj donn
lieu au dveloppement de circuits spcialiss.
/HVSURFHVVHXUVGHWUDLWHPHQWGXVLJQDO
Tous les appareils numriques, mme les plus simples, ncessitent un traitement de nature
informatique pour soumettre un signal un priphrique de restitution qui est le plus souvent...
analogique (haut-parleur, moniteur). Ainsi, les lecteurs de disques laser et autres consoles de
jeux font appel des circuits spcialiss, les processeurs de traitement du signal ou DSP
(Digital Signal Processor).
Comme son nom l'indique, le processeur de signal numrique intervient pour traiter un signal
issu, pour tous les dispositifs de mesure physique, d'un capteur qui fournit une variation de
tension, donc de nature analogique. Avant de l'exploiter de manire numrique, il est donc
ncessaire de le coder travers un convertisseur ADC (Analogic Digital Converter), puis de
le transmettre au DSP. Tous les calculs ncessaires un traitement de signal numrique
pourraient tre effectus par un processeur traditionnel, mais avec des performances
catastrophiques. En effet, une simple multiplication demande prs de 20 cycles d'horloge sur
un processeur de type Intel i386 ou Motorola 68 030, alors qu'un multiplieur cbl nutilisera
que deux cycles. De tels dispositifs existent dans les coprocesseurs arithmtiques, intgrs ou
non aux processeurs principaux (i486, Pentium), mais ils sont alors conus pour des calculs
virgule flottante, alors que les signaux numriques n'utilisent que des entiers. Des composants
spcialiss ont donc t dvelopps et se sont rapidement rpandus avec la diffusion
considrable des quipements numriques (CD-Audio, consoles de jeux, etc.). Leur
application la plus connue est le traitement du son dans les CD-Audio, mais ils sont souvent
galement utiliss en tlcommunications (tlcopie, transfert de donnes, liaison Numris) et
de plus en plus pour les applications informatiques exploitant des donnes numrises.
4
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Les diverses fonctions que peut avoir un DSP relvent gnralement de l'analyse et du filtrage
du signal, et ventuellement de sa compression, lorsqu'elle n'est pas entirement logicielle ou
confie un autre processeur spcialis. La plupart des calculs de filtrage ou d'analyse du
signal ne sont pas effectus sur le signal lui-mme, mais sur sa dcomposition spectrale,
obtenue par des transformations de type FFT ou DCT. Les DSP sont donc conus pour
s'adapter au mieux ce type de transformation, et calculent aujourd'hui une FFT de 10 20
fois plus vite qu'un processeur traditionnel. En particulier, ces traitements faisant appel de
multiples squences de multiplications et additions d'entiers, les DSP sont dots d'une unit
arithmtique de conception spcifique, le MAC (Multiply And Accumulate) capable
d'effectuer un produit et de l'ajouter au rsultat prcdent en un seul cycle d'horloge.
De mme, la formule de la DCT cite plus haut montre l'vidence que son excution (mais
c'est le cas pour bien d'autres traitements confis au DSP) doit tre ralise par de nombreuses
boucles, chaque itration tant constitue d'un nombre rduit d'oprations. La gestion du
compteur de boucle, qui constitue une partie non ngligeable du traitement, est confie un
module spcialis qui permet de dcharger le MAC de cette tche.
Pour accder ces diverses fonctions, les DSP de dernire gnration sont dots d'un jeu
d'instructions spcifique : ce sont des processeurs programmables (tout au moins un niveau
lmentaire), et il devient ainsi possible de les utiliser pour effectuer des traitements varis, de
les adapter lexcution de multiples algorithmes. Aujourd'hui rservs des quipements
informatiques particuliers (cartes sonores, quipement de digitalisation/restitution), ils
quiperont demain directement la carte mre des micro-ordinateurs, l'image des Macintosh
AV. Plus tard, progressivement, ces circuits seront directement intgrs au processeur
principal.
Les processeurs spcialiss dans les traitements de l'image comme le i750 d'Intel ou le C450
de C-Cube sont en fait de supers DSP, intgrant l'quivalent de plusieurs DSP classiques, mais
5
aussi des convertisseurs ADC/DAC , et des circuits logiques cbls pour la mise en uvre
d'algorithmes prprogramms. Les plus rcents disposent mme de larges possibilits de
programmation pour exploiter de nouveaux algorithmes.
Le traitement du signal est caractris par une grande quantit
doprations simples ; les processeurs des ordinateurs, trop complexes,
sont peu adapts pour effectuer ces traitements qui sont de plus en plus
souvent confis des processeurs spcialiss, les DSP.
/HVPpWKRGHVPRGHUQHVOHVLPDJHVIL[HV-3(*-%,*
Le CCITT et l'ISO ont runi dans les annes quatre-vingt le groupe JPEG (Joint Photographic
Experts Group) qui a permis l'adoption en 1992 de la norme ISO/CEI 10 918, plus connue
sous le nom de norme JPEG. Dans le mme temps, des travaux comparables conduisaient
ladoption de la norme ISO/CEI 11 544, plus connue sous le nom de JBIG.
JPEG et JBIG sont des ensembles de spcifications et algorithmes de compression des images
fixes. Leur statut de norme officielle constitue une volution essentielle puisque cela
permettra sans doute la ralisation de processeurs spcialiss bas prix, fabriqus grande
chelle, qui pourront tre intgrs dans de nombreuses machines.
Chacune de ces normes est en fait compose de plusieurs techniques de compression, incluant
notamment des spcifications pour un codage conservatif (entirement reversible) et pour un
autre dgradant. Dans le second cas, il sagit de codages adaptables, dont le comportement
peut varier en fonction des images traiter, mais aussi des contraintes lies au matriel utilis.
5
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Le cahier des charges dfini lorigine des travaux du comit JBIG ciblait davantage les
besoins dun puissant algorithme pour la transmission des images, notamment en tlcopie. Ce
procd est donc particulirement adapt pour les images monochromes, ainsi que pour les
images codes sur un petit nombre de couleurs. En outre, ce codage prvoit dune part une
restitution squentielle, ligne ligne, particulirement adapte la tlcopie, et dautre part
une dcompression progressive de qualit croissante, par pavs (imagette, dfinition cran, ou
haute dfinition pour limpression).
JPEG propose galement un mode progressif et un mode squentiel, mais il est originellement
prvu pour des images en 16 millions de couleurs (24 bits par pixel). Il a t labor pour
permettre aussi bien une excution logicielle que la ralisation de circuits spcialiss.
Les travaux des comits ISO ont montr que les algorithmes JBIG donnent de meilleurs
rsultats que JPEG lorsque chaque pixel est cod sur moins de 8 bits.
Dans les deux cas, l'image est dcoupe en un damier, chaque zone obtenue tant ensuite
traite indpendamment. Chaque pav ainsi obtenu (gnralement 8 x 8 pixels) est considr
comme une matrice de pixels sur laquelle peut tre applique la transforme DCT.
La technique conservative combine les techniques de codage prdictif/adaptatif avec les mthodes
statistiques de Huffman, qui produit une compression conservative optimale (taux de 50 % environ).
Les travaux du groupe JPEG sont pourtant essentiellement connus pour les compressions non
conservatives.
3URFpGp
Les algorithmes JPEG et JBIG de compression non conservative sont fonds sur les proprits de le
transformation DCT.
Les images couleur sont gnralement codes comme trois images monochromes. Le codage de
base des donnes reprsentant chaque pixel ne fait l'objet d'aucune spcification, mais cest le YUV
qui est gnralement utilis. L'image est tout d'abord dcoupe en zones de dimensions rduites
(8 x 8 pixels), puis chaque pav est trait par la DCT. La compression, selon un taux laiss au choix
de l'utilisateur, est effectue par quantification des coefficients issus de cette dcomposition
spectrale. Cette tape est la seule l'origine des dgradations. Enfin, les donnes obtenues sont
codes sous une forme elle-mme compresse au moyen des algorithmes conservatifs dcrits plus
haut (Huffman essentiellement).
3HUIRUPDQFHV
Une fraction croissante des logiciels de traitement d'images exploitent actuellement le format JPEG,
en importation comme en exportation. Prs d'une dizaine de processeurs spcialiss sont galement
On dsigne ainsi un affichage en 16 millions de couleurs, cod sur 24 bits par pixel (true color).
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
disponibles sur le march. Lextension Quicktime du Systme 7 dApple assure le traitement JPEG
directement au niveau du systme dexploitation.
Il faut galement signaler des versions drives de JPEG adaptes au codage de la vido anime,
connue sous le nom de M-JPEG (Moving JPEG ou Motion JPEG). La mthode retenue consiste en
un codage de chaque image selon le procd JPEG, avec un taux de compression optimal, compte
tenu de la bande passante disponible. Ces procds souffrent cependant dune absence de
normalsation.
Les codages JPEG et JBIG sont aujourdhui normaliss. Des processeurs spcialiss
ont t construits, et le format JPEG sera progressivement trait directement par les
systmes dexploitation.
JPEG et JBIG sont en fait chacun un ensemble dalgorithmes permettant aussi bien des
compressions conservatives que dgradantes. Ils sont fonds sur les transformations
frquentielles calcules sur des blocs de 64 pixels.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
8QSUREOqPHVSpFLILTXHODYLGpRQXPpULTXH
Les flux de donnes ncessaires la vido numrique sont considrables. Ainsi, le codage
4.2.2 ncessite 166 Mbits/s, pour une dfinition de 720 x 576 sur 16 bits, 25 images par
seconde. L'avis CCIR 601, qui fixe les paramtres de ce codage, retient un dbit nominal,
comprenant son et donnes, de 216 Mbits/s, ou encore 270 Mbits/s avec un codage sur 20 bits.
De tels dbits ne sont bien sr envisageables que sur des quipements spcialiss de
production extrmement coteux : un disque dur de 3 Go est ncessaire pour seulement 20
minutes de programme, et encore faut-il que son dbit soit suffisant (de lordre de 20 Mbits/s
aprs compression).
Cependant, il y a une trs forte corrlation spatiale et temporelle entre les donnes qui
composent une squence. Lorsqu'il n'y a pas de changement de plan, la redondance spatiale et
temporelle moyenne d'une squence de vido anime peut tre estime entre 98 et 99 %
[Sonovision, Janvier 92, p.18].
Si ce chiffre peut laisser envisager des taux de compression thoriques de l'ordre de 1 2 %, il
reste bien entendu tout fait illusoire de les approcher sans dgradation, voire destruction de
la structure mme de la squence. D'une part, une partie des informations redondantes reste
toujours indispensable linterprtation du contexte, et, de plus, les algorithmes mis en uvre
ne seront jamais parfaits. D'autre part, les contraintes de l'exploitation numrique en temps
rel (conservation de l'isochronie) rendent souvent impossible lutilisation de procds de
reprise sur erreur habituellement utiliss en informatique ; la conservation d'informations
redondantes permet alors de tolrer un faible taux d'erreurs de transmission.
/HVLPDJHVDQLPpHV03(*
Paralllement aux travaux du JPEG, le comit MPEG (Motion Picture Expert Group) a port
ses efforts sur la compression de la vido anime. Comprenant des spcialistes de la vido, de
l'informatique, mais aussi des tlcommunications (forte implication des experts du CCITT), le
comit MPEG a travaill sur une norme de compression adapte l'exploitation d'images
vido sur les matriels informatiques. Les contraintes poses concernaient principalement les
dbits d'information, une exploitation ditoriale supposant une possibilit de diffusion sur CDROM. Les travaux ont donc t principalement fonds sur un dbits de l'ordre de 1,5 Mbits/s,
soit peu de chose prs le dbit d'un CD-ROM en mode 2 (170 ko/s).
Le rsultat est la norme ISO/CEI 11172, plus connue sous lappellation MPEG 1, et adopte
par lISO en novembre 1993.
Les paramtres ayant servi de base aux travaux du groupe sont cependant actuellement trs en
retard par rapport l'volution de la technique ; la quasi-totalit des lecteurs de CD-ROM
disponibles sur le march propose un dbit au moins gal 300 ko/s, au moyen dun
doublement de la vitesse de rotation. Le comit MPEG poursuit donc ses travaux, et travaille
actuellement sur lvolution MPEG 2 adapte des dbits de 2 10 Mo/s. Lorientation
retenue semble retenir une structure beaucoup plus ouverte, capable dintgrer lavenir
dautres algorithmes et de sadapter aux volutions du contexte technologique. Paralllement,
un sous-comit travaille galement llaboration dune norme (provisoirement connue sous
le terme de MPEG 4) adapte aux usages en faible dbit (visiophonie, par exemple).
3URFpGp
MPEG 1 traite les images vido comme une succession d'images individuelles, dont chacune
est reprsente comme une matrice de pixels.
CNDP DIE SIE Notions de compression
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
)RUPDWGHQXPpULVDWLRQ
Compte tenu du dbit retenu, de lordre de 150 ko/s, la dfinition du format de numrisation
retenu (SIF : Source Intermediar Format) est de 360 x 188 pixels. Le codage est ralis en
YCC, soit une information de luminance et de deux de chrominance. Cependant, selon des
usages dsormais classiques en vido numrique, la luminance de chaque pixel est code
pleine rsolution, alors que la chrominance, moins perceptible l'il, est code par pavs de
2 x 2 pixels, soit un dfinition en chrominance de 180 x 144.
&RGDJHSUpGLFWLI
La compensation du mouvement est obtenue par le dplacement d'un bloc de pixel voisin de
l'image prcdente vers un bloc de l'image en construction, selon un vecteur de mouvement
dont les coordonnes sont calcules partir de la succession des images prcdentes. Sur une
courte succession d'images, on constate en effet que la plupart des pixels restent souvent
inchangs d'une image l'autre, alors que les autres subissent de lgers dplacements par
blocs. Les premires stations de compression demandaient une intervention manuelle pour ce
codage, rendant lopration coteuse, interdisant un traitement en temps rel, et conduisant
un rsultat largement dpendant du savoir-faire de loprateur. Les systmes proposs
aujourdhui garantissent un traitement automatique, pratiquement en temps rel, en
recherchant chaque pav de 8 x 8 de limage prcdente dans une zone plus large de limage
suivante (gnralement un carr de 32 64 pixels de cot).
7UDQVIRUPDWLRQVSHFWUDOH
Applique des blocs de 8 x 8 pixels, la transformation DCT permet d'obtenir une matrice
8 x 8 de coefficients de frquences horizontales et verticales. Cette tape n'apporte en soi
aucun gain en volume, mais permet de classer les informations selon des frquences
croissantes, de moins en moins perceptibles pour lil humain. La compression sera ralise
ultrieurement au moyen dun remplacement progressif des coefficients les moins significatifs
(dfinissant les informations les moins perceptibles lil) par des valeurs approches de plus
en plus grossires, codes sur un nombre de bits plus rduit.
&RGDJHGHORQJXHXUYDULDEOH
Grce un codage statistique driv de Huffman, des mots de longueur variable sont utiliss
pour coder les signaux, en utilisant les plus courts pour les donnes les plus frquentes.
7URLVW\SHVGLPDJHV
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Les images Prdictives (P) sont codes avec une prdiction temporelle partir des images
dj dcodes, ventuellement avec compensation du mouvement. Le codage utilis est de
type diffrentiel. La taille moyenne dune image P est denviron 10 ko.
Les images Bidirectionnelles (B) sont obtenues par interpolation et sont les plus
compresses. Elles sont codes partir de deux images compltes (I ou P), situes dans le
temps avant et aprs limage B dcoder, laide de vecteurs de dplacement. La taille
moyenne des donnes correspondant une image B est denviron 3 ko, mais le dcodage
nest possible que si les deux images de rfrence sont disponibles. Les donnes codes
doivent alors tre organises selon un ordre qui ne correspond plus au droulement normal
des images.
3HUIRUPDQFHV
Les premires ralisations MPEG, et notamment les films sur support CD-I raliss par Philips
pour son procd de restitution Full Motion Video (Digital Video), ont montr quil tait
possible dobtenir un niveau de qualit satisfaisant [Banckaert, 1994]. Quoique incomparable
avec une qualit vidodisque, le codage MPEG est capable de produire des images de qualit
suprieure celles dun magntoscope VHS.
Les codages MPEG raliss, tant en mode automatique que manuel, nutilisent jamais la
totalit des possibilits du codage. La qualit obtenue dpend directement du soin apport
lopration, et, souvent, la comptence de loprateur. Il ny a donc pas de tarif de rfrence
pour un codage vido MPEG : il dpend directement de la qualit du travail demand. Dans
bien des cas, la numrisation proprement dite est prcde par un prtraitement en rgie vido
numrique, pour rduire la dynamique des images et en simplifier le codage, en adaptant le
flux dinformations la bande passante disponible. terme, cela induit de nouvelles
contraintes lors du tournage qui devront tre prises en compte par les vidastes.
Les spcialistes de l'audiovisuel souhaitent l'avnement d'un MPEG 2 de plus haute qualit et
compatible avec les attentes en matire de haute dfinition, alors que la rapide volution des
technologies informatiques rend actuellement caduque la limitation du dbit 1,5 Mbit/s (les
lecteurs de CD-ROM actuels ont un dbit de 3 Mbit/s, quelquefois mme 6 Mbits/s).
Le codage MPEG 2 sera sans doute sensiblement diffrent, organis autour d'un profil
principal dfini pour le service le plus important, la diffusion de vido. D'autres profils
secondaires, organiss selon un mode hirarchique, permettront d'assurer d'autres services,
ventuellement avec une qualit dgrade.
Pour viter les difficults rencontres avec la contrainte de dbit du CD-ROM retenue comme
pivot de MPEG 1, la nouvelle norme sera conue ouverte et volutive.
,PSOpPHQWDWLRQV
De nombreux constructeurs ont annonc leur intention dadopter le codage MPEG en lecture,
principalement pour les matriels destins au grand public. Quelques dizaines de titres sur
support CD-I (Digital Video) sont disponibles, et le Vido CD semble promis un bel avenir.
Quelques cartes de dcompression sont galement disponibles pour les micro-ordinateurs,
mais les produits susceptibles de les utiliser tardent arriver sur le march.
L'utilisation de MPEG impose une rapidit d'excution incompatible avec d'ventuelles
solutions logicielles. La socit C-Cube a dvelopp un circuit spcialis, le C-450, qui est
utilis par divers matriels. L'extension Full Motion Video du CD-I utilise ce circuit, ainsi que
les cartes MPEG ddies aux stations Amiga et PC (Real magic). La diffusion de ce circuit
grande chelle devrait permettre une baisse des prix de ces matriels.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Les quipement de numrisation et compression restent encore dun prix lv, exigent une
station muscle et un oprateur qualifi. Les derniers matriels prsents prsentent
nanmoins une volution sensible la baisse, avec notamment plusieurs cartes de compression
dun prix compris entre 20 et 30 000 F, utilisables sur un micro-ordinateur de type PC ou
Macintosh ayant une configuration adapte (vitesse de traitement, mmoire, taille des
disques). Le prix de revient dune station de compression complte est au minimum denviron
150 000 F ; les difficults de mise en uvre conduisent pratiquement systmatiquement
avoir recours pour le codage des prestataires de service spcialiss.
La norme MPEG (version 1) a t approuve en 1993.
Elle a t adopte pour le CD-I et le Vido-CD, et des matriels de
dcompression sont disponibles pour les micro-ordinateurs.Lexprience
acquise par les oprateurs de compression et lapparition de nouveaux
matriels de compression largement automatiss et perfectionns permet
prsent de raliser des documents MPEG de qualit quivalente au VHS,
voire suprieure.
$XWUHVWHFKQLTXHVXWLOLVpHVSRXUOHVLPDJHVDQLPpHV
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Quicktime est surtout conu comme un ensemble de spcifications trs ouvert, capable
d'intgrer facilement un grand nombre d'volutions matrielles et logicielles, sans remettre en
cause les applications existantes. Enfin, il permet la restitution de squences sur un Macintosh,
sans extension matrielle, pourvu quil soit au minimum quip d'un processeur 68 020 (le
nombre dimages par seconde tant fonction des capacits de traitement disponibles).
L'image, longtemps limite une petite vignette sautillante au format timbre poste, s'agrandit
progressivement avec les nouvelles versions du logiciel et les nouveaux matriels : limite un
quart d'cran 15 images/s sur un Quadra 700, elle sera bientt disponible en plein cran sur
les stations Power PC.
9LGpRSRXU:LQGRZV
Vido pour Windows est un ensemble logiciel commercialis par Microsoft et permettant la
capture et la restitution de vido anime sur PC.
L'excution de squences vido est possible sans matriel spcifique, alors que la capture doit
tre faite au moyen d'une carte de numrisation. Une large compatibilit est permise grce la
dfinition de spcifications permettant d'intgrer des matriels aux fonctionnalits diffrentes.
Ainsi, travers un ensemble de pilotes, Vido pour Windows sera capable de supporter des
priphriques aux fonctionnalits diverses, tout en assurant, autant que possible, les fonctions
manquantes au niveau logiciel.
Pas plus que Quicktime, Vido pour Windows nest pas un algorithme de compression. Il sagit
plutt dune interface standardise entre le matriel et les procds de codage et de
compression, qui offre des API (interfaces de programmation) relativement indpendantes du
matriel. Cependant, comme Apple, Microsoft a galement dfini des algorithmes de
compression adapts diffrentes situations (Microsoft Vido 1, Microsoft RLE compressor),
et intgre ceux proposs par des socits tierces, comme Indeo dIntel.
Plus qu'une technique de compression, Vido pour Windows fournit en fait une plateforme
commune sur laquelle pourront s'articuler divers procds de codage. Actuellement, en
l'absence de dispositif spcifique, la qualit est limite un format de 320 x 200 15 images
secondes (processeur Pentium).
On peut penser que, comme cela a t le cas pour les extensions multimdia de Windows 3.0,
Vido pour Windows sera intgr aux prochaines versions du systme. Windows NT est dj
livr avec Vido pour Windows en standard.
'9,
Intel et IBM ont dvelopp, un processeur spcialis dans le traitement des images, le i750.
Prvu ds la conception pour intgrer de larges possibilits de programmation, il est capable
de sadapter de nouveaux algorithmes.
Ds 1992, Intel a commercialis le systme DVI, comprenant des cartes de visualisation et
acquisition (cartes Actionmedia, codveloppes avec IBM), et un ensemble d'algorithmes
adapts directement aux contraintes informatiques. Le systme est conu ds l'origine selon un
mode hirarchique : deux types de codages sont prvus, exploitant des algorithmes diffrents.
Le PLV (Production Level Video), fond sur des principes proches de MPEG, produit des
images en 256 x 240 en 25 ou 30 images par seconde, mais ncessite des temps de calcul
considrables pour la phase de compression (de 50 100 fois la dure du programme en
traitement, sur un systme informatique complexe et coteux). La numrisation et la
compression devait tre confies une socit spcialise (en France TeleTota) pour un cot
suprieur 1 000 F la minute.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Le RTV (Real Time Video) permet la capture d'images en temps rel avec une qualit
sensiblement plus faible.
Intel a actuellement abandonn la diffusion des matriels DVI et privilgie des solutions
permettant une dcompression logicielle, travers les algorithmes Indeo.
/HSURFpGp,QGHR
La nature de la socit Intel, plus grand fabricant de processeurs destins la microinformatique, galement impliqu dans le dveloppement de nouvelles architectures de
machines (bus PCI par exemple) laisse clairement apparatre sa stratgie en ce domaine. Le
fonctionnement actuellement propos, mme sur les machines de haut de gamme, est peu
satisfaisant, mais les nouvelles gnrations de machines permettront une meilleure prise en
compte de la vido.
Les analyses de march conduites par Intel montrent en effet que ni les constructeurs ni les
utilisateurs ne sont prts intgrer leur machines des quipements vido coteux. Proposer
ds maintenant une vido, ft-elle misrable, ne constitue-t-il pas une excellente incitation ...
changer de matriel bien vite ?
Indeo est un algorithme de codage et compression destin lexploitation
de la vido sur micro-ordinateur. Indeo a t conu par Intel et adopt par
de nombreux constructeurs et diteurs, au premier rang desquels Apple et
Microsoft.
(QJXLVHGHFRQFOXVLRQSURYLVRLUHjSURSRVGHVLPDJHVDQLPpHV
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Comme le constate Norbert Paquel [Paquel, 1993], le monde de la vido numrise est
aujourd'hui le lieu d'une grande confusion : multiplicits de produits et de standards, rapidit
des volutions, absence de normalisation effective. Le seul fil conducteur permettant
d'ordonner un peu le chaos est une distinction plus fine des secteurs d'activits.
/DWUDQVPLVVLRQGHWpOpYLVLRQKDXWHGpILQLWLRQ
Cest dans le domaine de la tlvision numrique que la compression a sans doute le plus
grand rle jouer dans les annes venir. Sans technique de compression efficace et
standardise, il na aucune possibilit de dvelopper un rseau qui, par nature, doit avoir une
dure de vie longue (de dix vingt ans).
Des consultations et travaux de normalisation sont en cours pour ce secteur, dont les
implications conomiques sont gigantesques.
Si la compression reste actuellement un enjeu considrable pour les socits qui proposent des
systmes adapts la tldiffusion, pratiquement plus personne ne doute que des procds
efficaces vont apparatre et seront disponibles avant la mise en service des rseaux et autres
autoroutes . Aux tats Unis, on parle dj de 300 500 chanes numriques bientt
disponibles ; mme si les solutions technologiques ne sont pas encore en place, la confiance
dans leur ralisation prochane est si grande que lessentiel des dbats se dveloppe autour du
thme comment les utiliser .
Il reste, bien entendu, plus dlicat de faire aujourdhui des choix stratgiques en ce domaine,
mais cela ne concerne gure le secteur ducatif. Partie prenante dans le secteur de la
tldiffusion, il reste un partenaire mineur et devra saligner sur les choix effectus un autre
niveau.
Le choix dune technique de compression est indispensable lavnement
de la tldiffusion numrique. Pour lheure, il nest pas encore effectu.
/DSURGXFWLRQYLGpRRXWpOpYLVLRQDFWXHOOH
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Qu'il s'agisse de produits utilisant comme support le disque compact ou d'une distribution en
rseau (qui suppose un rseau capillaire dbit suffisant jusqu' l'utilisateur final), les faibles
dbits actuels exigent une forte compression, forcment dgradante. C'est le domaine de
MPEG 1. En support CD, c'est le format CD-I qui semble devoir s'imposer, travers les
extensions Full Motion Video, ainsi que le Vido-CD pour les titres qui ne demandent pas une
forte interactivit, mais cette tendance reste encore fragile, compte-tenu de ltroitesse du
march.
Les traitements ncessaires la compression MPEG doivent encore, dans la plupart des cas,
tre confie des socits spcialises, mais des stations de compression sur micro-ordinateur
approchant le traitement en temps rel sont prsent disponibles (de 100 000 300 000 F).
De nombreuses annonces font tat de la forte baisse de tarif des cartes spcialises, mais les
micro-ordinateurs ncessaires, mme sil sagit de matriels largement diffuss (Mac ou PC)
restent des configurations coteuses : Power Mac ou Pentium, disques de forte capacit (1
2 Go), mmoire importante (16 Mo), etc.
Il faut galement citer le standard concurrent du CD-I, dvelopp par 3DO et adopt
notamment par Panasonic, qui exploite la technologie double vitesse des CD-ROM, et permet
d'envisager une qualit accrue. Longtemps annonc, ce systme est prsent disponible, mais
connait une diffusion limite aux Etats Unis et inexistante en Europe. Son march cible semble
actuellement se limiter aux jeux.
Kaleida, la filiale commune d'Apple et IBM charge des formats de base du multimdia,
dveloppe pour sa part le systme ScriptX, en fait un super langage de description comparable
Postscript, capable de crer des programmes fonctionnant l'identique sur de multiples
plates-formes (Windows, Mac, OS/2 et CD-I venir).
Pour les productions multimdias destines au grand public et devant
utiliser la vido plein cran, la seule solution ayant une existence
commerciale des cots acceptables est, pour linstant, le procd
MPEG 1, notamment exploit par le CD-I et le Vido-CD.
Le choix dun lecteur de CD-I dot de sa cartouche FMV comme station
dans un tablissement scolaire peut se justifier dans la mesure o des titres
pertinents en nombre suffisant ont pu tre trouvs. Pour lheure, les
programmes ducatifs disponibles sont encore peu nombreux.
Dune manire gnrale, le choix dun quipement de restitution de vido
numrique ne peut tre fait quen tenant compte des titres que lon
envisage dutiliser.
/
LQWpJUDWLRQGHYLGpRjGHVXVDJHVLQIRUPDWLTXHV
Il y a un vaste dbouch ditorial pour des CD-ROM documentaires, des encyclopdies, des
programmes ducatifs, des jeux, etc. exploitant la vido numrique. Dans ce domaine, les
grands acteurs semblent avoir fait leur choix, ce qui permet de mieux deviner ce que sera
l'volution future. La socit Intel, notamment, est passe, en moins de dix-huit mois, de DVI
septembre 1994 Page 34
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Indeo 3 utilisant la carte Smart Video Recorder, des produits contradictoires dans leur
dfinition : si DVI tait fond principalement sur une restitution de qualit travers un
quipement matriel, Indeo 3 prvoit une restitution entirement logicielle, la carte Smart
Video Recorder n'tant ncessaire que pour la capture de squences.
L'ensemble des algorithmes Indeo a t trs rapidement retenu par Microsoft (Vido pour
Windows 1.5 inclura Indeo 3), ainsi que par Apple pour Quicktime, ce qui lui donne
aujourd'hui une position de standard de fait. De nombreux fabricants et diteurs ont galement
conclu des accords de partenariat avec Intel sur Indeo. Il est vrai que certains lavaient dj
fait pour DVI, et quils disposent prsent de magnifiques produits... invendables, faute pour
lacheteur potentiel de pouvoir acqurir le matriel correspondant ! Actuellement, on peut
cependant penser que la ligne Indeo devrait faire lobjet de larges dveloppements : les
nouveaux processeurs (Intel Pentium, Power PC) sont capables deffectuer des traitements
plus rapides, et les architectures des machines voluent dans le sens dune meilleure prise en
compte des difficults (bus PCI). Dj, la socit Teletota propose un service de numrisation
Indeo en 320 x 240 24 images par seconde, cest--dire une dfinition quivalente
7
MPEG 1 .
D'autres systmes de cette nature existent nanmoins ; on peut citer CinePack (SuperMac) et
Captain Crunch (Media Vision). Le Motion JPEG, qui donne aujourd'hui les meilleurs
rsultats, est gnralement rserv aux bornes intractives, car il suppose des quipements
matriels coteux et non normaliss pour la restitution.
Il faut galement citer les matriels de dcompression MPEG sur micro-ordinateur, comme la
carte Real Magic, disponible pour PC. Quoique dun prix modr (2 500 4 000F), ces
matriels ont du mal simposer car il nexiste pas une bibliothque de programmes
suffisante. Il faut cependant noter quun accord a t conclu avec Philips pour lexploitation
du Vido CD.
Les lments de vido intgrs une application informatique sont
gnralement prvus pour tre utiliss sous Quicktime (Macintosh et
quelquefois PC) ou Vido pour Windows. Les dcodeurs utiliss, sils ne
sont pas disponibles en standard dans les systmes, sont toujeurs fournis
avec le produit (module dexcution de Vido pour Windows ou de
Quicktime pour PC, extension de nouveaux algorithmes comme Captain
Crunch ou Cinepack).
Les systmes demandant des matriels spcifiques pour la dcompression
sont souvent rservs aux bornes interactives, qui sont des ordinateurs
ddis un nombre limit dapplications.
&RPSUHVVLRQHWVWDWLRQPXOWLPpGLD
Pour linstant, et sans doute encore pour longtemps, il nexiste aucune solution gnraliste
couvrant lensemble du secteur du multimdia.
Les choix doivent seffectuer en tenant compte de nombreux paramtres, au premier plan
desquels le choix entre une simple station de restitution et une station de production, mme
modeste.
Ce service devra cependant faire lobjet dune valuation et dune analyse compare avec MPEG au niveau des cots et
performances.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Dans le cas dune station dexcution, le choix ne peut tre fait quen tenant compte des
produits que lon souhaite utiliser. La compression est alors un paramtre parmi dautres, qui
dterminera la compatibilit entre matriel et applications.
En revanche, pour une station de production, mme modeste (production de documents lgers
pour un usage personnel), loffre est trs large, et la facture peut tre trs leve. Il convient
avant tout de bien connatre les contraintes du dveloppement multimdia. Ds lors quon
envisage de sortir du cadre de la PrAO, et surtout utiliser ses productions sur dautres
machines, les difficults peuvent devenir considrables. Une bonne connaissance des logiciels
de composition qui seront utiliss et des systmes est ncessaire, en particulier en ce qui
concerne la prise en compte des diffrents codages, et du matriel ncessaire pour effectuer
les traitements correspondants.
De plus, si les systmes, travers leurs extensions multimdias (Quicktime, Vido pour
Windows), intgrent progressivement les principaux codages, les logiciels doivent encore, dans
8
bien des cas, assurer directement les fonctions de dcompression . Les possibilits dutilisation
sur des machines non dotes de lapplication utilise doit expressment tre vrifie.
Pour ce qui concerne les priphriques dacquisition (notamment vido), il convient de
distinguer ceux qui utilisent une compression logicielle en temps diffr (Video Blaster) de
ceux qui assurent un codage compressif en temps rel (Smart Video Recorder). Au del de
quelques dizaines de secondes, les premiers se rvlent inutilisables (plus de 40 Mo par minute
sont ncessaires).
Pour une station dexcution, la compatibilit avec les applications
utilises doit tre le critre dterminant du choix.
En revanche, pour les stations de composition et dveloppement, les choix
sont beaucoup plus complexes, et il convient de vrifier avec soin les
compatibilits des diffrents lments, logiciels et matriels.
Lexcution sur un ordinateur diffrent de celui qui a servi la
composition peut se rvler impossible, et doit faire lobjet de la plus
grande attention.
La dcompression JPEG, notamment, est prise en charge par Quicktime sur Macintosh, mais doit tre traite par les
applications sur les PC.
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
$QQH[HV
0pWKRGHGH+XIIPDQH[HPSOH
freq. 6
)UHT
HV SDF
&
'
9
;
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
001
0010
01001
00001
001110
100
0101
00010
11011
001111
esp
101
1100
00011
110100
001100
111
01000
00000
110101
001101
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
0pWKRGHV/HPSHO=LYDOJRULWKPHVHWH[HPSOH
Les algorithmes et exemples donns sont issus de [Plume, 1993]. Les algorithmes de
compactage et dcompactage utilisent un dictionnaire de taille limite (1024 entres). Les
codes sont donc toujours de mme taille (sur 10 bits). Certaines variantes utilisent des
dictionnaires de taille variable, les codes tant eux-mmes de longueur croissante au long du
fichier. Un code rserv indique alors que le nombre de bits de codage est incrment.
/* Algorithme de compactage LZ*/
dbut
/* initialisation */
Dictionnaire = table ASCII
Code_latent = " " /* vide */
Maxdim = 1024 /* taille maximale du dictionnaire (optionnel) */
Taille_dico = 257
/* Traitement */
lire l'octet 1 du fichier
c=octet1
Tant que c<>EOF /* fin de fichier = faux */
si Code_latent = " " /* vide */
alors
Code_latent = c
Ancien_rang = ASCII(c) /* sauve le rang de c */
sinon
Chaine = latent + c /* concatnation */
si chaine appartient au dictionnaire
alors
Code_latent = Chaine
Ancien_rang = rang de chaine dans dictionnaire
sinon
Emettre (Ancien_rang)
Ajouter chaine au dictionnaire
Taille_dico = Taille_dico + 1
si Taille_dico = Maxdim
alors /* rinitialisation du dictionnaire (optionnel) */
Emettre code 257
Taille_dico = 257
fin si
Code_latent = c
Ancien_rang = ASCII(c)
fin si
fin si
Lire(c)
Fin Tant que
Emettre Ancien_rang /* indice dernire chane */
Emettre 256 /* code fin de traitement */
Fin traitement
Processus de compactage
note
technique
Code lu
D
U
'''
C
O
D
A
G
E
''
A
U
''
D
E
C
O
D
A
G
E
''
D
'
I
M
A
G
E
FIN
Ajout au
dictionnaire
rien
DU (258)
U' ' (259)
' 'C (260)
CO (261)
OD (262)
DA (263)
AG (264)
GE (265)
E' ' (266)
' 'A (267)
AU (268)
rien
UD (269)
DE (270)
EC (271)
rien
COD (272)
rien
DAG (273)
rien
GE' ' (274)
' 'D (275)
D' (276)
'I (277)
IM (278)
MA (279)
rien
AGE (280)
rien
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Code_latent
Code mis
D
U
''
C
O
D
A
G
E
''
A
U
U' '
D
E
C
CO
D
DA
G
AG
''
D
'
I
M
A
AG
E
rien
rien
D
U
''
C
O
D
A
G
E
''
A
rien
259
D
E
rien
261
rien
263
rien
265
''
D
'
I
M
rien
264
E
Jusqu' la premire paire prsente dans le dictionnaire, le codage est traditionnel. Pour toute
paire rpte, on ne transmet que son adresse; l'absence de codage d'un caractre peut tre
localise par le code transmis immdiatement aprs qui est suprieur 257. Un code
spcifique (non exploit ici) peut indiquer que les adresses seront codes avec un bit de plus
partir de ce rang lorsque la taille du dictionnaire n'est pas limite. Ainsi, la taille des adresses
peut ne pas tre prdfinie, et il en est de mme, par voie de consquence, de la taille du
dictionnaire. Dans l'exemple cit, la taille du dictionnaire est fixe 1024 entres, ce qui
permet un codage fixe des adresses sur 10 bits. Ces diffrentes possibilits de paramtrage
permettent d'adapter l'algorithme diffrentes situations, et notamment de l'optimiser en
fonction de la taille des fichiers. Dans tous les cas, le dictionnaire est reconstruit par le
dcompacteur durant son action, et n'a donc pas tre conserv.
Des amliorations et variantes peuvent t apportes, notamment en conservant un certain
nombre d'adresses du dictionnaire dans le fichier compact pour des fonctions particulires,
comme l'augmentation de la taille des adresses, les changement ventuels de technique de
compression, la purge de squences rarement utilises du dictionnaire, la rinitialisation du
dictionnaire, ou la cration d'un deuxime dictionnaire
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
Code reu
Code_latent
Texte final
D
U
''
C
O
D
A
G
E
''
A
259
D
E
261
263
265
''
D
'
I
M
264
E
rien
D
U
''
C
O
D
A
G
E
''
A
U' '
D
E
CO
DA
GE
''
D
'
I
M
AG
D
U
''
C
O
D
A
G
E
''
A
U' '
D
E
CO
DA
GE
''
D
'
I
M
AG
E
Ajout au
dictionnaire
rien
DU (258)
U' ' (259)
' 'C (260)
CO (261)
OD (262)
DA (263)
AG (264)
GE (265)
E' ' (266)
' 'A (267)
AU (268)
U' 'D (269)
DE (270)
EC (271)
COD (272)
DAG (273)
GE' ' (274)
' 'D (275)
D' (276)
'I (277)
IM (278)
MA (279)
GAE (280)
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
&RPSUHVVLRQ5XQ/HQJWKH[HPSOH
note
technique
de
tion iv
Direcu
t
d ca e
ie
r
ie
n
l'Ing
%LEOLRJUDSKLH
Delassale, B., La Dferlante Numrique ,
Sonovision, N355, janvier 1992.
Huffman, D. A., A method for the construction of minimum redundancy codes ,
Proceedings of the IRE, Vol. 40, Numro 9, Septembre 1952.
Marseau X., Compression et cryptage en informatique ,
ditions Hermes, Collection Trait des nouvelles technologies, srie informatique, 1992.
Nelson M., La compression des donnes ,
ditions Dunod, 1993.
Paquel N., Multimdia et tlvision intercactive ,
Mmoires optiques et systmes, N 117, septembre 93.
Plume P., Compression des donnes ,
ditions Eyrolles, 1993.
Terrasson J., Les outils du multimdia ,
ditions Armand Colin, 1992.
Welch, T., A technique for high performance data compression , IEEE Computer, Vol. 17,
juin 1984.
Ziv, J. et Lempel, A., A universal algorithm for sequential data compression , IEEE
Transactions on Information Theory, Vol. 23, mai 1977.
Ziv, J. et Lempel, A., Compression of individual sequences via varaible rate coding ,
IEEE Transactions on Information Theory, Vol. 24, septembre 1978.
'RFXPHQWV&1'3