0% ont trouvé ce document utile (0 vote)
29 vues6 pages

Traitement d'Images Numériques sous MATLAB

Transféré par

boussellaa
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
29 vues6 pages

Traitement d'Images Numériques sous MATLAB

Transféré par

boussellaa
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Institut Supérieur d'Informatique

de Mahdia Traitement d’images numériques Année Universitaire :


2018/2019
Programmation sous MATLAB Filière : LFI3,

Responsable de TPs : Wafa BOUSSELLAA

TP N°2 : Les types d'images et leurs manipulation

Les objectifs de ce laboratoire sont :

 Introduire les principaux types d’images utilisés par MATLAB


 Importer et exporter des images
 Afficher les images

1.1 Type d’images

MATLAB utilise quatre types d’images :

 Images indexées
 Images d’intensité
 Images binaires
 Images RVB (Rouge Vert Bleu)

Une image dans MATLAB est représentée par une matrice. L’élément de base appelé pixel
représente simultannément un point de l’image et un élément de la matrice ; par exemple :

I(2,15)

Est la valeur du pixel qui se trouve à la ligne 2 et la colonne 15 de l’image I.

Dans ce laboratoire, nous nous intéressons à deux types d’images : images d’intensité
et images binaires. Les images indexées sont introduites à titre d’information.

1.1.2 Images indexées

 Une carte de couleur (MAP)


 Une matrice de l’images

Chaque pixel de l’images est un pointeur sur un élément de la carte de couleur qui représente
sa couleur.

Par exemple :

% charger l’image trees dans la mémoire


load trees
% afficher la matrice de l’image X selon la carte de couleur map
imshow(X,map)
Exercice 1 :
Lire une image « [Link] » , indexer et afficher cette image
Exercice 2 :
Lire l’image ‘[Link]’, afficher les composantes rvb de cette image.

1.1.2 Images d’intensité

MATLAB sauvegarde une image d’intensité sous forme d’une matrice unique appelé matrice
d’intensité. Elle contient des valeurs allant de 0.0 à 1.0. Chaque élément de la matrice
représente un pixel de l’image. Sa valeur indique un niveau de gris ou une intensité.
L’intensité 0.0 représente le noir et 1.0 représente le blanc.

Par exemple :

% charger l’images trees dans la mémoire


load trees
% convertir l’image indexée en image d’intensité
I=ind2gray(X,map) ;
% afficher l’image indexée selon 54 niveaux de gris
imshow (I,64)

 Afficher et imprimer l’image "trees" à l’aide de 32, 16 et 4 niveaux de gris.

Exercice 1 :
Lire l’image rvb ‘[Link]’, convertire et afficher cette image sur 128 niveaux de gris.

1.1.3 Image binaire

Une image binaire contient uniquement deux niveaux de gris : 0 (noir) et 1 (blanc)

Par exemple :

% charger l’images trees dans la mémoire


load trees
% convertir l’image indexée en image d’intensité
I=ind2gray(X,map) ;
% détecter les contours
BW=edge(I) ;
% afficher l’image binaire inversée des contours
imshow(~BW,2)

2
Exercice 1:
Construire et imprimer une image binaire de dimension 64x64 pixels formée par un cadre noir
de largeur un pixel et d’un rectangle noir au centre de l’image de dimension 20x15 pixels

1.2 Importation et exportation

MATLAB permet d’importer et d’exporter plusieurs formats d’image comme :

Graphics Interchange Format (GIF)


Tagged Image File Format (TIFF)
Hierarchical Data Format (HDF)
MS Windows format (BMP)
Zsoft Paint format (PCX)
Joint Photographic Export Group (JPEG)
Portable Networking Graphic (PNG)

Par exemple les commandes tiffread et tiffwrite permettent d’importer et d’exporter des
images de format TIFF respectivement. Pour déterminer le type de l’image TIFF, on utilise :

Type=tiffread(‘filename’)

Cette fonction retourne une valeur de 1 si c’est une image binaire et 8 si c’est une image
indexée. Pour lire une image indexée, on utilise :

[X,map]=tiffread(‘filename’)

Pour sauvegarder une image indexée sous format TIFF :

Tiffwrite(X,map,’filename’)

Pour les autres formats, les fonctions suivantes sont disponibles :


Gifread, gifwrite, hdfread, hdfwrite, bmpread, bmpwrite, pcxread, pcxwrite, …

 Lire l’image "[Link]" dans MATLAB


1.3 Système de coordonnées

Les trois systèmes de coordonnées utilisés sont :

3
Coordonnées cartésiennes
Coordonnées matricielles
Coordonnées des pixels

La librairie de traitement d’images de MATLAB utilise les coordonnées matricielles et les


coordonnées de pixels, tandis que les fonctions standards de MATLAB utilisent les
coordonnées cartésiennes.

1.3.1 Coordonnées cartésiennes

Toute les fonctions d’interpolation dans MATLAB utilisent les coordonnées cartésiennes.
C’est très commun d’utiliser ce type de coordonnées dans les opérations mathématiques.

(5,3)
3

5
1.3.2 Coordonnées matricielles

Dans les coordonnées matricielles, la première composante i représente les colonnes et la


deuxième composante j représente les lignes. Dans la librairie de traitement d’images, toutes
les fonctions dont la syntaxe utilise les notations i et j sont exprimées en coordonnées
matricielles.

3
(3,5)

4
1.3.3. Coordonnées des pixels

Dans les coordonnées des pixels, la première composante x représente l’axe horizontal des x
et la deuxième l’axe vertical des y. Dans la librairie de traitement d’images, toutes les
fonctions dont la syntaxe utilise les notations x et y sont exprimés en coordonnées de pixels.

3
(5,3)

1.4 Affichage d’une image

Dans cette section, nous introduisons les différentes façons d’afficher une image ainsi que
l’affichage multiple de plusieurs images.

1.4.1 Affichage standard

Pour afficher une image indexée, nous utilisons :

Imshow(X,map)

X est la matrice de l’image.


Map est la carte de couleurs.

Pour afficher une image d’intensité, nous utilisons :

Imshow(I,n)

I est la matrice d’image.


N est le nombre de niveaux de gris.
Pour afficher une image binaire, nous utilisons :

Imshow(BW,2)

BW est la matrice affichée en noir et blanc. Le pixel de valeur 0 est affiché en noir et celui de
valeur 1 en blanc.

Pour inverser le noir et le blanc, utilisez :

Imshow(~BW,2)

5
1.4.3. Affichage multiple

MATLAB offre la possibilité d’afficher plusieurs images simultanément. Par exemple :

Load trees
Subplot(1,2,1),imshow(X,map),title(‘image arbres’)
Load clown
Subplot(1,2,2), subimage(X,map),title(‘image clown’) ;
Axis off

 Justifier l’utilisation de la fonction subimage au lieu de imshow

Exercice :

1. Lire l’image RVB « [Link] ».


2. Indexer cette image
3. Représenter cette image sur 128 niveaux de gris
4. Choisir le seuil convenable pour binariser cette image.
5. Afficher tout les résultats sur la même figure en utilisant la technique de l’affichage
multiple.
6. Indiquer la fonction qui évite le conflit de couleur.

Vous aimerez peut-être aussi