Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% ont trouvé ce document utile (0 vote)
28 vues244 pages

ReconnaissanceFormesImage-MasterRecherche-GL-1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 244

RECONNAISSANCE DE FORMES

& IMAGES

Asma Ben Abdallah


Pr. en Informatique
Master de recherche GL-1

AU 2023-2024
Objectif du cours :

o Présenter les concepts de base de l’analyse d'images


et la reconnaissance des formes

o Préparer les prérequis pour assimiler les concepts liés à


la vision d’ordinateur et à l’apprentissage machine.

2
PLAN DU COURS

Partie 1 : Bases du traitement d’image

Partie 2 : Amélioration d’image

Opérations ponctuelles sur l’image


Contraste, brillance
Histogramme et traitement à base d’histogramme
Seuillage et inversion

Opérations locales sur l’image


Convolution numérique discrète
Filtres passe bas usuels et lissage
Contour et types de contours
Filtres Passe haut et détections de contours

Partie 3 : Segmentation 3
PARTIE 1 : BASES DU TRAITEMENT
D’IMAGES

4
I. NOTIONS DE BASE

Traitement d'images :

 Remplacer l’observateur humain par la machine en vue


de traiter et analyser finement les phénomènes
enregistrés, les archiver et les illustrer,
 Le but est l 'amélioration des images et l'obtention d'une
plus grande lisibilité,

 il n'y a pas création d'informations, mais mise en


évidence de l'information pertinente déjà présente,

 il facilite les traitements ultérieurs.


5
QU’EST CE QU’UNE IMAGE NUMÉRIQUE?

Image numérique:

C’est une représentation planaire d’une scène ou d’un objet situé généralement
dans un espace 3D.
Image numérique : acquise, créée, traitée ou stockée sous forme binaire

 Acquise par suite à une conversion analogique-numérique


(scanners, appareils photos, caméscopes numériques, cartes d’acquisition
numérisant directement une source comme la télévision).
 Créée par des outils informatiques, via la souris, les tablettes graphiques, ou
par la modélisation 3D (images de synthèse).
 Traitée par des outils informatiques (peut être transformée, nous pouvons
appliquer dessus des filtres variés,…).
 Sauvegardée sur un support informatique (magnétique, magnéto-optique, …).

6
FORMELLEMENT
 Suivant le domaine considéré et les techniques utilisées pour la
traiter, l’image numérique peut être considérée comme :
1. Un signal bidimensionnel à support et à valeurs bornés noté A[i,j]
avec [i,j] NxM et 0<=i<=N-1 ; 0<=j<=M-1.

 L’image est le résultat de l’échantillonnage du signal continu A(i,j).

 s=[i,j] désigne un site de coordonnées [i,j] dont la valeur notée A[s] ou


A[i,j]. On appelle pixel le couple(s, A[s]).

Exemple :
- Signal bidimensionnel : une image possède deux dimensions: largeur et hauteur.
- Signal fini : une image possède des dimensions finies
exemple : 640x480, 800x600 points (pixels)…
- Signal échantillonné : les pixels d’une image sont régulièrement espacés sur une grille
carrée.
- Valeurs quantifiées : les valeurs des pixels appartiennent à un intervalle borné connu
(par exemple [0,Ng] où Ng est la valeur maximale du niveau de gris, par exemple 7
[0,255]).
FORMELLEMENT

L’image numérique peut être considérée aussi comme


:
o Un processus stochastique A[s]:
 Une variable aléatoire est une fonction définie sur
l'ensemble des éventualités.
 Un processus stochastique représente une évolution,
généralement dans le temps, d'une variable aléatoire.
o Un vecteur aléatoire A=(A1, …., As, …) ou As est
une variable aléatoire associée au site s.

8
FORMELLEMENT
o Une surface (i,j, A[i,j]) de l’espace (N3).

o L’image numérique peut être définie comme une fonction en


deux dimensions f(x,y).
 x et y : coordonnées spatiales
 et la valeur prise par f : l’intensité ou niveau de gris.

9
ANALYSE D’IMAGES (IMAGE ANALYSIS)

 Techniques de traitement d'images : toutes les techniques


ayant pour but la modification des caractéristiques
chromatiques des pixels des images bitmap (Entrée et la sortie
: image).

 Le terme générique analyse d’images désigne l’ensemble


d’opérations allant : de l’extraction de l’information à partir
des images numérique, au traitement, puis à l’intérprétaion
(Entrée : image, Sortie : information ou description ).

 Exemple : les zones d’une image aérienne peuvent être :


 décrites par leur forme (carré, linéique, …)

 étiquettées par les termes : villa, parc, route, …

10
II. Exemples de champs d’application

11
II. Exemples de champs d’application

 Reconnaissance de
caractères Chèques
et Courrier

12
II. Exemples de champs d’application

13
II. Exemples de champs d’application

Imagerie médicale : Aide au diagnostic, reconstruction


3D, …

Reconstruction 3D

14
II. Exemples de champs d’application

o Réalité augmentée
(analyse:
traitement+synthèse)

o Infographie

o Logiciels des traitements


d’images

Bases de données : BDD image, BDD multimédia

15
III. NUMÉRISATION D’UNE IMAGE

 Numérisation d’une image: conversion de son état analogique


en une image numérique.

 L’image numérique est représentée par un tableau


bidimensionnel de valeurs numériques I(i,j). i, j désignent les
coordonnées cartésiennes d’un point de l’image et I(i, j) :
d ésigne son niveau de gris.

 La numérisation d’une image est composée de deux étapes :


 Numérisation des coordonnées : Echantillonnage spatial
(sampling).
 Numérisation des valeurs prises : Quantification
(quantization). 16
III. Numérisation d’une image

17
En 2D, une image numérique est une image échantillonnée et quantifiée
III. Numérisation d’une image
Numérisation - Echatilonage d’un signal : Sur cet exemple, la tension en rouge
est mesurée 5 fois

Pour stocker numériquement un signal (1D),


l'échantillonnage va le réduire à une suite de
points discrets. Par la suite :
 L'information présente sur le point de
capture est la seule enregistrée,
.
 Une fréquence d'échantillonnage très faible
inclut des acquisitions très espacées. Les
détails entre deux positions de capture
seront perdus.

Sur cet exemple, la tension en rouge est mesurée 14 fois

Le signal reconstruit
ressemble très peu au
signal analogique

18
III. NUMÉRISATION D’UNE IMAGE

 Etape-1 : Echantillonnage d’une image


(résolution spatiale).
Discrétisation spatiale d’une image qui consiste à associer à chaque zone
rectangulaire ou carrée R(i,j) d’une image continue une valeur I(i,j) unique.
 La résolution spatiale est le plus petit détail discernable.
 L’échantillonnage dépend de la capacité du capteur,
(nombre de pixels disponible).
 Le sous-échantillonnage consiste à diminuer le nombre d'échantillons
d’une image discrétisée.

19
ECHANTILLONNAGE ET INFORMATION

III. Numérisation d’une image

Illustrations de
l’échantillonnage

20
ECHANTILLONNAGE ET INFORMATION
III. Numérisation d’une image

512*512

512*512 50 * 50

50 * 50

21
ECHANTILLONNAGE ET INFORMATION
III. Numérisation d’une image

 Sur cet exemple (en 1d), le signal échantillonné


« ressemble » à une sinusoïde de fréquence huit fois
plus faible que l’originale.

22
ECHANTILLONNAGE ET INFORMATION
III. Numérisation d’une image
 Aaliasing (2d) : il affecte la fréquence et la direction des structures périodiques.

23
ECHANTILLONNAGE ET INFORMATION
III. Numérisation d’une image

 Etape-2 : Quantification
 La quantification se réfère au nombre de valeurs
différentes disponible que peut prendre I(i,j).
 La résolution tonale est le plus petit changement
discernable.

24
QUANTIFICATION ET INFORMATION
III. Numérisation d’une image

Illustrations de la quantification

25
QUANTIFICATION ET INFORMATION
III. Numérisation d’une image

 La quantification peut induire l’apparition des faux


contours

26
IV. REPRÉSENTATION DES IMAGES

 Point de vue informatique : L’image est un tableau de pixels à deux dimensions


M X N ( M : hauteur, N : largeur).
 Un élément (pixel) est repéré par ses coordonnées (i,j). L’origine du repère image
se trouve en haut à gauche.
 Chaque élément a une valeur entière dans l’intervalle
[Lmin, Lmax]. Cette valeur est codée sur un nombre de bits déterminant la
couleur ou l'intensité du pixel, appelée profondeur de codage (parfois
profondeur de couleur).
 Le nombre de bits requis pour représenter les niveaux de gris dans l’intervalle L
est K. La relation entre K et L est : L=2^k
Par exemple, pour k=1 bit, L=2^1=2 (noir, blanc),
k=8, L=2^8= 256 (256 niveaux de gris),…
 Pour une image ayant une résolution de MxN pixels et une résolution de K bits
(ou de L niveaux de tons), le nombre de bits pour stocker une image est:
b=M X N X K

27
Une image de 64X64 et de profondeur 8 requiert 64*64*8= 32 768 bits
IV. REPRÉSENTATION DES IMAGES

 La surface de l’image numérique est divisée en


éléments de tailles fixes : pixels

 Nous pouvons représenter une image par un


tableau de pixels dont chaque case contient une
valeur codée sur un nombre de bits déterminant la
couleur ou l'intensité du pixel, appelée
profondeur de codage (parfois profondeur de
couleur).

28
IV. REPRÉSENTATION DES
IMAGES

 La résolution spatiale désigne le nombre de pixels d’une image


(résolution spatiale en pixels)
 La résolution en pixels par unité de longueur d’une image
désigne le nombre de pixel par unité de longueur décrivant la finesse
des détails dans une image bitmap. La résolution se mesure
principalement en :
 dpi (ppi) : dot (pixel) per inch (2.54 cm)
 ppm :pixel par millimètre
 Plus le nombre de pixels par inch (pouce) est grand, plus
la résolution est élevée

29
V.1 IMAGES BINAIRES

 Images binaires (noir ou blanc) : 1 bit

30
V.2 IMAGES EN NIVEAUX DE GRIS

 Images en niveaux de gris : codés sur n (2 :8) bits.


 4 niveaux = 2 bits
 8 niveaux = 3 bits
 16 niveaux = 4 bits (Bitmap 16 couleurs ou 16 niveaux de gris). En
stockant 4 bits dans chaque case, il est possible de définir pour
chaque pixel, c'est-à-dire 16 dégradés de gris allant du noir au
blanc ou bien 16 couleurs différente.
 32 niveaux = 5 bits
 64 niveaux = 6 bits
 128 niveaux = 7 bits
 256 niveaux = 8 bits. Images en teintes (ou niveaux) de gris. On ne
code ici plus que le niveau de l'intensité lumineuse, généralement
sur un octet
(256 valeurs).

 La valeur zéro représente le noir


31
et la valeur 255 le blanc par convention
Illustrations d’images en niveau de gris: profondeur de codage
variant de 2 à 8 bits (de gauche à droite, de haut en bas).

32
V.3 IMAGES EN COULEUR

 Plusieurs espaces de codage de couleurs existent :


CMJN, TSL, RVB, …
 L’espace colorimétrique Rouge, Vert, Bleu RVB ou
RGB Red Green Blue) est très utilisé pour le
maniement des images.

 Ce principe de synthèse additive de la couleur : se


retrouve dans la plupart des dispositifs lumineux de
restitution de la couleur : écrans cathodiques (CRT),
écrans à cristaux liquides (LCD), Plasma.
 Les moniteurs d’ordinateur utilisent l’espace RVB
pour l’affichage des couleurs 33
IMAGES COULEURS: L’ESPACE RGB
(RVB)

 L'espace RGB est l'espace vectoriel engendré par les


3 composantes primaires (Rouge, Vert, Bleu).
 Les primaires RVB sont des primaires additives, c’est-à-dire, que les
contributions de chacun sont ajoutés pour créer le résultat. Toute
couleur s’obtient par combinaison linéaire des trois primaires.
 Nuance de gris neutre : est obtenue si les trois composantes ont une
valeur égale. Par exemple : s’ils ont la valeur 255, un blanc pur est
obtenu, 0 pour chacune des composantes donne du noir.

34
IMAGES COULEURS : IMAGES 24 BITS

 3 octets sont utilisés pour coder la couleur. La valeur de


chaque composante couleur est un entier de 0 à 255.
 Le nombre de couleurs différentes dans l’espace RVB est de
256 x 256 x 256 : 16777216 de couleurs.

R G B Couleur

0 0 0 noir
0 0 1 nuance de noir
255 0 0 rouge

0 255 0 vert

0 0 255 bleu
128 128 128 gris
255 255 255 blanc
35
CONVERSION RVB EN NG
 La conversion entre les composantes de couleur RVB (Rouge, Vert, Bleu) et une
intensité en niveau de gris peut se faire de différentes manières.
 Calcul de l'intensité comme la moyenne des valeurs des composantes
RVB:
I= (R+V+B)/3
Où R, V et B sont les valeurs des composantes Rouge, Vert et Bleu respectivement
pour un pixel donné.

 Calcul de l'intensité (niveau de gris) avec des pondérations :


Des pondérations différentes pour chaque composante RVB en fonction de leur
importance relative dans la perception humaine de la luminosité sont utilisées.
Par exemple, les composantes vertes sont souvent perçues comme plus lumineuses
que les composantes rouges et bleues.
Une formule couramment utilisée utilise ces pondérations :
I=0.299 R+0.587 V+0.114 B
36
V.4 IMAGES À PALETTES, IMAGES EN 256
COULEURS (8 BITS)

 But : réduire la place occupée par l'information de


couleur,
 Principe : utiliser une palette de couleurs (ou tables
d’index) « attachée » à l'image : on parle de couleurs
indexées.
 La valeur de chaque pixel renvoie à l'entrée
correspondante dans la palette de couleurs appelée look-
up table (LUT).
 Dans la palette, les couleurs sont complètement
spécifiées.
 La palette ou look-up (LUT) ne permet de sélectionner
qu'un nombre limité de couleurs (256, par exemple). 37
V.4 IMAGES À PALETTES, IMAGES EN 256
COULEURS (8 BITS)

 La conversion d'une image RVB (Rouge, Vert, Bleu) en une image à


couleurs indexées permet de réduire le nombre de couleurs utilisées dans
l'image à un certain nombre prédéfini de couleurs.
 Gain de place: si on considère l’exemple de 256 couleurs
 Pour les coder : la palette occupera 24 bits x 256 entrées. Les pixels de
l'image seront associés à des index codés sur un octet.
 Taille de l’image : 1 octet par pixel + taille de la LUT (un peu plus du
tiers de la place occupée par une image en couleurs 24 bits).
 Il faut noter ici que plus l'image contient de pixels, plus le gain de place
sera plus élevé.
 On peut changer seulement la LUT d'une image en conservant les valeurs
des index de l'image

38
V.4 IMAGES À PALETTES, IMAGES EN 256 COULEURS
(8 BITS)

39
V.5 IMAGES AVEC GESTION DE LA
TRANSLUCIDITÉ

 Canal alpha : un canal supplémentaire


définissant le degré de transparence de l'image.
Il est codé sur un nombre fixe de bits par pixel
(8 ou 16 bits ).
 La translucidité d'un pixel est échelonné
linéairement de l'opacité complète à la
transparence.
 Une valeur de 0 signifie que le pixel est
totalement transparent (invisible), tandis
qu'une valeur de 255 signifie que le pixel est
totalement opaque (entièrement visible). Image sur un fond en damier permet
d’observer la transparence.
 utiledans des domaines tels que la conception
graphique, les jeux vidéo, les effets spéciaux et
la réalité augmentée.
40
VI. TYPES ET FORMATS D'IMAGES

 Une image matricielle (« bitmap » ou « raster ») : est une image


numérique dans un format de données composé d'un tableau de
pixels qui peut se visualiser sur un moniteur d’ordinateur, tout
autre dispositif d'affichage.

 Exemple : images en niveaux de gris ou couleurs de type photo :


GIF, PCX, BMP, JPEG, PPM, PGM…

41
IMAGES VECTORIELLES
 Une image vectorielle, est une image numérique composée
d'objets géométriques individuels (segments de droite, polygones,
arcs de cercle, etc.) caractérisés par différents attributs: de
couleur, de forme, de position, etc.

 Une image vectorielle d’un cercle : peut être définie par les
attributs : position du centre, rayon…

 Un dessin vectoriel est dessiné à chaque visualisation, induisant


des calculs sur la machine.

 L’avantage de ce type d'image est qu’elles occupent peu de place


en mémoire. De plus, elles peuvent être redimensionnées tout en
conservant les informations et sans effet d’escalier (crénelage).

 Ce type d'images est très utilisé dans la génération de schémas


avec certains logiciels de DAO (Dessin Assisté par Ordinateur)
comme AutoCAD ou CATIA
42
 Exemple de formats d’images : SVG, flash, AI, Eps, DXF.
FORMATS D'IMAGES
 La notion de formats d’images est très importante pour le concepteur et l’utilisateur.

 De point de vue concepteur c’est la capacité de son outil à gérer le maximum de


format et à stocker ses résultats sous différents formats lisibles. De côté utilisateur,
c’est son besoin de lire des images quelques soit le format proposé.

 Dans des domaines particuliers les formats sont généralement spécifiques aux
concepteurs pour avoir main mise sur le marché.

 Sur un support de masses (disques ...) les images sont stockées sous la forme de
fichiers qui contiennent :
 Une entête ( Hauteur, Largeur, LUT)
 La valeur des pixels

43
FORMATS D'IMAGES

Il existe deux grandes catégories de format :


 Sans compression :
 PBM Noir et Blanc
 PGM Nivaux de gris
 PPM Couleurs
 BMP format Windows
 Avec compression
 Sans perte (TIFF, PNG, GIF ...)
 Avec perte (JPEG ...)

44
Illustrations de Formats d’Images : PBM, PGM et PPM

"P3" désigne la variante qui stocke les couleurs en texte

brut, (P6" stocke les couleurs en binaire) .


64 64 dimension de l’image

255 : valeur maximale de l’image

45
Illustrations de Formats d’Images : PBM, PGM et PPM

• Le format PBM (Portable Bitmap) est un format d'image permettant de


représenter des images en noir et blanc (monochromes) en utilisant uniquement
des pixels noirs et blancs (ou 0 et 1).
• Variantes du PBM
• Image noir et blanc en format text, chaque pixel est représenté par un
caractère '0' pour noir et '1' pour blanc.
• Image noir et blanc en format binaire : PBM P4 est binaire.

- "P1" format PBM, variante textuelle

- 10 10 dimension de l’image

46
Illustrations de Formats d’Images : PBM, PGM et PPM

Le format PGM est utilisé pour représenter des images en niveaux de gris. Chaque
pixel est représenté par un nombre (généralement entre 0 et 255) indiquant l'intensité
du gris

"P3" désigne la variante qui stocke les couleurs en texte

brut, (P6" stocke les couleurs en binaire) .


64 64 dimension de l’image

255 : valeur maximale de l’image

Le format PPM (Portable Pixmap)


représente des images bitmap en couleur.
Deux variantes:

- PPM P3 : Image en couleurs en texte brut 47


- PPM 6 : Image en couleurs en format
binaire
48
49
50
VII. Opérations Entre images

 Chaque pixel de l’image est caractérisé par sa position (i, j) et son intensité k.

 On peut citer deux types de transformations sur les pixels de l’image :


 les transformations géométriques modifiant les positions des pixels,
 les transformations radiométriques modifiant les intensités des pixels.

 Il est possible d’effectuer sur l’image des opérations utilisant ces deux types de
transformation simultanément.

51
VII. Opérations Entre images
A. Exemples de Transformations
Géométriques
Comme exemple de transformations géométriques, nous pouvons citer la
transformation affine.

Dans le plan 2D, la translation de vecteur (tx, ty )t , transforme le point P(x, y)


en P '(x ', y ') tel que :

𝑥 ′ = 𝑥 + 𝑡𝑥
𝑦 ′ = 𝑦 + 𝑡𝑦

On peut alors définir


une matrice de
translation T

et l'écriture matricielle
de la translation 52
devient :
VII. Opérations Entre images
A. Exemples de Transformations
Géométriques

53
VII. Opérations Entre images
B. Exemples de Transformations
Radiométriques

Opérations Logiques :
et 0 1 o 0 1
• Opérations réalisées bit par bit sur les images u
0 0 0
• Appliqués à des images en niveaux de gris, les
1 0 0 0 0 1
opérations logiques s’effectuent sur des chaînes de bits:
1 1 1

xo 0 1 - no
r t
0 0 1 0 1
1 1 0 1 0

54
VII. Opérations Entre images
B. Exemples de Transformations
Radiométriques

55
VII. Opérations Entre images
B. Exemples de Transformations
Radiométriques

Opérations Arithmétiques: Addition

 On peut définir la l’addition A pixel à


pixel de deux images f et g par :

A(x,y)=Min(f(x,y)+g(x,y);255)

56
VII. Opérations Entre images
B. Exemples de Transformations
Radiométriques

Opérations Arithmétiques: Soustraction

On peut définir la soustraction S


pixel à pixel de deux images f et g
par :

S(x,y)=Max(f(x,y)-g(x,y);0)

57
VII. Opérations Entre images
B. Exemples de Transformations
Radiométriques
Opérations arithmétiques: Multiplication

 On peut définir la multiplication M d’une images f par un ration par :


M(x,y)=Min(f(x,y)*ration;255)
 La multiplication d’images peut améliorer le contraste ou la luminosité

58

Image originale Masque multiplicateurImage résultat


EXERCICES DE CONSOLIDATION

Exercice-1 : Calcul de la résolution d'une image


Pour calculer la résolution d'une image, deux aspects sont considérés : la résolution
spatiale (nombre de pixels) et la résolution en pixels par unité de longueur (pixels
par pouce ou pixels par centimètre) :
Soit une image I de dimensions 1920 pixels en largeur et 1080 pixels en hauteur.
La taille physique de l'image en pouces (ou centimètres) est de 10 pouces en largeur
et 5.625 pouces en hauteur (1 pouce =2,54 cm).
Calculer la résolution spatiale (en pixels) et la résolution en pixels par pouce (PPP).

Exercice-2 : Conversion Couleur en NG


Supposons que nous avons un pixel dans une image RVB avec les valeurs de
composantes suivantes : Rouge (R) : 120 , Vert (G) : 200, Bleu (B) : 50
Convertir ce pixel en niveaux de gris en utilisant différentes méthodes de
pondération des composantes RVB.
Pour la seconde méthode, utilisez les coefficients de pondération suivants : 0.3 pour
le rouge, 0.59 pour le vert et 0.11 pour le bleu

59
Exercice-3

Soient les valeurs de composantes RVB suivantes pour trois pixels d’une image RVB:
Pixel 1 : (200, 100, 50), Pixel 2 : (50, 150, 200) et Pixel 3 : (100, 200, 150)

Convertir ces pixels en couleurs indexées en utilisant une palette de couleurs avec les
couleurs suivantes :
Couleur 1 : (255, 0, 0) (rouge), Couleur 2 : (0, 255, 0) (vert) et
Couleur 3 : (0, 0, 255) (bleu)

Exercice-4

1. Calcul de l'intensité en utilisant la moyenne simple :


Imoyenne=120+200+503=3703≈123.33 = 123
L'intensité en niveaux de gris est environ 123 (arrondi)
2. Calcul de l'intensité en utilisant la méthode avec
pondération : Ipondéré=0.3×120+0.59×200+0.11×50
= 36+118+5.5=159.5 159 (arrondi)

60
Exercice- 1 : Correction
 Résolution spatiale = Largeur (en pixels) × Hauteur (en pixels) :
Dans notre cas, la résolution spatiale est : 1920 pixels×1080 pixels=2073600 pixels
 Résolution en pixels par pouce (PPP) = Largeur (en pixels) ÷ Largeur (en pouces)
 - La résolution en PPP pour la largeur est : PPP en largeur=1920 pixels/10
pouces=192 PPP
 La résolution en PPP pour la hauteur : - PPP en hauteur=1080 pixels /
5.625 pouces=192 PPP

Exercice- 2 : Correction
1. Calcul de l'intensité en utilisant la moyenne simple:
Imoyenne=120+200+503=3703≈123.33 = 123 .

2. Calcul de l'intensité en utilisant la méthode avec pondération:


Ipondéré=0.3×120+0.59×200+0.11×50 = 36+118+5.5=159.5 159 (arrondi)

61
Exercice-3 : Correction

 Pour chaque pixel dans l'image RVB, il faut trouver la couleur de la palette qui est
la plus proche du pixel en RVB.
 Pour cela une distance euclidienne entre la couleur du pixel en RVB et chaque
couleur de la palette est calculée. La couleur de la palette avec la distance minimale
est choisie.

1) Calcul de la distance euclidienne : La distance euclidienne entre deux couleurs


(R1,G1,B1) et (R2,G2,B2) est calculée comme suit :

2) Attribuer le pixel à la couleur de la palette ayant la plus petite distance.

Exercice-4 : Correction

donc le Pixel 1
Pour le Pixel 1 : est converti en
Couleur 1
 distance à Couleur
P3
1=Racine((200−255)2+(100−0)2+(50−0)2)≈125 #facultative
22
 distance à Couleur 2=(200−0)2+(100−255)2+(50−0)2)≈258 255
 distance à Couleur 3=(200−0)2+(100−0)2+(50−255)2)≈racine 255 0 0 0 255 0
0 0 255 255
(92 025) ≈ 303 255 255
62
PARTIE 2 : AMÉLIORATIONS
D’IMAGES
TRANSFORMATIONS
PONCTUELLES

63
I. Améliorations d’images numériques

But de l’amélioration de l’image

 Faciliter l’interprétation des images par la machine ou par l’humain.


 La manipulation peut se faire dans le domaine spatial ou dans le
domaine fréquentiel.

Améliorer une image, pourquoi :

 Modifier la brillance.
 Augmenter le contraste
 Faire apparaître des régions
 Modifier les niveaux de gris afin de rendre visibles certains détails
…
64
I. Améliorations d’images numériques

Types d’améliorations:
1) Amélioration ou transformation ponctuelle (point-processing, point-par-point).
T est un est un opérateur sur un seul point (point-operator)
2) Transformation Locale.
T est un est un opérateur local (local or neighborhood operator)
3) Transformation Globale.
T est un est un opérateur global

65
I. Améliorations d’images numériques

Transformations ponctuelles

Concepts de Base & Définitions

1) Brillance d’une image ?


2) Contraste d’une image ?
3) Qu’est-ce qu’un Histogramme ? Histogramme normalisé?
4) Opérations ponctuelles d’images modifiant l’histogramme
66
II. Propriétés de l’image
Brillance, Contraste

67
II. Propriétés de l’image
Brillance, Luminosité
o La luminance ou brillance : C’est la moyenne de tous les pixels de l’image

o Ces deux images diffèrent seulement par la luminance


68
II. Propriétés de l’image
Contraste
Le contraste peut être défini comme :
o Le rapport entre les luminosités maximale et minimale d’une
image.
o Ou l’écart-type des variations de niveaux de gris dans
l’image.
Plusieurs formules existent, par exemple :

écart-type des variations de


niveaux de gris dans l’image

variation maximale entre


valeurs de niveaux de gris
min et max dans l’image

o Un contraste élevé donne de l'impact à une image et permet d'en


distinguer les détails, particulièrement dans les zones sombres.
69
o L’écart type des valeurs de pixel dans l'image, est utile pour comprendre
la répartition et la variation des intensités de gris dans l'image.
Exemple : Brillance, Contraste
A. Soit l’image I1x3 composée d’ 1 ligne et de 3 colonnes:

80 100 120 1
Imoy = 80 + 100 +
1∗3

1 3 120−80
𝐶= 𝑗=1 𝐼 1, 𝑗) − Imoy)2 C=
1∗3
𝟏𝟐𝟎+𝟖𝟎
1
= 80 − 100)2 + 100 − 100)2 + 120 − 100)2)
3 40
= = 0,2
1 1 𝟐𝟎𝟎
= 3
20)2 + 0)2 + 20)2 = 3
20)2 + 0)2 + 20)2)
𝟖𝟎𝟎
=
𝟑

B. Soit l’image J1x3 composée d’ 1 ligne et de 3 colonnes:


1
40 100 160 Imoy = 1∗3 40 + 100 + 160 = 100
160−40
𝐶= C=
𝟏𝟔𝟎+𝟒𝟎
1
3
40 − 100)2 + 100 − 100)2 + 160 − 100)2 120
= = 0,6
1 𝟕𝟐𝟎𝟎 𝟐𝟎𝟎
= 3
60)2 + 0)2 + 60)2 = 𝟑

70
III. Histogramme d’une image

71
III. Histogramme d’une image

 L’histogramme décrit la répartition des niveaux de gris de l’image


 Mais ne donne aucune information spatiale
 Deux images différentes (en termes de contenu sémantique) peuvent
aussi avoir le même histogramme

72
III. Histogramme d’une image
Analyse et Transformation

 Rehaussement de l’histogramme H
L’allure de l’histogramme peut nous renseigner sur des images trop
sombres, trop claires, mal contrastées, …
 On peut agir sur la forme de l’histogramme
 Transformation linéaire
 Egalisation

73
IV. Améliorations ponctuelles modifiant
l’histogramme

 Modifications d’histogrammes
 Modification de la luminance k
T : k → k’ = T (k)
 Plusieurs fonctions T. Chacune ayant un impact différent sur l’image

 Comme exemple de transformations ponctuelles modifiant l’histogramme citons :

1) Translation de l’histogramme
2) Normalisation de l’histogramme
(Expansion ou étirement )
3) Egalisation de l’histogramme
4) Seuillage
5) Inversion d’image

74
Translation de l’Histogramme
 Modifier la luminosité de l’image sans en changer le contraste
 Résultat : image plus claire ou plus sombre
 On peut écrire: I’(i,j)= I(i,j) + t

75
Expansion (Etirement) de
dynamique

76
2.Expansion (Etirement) de
dynamique
TRANSFORMATION LINÉAIRE

- Une image à haut contraste a un histogramme bien réparti.


- Pour changer le contraste, on applique une transformation affine sur les
niveaux de gris.
- On cherche à obtenir une courbe monotone occupant toute la plage de
dynamique de l'image (exemple 0,255).
- Au cas où la plage d'entrée est plus petite que l'intervalle [0,255], le
contraste de l'image est augmentée.

77
Transformation Linéaire
 Pour changer le contraste, une transformation affine sur les niveaux de gris
est appliquée comme suit : 𝐿−1
𝐼′ 𝑖, 𝑗 = 𝐼 𝑖, 𝑗 − 𝐼𝑚𝑖𝑛)
𝐼𝑚𝑎𝑥 − 𝐼𝑚𝑖𝑛

Exemple: L=256 (Profondeur Codage de 8 bits) et m=0

78
Transformation Linéaire

Implémentation, cas k=8 bits:


Pour i=1 à Nlig faire
Pour j= 1 à Ncol faire
I’(i,j)=round(255*(I(i,j)-minI)/
(maxI-minI)
Fin Pour
Fin Pour

79
Etirement: Illustrations

80
Etirement :
Exemple
Etirement:
Supposons que nous
ayons une image en A=Min(I)=50
niveaux de gris avec les B=Max (I)= 150
valeurs de pixels
suivantes :

50  0
50 100 70 70  255* (70-50/150-
120 50 150 50) = 51

Après transformation :
Brillance = 90 100  127
120  178 0 127 51
C1=0,5
150  255 178 0 255

Brillance =
102 81
C1=1
TRANSFORMATION NON LINÉAIRE :
ILLUSTRATION

 L’étirement est une transformation linéaire et ponctuelle.


 D’autres transformations peuvent être appliquées.
 Par exemple, avec un contre-jour, le but est d’atténuer la présence du soleil se trouvant
dans l’axe de l’appareil photo

82
TRANSFORMATION NON LINÉAIRE : CORRECTION
LOGARTITHMIQUE

La correction logarithmique : Cas d’une image caractérisée par une


forte concentration de points sombres ou clairs (proche de 255).
Les pixels seront répartis de manière non linéaire.
Cas d’une image sombre : espacer les valeurs faibles et rapprocher
les valeurs élevées.
Cas d’une image claire : inverser la fonction logarithme.

Icorr(i,j) = round(c. (log(1+I(i,j)))


c : constante de mise à l'échelle
qui peut être utilisée pour ajuster
l'intensité globale de l'image
corrigée.

83
Correction Dynamique de l’Image

84
Correction Dynamique de
l’Image

Dans le cas où l’histogramme initial occupe toute la


plage de dynamique, aucun changement n’est visible

85
3. Égalisation d’histogramme

 Histogramme cumulé : C’est la distribution cumulé des intensités des


pixels d'une image. C’est le nombre de pixels ayant au moins une
intensité lumineuse donnée.
 Egalisation : consiste à rendre le plus plat possible l’histogramme des
niveaux de gris de l’image.
 Elle a pour effet de répartir les intensités des pixels de manière à
maximiser le contraste global de l'image.
 L’égalisation permet d’améliorer la visibilité des détails dans l'image
qui sont masqués par des variations d’intensité de plus grande
amplitude et à plus grande échelle.
 L’image est associée à une modélisation probabiliste. De ce point de
vue, l’histogramme représente la densité de probabilité de la variable
niveau de gris
86
Égalisation d’histogramme

Utilisation équilibrée de la
plage de dynamique de
l'image. Le but étant
d’améliorer la
qualité visuelle de l'image.

87
Cas discret : Exemple d’égalisation
Profondeur de codage : 3 bits, Dynamique=[0,7]
Intensité i 0 1 2 3 4 5 6 7
H(i) 10 8 9 2 14 1 5 2

Hn(i) 10/51 8/51 9/51 2/51 14/51 1/51 5/51 2/51

C(i) 10/51 18/51 27/51 29/51 43/51 44/51 49/51 51/51

k= i après 10/51 18/51 27/51 29/51 43/51 44/51 49/51 51/51


égalisation *7 *7 *7 *7 *7 *7 *7 *7
= 1.37 =2,47 =3,7 =3,98 =5,90 =6,04 =6,73 =7.0
=1 2 4 4 6 6 7 7

88
Cas discret : Exemple d’égalisation

Profondeur de codage : 3 bits, Dynamique=[0,7]

Intensité i 0 1 2 3 4 5 6 7
H(i) 10 8 9 2 14 1 5 2

k = i après 1 2 4 4 6 6 7 7
égalisation
H(k) 10 8 11 15 7

Avant égalisation : 8
classes distinctes
L’égalisation
Après égalisation : 5 réduit le
classes nombre de
niveaux
occupées
89
Correction de la dynamique de l’image:
Pas de changement : l’histogramme initial occupe toute la plage de
dynamique

L’égalisation d’histogramme peut améliorer une image là où la


correction dynamique de l’histogramme est inefficace

90
Egalisation : Illustrations

91
Egalisation : Illustrations

92
93
4. SEUILLAGE

Pourquoi seuiller une image en couleurs ?

•Segmentation: Identifier des objets ou des régions spécifiques dans une


image.

•Binarisation: Transformer une image en niveaux de gris en une image


binaire pour des traitements ultérieurs (comme l'érosion, la dilatation, etc.).

•Simplification: Réduire la complexité d'une image pour en extraire les


caractéristiques principales.

94
4. SEUILLAGE

 Seuillage (thresholding) : traitement ramenant l’image à deux ou quelques niveaux


d’intensité
 Le seuillage binaire (binarization) est défini par la mise à zéro de tous les pixels
ayant un niveau de gris inférieur à une certaine valeur (appelée seuil ou threshold) et
à la valeur maximale les pixels ayant une valeur supérieure.
Seuillage :
 I’(i,j)=255 si I(i,j) > seuil
 I’(i,j)=0 sinon
 Le seuillage (ou binarisation) produit une image binaire contenant des pixels noirs et
blancs.
 Limitation : difficulté réside dans le choix du seuil à adopter.

95
SEUILLAGE : ILLUSTRATIONS
 Voici une image en 256 niveaux de gris et les résultats d'une
opération de seuillage avec les valeurs respectives de seuil de
125 et 200 :

Seuillage :
I’(i,j)=255 si I(i,j) > (seuil
:128)
I’(i,j)=0 sinon

96
SEUILLAGE (3)

 On peut utiliser deux valeurs ( ou plus) de seuil,


respectivement borne inférieure et borne supérieure.
 Les pixels ayant une valeur comprise entre les bornes
sont mis à la valeur maximale et à zéro sinon.

Seuillage :
 I’(i,j)=255 si I(i,j) > seuilBinf et I(i,j)< seuilBsup
 I’(i,j)=0 sinon

Courbe tonale de l’opération de 97


seuillage
SEUILLAGE
 Méthodes de seuillage pour les images en couleurs1.
 Seuillage par composante de couleur:Séparation des canaux: On
sépare l'image en ses trois canaux de couleur (Rouge, Vert, Bleu)
et on applique un seuillage sur chacun d'eux
indépendamment.Combinaison: Les résultats des trois seuillages
sont ensuite combinés pour obtenir l'image binaire finale.Limites:
Cette méthode peut être sensible au bruit et aux variations
d'éclairage.2. Seuillage dans un espace colorimétrique
différent:Conversion: On convertit l'image d'un espace
colorimétrique RGB vers un autre espace (HSV, HSL, etc.) qui
peut être plus adapté au type d'image.Seuillage: On applique
ensuite un seuillage sur la composante qui nous intéresse (par
exemple, la saturation pour détecter les objets colorés).Avantages:
Certains espaces colorimétriques permettent de mieux séparer les
objets de l'arrière-plan.
98
5. INVERSION

 Il s’agit d’ inverser les valeurs des pixels par rapport à la moyenne des valeurs
possibles.
 K’= L-1-K (L est la dynamique de l’image, exemple L=256)

Résultat de l’inversion : est appelé négatif.

Courbe tonale
de l’opération
d’inversion

99
Après
étirement

Après égalisation : Un
cas où le résultat
n’est pas intéressant

100
101
Eléments de réponse

a) B = (10*13 + 30* 3 20*2


+100*2)/20= 23

b) C1= maxi-min/(max+min)= 0.8


C2= 26,66
c) P1=P2=10, C =0;
d) P1=10, P2=100, C= 0,9 (ou 9)

e) B=23, valeur élevée, image sombre


Suggestion : on peut effectuer un
étirement pour mieux utiliser l’échelle
des niveaux de gris

102
103
104
Exercice 3

Soit l’image en niveaux de gris de


taille 6x6 pixels et dont les valeurs
des niveaux de gris sont codés sur
4 bits. Cette image représente une
forme rectangulaire sur un fond

- Calculer et représenter l’histogramme de cette image.


- Calculer l’histogramme normalisé.
- Donner la probabilité pour qu’un pixel de l’image ait un niveau de gris > 10
- Etirer l’histogramme de façon à utiliser toute la plage des niveaux de gris
- Egaliser l’histogramme de façon à utiliser toute la plage des niveaux de gris
- Binariser l’image pour séparer la forme rectangulaire du fond. préciser la valeur
du seuil choisi.
- Inverser l’image I originale

105
PLAN DU COURS

Partie 1 : Bases du traitement d’image

Partie 2 : Amélioration d’image

Opérations ponctuelles sur l’image


Contraste, brillance
Histogramme et traitement à base d’histogramme
Seuillage et inversion

Opérations locales sur l’image


Convolution numérique discrète
Filtres passe bas usuels et lissage
Contour et types de contours
Filtres Passe haut et détections de contours

Partie 3 : Segmentation

106
TRANSFORMATIONS LOCALES
D’IMAGES

CONVOLUTION
FILTRAGE SPATIALE

107
CONVOLUTION NUMÉRIQUE

La Convolution est l'opérateur de base du traitement linéaire


des images et a fait le lien théorique avec les filtres et le
traitement du signal.

108
CONVOLUTION NUMÉRIQUE
D’un point de vue formel :

 Désignons par I une image numérique (fonction d’origine) et par


h une fonction de [x1,x2]X[y1,y2] à valeurs réelles
(h est appelée : masque de convolution, noyau de convolution,
fenêtre, kernel, filtre).
 Filtrer une image I : revient à convoluer sa fonction d’intensité
I(i,j) avec une fonction h(i,j) :

109
CONVOLUTION NUMÉRIQUE
 Un filtre de convolution est une matrice (image) le plus souvent de taille impaire et
symétrique 3x3, 5x5, 7x7, …
 En pratique, la convolution numérique d’une image se fera par une sommation de
multiplications.

110
CONVOLUTION NUMÉRIQUE

111
CONVOLUTION NUMÉRIQUE : R=I*K

R(2,2)= I(1,1)*K(1,1) + I(2,1)*K(2,1) + I(3,1)*K(3,1)


+ I(1,2)*K(1,2) + I(2,2)*K(2,2) + I(3,2)*K(3,2)
+ I(1,3)*K(1,3) + I(2,3)*K(2,3) + I(3,3)*K(3,3)

112
CONVOLUTION NUMÉRIQUE : R=I*K
Le centre de cette de K est déplacée d’un pixel à l’autre sur l’image I

R(2,3)= I(1,2)*K(1,1) + I(2,2)*K(2,1) + I(3,2)*K(3,1)


+ I(1,3)*K(1,2) + I(2,3)*K(2,2) + I(3,3)*K(3,2)
+ I(1,4)*K(1,3) + I(2,4)*K(2,3) + I(3,4)*K(3,3)
113
CONVOLUTION NUMÉRIQUE : R=I*K

R(x,y)=I(x-1,y-1) K(1,1) + I(x-1,y) K(1,2)+ I(x-1,y+1) K(1,3)


+ I(x,y-1) K(2,1) + I(x,y) K(2,2)+ I(x,y+1) K(2,3)
+ I(x+1,y-1) K(3,1) + I(x,y) K(3,2)+ I(x+1,y+1) K(3,3)
114
CONVOLUTION NUMÉRIQUE : R=I*K

R(N-2,M-2)=I(N-3,M-3) K(0,0) + I(N-3, M-2) K(0,1)+ I(N-3, M-1) K(0,2)


+ I(N-1, M-3) K(1,0) + I(N-2, M-2) K(1,1)+ I(N-2, M-1) K(1,2)
115
+ I(N, M-3) K(2,0) + I(N, M-2) K(2,1)+ I(N+1, M-1) K(2,2)
EXEMPLE :

116
CONVOLUTION NUMÉRIQUE : R=I*K

117
MASQUE DE CONVOLUTION

118
119
Filtrage Spatial:

Lissage et détection de bruit


Détection de contours

120
DEUX TYPES POUR LE FILTRAGE SPATIALE

121
FILTRES PASSE-BAS

 But :
 Lissage d’images
 Élimination du bruit

 Principe: INTÉGRATION (Sommation)


 Filtre de moyenne (passe-bas)
 Filtre gaussien (passe-bas)
 Filtre médian (passe-bas non-linéaire),
 ….

122
FILTRES PASSE-BAS

Le bruit dans une image peut être causé par :


 Le moyen d’acquisition.
 Les conditions extérieures d’acquisition
(luminosité, mouvement, …).

123
FILTRES PASSE-BAS

124
FILTRES PASSE-BAS

125
EXEMPLE DE FILTRES MOYENNEUR

126
EXEMPLE DE FILTRES MOYENNEUR

127
FILTRES GAUSSIEN

et un exemple de masque 5×5 discret 128


avec σ=1,4 :
EXEMPLE:
FLITRE GAUSSIEN DE TAILLE 5 ET SIGMA=1

129
EXEMPLE DE FILTRES GAUSSIEN

130
EXEMPLE DE FILTRES GAUSSIEN

131
Le bruit diminue, les faux contours diminuent.

132
Image originale

Filtre : Moyenne Filtre : Gaussien

133
FILTRE MEDIAN : NON LINÉAIRE

134
EXEMPLE DE FILTRES MEDIAN

135
NETTOYAGE DU BRUIT DANS UNE IMAGE

136
137
Transformations Locales d’images
Filtrage Spatial:

Détection de bruit
Détection de contours

138
CONVOLUTION NUMÉRIQUE

La Convolution est l'opérateur de base du traitement linéaire


des images et a fait le lien théorique avec les filtres et le
traitement du signal.

139
Détection de contours
1. C’est une technique de réduction d'information dans les
images.
2. L'image est transformée en un ensemble de courbes ( pas
forcément fermées) formant les frontières de l'image.

3. Les applications en traitement d’images sont diverses,


citons : Reconnaissance d’objets, de formes,
140
reconstruction 3D, Compression d’images, …
Détection de contours : Exemples
d’applications

Détection de visages

Reconnaissance de
caractères : traitement
automatique de
chèques, de courrier, …
141
Détection de contours : Exemples
d’applications

Reconstruction 3D
des images
médicales à partir
d’images 2D 142

Mise en correspondance
Plan
1. Modélisation du contour
1.1 Modèle de contours
1.2 Formulation du problème de détection
2. Filtrage
2.1 Filtrage du premier ordre
2.2 Filtrage du second ordre
3. Post-traitements
143
I. MODÈLES DE CONTOURS : QU’EST CE QU’UN
CONTOUR

144
I. Modèles de contours : Qu’est ce qu’un contour
Un profil d’intensité d’une ligne dans une image est représenté par des
signaux 1D.

145
I. Modèles de contours : Qu’est ce qu’un contour

146
MODÈLES DE CONTOURS

147
DÉTECTION DES POINTS DE CONTOURS

Il existe plusieurs méthodes pour détecter les points de


contours par exemple par dérivées premières et par
dérivées secondes.

Méthodes analytiques:
1) Approches par dérivées premières
2) Approches par dérivées secondes

148
FILTRES DIFFÉRENTIELS
FORMULATION DU PROBLÈME DE DÉTECTION

149
FORMULATION DU PROBLÈME DE DÉTECTION

150
FILTRES DIFFÉRENTIELS
DÉRIVÉE PREMIÈRE

 La première dérivée ou gradient de l’image est


l’opérateur de base pour détecter les contours
dans l’image.

 Gradient de l’image
= 0 si aucun changement de tons
≠ 0 si changement de tons
 Compare deux pixels

151
II. Détection des contours:
Opérateur gradient

 Le gradient de  au point (x,y) est un vecteur à deux


dimensions

 Le filtrage de l’image est effectué selon deux directions


orthogonales : les lignes ensuite selon les colonnes de
l’image.

 Pour chaque opérateur (Filtre), deux masques sont


ainsi utilisées.

152
GRADIENT : NORME ET DIRECTION

153
GRADIENT : NORME ET DIRECTION

154
CALCUL SIMPLE DU GRADIENT

155
GRADIENT : NORME ET DIRECTION

156
GRADIENT (VERSION ÉLÉMENTAIRE 3X3)

157
FILTRE DE ROBERTS

158
Filtre de Roberts

159
Filtre de Roberts

160
FILTRE DE PREWITT

161
162
163
FILTRE DE SOBEL

164
EXEMPLE (SOBEL)

165
166
167
En résumé

• Opérateur de Gradient

168
II. Détection des contours:

DEUXIÈME DÉRIVÉE DE L’IMAGE:


OPÉRATEUR LAPLACIEN

169
169
FILTRES DIFFÉRENTIELS

170
DÉRIVÉES DE L’IMAGE

171
EXEMPLE AVEC UN CONTOUR ‘RAMPE’

172
LE LAPLACIEN

 Le Laplacien est le plus simple opérateur dérivatif


isotropique : c'est un scalaire

 Le Laplacien est un opérateur linéaire à deux


dimensions

 f  f
2 2

 f
2
2 
x y 2

173
LE LAPLACIEN : VERSION DISCRÈTE

 Dérivé partielle seconde de f(x,y) dans la direction


de x
 2f
2  f ( x  1, y )  f ( x  1, y )  2 f ( x , y )
x
 Dérivé partielle seconde de f(x,y) dans la direction
de y
 2f
2  f ( x , y  1)  f ( x , y  1)  2 f ( x , y )
y

 2 f  [ f ( x  1, y )  f ( x  1, y )
 f ( x , y  1)  f ( x , y  1) ]  4 f ( x , y )
174
LE LAPLACIEN : FORMULATION D’UNE VERSION DISCRÈTE

175
LE LAPLACIEN : FORMULATION D’UNE VERSION DISCRÈTE

176
LE LAPLACIEN
 Intensifie les discontinuité de tons
 Résulte en des images avec des arêtes et des
discontinuités grises sur fond noir sans détails

177
COMPARAISON GRADIENT / LAPLACIEN

178
DÉRIVÉES

 Profil horizontal
 Différents types de contours
 Rampe
 Point isolé
 Ligne mince
 Marche (escalier)
 Plusieurs sections
constantes (plats)

179
ILLUSTRATIONS : DÉRIVÉES

 Dérivé première : points forts


 arêtes grossières
 changements brusques (escalier)
 Dérivé seconde : points forts
 détails fins : lignes, points 180
 double aux changements rudes
EXERCICES
Appliquer les 2 masques
Quel est le masque le plus efficace pour la détection des contours ?

181
EXERCICES
Appliquer les 2 masques
Quel est le masque le plus efficace pour détecter les contours ?

182
EXERCICES
Appliquer les 2 masques
Quel est le masque le plus efficace pour détecter les contours ?

183
II. DÉTECTION DES POINTS DE CONTOURS
Le contour se matérialise par une rupture d’intensité dans l’image selon
une direction donnée. Pour détecter les contours, la méthodologie
consiste en deux étapes principalement:

184
184
II. DÉTECTION DES POINTS DE CONTOURS

Etape 1 :

* Localiser et quantifier les contours par un calcul de gradient


ou de Laplacien par exemple, dans des directions privilégiées. Il
repose sur l’étude des dérivées de la fonction d’intensité dans
l’image:
 Les extrema locaux du gradient de la fonction d’intensité
 Les passages par zéro du Laplacien.
* La difficulté réside dans la présence du bruit dans l’image.

18
185
5
II. DÉTECTION DE CONTOURS
II.1 LAPLACIEN
- Calculer le Laplacien en chaque pixel
- En théorie, les points de contours sont les points où le laplacien est nul
- En raison du bruit, en pratique on procède à détecter les changements de
signe du laplacien

La laplacien :
186
Sensible au bruit
Problème de seuillage
II. DÉTECTION DES POINTS DE CONTOURS
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 1)

187
187
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 1)
Une approche pour extraire les contours est de faire le
seuillage pour l’amplitude du gradient.

1. Calculer la norme du gradient en chaque point de l’image,

2. Calculer le contour en utilisant un seuil S pour décider si


un pixel fait partie ou non d’un contour.

Tous les pixels possédant une norme supérieure à un seuil S


sont déclarés appartenir à un contour.

Difficulté : quel seuil choisir ?


- Un seuillage trop bas nous amène à une sur- détection : on
détecte beaucoup de bruit et des contours épais apparaissent
- Un seuillage trop haut amène à une sous-détection :
contours non fermés
188
EXEMPLE DE DÉTECTION DE CONTOURS PAR
SEUILLAGE DU GRADIENT

189
EXEMPLE DE DÉTECTION DE CONTOURS PAR
SEUILLAGE DU GRADIENT

 Le principal inconvénient du seuil avec un simple gradient c’est la


sensibilité au bruit.
 Cette méthode ne fonctionne bien que pour les images sans bruit et
avec de fortes discontinuités.

190
EXEMPLE DE DÉTECTION DE CONTOURS PAR
SEUILLAGE DU GRADIENT
Pour réduire l’effet du bruit: pré-filtrage
1. Filtrer l’image d’entrée avec un filtre Gaussien.
2. Calculer la norme du gradient
3. Calculer 𝒄(𝒙, 𝒚) en utilisant un seuil 𝒔:

191
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 2)

192
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 2 : SEUILLAGE DE L’AMPLITUDE DU GRADIENT )

193
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 2 : SEUILLAGE DE L’AMPLITUDE DU GRADIENT )

194
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 2)
Seuillage global de l’histogramme:

1. Calculer la norme du gradient en chaque point de l’image:


2. Fixer le pourcentage de contours à garder ( exemple 80%)
3. Déterminer le seuil S à partir de l’histogramme cumulé du
module du gradient

195
II. DÉTECTION DES POINTS DE CONTOURS
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 3 : ALGORITHME DE CANNY)

C’est un des algorithmes de détection de contours parmi les plus utilisés.


Cet algorithme possède cinq étapes:
1. Lissage: éliminer le bruit de l’image à l’aide d’un filtre Gaussian.
2. Calcul des gradients: Détecter les contours en utilisant la méthode des
gradients.
3. Suppression des non-maximums: pour détecter les contours filiformes.
4. Double seuillage: pour détecter les contour forts.
5. Seuillage par hystérésis: Éliminer les pixels de contours isolés et les
segments trop petits.

196
196
II.2 SEUILLAGE DU GRADIENT
(MÉTHODE 3 : ALGORITHME DE CANNY)

197
197
Après lissage (Etape 1) de l’image et calcul du gradient (Etape 3), nous
opérons à l’extraction des non-maximum (Etape 3).

Extraction des maxima locaux de la norme du gradient dans la direction


du gradient
Suppression des non-maximums : il s’agit de supprimer de la norme du gradient
toutes les valeurs «faibles», les valeurs qui ne sont pas les plus grandes en
suivant l’angle de leur gradien

198
Extraction des maxima locaux de la norme du gradient dans la direction
du gradient

- Sélectionner les voisins du pixel en utilisant l’angle du gradient.


Exemple : si l’angle est de 90 degrés, les pixels voisins seront auront les
coordonnées (x-1,y) et (x+1,y)
- Pour la valeur de chaque voisin : si la valeur est plus grande que la valeur du
pixel courant, supprimer le pixel courant (attribuer la valeur 0), sinon le conserver

En pratique
On garde le pixel s’il
est supérieur à ces
deux pixels voisins
dans la direction
199
199
considérée
Seuillage par hystéresis

200
SEUILLAGE DU GRADIENT PAR HYSTÉRÉSIS (MÉTHODE 3)
En résumé :

201
202
203
PLAN DU COURS

Partie 1 : Bases du traitement d’image

Partie 2 : Amélioration d’image

Opérations ponctuelles sur l’image


Contraste, brillance
Histogramme et traitement à base d’histogramme
Seuillage et inversion

Opérations locales sur l’image


Convolution numérique discrète
Filtres passe bas usuels et lissage
Contour et types de contours
Filtres Passe haut et détections de contours

Partie 3 : Segmentation

204
Partie 3
Segmentation

205
PLAN
 Qu’est ce que la segmentation
 Approches de la segmentation

 Méthodes de segmentation
 Seuillage
 Croissance de régions (Region growing)
 Décomposition et fusion (Split & Merge )

206
I. QU’EST CE QUE LA SEGMENTATION

•La segmentation d'images est l'un


des problèmes fondamentaux du
traitement d'images.
• Elle consiste à partitionner l'image
en un ensemble de régions connexes
Ri en vue d’extraire des
caractéristiques de haut niveau :
caractéristiques de forme, de position,
de taille, etc.

207
SEGMENTATION: EXEMPLE D’APPLICATION

208
I. QU’EST CE QUE LA SEGMENTATION

 La segmentation d’un point de vue formel, : Traitement de bas niveau dont le but est de
créer une partition d’une image A en sous ensemble de régions Ri.
 La région résultante est un ensemble connexe ayant des caractéristiques communes
(intensité, texture, …)
 La segmentation est liée à la reconnaissance de formes
(quel objets, combien d’objets, …)

209
I. QU’EST CE QUE LA SEGMENTATION-NOTION DE
CONNEXITÉ

• La connexité : propriété de liaison entre deux pixels considérés de la


même région dans une image.
• 4-connexité : deux pixels sont 4-connexes s'ils se suivent sur la
même ligne (respectivement la même colonne).
•Exemple : Dans l’image à droite, un exemple de paires de pixels
connexes : (A,B), (A,C), (A,D) et (A,E).
•A et F ne sont pas 4-connexes.

• 8-connexité : si les pixels se suivent verticalement, horizontalement


ou en diagonale.
•Dans l'exemple ci-dessous, A et F sont 8-connexes.

210
I. QU’EST CE QUE LA SEGMENTATION

NOTION DE CONNEXITÉ :
• Composante k-connexe de l'image : ensemble de pixels tels
que, si l'on prend 2 pixels quelconques dans cet ensemble, on
trouve un chemin k-connexe qui les relie
(e,g k=4, 8).
•Exemple (A,B,C,D,E,F) est une composante connexe

211
I. QU’EST CE QUE LA SEGMENTATION

COMPOSANTE CONNEXE : EXEMPLE

les composantes 4-connexes : les


ensembles 1 à 5,

les composantes 8-connexes sont :

 la réunion des ensembles 1 à 3,


 la réunion des ensembles 4 et 5.

étant donné une famille d'ensembles k-connexes ayant un


pixel p en commun, la réunion de ces ensembles est k-connexe. 212
I. QU’EST CE QUE LA SEGMENTATION

NOTION DE CONNEXITÉ, DISTANCE

213
II. SEGMENTATION RÉGION/CONTOURS

 La segmentation renvoie aux notions


de différence et de similarité. Deux
approches principalement :
 approche contour
 et approche région.
 Ces deux approches sont duales :
chaque région possède un contour et
chaque contour délimite
nécessairement une région.

214
II. SEGMENTATION RÉGION/CONTOURS

La segmentation est basée sur:


 Les discontinuités : contours
 Rechercher les discontinuités entre régions (les changements abruptes,
frontières entre régions…)
 Les zones homogènes : régions
 Rechercher un critère d’homogénéité entre régions (Mêmes couleurs,
textures, intensités, …)
 La segmentation est la répartition d'une image en différentes régions
et/ou contours. Un contour fermé est équivalent à une région

Dualité Régions/Contours

215
II. SEGMENTATION RÉGION/CONTOURS

216
III. MÉTHODES DE SEGMENTATION

Plusieurs méthodes de segmentation :


 Seuillage : segmentation par histogramme

 Croissance de région

 Décomposition et fusion (Split & merge)

 Segmentation basée DL

217
III.1 SEGMENTATION PAR SEUILLAGE

 Méthode simple et très utilisée pour le traitement des images


numériques.

 Ce n’est pas une méthode de segmentation par régions ni par contours

 Approche pixel (ni région ni contour)


 Utilisée souvent en segmentation (avec post-traitements)

 On peut appliquer le seuillage d’une manière :


 Globale : un seuil pour toute l'image
 Locale : un seuil pour une portion de l'image

218
III.1 SEGMENTATION PAR SEUILLAGE

Principe : trouver les déférents modes de l’histogramme, représentatifs


d’autant de classes d’objets dans l’image.

 On peut rechercher par exemple le(s) seuil(s) à partir d’une analyse de


l’histogramme.
 Exemple : Seuillage d’histogramme simple ou multi-seuils
 Le résultat est une image binaire 0 ou 1

Problème : choix du seuil !

219
SEGMENTATION PAR SEUILLAGE
COMMENT DÉFINIR LE SEUIL?

220
SEGMENTATION PAR SEUILLAGE
SEUILLAGE GLOBAL AUTOMATIQUE

221
SEGMENTATION PAR SEUILLAGE
EXEMPLE : SEUILLAGE SIMPLE

222
SEGMENTATION PAR SEUILLAGE
EXEMPLES : SEUILLAGE SIMPLE

223
III.1 SEGMENTATION PAR SEUILLAGE

SEGMENTATION PAR SEUILLAGE MULTI-SEUILS

Seuillage d’histogramme multiple


Cas de deux seuils

224
SEGMENTATION EN PIXELS

Segmentation par seuillage :

+ Très utilisé, temps réel, simplicité


+ Fonctionne bien sur des histogrammes multi-modaux

- Nombre de classes à connaître


- Pas de prise en compte de la composante spatiale
- Les régions produits ne sont pas nécessairement
connexes,

225
III.2 SEGMENTATION EN
RÉGIONS

Objectif : Trouver la partition de l’image tenant compte du double critère :


Homogenéité de la région Ri et Voisinage

1 : tout pixel de l'image appartient à


une région et une seule.

2 : toute région doit être connexe.


La connexité des régions est
induite
par le voisinage défini sur l'image.

3 : chaque région doit être


homogène.

4 : la fusion de deux régions ne doit pas


être homogène

226
III.2 SEGMENTATION EN RÉGIONS
Méthode croissance des régions (Region
growing)

 Dans cette technique, on construit de façon itérative une région


partir d’un ensemble initial (qui peut être réduit à un pixel), qu’on
fait grossir en ajoutant des pixels en fonction de certaines
conditions.

 Ces conditions peuvent être :


 relatives au niveau de gris (ou à la couleur) du nouveau pixel candidat,
comparé au niveau de gris (ou couleur) moyen de la région, …
 Adjacence de pixels

227
III.2 SEGMENTATION EN RÉGIONS - MÉTHODE
CROISSANCE DES RÉGIONS

228
229
230
231
III.2 SEGMENTATION EN RÉGIONS

Méthode croissance des régions (Region


growing) Algorithme croissance de région

232
EXEMPLE
CRITÈRE UTILISÉ : VALEUR MOYENNE
EXEMPLE-1

Parcours des voisins dans les directions : haut, bas, gauche,


droite

 Evaluer le résultat d'une segmentation n'est pas facile :


 Il dépend de l’application
 Il dépend de ce qu’on veut
 Il est subjectif et varie d'une personne à l'autre
 L'ordre dans lequel les régions sont construites, mais aussi 233
l'ordre dans lequel sont ajoutés les pixels dans une région
a une grande influence sur le résultat.
EXEMPLE-2
5 5 100 100
5 5 100 100
Parcours des voisins se fait dans les directions : haut, bas,
5 100 100 20
gauche, droite
5 100 100 22
5 20 22 24
Homogénéité : max-min <=5

Appliquer une segmentation par croissance de


régions sur cette image. première itération :
a) Comme germe de départ que proposez vous Germe de départ ? : ...............,
?
b) Justifier formellement ce choix.
c) Appliquer une segmentation par croissance
de régions sur cette image. Détailler les
résultats de la première, la seconde et la
dernière itération (résultat final de la
segmentation). A chaque itération, préciser le
germe, son niveau de gris et ses coordonnées
234
III.4 SEGMENTATION EN RÉGIONS
DIVISION ET FUSION (SPLIT & MERGE)

235
ETAPE DE DIVISION

236
ETAPE DE DIVISION

237
ETAPE DE DIVISION

238
ETAPE DE DIVISION

239
ETAPE DE FUSION
1 - Sur-segmentation de l’image selon un prédicat très strict
2- regroupement des régions adjacentes selon un prédicat plus lâche

240
ILLUSTRATION 2 : DIVISION ENSUITE
FUSION

241
242
SPLIT & MERGE : CONCLUSION
 Split : la géométrie du découpage impacte fortement le résultat de la
segmentation. Par exemple, le split en quadtree fait apparaître des
régions carrées.
 Merge : le résultat est impacté par l'ordre dans lequel est réalisé le
regroupement des régions. Généralement, les algorithmes
commencent par fusionner les régions les plus petites.
 La segmentation d'une image cause encore aujourd'hui beaucoup de
problèmes :
 Pas de méthode universelle.
 Choix délicat des seeds de chaque région ?
 L'ordre dans lequel les régions sont construites et l'ordre dans
lequel sont ajoutés les pixels dans une région impacte le résultat
final.

243
RÉFÉRENCES

1. Introduction au traitement d'images. Diane Lingrand. Édition Vuibert, 2008.


2. Le traitement des images. Henri Maître. Hermes Science Publications 2002.
3. Analyse d'images : filtrage et segmentation. J.P. Cocquerez et S. Philipp.
Masson 1995.
4. Le traitement des images. I. Bloch, Y. Gousseau, H. Maître, D. Matignon, B.
Pesquet-Popescu, F. Schmitt, M. Sigelle, F. Tupin, tome 2. Version 5.0,
2005. (sur internet ttps://perso.telecom-paristech.fr/bloch/ANIM/poly-anim-
t2.pdf).
5. http://perso.ensta-paristech.fr/~manzaner/Cours
6. https://www.isima.fr/~vbarra/IMG/pdf/diapos_cours.pdf
7. https://perso.limsi.fr/vezien/pdf_cours_ima_jmv.pdf

244

Vous aimerez peut-être aussi