Vous êtes sur la page 1sur 38

Segmentation

Méthode des contours actifs (snake)


Idée: Utiliser des courbes déformables qui sont « attirées » par les formes recherchées
dans l’image.
* Analogie avec la physique: fonction d’énergie à minimiser.

Le « snake » se contracte et s’adapte à la


forme de l’horloge
Segmentation

Contours actifs
L'idée de cette méthode est de déplacer les points pour les rapprocher des zones de
fort gradient tout en conservant des caractéristiques comme la courbure du contour
ou la répartition des points sur le contour ou d'autres contraintes liées à la disposition
des points.
Segmentation
Contours actifs
A chaque itération, l'algorithme va tenter de trouver un meilleur
positionnement pour le contour pour minimiser les dérives par rapport aux
contraintes utilisées. L'algorithme s'arrêtera lorsqu'il ne sera plus possible
d'améliorer le positionnement ou simplement quand le nombre maximum
d'itérations aura été atteint. On utilise les notions d'énergies interne et externe
pour caractériser respectivement la forme du contour et tous les éléments qui
lui sont propres, et le positionnement du contour sur l'image en tenant compte
des lignes de gradient.
Itérations de l’algorithme:
Chaque itération peut se représenter de la manière suivante :
 calcul des énergies interne et externe, caractérisant le contour lui-
même et son positionnement sur l'image.
 pour chaque point du contour, détermination d'une nouvelle position, sur
laquelle le contour devrait mieux minimiser les écarts de contraintes.
 arrangement du contour pour qu'il respecte des contraintes d'écartement
entre les points, de régularité de points ...
Segmentation

Qu’est ce qu’un snake?

• Propriétés intrinsèques • Propriétés locales de l’image


• Longueur, courbure… autour du snake
Segmentation
Contours actifs:
Energie Interne:
L'énergie interne ne dépend pas de l'image ni de la
forme à détourer, elle ne dépend que des points du
contour. Elle regroupe des notions comme la courbure
du contour ou la régularité d'espacement des points.
Energie Externe:
L'énergie externe correspond à l'impact du contour sur
l'image. Pour la calculer, il faut considérer l'opposé de
la valeur de son gradient (ou de toute autre
représentation mettant en jeu les contours à épouser)
en chaque point du contour. Cette énergie externe doit
théoriquement être minimale si le contour épouse
parfaitement la forme à extraire.
Segmentation
Contours actifs
Comportement dynamique du snake?

Minimiser l’énergie totale (interne + externe)

F  E
Calculer les forces à appliquer à chaque point de contrôle de telle
sorte que l’énergie soit minimisée
 E ( x, y )
 Fx  x

 Fy  E ( x, y )
 y
Segmentation
Contours actifs
Exemple d’énergie INTERNE: Energie de contraction élastique

n i-1

Eelastic  K1   Pi  Pi 1
2 Forceforce
élastique
Elastic on sur
i le point
along deline
this contrôle
i
i 1

i i-1

FelasticX ,i  2  K1    xi 1  xi    xi 1  xi  

FelasticY ,i  2  K1    yi1  yi    yi 1  yi  
Comportement: tend à rétrécir le snake, tout en maintenant une répartition homogène
des espaces entre les points de contrôle. Forme limite: le point.
Segmentation

 Exemple d’énergie INTERNE: Energie de courbure


n 1
Ecourbure  K 2   Pi 1  2 Pi  Pi 1
2
Tend à redresser le snake et à
i 1
limiter la courbure. Forme
limite: le cercle

 Exemple d’énergie EXTERNE (Image):

Zones brillantes ou sombres: E ext   I


2
Contours en tant que maxima de la norme du gradient: Eext   I
 
Répulsion d’une zone: Eext (x)   2
1 x  
Segmentation

Energie élastique

Energie de courbure

Zones brillantes
Compression

Objectif:
 Réduire le volume de données nécessaire au codage d'un signal
numérique
 Pour faciliter son stockage ou sa transmission par réseau.
Principe:
 Détection de redondances dans le signal
 Un algorithme de compression permet le codage réduit du
signal
 Un algorithme (inverse) de décompression permet d'exploiter
le signal
Types de compressions:
 Compression sans perte (ou non-destructive, i.e. codage ou
compactage):
 Le signal obtenu après décompression est strictement identique à l'original
 Utilisation : fichier exécutable, fichier texte
 Compression avec perte (ou destructive, ou avec dégradation) :
 Le signal obtenu après décompression diffère (légèrement) de l'original
 Utilisation : image, son, vidéo
 Que perdre ?
Compression

Notations:

Mesures de performance
Compression

Sans perte (codage) Avec perte

● delta ● par moyennage de blocs


● codes à longueur variable : VLC ● par transformation linéaire
préfixé, Shannon-Fano, Huffman optimale ou de Karhunen-Loeve
● codage arithmétique (KLT)
● à base de dictionnaire : Lempel-Ziv ● par transformée en cosinus
Exemples Perte ou sans perte
(LZ77, LZW) ● par décorrélation : Run- discrète : JPEG ● par transformée
Length Encoding (RLE), codage prédictif en ondelettes : JPEG 2000
sans perte ● par quantification :
quantification scalaire ou
vectorielle
● par détection de motifs images
redondants (fractale)

● Taux de compression limité ● Bon taux de compression


Remarques ● Aucune perte d'information ● Perte d'information
Compression

Compression des principaux formats d'images bitmaps

TIFF = Tag(ged) Image File Format ; GIF=Graphics Interchange Format ; JFIF = JPEG
File Interchange Format ; PNG = Portable Network Graphics. CMYB (fr. CMJN) =
Cyan, Magenta, Jaune, Noir ; ndg=niveaux de gris. Canal α: permet la transparence.
Compression
Codage RLE
 Codage par plage « Running Length Encoding »
 Recherche de séquences de données redondantes (ex. niveaux
identiques).
 Codage de la valeur et du nombre de répétitions :

Avantage: Algorithmes de compression et décompression très simples et rapides.


Limites:
 Efficace seulement pour de nombreuses et longues plages constantes. Cas des images de
synthèse simples ; peu adapté aux photos. Utilisé ponctuellement dans de nombreux
formats (BMP, JPG, TIFF, PCX, ...).
 Nécessite de fixer un maximum pour la longueur des plages (ex. 255).
Compression
Codage RLE
 Amélioration: décomposition en plans de bits
Les plages apparemment uniformes présentent en fait de faibles variations
Compression
Compression
Codage de Huffman
 Principe
Coder les valeurs avec un nombre de bits différent. Code (utilisant des mots) à longueur variable
« Variable Length Coding », dit aussi codage entropique « Entropy coding ». Plus une valeur apparaît
fréquemment, plus le nombre de bits utilisés pour la coder est petit (i.e. plus son code est court).
 Algorithme de Huffman : Codage
Phase 1 : Construction de l'arbre.
1. Trier les différentes valeurs par ordre décroissant de fréquence
d'apparition table de poids.
2. Fusionner les deux poids minimaux dans un arbre binaire et
affecter leur somme à la racine.
3. Réordonner la table de poids par poids décroissants.
4. Recommencer en 2. jusqu'à obtenir un seul arbre.
Phase 2 : Construction du code à partir de l'arbre obtenu dans la
phase 1.
À partir de la racine, attribuer des 0 aux sous-arbres de gauche et
des 1 à droite.
Compression
Codage de Huffman
Compression
Codage de Huffman
Compression
Compression
Transformée en Cosinus Discrète DCT
Compression
Compression
Compression
Compression
Compression
Compression
Compression
Compression
Compression
Compression
Compression JPEG
Généralités :
 JPEG (Joint Photographic Expert Group) : standard depuis 1992.
 Images en niveau de gris et couleur jusqu'à 24 bits, de qualité photographique.
 Nombreux domaines d'applications : photo/vidéo en MM, astronomie,
 Méthode basée sur une transformation (DCT 2D).
 Ratio de compression nettement plus élevé que sans perte (1:25
acceptable).
Distorsion:
 Perte irréversible artefacts de compression
 Minimiser la distorsion perceptible
 Choix de perte basés sur des expériences psychovisuelles
Dégradation uniforme de l'image
Pas de limite à la compression (choix utilisateur fonction de l'application)
 Sources de perte lors de la compression JPEG
 Quantification des coefficients de la DCT (+ éventuellement des couleurs)
 Arrondis de nombres réels en entiers
Compression
Compression
Compression
Compression
Compression
Compression
Traitement d’image
Références:

• Manzaner: ensta paris-tech


• Olivier Losson: univ-lille1
• Caroline Petitjean: Univ-Rouen
• Applet de démo, par C. G. Jennings
http://cgjennings.ca/toybox/hjpeg/index.html
• Cours de D. Marshall (U. Cardiff)
http://www.cs.cf.ac.uk/Dave/Multimedia/PDF/

Vous aimerez peut-être aussi