Introduction au traitement d’images Simulation sous Matlab Professeur. Mohammed Talibi Alaoui

Download Report

Transcript Introduction au traitement d’images Simulation sous Matlab Professeur. Mohammed Talibi Alaoui

Introduction au traitement
d’images
Simulation sous Matlab
Professeur. Mohammed Talibi Alaoui
Département Mathématique et Informatique, Oujda
Le traitement d’image et vision par
ordinateur
La vision par Ordinateur
Vision Artificielle VA
Un système de vision artificielle capte une
scène tridimensionnelle et la traduit en
une ou plusieurs images
• Objectifs
Reconnaître et localiser les objets présents
dans la scène
Le Traitement d’Image TI
On désigne l'ensemble des opérations sur les
images numériques, qui transforment une
image en une autre image.
Imagerie Médicale
Rehaussement du contraste d’une
radiographie de la cage thoracique
Imagerie Médicale
Détection des tumeurs cancéreuses à partir d’une
mammographie
Imagerie Médicale
Recherche de lésions ou d’anomalies dans le
cerveau
Traitement d’Image
Amélioration d’images
(dégradation inconnue)
Traitement d’Image
Restauration d’images
(dégradation connue)
Applications TI
Systèmes à base de TI
Difficultés
• Variations naturelles dans une même
catégorie d’objet
– Exemple : maison, chaise
• Grande quantité de données à traiter
– Image faible résolution N/B 128x128
16Ko
– Image haute résolution couleur 512x512x3
750Ko
– Image caméra numérique 2592x1944 pix
15,1Mo
– Mouvement (30 im./s)
 22.5 Mo
• Variations dans le processus de formation de
l’image
– Éclairage
– Qualité du capteur
– Qualité du système
–…
PLAN
•
•
•
•
•
•
•
•
•
Chapitre 1 : Introduction
Chapitre 2 : Filtrage
Chapitre 3 : Détection de contours
Chapitre 4 : Morphologie mathématique
Chapitre 5 : Image couleur et texturé
Chapitre 6 : Restauration d’images
Chapitre 7 : Compression d’images
Chapitre 8 : Reconnaissance de formes
Chapitre 9 : Recalage d’images
Chapitre 1 : Introduction
1. Le traitement d’images

Trier le courrier

Contrôle automatique par la vision

Domaine militaire ( reconnaître automatiquement
la cible )

Compression des images
Chapitre 1 : Introduction
2. Notions élémentaires concernant Matlab
 Langage de programmation de haut
niveau
 Structure de base : Matrice
• Création d’une matrice :
M = [1.2 3.14 5; 4 3.6 7 ];
• Pour des matrices de taille plus
importantes :
inf : pas : sup
Exemple : M = [3:7; 1.5:0.5:3.5];
L’un des principaux intérêts de Matlab :
 La manipulation directe de matrices sans passer par
la manipulation des composantes :
Exemple : C = A * B;
 Rajouter des fonctions spécialement dédiées à différents
domaines d’application : Traitement du signal, Traitement
d’images, réseaux de neurones,..
boites à outils ou Toolbox
• Pour écrire un programme Matlab, il suffit
de placer les instructions dans un fichier
portant l’extension .m.
• Il est conseillé de commencer chaque
programme par les lignes suivantes :
close all
clear
3. Formats d’image en mémoire :
 Images binaires : éléments valent 0 ou 1.
Exemple
 Images d’intensités : élément est un réel
compris entre 0 et 1.
Exemple
 Image couleur RGB
Superposition de 3 couleurs de base.
Exemple : Représenter une image couleur
par trois matrices ou chaque matrice
correspond à une couleur de base.
Les intensitées des
images R, G et B
Lumière blanche
Lumière rouge
Lumière verte
Lumière bleue
Les images H, S et V
Lumière blanche
Image de teinte (H)
Image de saturation (S)
Image d’intensité (V)
 Images couleur indexées : schéma d’une
image indexée.
Exemple
4. Numérisation
La numérisation est la conversion du
signal électrique continu (dans l ’espace
ou temps et en valeur) en un signal
numérique discret (image numérique).
Numérisation
Scanner
Image réelle
Caméra numérique
Numériseurs
Numérisation = échantillonnage + Quantification
• A chercher pour numériser une image :
– Combien d ’échantillons ?
– Quantification: Combien de niveaux discrets
sont suffisants pour couvrir la plage de
l’image ? (en bits).
– Tessellation : Forme des pixels ?
D’un signal continu (analogique) à un signal discret (numérique):
3 étapes
Chaîne de numérisation d’un signal temporel (1-D)
Signal continu (référence)
Signal échantillonné
Étape 1
Codage (4 niveaux  2bits)
Signal quantifié (4 niveaux)
Étape 2
Étape 3
D’un signal continu (analogique) à un signal discret
(numérique): 3 étapes
: l’évolution du signal suivant la dimension
« t » (ici le temps) est représentée par un nombre fini de ses
valeurs. Les valeurs du signal sont prises régulièrement à une
période d’échantillonnage Te.
 Échantillonnage
: l’amplitude du signal échantillonné est
représentée par un nombre fini de valeurs d’amplitude (niveaux
de quantification).
 Quantification
 Codage
: les niveaux de quantification sont codés sous la
forme d’un mot binaire sur k bits ( 2k niveaux possibles).
CAS DES IMAGES
images sont des signaux 2-D, l’échantillonnage se
fait selon les dimensions spatiales « x » et « y » (et non
pas selon le temps comme précédemment).
 Les
 Le
nombre de niveaux de quantification de la
luminance est généralement de 256, chaque niveau étant
alors codé sur 8 bits (code binaire naturel).
Numérisation :
Tessellation (pavage) : C’est la forme du
pixel.
Le pavage est «choisi» pour couvrir au
mieux le plan image.
Le pavage est donc une partition du plan image
qui, une fois discrétisé, résulte en un maillage qui
représente la grille d’échantillonnage.
5. Changement de format Matlab : les fonctions pour
passer d’un format à un autre :
 indexé - intensité :
I = ind2gray(X,map);
 Indexé - RGB
:
[R,G,B] = ind2rgb(X,map);
 RGB - indexé
: [X, map] = rgb2ind(R,G,B);
 RGB - intensité
:
I = rgb2gray(R,G,B);
Exemple : Traduire l’image indexée en image
intensité et en image RGB.
Généralement, Le passage de la couleur à
l’intensité est obtenu par la formule :
Intensité = α.r + β.g + γ.b
avec
α+β+γ=1
6.
Formats d’image sur disque

Le format Matlab ( fichiers *.mat )

Les formats graphiques standard : les formats jpeg et tiff (
fichiers *.jpg et *.tif)
pour le choix d’un format :
•
Format tiff
: images binaires ( compression
parfaite )
•
Format jpeg
: images de scènes réelles
•
Format matlab : tout type d’image (sans compression),
lorsque l’on souhaite éviter toute
dégradation
Format des images: JPEG
Format JPEG (Joint Photo Expert Group)
Nb. couleurs : 16 millions (vraies couleurs)
Compression avec perte : Le taux de compression
peut varier de 1% (meilleure qualité) à 99% (moins
bonne qualité).
Animation : Non
Beaucoup utilisé sur Internet pour sa taille
mémoire réduite.
Format des images : GIF
Format GIF (Graphics Interchange Format)
Nb. couleurs : 256 couleurs avec palette
Compression avec perte : Compression
sans perte
Animation : Oui
Ce format est très utilisé sur Internet.
• Exemple : ( Négatif d’une image )
Écrire un programme qui lit une image
couleur au format jpeg, puis la convertit en
image d’intensité. Visualisez cette image.
Ensuite, construire le négatif de l’image
(inversion des niveaux d’intensités) et
visualiser le résultat.
7. Analyse élémentaire d’histogramme
7.1. Histogramme
 Pour chaque niveau de gris, compter le nombre de pixels s’y référant
 Pour chaque niveau, tracer le graphe en bâton du nombre de pixels
(possibilité de regrouper les niveaux proches en une seule classe)
Image de 256  256 pixels,
codés chacun sur 8 bits
Population de pixels pour chaque
niveaux de gris [0 ; 255]
Exemple simple de calcul d’histogramme pour une image
Image « A » en
niveaux de gris
Matrice des valeurs de luminance
des pixels de l’image « 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
1
0
0
2
2
0
1
0
1
0
0
2
2
0
1
1
1
1
0
2
2
0
0
0
0
0
0
2
Histogramme de
l’image « A »
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.
Exemple :
Afficher l’histogramme de l’image de
l’exercice , et celui de son négatif, sur 256
niveaux. Expliquer le résultat obtenu
7.2. Égalisation d’histogramme
Il s’agit de déterminer une transformation f des niveaux
d’intensité qui rend l’histogramme aussi plat que possible.
Objectif : Améliorer certaines images de mauvaises qualité.
 Mauvais contraste
 Images trop sombres ou trop claires
 Mauvaise répartition des niveaux d’intensité
Exemple