Vous êtes sur la page 1sur 48

ECOLE NATIONALE des

SCIENCES APPLIQEES de
TETOUAN

Cours de Traitement d’images

Prof. Abdellatif Medouri


amedouri@uae.ac.ma
L’image numérique
Images naturelles et images synthétiques :

Le bruit dans une image

Le bruit est une altération de l’image. Il


peut être causé par les processus
d’acquisition, de transmission ou de
stockage.

2
L’image numérique

Bit resolution : Nombre possible de valeurs de couleurs que peut avoir un pixel.
Dynamique d’une image : la différence entre la valeur maximale et la valeur
minimale des couleurs de ses pixels 3
L’image numérique

Quelques éléments simples d’une image

4
L’image numérique

Acquisition d’une image numérique .


Directement :

5
L’image numérique

Acquisition d’une image numérique,


Numérisation:

échantillonnage + quantification

6
Résolution
Résolution :
• La résolution correspond à la finesse de la description spatiale
• Définition : la résolution est le nombre de points/pixels par unité de longueur
Exprimé en : dpi : dots per inch (points par pouce), ppc : points par centimètres,
ppm : points par millimètre, ppi : pixels per inch (1 pouce = 2.54 cm).

7
Résolution et nombre des couleurs

8
Résolution

Comment calculer une résolution ?


Il faut mettre en relation 3 paramètres :
• Les dimensions physiques de l’image finale (sur un écran, imprimée) ou
de l’image source (page à scanner) - ex. 30 × 20 cm
• La résolution de l’image finale - ex. 300 dpi
• La taille en pixels du fichier image -ex. 3072 × 2048 pixels

9
Résolution

Comment calculer une résolution ?


Exemple :
On souhaite imprimer une photo de 13 x10 cm. L’imprimeur demande de lui
fournir des images dont la résolution est de 300 dpi au moins.
300
→ Soit une résolution de 2.54 ppcm = 118.1 ppcm

On doit donc fournir à l’imprimeur une image de :


300
• largeur minimale : 13 × 2.54 = 1535 pixels
300
• longueur minimale : 10 × = 1181 pixels.
2,54

10
L’image numérique

Codage des valeurs des pixels

En niveau de gris :
la valeur I(i,j) d’un pixel s = (i,j) représente son intensité lumineuse
• binaire : I(i,j) = 0 noir ou I(i,j) = 1 blanc
• codage 8 bits (le plus classique) : I(i,j) = 0,...,255 du plus foncé au plus clair

En couleur
• codage dans l’espace RGB : trois intensités lumineuses rouge, vert, bleu.
• codage 24 bits : R(i,j) = 0,...,255; V(i,j) = 0, ..., 255; B(i, j) = 0, ..., 255

11
Représentation matricielle / vectorielle
Image vectorielle
• Codage par des formes géométriques simples :
• Polygone : coordonnées des sommets, couleur
du contour, couleur de remplissage
• Arc de cercle ...
• Exemples de formats : DXF, SVG, Illustrator
• Domaines : PAO (publication assistée par
ordinateur),
• DAO (dessin assisté par ordinateur)...
• Avantages : peu de place en mémoire,
transformations géométriques sans aliasing
• Inconvénients : l’affichage nécessite des calculs, la
taille de l’image est liée à sa complexité

12
Représentation matricielle / vectorielle

Image matricielle
• Codage de l’image par une matrice de pixels
• Exemples de formats : BMP, PGM, JPEG
• Avantages : affichage direct
• Inconvénients : taille mémoire, transformations géométriques
avec aliasing / perte d’information

13
Formats d’images matricielles

• Comment stocker dans un fichier toutes les informations de l’image : taille de


l’image, format des pixels, valeurs des pixels ?

• Il existe une multitude de formats :

• Les formats simples : fichiers ASCII ou binaires comportant un entête


contenant les dimensions de l’image et le format des pixels puis la liste des
valeurs des pixels.
Exemple : les formats PNM (PBM - Portable BitMap, PGM - Portable
Grayscale Map, PPM - Portable PixMap).

• Les formats compressés : l’information est codée de manière à réduire la


taille du fichier image.

Exemple : les formats image du web (GIF , PNG, JPEG)

14
Compression d’images

Introduction :
• Le but des algorithmes de compression est de réduire la taille des fichiers pour
diminuer l’espace nécessaire à leur stockage sur le disque ou leur transfert par
le réseau.
• Ils encodent d’une manière différente les données de l’image afin de les rendre
plus compactes.
• Deux familles d’algorithmes de compression se distinguent :
• La compression sans perte.
• La compression avec perte.
• Taux de compression, 𝜌 :

𝑇𝑎𝑖𝑙𝑙𝑒 𝑖𝑛𝑖𝑡𝑖𝑎𝑙𝑒 − 𝑇𝑎𝑖𝑙𝑙𝑒 𝑓𝑖𝑛𝑎𝑙𝑒


𝜌=
𝑇𝑎𝑖𝑙𝑙𝑒 𝑖𝑛𝑖𝑡𝑖𝑎𝑙𝑒
15
Formats PNM (portable anymap)

Les fichiers correspondants sont constitués des éléments suivants :


1. Un "nombre magique" pour identifier le type du fichier : P1 ou P4 pour PBM
(portable bitmap file format), P2 ou P5 pour PGM (portable graymap file format)
et P3 ou P6 pour PPM (portable pixmap file format).
2. Un caractère d’espacement (blanc, TABs, CRs, LFs).
3. La largeur de l’image (valeur décimale, codée en ASCII) suivie d’un caractère
d’espacement, la hauteur de l’image (valeur décimale, ASCII) suivie d’un
caractère d’espacement.
4. Uniquement pour PGM et PPM : l’intensité maximum (valeur décimale comprise
entre 0 et 255, codée en ASCII) suivie d’un caractère d’espacement.
5. Largeur × Hauteur nombres correspondant aux valeurs des pixels.
▪ Pour P1, P2, P3 : valeurs décimales codées en ASCII et séparées par des
espaces (pou PBM, un pixel noir est codé par 1, un pixel blanc est codé par 0).
▪ Pour P4, P5, P6 : valeurs binaires sur 1 ou 3 octets

16
Formats PNM

Exemple 1:

17
Formats PNM

Exemple 2:

18
Formats PNM

Exemple 3:

19
Compression d’une image

Compression :
• Compression sans perte : réduire la taille sans altérer le contenu
• Principe : utiliser la redondance de l’information (répétitions)
• Avantage : réversibilité
• Exemples : RLE, VCL, LZW (zip)...
• Compression avec perte : réduire fortement la taille au prix d’une perte d’information
• Principe : enlever les informations les moins importantes
• Inconvénient : non réversible (artefacts lors de la décompression)
• Exemples : JPEG, JPEG2000, PNG...

20
Compression d’une image

Évaluer la qualité de la compression avec perte :


Erreur quadratique moyenne (Mean Square Error)
1
𝑀𝑆𝐸 = ∑ (𝐼(𝑖, 𝑗) − 𝐼 ′ (𝑖, 𝑗))2
𝑁 𝑖,𝑗
Rapport Signal sur Bruit (Signal To Noise Ratio)
𝑉
𝑆𝑁𝑅 = 10log10
𝑀𝑆𝐸
avec
1
𝑉 = ∑ 𝐼(𝑖, 𝑗)2
𝑁 𝑖,𝑗

Rapport Signal sur Bruit de crête (Peak Signal To Noise Ratio)


𝑚𝑎𝑥(𝐼)2
𝑃𝑆𝑁𝑅 = 10log10
𝑀𝑆𝐸
PSNR ∈ [30, 40]db pour des images de bonne qualité.
21
Compression d’une image

Algorithme de compression sans perte : Codage Run Length Encoding

➢ Utilisé dans les formats BMP, TIFF


➢ Idée : regrouper les plages de valeurs identiques
➢ AAAAARRRRRROLLLBBTTTTT : 22 caractères
➢ 5A6R1O3L2B5T : 12 caractères
➢ Taux = 45%
En pratique : Format binaire, par exemple 1 octet pour le compteur puis un octet
pour la valeur.
L’octet 0 peut servir de caractère spécial pour introduire par exemple une suite de
données non compressées.

22
Compression d’une image
Algorithme de compression sans perte : Codage de Huffman

Nombre moyen de bits utilisés pour le codage :


1 × 0.4 + 2 × 0.3 + 3 × 0.1 + 4 × 0.1 + 5 × 0.06 + 5 × 0.04 = 2.2𝑏𝑖𝑡𝑠
23
Compression d’une image

Algorithme de compression avec perte : JPEG


On veut supprimer de l’information sans perdre des informations importantes
Vision humaine :
➢ l’œil est plus sensible à la luminance (intensité) qu’aux nuances de
couleur.
➢ l’œil humain est plus sensible aux basses fréquences
Conclusion :
➢ on réduit la partie de codage consacrée aux nuances de
couleur
➢ on supprime en priorité les hautes fréquences d’une image

24
Compression d’une image

Compression JPEG : les grandes étapes (1)


➢ Changement d’espace de couleurs pour séparer la luminance de la
chrominance (espace YUV).
➢ Les canaux correspondant à la chrominance sont sous-échantillonnés : un bloc
de 2×2 pixels est remplacé par un seul pixel moyenne.
➢ Chaque image est décomposée en blocs de taille 8×8.

25
Compression d’une image

Compression JPEG : les grandes étapes (2)


➢ Chaque matrice 8×8 est transformée en une autre matrice par la DCT (Discrete
Cosinus Transform).
➢ On obtient une nouvelle matrice de même taille, à valeurs réelles, qui contient
la même information que la matrice de départ.
➢ Les hautes fréquences correspondent aux coefficients en bas à droite de la
matrice DCT.

26
Compression d’une image

Compression JPEG : les grandes étapes (3)


➢ On divise terme à terme la matrice DCT par une matrice de quantification
prédéfinie.
➢ On conserve l’arrondi de la division, souvent nul pour une valeur de MQ
élevée.

27
Compression d’une image

Compression JPEG : les grandes étapes (4)

On transforme chaque matrice en vecteur :


➢ Lecture en Zig-Zag
➢ Permet d’obtenir de longues plages de 0
➢ Les vecteurs sont compressés par un codage sans perte, RLE pour les plages de
0 puis Huffman

28
La compression sans perte

Principe :
❑ La taille de l’image est réduite sans que l’information soit perdue.
❑ L’image est indexée et chaque index est codé différemment.
❑ Différentes approches :
❑ RLE (Run Lenght Encoding) ou RLC
❑ Shannon, Fano (Variable Code Lenght)
❑ Huffman (Variable Code Lenght)
❑ Lempel, Ziv, Welch (LZW)

29
La compression sans perte

La compression RLE :
Taille image = 10×10×8 = 800 bits = 100
octets.
Si 3 éléments ou plus se répètent
consécutivement, on utilise un octet pour
indiquer le nombre de ces éléments qui se
suivent et un octet pour indiquer la valeur.

Des codes séparateurs sont insères.

L’image peut être parcouru dans des


directions variables (balayage particulier).

Ici, on a 75 octets.

30
La compression sans perte

Shannon, Fano :
7 niveau de gris sur 255 présent dans
l’image triés en fonction de leur fréquence
d'apparition :

Division en deux groupes d’égale


population :

31
La compression sans perte

Shannon, Fano :
Taille image = 1×57 + 3×14 + 3×10
+ 4×6 + 4×5 + 4×4 + 4×4 = 205 bits
Plus entête de fichier (information,
taille, table de codage, séparateur).

Code préfixé : chaque code ne


peut être le début d’un autre.

32
La compression sans perte

Huffman :
❑ Dans cette méthode, chaque code ne peut être
le début d’un autre (code préfixé).
❑ L’arbre du codage est construite à partir du
niveau le plus profond
❑ On commence par classer les couleurs par
ordre décroissant des occurrences.
❑ On groupe les deux couleurs ayant
l’occurrence les plus faibles donnant lieu à un
nœud ayant comme occurrence la somme de
celles de ces deux couleurs.
❑ L’opération est réitérer jusqu’à l’arrivée au
haut de l’arbre.

33
La compression sans perte

Huffman :

(57) 85 (57) (57) (57) (57) (57) (100)


0
(14) 43 (14) (14) (14) (25) (43)
0 0 1
(10) 170 (10) (10) (18) (18)
0 1

(6) 0 (6) (11) (11)


0 1
(5) 255 (5)
1
128 (8) (8)
(4)
0 1
64
(4) 1 34
La compression sans perte

LZW (Lempel, Ziv, Welch) :


❑ Construction d’un dictionnaire.
❑ Le dictionnaire est alimenté par les séquences d’éléments différentes qui se
répètent le plus souvent, ce qui permet d’indexer plusieurs pixels de même
valeur dans des zones homogènes.
❑ Chaque séquence est indexée.
❑ Possibilité de l’associer aux méthodes statiques (ARJ, PKZIP).
❑ Possibilité de ne pas transmettre le dictionnaire.

35
La compression avec perte

Principe :
❑ La taille de l’image est nettement réduite mais au détriment d’une perte
d’information.
❑ Différentes approches :
❑ Moyennage de blocs
❑ Transformée linéaire optimale
❑ Transformée en cosinus (JPEG)
❑ Quantification vectorielle
Les ondelettes
❑ Les fractales

36
La compression avec perte

JPEG :
❑ L'image est décomposée en blocs (en général 8×8)
❑ La transformée en cosinus discrète (DCT) est appliquée sur chaque bloc.
❑ Les composantes fréquentielles de faible amplitude et de haute fréquence sont
supprimées par une quantification des composantes qui est effectuée grâce à
une matrice de quantification.
❑ Un codage à longueur variable de type Huffman est enfin utilisé.

37
La compression avec perte

Les ondelettes :
❑ Extension de l’analyse de Fourier
❑ Décomposition en sous-bandes (de fréquences)
❑ Transformation mathématique par projection sur des bases orthogonales
❑ Traitement progressif (sous échantillonnage et passe-bas)
❑ Fort taux de compression
❑ Contrôle de la qualité́ et du taux de compression indépendant
❑ Algorithme plus rapide que JPEG
❑ Pas d’effet de mosaïque

38
La compression avec perte

Les ondelettes :
 La compression par ondelettes, aussi appelée DWT (Discrete Wavelet
Transform) est une méthode basée sur la théorie mathématique de l’analyse du
signal : les ondelettes sont un ensemble de signaux élémentaires à partir
desquels on peut reconstruire un signal complexe.
 La compression par ondelettes consistera donc à décomposer l’image perçue
comme un signal en un ensemble d’images de plus petite résolution.
 Ce procédé, qui repose sur la différence entre zones de contrastes forts et
zones de contrastes faibles, se développe en trois phases :
o Tout d’abord, on procède à une transformation de l’image en ondelettes
selon un schéma à plusieurs niveaux, processus relativement complexe qui
est détaillé dans la suite.

39
La compression avec perte

Les ondelettes :
o Ensuite, on réalise une quantification des informations. Lors de cette phase,
les détails qui se situent au-dessous d’un certain seuil sont purement et
simplement éliminés. C’est donc à ce niveau que se produit la perte
d’informations.
o Enfin, on termine en codant les informations.
 La décompression des images s’opère par le schéma inverse : les informations
sont tout d’abord décodées pour fournir un ensemble à plusieurs niveaux
d’ondelettes qui permet la reconstitution progressive de l’image.
 L’opération de transformation de l’image initiale en ondelettes demande quant
à elle quelques explications. Son fonctionnement repose sur une série de
cycles successifs à deux temps.

40
La compression avec perte

Les ondelettes :

41
La compression avec perte

Les ondelettes :
 Dans un premier temps, on moyenne les pixels de l’image d’origine deux à
deux en suivant l’axe horizontal. On obtient ainsi une image A, sous-
échantillonnée dans le sens horizontal et dont la largeur est évidemment la
moitié de celle de l’image d’origine. Sur base de celle-ci, on va construire une
seconde image A’ en sens horizontal en calculant cette fois les erreurs entre
l’image d’origine et l’image sous-échantillonnée.
 Dans un second temps, on va moyenner les pixels des deux images obtenues
deux à deux en suivant l’axe vertical cette fois, avant de déterminer une
nouvelle fois les erreurs engendrée lors de cette opération. Au terme de ce
cycle, on obtient quatre images dont la résolution est la moitié de celle de
l’image d’origine.

42
La compression avec perte

Les ondelettes :
 La première de ces images, AA, fruit des sous-échantillonnages horizontal puis
vertical sans correction, est une image d’approximation, tandis que les trois
autres images AA’, A’A et A’A’, fruits des calculs d’erreurs successifs,
contiennent les détails de l’image d’origine.
 Une fois ce premier sous-niveau obtenu, on recommence autant de fois que
nécessaire le procédé en reprenant chaque fois comme base la première sous-
image obtenue (AA, puis BB, puis CC, etc.).
 La compression par ondelettes, particulièrement appropriée pour les images,
est la base du JPEG 2000. Ses avantages sont multiples : elle permet une
compression 50 à 100 fois plus importante que le JPEG, offre une meilleure
définition des détails et permet un téléchargement progressif de l’image.

43
La compression avec perte

Les fractales :
❑ Le principe de la compression fractale est que toute image est la limite d'une
séquence de transformations mathématiques (rotations, translations,
changement d’échelle) appliquées à un ensemble de pixels.
❑ La compression fractale permet d'atteindre des taux de compression très
importants, et permet une reconstruction de l'image à toutes les tailles.
❑ Son principal inconvénient est le temps de calcul nécessaire pour la
compression.

44
La compression avec perte

Les fractales :
 La compression fractale est un procédé qui s’applique uniquement aux
images.
 Le format des images compressées par ce procédé n’est à l’heure actuelle pas
standardisé et n’est donc pas reconnu par les navigateurs. Il se reconnaît par
l’extension « .fif ».
Principe de fonctionnement :
 Toute image est un ensemble fini de transformations géométriques (rotations,
translations, agrandissements, réductions) appliquées aux sous-ensembles de
motifs identiques et de tailles variables qui la composent.
 La compression fractale consiste donc à remplacer l’image toute entière par
une série de formules mathématiques qui permettent de la recomposer dans
son entièreté.
45
La compression avec perte

Principe de fonctionnement (suite) :


 Le succès de l’opération de compression est par conséquent proportionnel à
l’importance des propriétés géométriques de l’image. Plus celles-ci sont
nombreuses, moins le nombre de formules mathématiques sera conséquent.
 On comprend dès lors pourquoi la compression fractale se prête fort bien au
traitement des paysages par exemple. Evidemment, aucune image ne peut se
résumer strictement à ensemble de propriétés géométriques appliquées à des
blocs. C’est donc au niveau de la délimitation de ces derniers qu’a lieu une
perte d’informations. Ce procédé comporte des avantages certains, mais
également certains inconvénients.

46
La compression avec perte

Avantages :
 La compression est complètement indépendante de la taille de l’image puisque ce
sont les propriétés géométriques qui sont seules prises en considération.
 L’image ainsi découpée en blocs de tailles variables en fonction de ses propriétés
géométriques est vectorisée, ce qui évite les effets de pixellisation commun au
JPEG par exemple. Notons qu’à l’agrandissement de l’image reconstituée, on
peut remarquer un certain effet de flou qui rend sensible la perte engendrée par la
compression.

47
La compression avec perte

Désavantages :
 Les formules gèrent la transformation géométrique des blocs, mais sont
incapables de gérer l’apparition et la disparition pure et simple de ceux-ci.
 Ce procédé ne se prête donc pas au traitement de la vidéo, qui se caractérise
par une succession d’images parfois radicalement différentes.
 Si le processus de décompression d’une image est aussi rapide qu’avec
d’autres méthodes et algorithmes, le temps de calcul nécessaire à la
compression est en revanche particulièrement plus important. A titre
d’exemple, une compression fractale peut prendre jusqu’à 50 fois plus de
temps qu’une compression JPEG pour la même image.

48

Vous aimerez peut-être aussi