Introduction au
traitement des images
Par
Frédéric Drolet Université Laval Hiver 2006
Plan
Espaces des couleurs
RGB et HSV
Conversions
Filtrage
Convolution
Linéaire vs non-linéaire
Ouverture et fermeture
Détection des arêtes
Introduction aux traitements avancés
3
Espaces des couleurs (1)
Espace RGB:
3 composantes très dépendantes.
Difficulté d’extraire les traits caractéristiques.
Espaces des couleurs (2)
Espace HSV (HSL,HSI):
Séparation de la teinte, de la saturation et de l’intensité.
Plus facile d’extraire les traits caractéristiques.
5
Conversion RGB → HSV
Transformation non-linéaire:
RGB
RGB
RGB RGB
RGB RGB
RGB
RGB RGB
RGB
RGB RGB
RGB
MAX V
MAX
MIN S MAX
B MAX
MIN si MAX
G R
G MAX
MIN si MAX
R B
R MAX
MIN si MAX
B G
H
240 60
120 60
60
Exemple de conversion RGB → HSV
RGB:
H:
S:
V:
7
Conversion RGB HSL →
Transformation non-linéaire:
) 2(
1
12 2
2 )
( 2
12 2
240 60
120 60
60
RGB RGB
RGB RGB
RGB RGB
RGB RGB
RGB RGB
RGB RGB
RGB RGB
RGB RGB
RGB
RGB RGB
RGB
RGB RGB
RGB
MIN MAX
L
L L si
MIN MAX
MIN MAX
MIN MAX
L L si
MIN MAX
MIN MAX
MIN MAX
S
B MAX
MIN si MAX
G R
G MAX
MIN si MAX
R B
R MAX
MIN si MAX
B G
H
Exemple de conversion RGB → HSL
RGB:
H:
S:
L:
9
Conversion RGB HSI →
Transformation non-linéaire:
3 ) (
3 * 1
240 60
120 60
60
B G
R I
B MIN G
S R
B MAX
MIN si MAX
G R
G MAX
MIN si MAX
R B
R MAX
MIN si MAX
B G
H
RGB
RGB RGB
RGB
RGB RGB
RGB
RGB RGB
RGB
Exemple de conversion RGB → HSI
RGB:
H:
S:
I:
11
Filtrage
Buts:
Atténuer et/ou éliminer le bruit.
Détecter les traits caractéristiques.
Linéaire vs non-linéaire:
Linéaires: moyenne, gaussienne.
Non-linéaires: min, max, médiane.
Filtrage – Convolution (1)
Filtre = masque (matrice m x m) convolué sur l’image.
La dimension du masque définit la localité de l’effet de filtrage.
2 2
2 2 2
2 2
, 0
, ,
, 0 0
, , 0
0
, 0
, ,
m m m
m m
m m
m m m
m m
f f
f
f f
f
f f
f
F
13
Filtrage – Convolution (2)
Convolution du masque sur l’image:
2
2 2
2
) ,
( )
, ( )
, (
m
m m
h k m
o o
f i j F I F h k I i h j k
I
Effets de bords:
Pixels à 0 ou 255;
Pixels identiques;
Miroir;
Image périodique;
Ignorer m/2 pixels sur le bord.
Filtre linéaire – Moyenne (1)
1 1
1
1 1
1
1 1
1 9
1
moy F
• Diffuse le bruit (atténuation)
• Perte des fortes transitions (élimine les hautes fréquences)
• Exemple de filtre moyenne 3x3:
15
Filtre linéaire – Moyenne (2)
Exemple: Filtre 3 x 3
→
Filtre linéaire - Gaussienne
Accorde plus d’importance au pixel central
Filtre séparable:
Économie de calcul (filtrage des colonnes et des lignes séparément)
Exemple: filtre 5x5
Normalement: 5x5 multiplications + 24 additions par pixel.
Séparé: 5x2 multiplications + 4x2 additions par pixel.
Atténuation du bruit
17
Filtres non-linéaires
Érosion (min)
Dilatation (max)
Médiane
Élimine le bruit impulsionnel
Préserve les discontinuité
Coûteux en calcul (tri des pixels)
Ouverture (érosion dilatation)→
Fermeture (dilatation érosion)→
Ouverture (1)
Élimine les « pics » (bruit formé par de petits groupes de pixels près du blanc) dans l’image.
L’érosion « gruge » les zones blanches.
La dilatation remet l’image à l’état initial sans le bruit.
La grosseur du bruit éliminé dépend de sa densité et de la taille du filtre.
19
Ouverture (2)
Exemple: Filtre 3 x 3
→
Fermeture (1)
Élimine les « trous » (bruit formé par de petits groupes de pixels foncés) dans
l’image.
La dilatation élargit les zones blanches.
L’érosion remet l’image à son état initial sans le bruit.
La grosseur du bruit éliminé dépend de sa densité et de la taille du filtre.
21
Fermeture (2)
Exemple: Filtre 3 x 3
→
Détection des arêtes (1)
Principe de base: Dérivée mesurant la vitesse de transition des couleurs dans l’image.
Utilités:
Détection de contours
Détection de coins
Détection de régions
Masque approximant la dérivée.
Sensibilité au bruit (filtrer avant).
23
Détection des arêtes (2)
Dérivée en x et en y séparément.
La fusion des deux images obtenues donne le gradient de l’image en tout point:
L’image Is indique l’emplacement des arêtes.
Les directions Iθ sont normales aux arêtes et permettent un traitement plus haut niveau (la détection de coins par exemple).
x y y x
s
I j I
i I I
I I
j i I I
1 2 2
tan )
, (
) , (
Détection des arêtes (3)
Méthodes:
Dérivée standard (demande un filtrage):
y
Tx D
D 1 0 1 ; 1 0 1
Prewitt (filtrage inclus):
1 1
1
0 0
0
1 1
1
; 1
0 1
1 0
1
1 0
1
y
x P
P
25
Détection des arêtes (4)
Méthodes (suite):
Sobel (filtrage inclus):
Laplacien (dérivée seconde)
Détecteur de Canny (plus haut niveau, utilisation de seuils et du voisinage)
1 2
1
0 0
0
1 2
1
; 1
0 1
2 0
2
1 0
1
Sy Sx
Détection des arêtes (5)
Exemple (Sobel):
Ix
Iy
27
Détection des arêtes (6)
Exemple (suite Sobel):
Is
Traitements avancés (1)
Détection de coins:
Arêtes où le gradient est fort dans plus d’une direction.
Utilisation de Iθ.
Mouvement:
Bloc de pixels entourant l’objet observé.
Recherche de l’objet en déplaçant le bloc à l’intérieur d’une fenêtre.
Objet situé dans le bloc de la nouvelle image où la SSD (ou la SAD) est minimale.