Université de Tunis-Elmanar
Institut Supérieur d’Informatique
Cours : vision par ordinateur
Chapitre 2: Traitements de base sur
les images
2CS
28/01/2025 1
Plan du chapitre
1. Histogramme
2. Transformations des images
3. Transformations ponctuelles pour l’amélioration du contraste
4. Autres transformations
28/01/2025
2
1. Histogramme
28/01/2025 3
Histogramme
28/01/2025 4
Histogramme
0 0 7 3 4
Soit I, une image numérique de taille
lig*col et codée sur k bits
7 0 2 2 1 H(i) = nombre de pixels de l’image ayant le
6 1 0 1 3
niveau de gris i
I appartient à [0, 2k-1]
6 1 0 0 3
2 k 1
6 7 5 5 6
H i lig * col
i 0
I
H(i)
28/01/2025 5
Histogramme
0 0 7 3 4
Soit I, une image numérique de taille
lig*col et codée sur k bits
7 0 2 2 1 H(i) = nombre de pixels de l’image ayant le
6 1 0 1 3
niveau de gris i
I appartient à [0, 2k-1]
6 1 0 0 3
2 k 1
6 7 5 5 6
H i lig * col
i 0
I 0 1 2 3 4 5 6 7
H(i) 6 4 2 3 1 2 4 3
28/01/2025 6
Histogramme : algorithme
Histogramme (Matrice I [ nbcol][nbligne ], entier nbcol, entier nbligne)
Debut
H = new Array [0..255]
/*Initalisation du tableau*/
Pour i= 0 à 255
H[i]= 0;
Fin pour
Pour i= 0 à nbligne-1
Pour j= 0 à nbcol-1
H[ I[i][j] ] ++;
Fin pour
Fin pour
dessiner(H);
Fin
28/01/2025 7
Histogramme cumulé
0 0 7 3 4
L’histogramme cumulé est une fonction
monotone croissante.
7 0 2 2 1
i
Hc(i ) H j
6 1 0 1 3
6 1 0 0 3 j 0
6 7 5 5 6
I 0 1 2 3 4 5 6 7
H(i) 6 4 2 3 1 2 4 3
Hc(i) 6 10 12 15 16 18 22 25
28/01/2025 8
Histogramme Normalisé
L’histogramme normalisé représente la
0 0 7 3 4
probabilité qu’un pixel prenne le niveau de
7 0 2 2 1 gris i
6 1 0 1 3 H (i)
6 1 0 0 3
Hn(i)
lig * col
6 7 5 5 6
I 0 1 2 3 4 5 6 7
H(i) 6 4 2 3 1 2 4 3
Hn(i) 6/25 4/25 2/25 3/25 1/25 2/25 4/25 3/25
28/01/2025 9
Histogramme Normalisé
28/01/2025 10
Histogramme cumulé : algorithme
HistogrammeCumulé (Tableau Hist [255])
Debut
Tableau HCumul = new Array [0..255]
HCumul[0] = Hist [0];
Pour i= 1 à 255
HCumul[i] = HCumul[i-1] + Hist [i];
Fin pour
Fin
28/01/2025 11
Exemple de calcul d’histogramme d’une image
Image « A » en Matrice des valeurs de Histogramme
niveaux de gris luminance des pixels de l’image de l’image
«A» «A»
2 2 2 2 2 2 2 2
2 0 0 0 0 0 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 0 0 0 0 0 2
2 2 2 2 2 2 2 2
combien de niveau de gris contient l'image « A »
Compter le nombre de pixels pour chaque niveau de gris, à l’aide de la
matrice des valeurs de luminance.
28/01/2025 12
Exemple simple de calcul d’histogramme d’une image
Image « A » en Matrice des valeurs de Histogramme
niveaux de gris luminance des pixels de l’image de l’image
«A» «A»
2 2 2 2 2 2 2 2
2 0 0 0 0 0 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 0 0 0 0 0 2
2 2 2 2 2 2 2 2
L'image « A » comporte 3 niveaux de gris différents : 0, 1 et 2.
Compter le nombre de pixels pour chaque niveau de gris,
à l’aide de la matrice des valeurs de luminance.
Les niveaux 0, 1 et 2 sont respectivement représentés par 24,
12 et 28 pixels représentation de cette population de pixels sur
l'histogramme.
28/01/2025 13
Histogramme cumulé d’une image
Image « A » Valeurs de luminance de
«A»
2 2 2 2 2 2 2 2
2 0 0 0 0 0 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 0 0 0 0 0 2
2 2 2 2 2 2 2 2
Calculer l’ histogramme particulier faisant appel aux cumuls
des niveaux de gris Histogramme cumulé. Et représentez.
Chaque bâton cumule le nombre de pixels du niveaux de gris concerné
et des niveaux de gris inférieurs : par quelles valeurs les niveaux 0, 1, 2
sont-ils représentés
28/01/2025 14
Histogramme cumulé d’une image
Image « A » Valeurs de luminance de Histogramme cumulé de
«A» «A»
2 2 2 2 2 2 2 2
2 0 0 0 0 0 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 1 1 1 1 0 2
2 0 1 0 0 1 0 2
2 0 0 0 0 0 0 2
2 2 2 2 2 2 2 2
Calcul d'un histogramme particulier faisant appel aux cumuls
des niveaux de gris Histogramme cumulé.
Chaque bâton cumule le nombre de pixels du niveaux de gris
concerné et des niveaux de gris inférieurs : les niveaux 0, 1, 2 sont
donc représentés respectivement par 24, 36 et 64 pixels.
Utile pour certains traitements d'image tels que l’égalisation
d'histogramme ( amélioration de contraste).
28/01/2025 15
Moyenne : brillance luminance
La luminance est définie comme le niveau de gris moyen dans
une image;
Soit I une image de taille lig*col et codée sur k bits
lig 1 col 1 2 k 1
I i, j
i 0 j 0
i * H i
lu min ance i 0
lig * col lig * col
28/01/2025 16
Dynamique de l’image
Dynamique de l’image
Généralement, les valeurs des pixels occupent une
partie de cet intervalle comprise entre une valeur
minimale et une valeur maximale. L’intervalle ainsi
défini [imin, imax] est appelé la dynamique de l’image.
Dynamique maximale
La valeur d’un pixel d’une image en niveaux de
gris appartient à l’intervalle [0,2k-1]. On dit que cet
intervalle est la dynamique maximale d’une image.
28/01/2025 17
Dynamique de l’image
28/01/2025 18
Contraste
Le contraste peut être défini comme la variation entre le niveau
de gris maximum et minimum
imax imin
contraste
imax imin
Le contraste ~ 1: contraste très élevé : on arrive facilement à faire
la distinction entre les objets à travers leurs couleurs
Le contraste ~ 0: contraste très faible : les couleurs des objets sont
très proches
28/01/2025 19
Contraste
Le contraste peut aussi être défini comme l’écart type des
niveaux de gris
nblig 1 nbcol 1
contraste
1
* I (i, j ) luminance2
nblig * nbcol i 0 j 0
28/01/2025 20
l’histogramme :Modèle statistique
PI(k)
1
PI(k)
1
0.5
k
PI(k)
0.1
Deux images
différentes peuvent
avoir le même
k histogramme
28/01/2025 21
Caractérisation par l’histogramme
28/01/2025 22
Spécification d’histogramme
• Dans certains cas, on connaît la nature de
l’histogramme que l’on souhaite avoir.
• On peut « redistribuer » les niveaux de gris de
manière monotone, de manière à assurer que
l’histogramme de l’image corrigée corresponde
à l’histogramme souhaité
observé souhaité
28/01/2025 23
2. Transformations des images
28/01/2025 24
Principe et types
28/01/2025 25
Transformation : principe
Toutes les transformations que nous allons appliquer ne vont ni
changer la taille de l’image ni changer le nombre de bits sur lesquels
une image est codée
Transformation
Image originale Image Transformée
28/01/2025 26
Transformation ponctuelle
La valeur du pixel dans l’image transformée dépend uniquement de
I i, j f I i, j
son correspondant dans l’image originale '
Image originale Image Transformée
28/01/2025 27
Look Up Table (LUT)
Une transformation ponctuelle change le niveau de gris i dans
l’image originale en un niveau de gris i’ dans l’image transformée
La LUT est définie par une table de correspondance i et i’
i
I’=t(i)
28/01/2025 28
Look Up Table
28/01/2025 29
Exemple
28/01/2025 30
Transformations ponctuelles et
histogramme
28/01/2025 31
Transformation locale
La valeur du pixel dans l’image transformée dépend uniquement de
son correspondant dans l’image originale et de son voisinage
I i, j
'
f voi sin I i, j
Image originale Image Transformée
28/01/2025 32
Transformation globale
La valeur du pixel dans l’image transformée dépend uniquement de
de l’image originale.
I i, j f I
'
Image originale Image Transformée
28/01/2025 33
Principe et types
28/01/2025 34
3. Transformations ponctuelles
pour l’amélioration de la
luminance
28/01/2025 35
Améliorer la Luminance
pour améliorer la luminance dans une image il suffit de faire un
décalage d’histogramme :
I i, j I i, j cste
'
28/01/2025 36
Améliorer la Luminance
Soit I de taille 5*5 et codée sur 4 bits
0 0 7 3 4
7 0 2 2 1 I ' i, j I i, j cte
6 1 0 1 3
9 1 0 0 3
9 8 8 5 6
I 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
H(i)
H’(i)
28/01/2025 37
Améliorer la Luminance
Soit I de taille 5*5 et codée sur 4 bits
6 6 13 9 10
0 0 7 3 4
7 0 2 2 1 I ' i, j I i, j 6 13 6 8 8 7
12 7 6 7 9
6 1 0 1 3
9 1 0 0 3 15 7 6 6 9
9 8 8 5 6 15 14 14 11 12
I 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
H(i) 6 4 2 3 1 1 2 2 2 2 0 0 0 0 0 0
H’(i) 0 0 0 0 0 0 6 4 2 3 1 1 2 2 2 2
28/01/2025 38
4. Transformations ponctuelles
pour l’amélioration du contraste
28/01/2025 39
Amélioration d’image
Adaptation à la vision humaine (de l’observateur)
Améliorer la qualité des images
l’image doit avoir
→un bon contraste
→des contours d’objets bien marqués
28/01/2025 40
Comment améliorer le contraste
des images
Recadrage de la dynamique :
Transformation linéaire
Transformation linéaire avec saturation
Transformation linéaire par morceau
Transformations non linéaires
Égalisation de l’histogramme
28/01/2025 41
4.1.1 Recadrage de la
dynamique : Transformation
linéaire
28/01/2025 42
Recadrage dynamique
On suppose une image de départ
présentant des niveaux de gris
concentrés dans l’intervalle [min, max].
Le recadrage de dynamique consiste à
étendre la dynamique de l’image
transformée à l’étendue totale [0, 2k-1].
La transformation de recadrage est
donc une application affine du niveau
de gris des pixels de telle sorte que
l'image utilise toute la dynamique de
représentation.
28/01/2025 43
Transformation linéaire simple
28/01/2025 44
Transformation linéaire simple
28/01/2025 45
Transformation linéaire simple :
exemple
Soit I de taille 5*5 et codée sur 4 bits
5 6 7 6 4
7 4 4 5 4
6 7 6 9 6
9 7 6 4 4
9 8 8 5 6
i
I’
28/01/2025 46
Transformation linéaire simple :
exemple
Soit I de taille 5*5 et codée sur 4 bits
5 6 7 6 4
7 4 4 5 4 I i, j 3 * I i, j 4
'
6 7 6 9 6
9 7 6 4 4
9 8 8 5 6
4 5 6 7 8 9
i
I’ 0 3 6 9 12 15
28/01/2025 47
Transformation linéaire simple :
exemple
28/01/2025 48
Transformation linéaire simple :
exemple
28/01/2025 49
4.1.2. Recadrage de la
dynamique : Transformation
linéaire avec saturation
28/01/2025 50
Transformation linéaire avec
saturation
28/01/2025 51
Transformation linéaire par
saturation : exemple
Choisir deux seuils S1 et S2 tels que
imin S1 S 2 imax
' 2 1
k
I i, j * I i, j S1 S1 I i, j S 2
S 2 S1
I i, j 0
'
I i, j S1
I i, j 2 1
' k
I i, j S 2
28/01/2025 52
Transformation linéaire par
saturation : exemple
Soit I de taille 5*5 et codée sur 4 bits
5 6 7 6 4
S1=4, S2 = 9
7 3 2 2 10
6 3 10 9 3
9 7 3 4 4
10 8 8 10 6
i
I’
28/01/2025 53
Transformation linéaire par
saturation : exemple
Soit I de taille 5*5 et codée sur 4 bits
5 6 7 6 4
S1=4, S2 = 9
I i, j 3 * I i, j 4 4 I i, j 9
7 3 2 2 10 '
6 3 10 9 3
9 7 3 4 4 I i, j 0
'
I i, j 4
I i, j 15
'
I i, j 9
10 8 8 10 6
2 3 4 5 6 7 8 9 10
i
I’ 0 0 0 3 6 9 12 15 15
28/01/2025 54
4.1.3. Recadrage de la
dynamique : Transformation
linéaire par morceaux
28/01/2025 55
Autres transformations linéaires
Appliquer la transformation linéaire par pente locale entre imin et
imax. Choisir plusieurs seuils Si pour ces pentes locales
Si la pente > 1 alors la transformation éclaircie l’image; sinon,
elle l’assombrie
28/01/2025 56
Transformations linéaire par
morçeaux
' '
S1
I i, j * I i, j imin imin I i, j S1
S1 imin
' S2 S 1
' '
I i, j * I i, j S1 S1 I i, j S 2
S 2 S1
' 2 1 S2
k '
I i, j i S * I i, j S 2 S 2 I i, j imax
max 2
28/01/2025 57
Limite
28/01/2025 58
4.2. Egalisation d’histogramme
28/01/2025 59
Egalisation d’histogramme
l'égalisation d'histogramme est une méthode d'ajustement du
contraste d'une image numérique qui utilise l'histogramme.
L'égalisation d'histogramme permet de mieux répartir les intensités
sur l'ensemble de la plage de valeurs possibles, en « étalant »
l'histogramme.
L'égalisation est intéressante pour les images dont la totalité, ou
seulement une partie, est de faible contraste (l'ensemble des pixels
sont d'intensité proches).
28/01/2025
60
Egalisation d’histogramme
L’égalisation d’histogramme a pour objectif
d’obtenir une image rehaussée ayant un
histogramme linéarisé ou égalisé: c’est-à-dire
uniforme (constant) sur tout l’intervalle [0,255].
Un histogramme "uniforme" signifie que tous les
niveaux de gris sont présents en même nombre
dans l'image.
28/01/2025
61
Egalisation : exemple
28/01/2025
62
Egalisation d’histogramme
• La technique classique consiste à rendre « le plus
linéaire possible » l'histogramme cumulé de l'image
Histogrammes
Histogrammes cumulés
28/01/2025 63
Egalisation d’histogramme
28/01/2025 64
Egalisation d’histogramme
5 6 6 6 4
7 3 3 4 5
6 3 10 9 3 i 3 4 5 6 7 8 9 10
9 7 3 4 4 H(I) 5 5 2 5 2 1 3 2
4 8 9 10 6 Hn(i) 5/ 5/ 2/2 5/2 2/ 1/ 3/ 2/
25 25 5 5 25 25 25 25
Hnc(i) 5/ 10/ 12/ 17/ 19/ 20/ 23/ 1
25 25 25 25 25 25 25
I’ 3 6 7 10 11 12 13 15
28/01/2025 65
avantages de l’égalisation
28/01/2025 66
Inconvénients de l’égalisation
28/01/2025 67
inconvénients de l’égalisation
28/01/2025 68
Exercice 1
1. Soit la matrice ci-dessous.
0 1 2 3 6 6 6 7 7 7
0 1 2 3 6 6 6 7 7 7
0 1 2 3 6 6 7 7 7 7
4 4 2 3 6 6 7 7 7 7
4 5 6 6 6 6 7 7 7 7
6 6 6 6 6 6 7 7 7 7
9 9 9 9 9 10 10 10 10 11
11 11 11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11 11 11
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
Tracer son histogramme après égalisation. Expliquer.
Pour simplifier les calculs on prend 12 (0 à 11) niveaux de gris seulement au lieu de
256 (0 à 255)
28/01/2025 69
Exercice 2
Soit l’image I en niveau de gris suivante :
•Déterminer la taille en octets de cette image
•Tracer l’histogramme de cette image et l’histogramme cumulé.
•Déterminer la luminance et le contraste de cette image
•Donnez la fonction permettant le recadrage dynamique de cette image et donnez la nouvelle image
recadrée.
Nivea
u de
10 11 12 13 14 15 16 17 18 19 100 110 120 130 140 150
gris : i
nbre
de
1 6 1 12 13 13 12 17 1 10 8 5 9 10 5 10
pixel
par ng
28/01/2025 70
Exercice 3
Soit une image M codée en vrai couleur dont la représentation associée des
composants R,G et B pour chaque pixel est la suivante :
0 128 255
0 128 255
0 128 255
255 0 0
0 255 0
0 0 255
255 255 0
255 0 255
0 255 255
1. Convertir l’image M de l’espace RGB vers l’espace (I1,I2 ,I3) sachant que la
matrice de passage est définie par 1 0 0
1 / 3 1 / 3 1 / 3
1 / 4 1 / 2 1 / 4
Et écrire la nouvelle image.
2.Recadrer l’image obtenue. Le recadrage consiste à appliquer une transformation permettant
d’obtenir les valeurs I1, I2 et I3 comprise entre 0 et 255 et cela quelques soit les valeurs de R, G et
B.
28/01/2025 71
4. Autres transformations
28/01/2025 72
Transformations non linéaires
28/01/2025 73
Addition d’images
28/01/2025 74
soustraction d’images
28/01/2025 75
Multiplication d’images
28/01/2025 76
Opérations logiques sur les images
28/01/2025 77
Opérations logiques sur les images
28/01/2025 78
Bibliographie
Cours de traitement d’images Elise Arnaud – Edmond Boyer
Université Joseph Fourier
Cours de traitement d’images Alain Boucher
Cours de traitement d’images T Guyer Université de Chambéry
Cours de traitement d’images Caroline ROUGIER université de
Montréal
Analyse d’images : filtrage et segmentation (Edition Broché) -
Cocquerez
Cours de traitement d’images V Eglin INSA de Lyon
Cours de traitement d’images JC Burie Université de La Rochelle
28/01/2025 79