Académique Documents
Professionnel Documents
Culture Documents
TP Image 09 10 PDF
TP Image 09 10 PDF
2.5 Manipulations
On désire créer puis afficher sous Matlab l’image suivante (img0) :
TP N°2
1.3 Image polychromatique
1. Représentation matricielle d’une image numérique - À chaque pixel on associe plus qu’une valeur.
- Une image couleur est constituée de 3 matrices correspondantes au système de couleur utilisé
1.1 Définitions (RGB par exemple).
- Chaque pixel est donc représenté par un vecteur de 3 valeurs.
- On désigne par image numérique toute image (dessin, photographie,…) acquise, créée, traitée
ou stockée sous forme binaire.
- L’image numérique est l’image dont la surface est divisée en éléments de tailles fixes appelés
cellules ou pixels, ayant chacun comme caractéristique un niveau de gris ou de couleurs.
- Le pixel est l'unité de base d'une image numérique
- L’image numérique est représentée par une matrice de pixels. Par convention, le centre du pixel
d’indice (i, j) a pour coordonnées (i, j).
- Une image = un ensemble de pixels ou un ensemble de couples d’entiers. À chaque pixel (i,j),
on associe la valeur I(i,j) correspondant à la lumière réfléchie par le point correspondant à ce Image couleur Niveau de Rouge Niveau de Vert Niveau de Bleu
pixel.
Fig. 3 : Représentation matricielle d’une image couleur.
y
1.4 Image indexée
Ligne j pixel(i,j)
- Une image indexée est représentée par une matrice de dimension M lignes x N colonnes et une
palette de couleurs.
- Chaque élément de la matrice représente un index sur la palette.
- La palette est une matrice à 3 colonnes représentant la couleur R, V et B
- Chaque entrée de la palette représente une couleur composée de R, V et B
x
Colonne i
Fig. 1 : Représentation matricielle d’une image.
- L’image monochromatique est une matrice dont chaque pixel contient une seule valeur appelée
luminance ou niveau de gris.
- Pour une image codée sur 8 bits, les niveaux de gris sont compris entre 0 et 255, soit 256
niveaux de gris (n.g). Le niveau de gris 0 correspond au noir tandis que 255 est représenté en
blanc. Fig. 4 : Image indexée et palette associée
- Une image digitale est généralement stockée dans un fichier selon un arrangement particulier
des pixels. Cet arrangement est connu sous le vocable « format d’image ». Pour pouvoir lire une
image, il est impératif de connaître son format.
- Il existe différents formats d’image :
BMP (.bmp) : Windows bitmap.
Fig. 2 : Image en niveau de gris et sa représentation matricielle. GIF (.gif) : Graphics Interchange Format.
JPEG (.jpg) : Join Photographic Experts Group.
PNG (.png) : Portable Network Graphics.
TIFF (.tif) : Tagged Image File Format…
ISSAT Mahdia, Anis Ben Aicha -1- ISSAT Mahdia, Anis Ben Aicha -2-
TP Traitement d’image 2009/2010 TP Traitement d’image 2009/2010
- Certains formats utilisent des méthodes de compression d’image pour réduire la taille mémoire
nécessaire. La méthode de compression peut être avec perte (comme c’est le cas du JPEG) ou 3.2 Conversion des images
sans perte (comme c’est le cas du TIFF).
1) Ouvrir et afficher l’image « lena_color.tif » puis calculer sa taille théorique en kilo octets.
3. Manipulations
2) Afficher dans la même figure (1 ligne de 4 images) l’image source de « lena » ainsi que les
- N’hésiter pas de demander de l’aide MATLAB sur les différentes fonctions. composantes R, V et B.
- Durant ce TP, on utilisera une image la plus connue et la plus célèbre en traitement d’image. Il Remarque : une composante couleur est représentée par une matrice. Ainsi, lors de
s’agit du portrait de la femme Lena. Cette image est exploitée par des milliers de traiteurs d’image l’affichage, MATLAB le considère comme une image en niveaux de gris.
pour évaluer la qualité des algorithmes.
3) - Ecrire un script MATLAB qui permet d’afficher en vraies couleurs les différentes
composantes R, V et B (c-à-d la composante rouge en rouge, verte en vert et bleue en bleu).
3.1 Lecture, affichage et écriture des images - Quelles sont les composantes R, V et B du pixel de coordonnées (307,318) ?
1) Écrire un script MTLAB qui lit et affiche l’image « lena.jpg » (im1). 4) La commande rgb2gray permet de transformer une image couleur RVB en une image en
- Indications : niveaux de gris.
commandes : imread et imshow - Transformer l’image « lena » en niveau de gris.
la commande axis permet d’afficher les graduations des axes (largeur et hauteur). - Calculer la taille théorique de l’image résultat et comparer la avec celle de l’image source.
la commande colorbar affiche la barre des couleurs de l’image. - Interpréter.
la commande title permet de donner et afficher le titre de l’image.
5) La commande rgb2ind permet de transformer une image couleur RVB en une image
2) Quel est le type de l’image « lena » ? (noir et blanc, noir ou blanc, couleur). indexée.
- Transformer l’image « lena » en une image indexée (choisir 400 couleurs pour la palette).
3) La commande imfinfo permet d’afficher plusieurs informations concernant une image. - L’image résultat est représentée par une matrice 512x512 et une autre matrice 400x3. Que
- Quelle est la taille (en pixel) de l’image « lena » ? représente chaque élément de ces deux matrices ?
- Sur combien de bit chaque pixel est codé ? - Quelles sont les composantes couleurs correspondantes à l’index 20 ?
- Vérifier le type de l’image « lena ». - Écrire un script MATLAB qui calcule le nombre de pixels dont l’index = 20.
- indications : boucle for et command if ou bien commandes find et length.
4) Quels sont les niveaux de gris que peut avoir un pixel de l’image « lena » ?
6) Afficher dans la même figure l’image source ainsi que ces composantes dans le système
5) Quels sont les niveaux de gris des pixels de coordonnées suivantes : (20,60), (70,30) et YCbCr.
(170,130). - indication : commande rgb2ycbcr.
6) La commande pixval permet d’afficher les coordonnées d’un pixel ainsi que son niveau de 7) Afficher dans la même figure l’image source ainsi que ces composantes dans le système
gris. HSV.
- Exécuter cette commande et déplacer la souris pour choisir 2 pixels A et B appartenants à 2 - indication : commande rgb2hsv.
zones différentes (noire puis blanche).
- Compléter : coordonnées de A : …………., niveau de gris =……………… 3.3 Opérations géométriques sur les images
coordonnées de B : ………….., niveau de gris =………………
1) Écrire un scripte MATLAB permettant de faire tourner l’image (im1) de 30 degrés pour
7) Considérons un carré qui se situe au centre de l’image « lena » de dimension 100x100 pixels. avoir une nouvelle image (im3). Afficher les deux images (im1) et (im3) sur la même figure.
- Écrire un scripte MATLAB qui rend ce carré tout blanc. - Indication : commande imrotate.
- Afficher l’image originale de « lena » (im1) ainsi que l’image résultat (im2) sur la même
figure. 2) Couper un carré (im4) de l’image (im1) à partir du pixel de coordonnées (200,200). Le carré
- Indication : commande : subplot. est de dimension 120x120. Afficher les deux images (im1) et (im4) sur la même figure.
- Indication : commande imcrop.
8) Enregistrer l’image (im2) sous les formats suivants : jpg et png.
- indication : commande imwrite. 3) Écrire un script MATLAB qui permet d’inverser l’image (im1) de bas en haut par deux
méthodes différentes pour avoir l’image (im5). Afficher les deux images (im1) et (im5) sur la
même figure.
ISSAT Mahdia, Anis Ben Aicha -3- ISSAT Mahdia, Anis Ben Aicha -4-
TP Traitement d’image 2009/2010 TP Traitement d’image 2009/2010
TP N°3 4) Changer le pas de quantification de l’image source pour obtenir 64, 32, 16, 8, 4 et 2 niveaux
de gris pour chaque composante couleur R, V et B.
2.2 Manipulation 2
Une image numérique est une image dont le domaine spatial et la luminosité ont été discrétisés. On
dit qu’on a échantillonné l’espace et qu’on a quantifié la luminosité. On peut la représenter par une
matrice 2D pour une image monochrome et par une matrice 3D pour une image couleur. 1) Convertir l’image couleur «cones.bmp » (im1) en une image en niveaux de gris (im2).
1.1 Echantillonnage 2) On désire sous échantillonner par un facteur de 2 l’image (im2). Pour cela, créer une
nouvelle image (im3) en ne prenant qu’un pixel sur deux dans l’image originale (im2).
L’échantillonnage consiste à représenter une image par un nombre fini de points. On définit la
fréquence d’échantillonnage comme l’inverse de la période d’échantillonnage Fe=1/Te. La 3) Créer la même version sous échantillonnée sans utiliser des boucles.
période d’échantillonnage qui sépare 2 pixels, suivant une direction, correspond à une réalité
physique puisqu’elle est égale à la distance réelle entre 2 points. Si par exemple, Te = 1 mm, cela 4) Afficher l’image ainsi obtenue.
signifie qu’on a choisi de représenter un point tous les millimètres. La fréquence serait alors de
1000 points par mètre. 5) Décrire les effets du sous échantillonnage sur l’image.
Si l’échantillonnage est le même suivant les 2 directions, on parle d’isotropie. Dans le cas
contraire, on parle d’anisotropie. 6) Refaire la même chose avec un facteur 4, 8.
1.2 Quantification 7) Afficher, dans la même figure, l’image source en niveau de gris ainsi que les images sous
échantillonnées de facteur 2, 4 et 8.
La quantification consiste à discrétiser la luminosité (image en niveaux de gris) ou l’espace 8) Conclure.
chromatique (image couleur). On peut coder une image sur autant de niveau de gris qu’on
souhaite. Dans la majorité des cas, une image monochrome est codée sur 8 bits qui fournit 28 =
256 niveaux. Les valeurs prises se situent de 0 à 255 en format non signé et de -128 à 127 en
signé. À présent, si on code chacune des 3 composantes couleurs d’une image, on utilise 3 ∗ 8 =
24 bits ce qui donne 224 = 16777216 couleurs.
2. Manipulations
2.1 Manipulation 1
Soit l’image couleur « cones.bmp ». On désire déterminer l’effet d’une quantification à pas
variable.
3) À l’aide de la fonction quant_gray, écrire un script MATLAB qui permet de changer le pas
de quantification de l’image couleur « cone.bmp ».
ISSAT Mahdia, Anis Ben Aicha -1- ISSAT Mahdia, Anis Ben Aicha -2-
TP Traitement d’image 2009/2010 TP Traitement d’image 2009/2010
TP N°4
Modification d’histogramme
3. Manipulation 2 : inversion de la dynamique d’une image
1. Histogramme L’image traitée durant cette manipulation est une image médicale représentant une tumeur
cancéreuse.
L’histogramme est un outil très utilisé en traitement d’images. Il représente la distribution des
niveaux de gris d’une image. On lit en abscisse les différents niveaux de gris et en ordonnée le a) Lire et afficher l’image « cancer.bmp ». On la note « A1 ».
nombre de pixels ayant pour valeur ce niveau de gris.
b) Tracer son histogramme sur la même figure. Interpréter.
L’histogramme ne contient aucune information relative à l’emplacement des pixels ni sur la
proximité relative de deux pixels. Par contre, l’information qu’il contient peut concerner notamment c) Inverser la dynamique de l’image. Afficher sur la même figure les deux images A1 et A2
la brillance et le contraste d’une image. ainsi que leurs histogrammes respectifs. Interpréter.
Le but d’une binarisation est de passer une image en noir et blanc, ce qui consiste à avoir que des a) - Lire et afficher l’image « lezard.bmp ». On la note « B1 ».
pixels noir et blanc. - Commenter sur la qualité de l’image B1.
d) On désire binariser l’image « cameraman.tif» c'est-à-dire n’avoir que des pixels noirs ou a) Rappeler l’objectif et le principe d’égalisation d’histogramme.
blancs. Pour cela, on doit définir un seuil qui permettra de savoir si un pixel deviendra
noir ou blanc. Si le pixel est inférieur au seuil alors le pixel deviendra noir si non le b) La commande Matlab histeq permet d’égaliser l’histogramme d’une image.
pixel deviendra blanc. On utilise l’algorithme de Otsu pour déterminer ce seuil. La - Egaliser l’histogramme de l’image B1.
commande Matlab graythresh permet de le calculer.
- Écrire un code Matlab qui permet de binariser l’image I1. L’image résultat est c) - Afficher sur la même figure l’image B1 et l’image égalisée B3 ainsi que leurs
notée I2. histogrammes respectifs.
- Afficher sur la même figure les deux images I1 et I2 ainsi que leurs - Interpréter.
histogrammes respectifs.
- Tester la commande im2bw de Matlab qui permet de binariser les images en d) - Afficher sur la même figure les images B1, B2 et B3 ainsi que leurs histogrammes
niveau de gris. respectifs
- Comparer la qualité des images B2 et B3. Interpréter.
ISSAT Mahdia, Anis Ben Aicha -1- ISSAT Mahdia, Anis Ben Aicha -2-
TP Traitement d’image 2009/2010
TP N°5
Restauration d’image
1. La restauration
La restauration est l’ensemble des techniques qui servent à retrouver la qualité de l’image d’origine.
Tris méthodes de restaurations sont envisageables : la restauration par connaissance à priori, la
restauration par connaissance à posteriori et la restauration par filtrage.