PIF-6003 Sujets spéciaux en informatique I

Slides:



Advertisements
Présentations similaires
Traitement d’images : concepts fondamentaux
Advertisements

Traitement d’images : concepts fondamentaux
3. Analyse et estimation du mouvement dans la vidéo
4. Descripteurs du contenu

Xialong Dai, Siamak Khorram
Traitement d’images : briques de base S. Le Hégarat
Cours de Segmentation PLAN Introduction
Traitements d'images et Vision par ordinateur
Analyse d’images Détection de contour Cours 8
Le filtrage d’images.
TRAITEMENT D’IMAGE SIF-1033.
SUJETS SPÉCIAUX EN INFORMATIQUE I
La segmentation
Découpage d’images GIF-4105/7105 Photographie Algorithmique
N Découverte n Présentation des équipes et des projets n 3- Extraction des caractéristiques u 3.1 Caractéristiques 3D et 2D u 3.2 Arêtes u 3.3 Gradient.
N Découvertes n Présentation des équipes et des projets n 3- Extraction des primitives u 3.1 Caractéristiques 3D et 2D u 3.2 Arêtes u 3.3 Gradient et arêtes.
Algorithmes d ’approximation
Projet Traitement d'images en C
I. Définitions & classification II. Approche fonctionnelle
TRAITEMENT D’IMAGE SIF-1033.
PIF-6003 Sujets spéciaux en informatique I
SUJETS SPÉCIAUX EN INFORMATIQUE I
TRAITEMENT D’IMAGE SIF-1033.
SIF-1033 Traitement d’image
SUJETS SPÉCIAUX EN INFORMATIQUE I
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
Le filtrage d’images.
Serrure biométrique Reconnaissance dempreintes digitales Raphaël FROMONT – Pascal GRIMAUD – Nicolas MUNOZ Tuteur : M. Patrick ISOARDI.
Cours #9 Segmentation Découverte 4- Segmentation Introduction
TRAITEMENT D’IMAGE SIF-1033.
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
SIF-1033 Traitement d’image
Patrick Hébert Génie électrique et génie informatique Université Laval
Projet de session – SCG-67210
Détection de contours automatique et application aux images réelles
Projet Télédétection Vidéo Surveillance Deovan Thipphavanh – Mokrani Abdeslam – Naoui Saïd Master 2 Pro SIS / 2006.
Deux sujets traités La segmentation d’images
Approche naïve de la résolution.
INF-1019 Programmation en temps réel
Segmentation par analyse d’une image de gradient (ligne de partage des eaux) par fusion de régions dans un graphe par méthode variationnelle (Mumford.
Monitoring Détection de séquences vidéo en temps réel dans une grande base de données Julien Law-to 23/07/2004.
Segmentation.
Module 4: Le filtrage d’images. Objectifs du filtrage.
Graph cuts et applications
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
SEGMENTATION EN REGIONS
Modèles Mathématiques et représentation discrètes pour la description des images couleur Luc Brun.
TRAITEMENT D’IMAGE SIF-1033 Segmentation des images par détection de contours et d’arêtes u Détection des contours et arêtes u Dérivée première (gradient)
INF-1019 Programmation en temps réel
Apparence globale 1 image = 1 vecteur Base apprentissage Rotation –capture les variabilités Troncature –Quelques coefficients Représentation linéaire Espace.
Introduction au Traitement d’image
TICE 2 ième Semestre TD6 - Récapitulatif. Mars 2006TICE 2ième Semestre - Révisions2 Evaluation La semaine prochaine Deux demi groupes, minutes d’examen.
SUJETS SPÉCIAUX EN INFORMATIQUE 1
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
INF-1019 Programmation en temps réel
INF-1019 Programmation en temps réel
SIF1033 TRAITEMENT D’IMAGE
PROGRAMMATION SCIENTIFIQUE EN C PRO Résolution de système d’équations non- linéaires (racines d’équations) u Méthode de la bissection u Analyse.
Mathématiques pour Informaticien I
Suivi d’Horizons Sismiques
Interfaces perceptuelles Interaction avec une caméra.
Traitement d’images 420-D78-SW A15 Semaine 02.
Partie II : Segmentation
Traitement du signal (images) u Sujets –Détection des droites –Transformée de Hough (espace paramétré) *avec la pente et l’ordonnée à l’origine *avec.
PROGRAMMATION SCIENTIFIQUE EN C
Exemple et critique d’un système de vision simple Patrick Hébert (dernière révision septembre 2008) Référence complémentaire: Shapiro et Stockman: chap.
Filtrage des images.
SIF-1033 Traitement d’image
Transcription de la présentation:

PIF-6003 Sujets spéciaux en informatique I Détection des contours et arêtes Dérivée première (gradient) Dérivée seconde Laplacien Laplacien de la gaussienne Filtre de Canny Détection de régions Lectures: Notes de cours

Détection des contours et arêtes (basée sur les dérivées) 00 FF 00 Image prof il d’une ligne horizontale (dérivée première) (dérivée seconde) (a) ( b) Figure 7.4 [rf. GONZALEZ, p. 417]

Dérivée première (gradient) | Gx | + | Gy | -1 1 -2 2 | Gy | 1 -1 2 -2 | Gx | Figure 7.6 [rf. GONZALEZ, p. 421]

Dérivée seconde (Laplacien) Le calcul du laplacien découle de la forme suivante: La forme digitale est donnée par: -1 4 z3 z9 z2 z8 z1 z7 z6 z5 z4 Cette méthode est sensible au bruit

Dérivée seconde (Laplacien) Le laplacien de la gaussienne permet de corriger les problèmes de sensibilité au bruit de la méthode du laplacien Le laplacien de la gaussienne prend la forme:

Dérivée seconde (Laplacien) Nous utilisons la forme:

Dérivée seconde (Laplacien de la gaussienne) Figure 7.8 [rf. GONZALEZ, p. 423]

Dérivée seconde (Laplacien) Le résultat de la convolution f *g’’ est la dérivée seconde de l’image Il faut alors localiser les passages par zéro de la dérivée de l’image pour permettre la localisation des contours dans l’image Pour localiser les passages par zéros nous utilisons une petite fenêtre de 1 X 2 pour localiser les passa-ges par zéros verticaux et une de 2 X 1 pour ceux horizontaux

Dérivée seconde (Laplacien) Par la suite nous parcourons l’image des dérivées secondes et effectuons les tests suivants: j j+1 SI ((((f*g’’)(i,j) > 0) ET ((f*g’’)(i,j+1) < 0)) OU (((f*g’’)(i,j) < 0) ET ((f*g’’)(i,j+1) > 0))) ALORS Passage par zéro (contour vertical) i j SI ((((f*g’’)(i,j) > 0) ET ((f*g’’)(i+1,j) < 0)) OU (((f*g’’)(i,j) < 0) ET ((f*g’’)(i+1,j) > 0))) ALORS Passage par zéro (contour horizontal) i i+1

Laplacien de la gaussienne (exemples) Image originale (320 X 320 pixels) Convolution de l’image avec {Laplacien de G} où w2-D = 8 (montre seulement les  passages par 0 en noir) Convolution de l’image avec {Laplacien de G} où w2-D = 8 (valeurs positives en blanc et négatives en noir) Convolution de l’image avec {Laplacien de G} où w2-D = 8 (0 apparaissant en gris) Figure 2-12 [rf. MARR, p. 58]

Exemple de détection de contours /u/dmatensr/meunier/images/riviere.rast

Filtre de Canny Étape 1: Calcul des dérivées Horizontale et Verticale d I(x,y)/dx d I(x,y)/dy

Filtre de Canny Étape 2: Calcul de l’amplitude du gradient et l’orientation mag(I(x,y)) = ((d I(x,y)/dx)2 + (d I(x,y)/dy)2)1/2  = tg-1(d I(x,y)/dy / d I(x,y)/dx) est l’orientation de la normale au contour: Significatif seulement quand I(x,y) est non nul (proche du contour) Amplitude du Gradient

Filtre de Canny Étape 3: Éliminer les pixels ne correspondant pas à des maximas: Un pixel a une réponse maximale si ces deux voisins selon l’axe de la normale ont une réponse inférieure Étape 4: Seuillage par hystérésis a) Si mag(I(x,y)) > Seuil 1  1 pixel de contour b) Suivre le contour TTQ mag(I(x,y)) > Seuil 2 Produit des contours assez continus Seuil 1 est souvent fixé à 2 * Seuil 2 Les pixel non-max sont mis à 0

Filtre de Canny Exemple d’utilisation du filtre de Canny (Utilisation de la fonction cvCanny() dans OpenCV)

Filtre de Canny Exemple: edge.c dans le dossier C:\Program Files\OpenCV\samples\c de OpenCV Seuil 1 Seuil 2 Dim Sobel

Filtre de Canny Résultats

Détection de régions Une région est un ensemble de pixels connexes, qui possèdent les mêmes caractéristiques. Connexe : entre n’importe quelle paire de pixels de cette région il existe un chemin formé de pixels appartenant à cette région. Mêmes caractéristiques comme par exemple, même couleur, même texture, même niveaux de gris, couleurs semblables, textures semblables, niveaux de gris semblables, etc.

Détection de régions (approche de Zucker) Une segmentation est une partition de l’image en régions (R1, R2, … Rn) vérifiant un critère d’homogénéité 1.  i : Ri est connexe => fusion des pixels voisins. 2.  i, j tells que i ≠ j : Ri ∩ Rj =  3.  Ri = I 4.  i : P(Ri ) = VRAI où P est un prédicat (homogénéité). 5.  i, j tels que i ≠ j et Ri et Rj sont connexes : P(Ri  Rj ) = FAUX

Détection de régions (approche de Zucker)  La condition suivante a été rajoutée à celles initiales utilisées par Zucker : 6. Choisir la partition S minimisant le coût Q Exemple : P = NgMax – NgMin < 10 et Q = NgMax – NgMin. Prédicat d’homogénéité : Soient Ri et Rj deux régions adjacentes et soit Rk = Ri  Rj. Pour pouvoir fusionner Ri avec Rj au sein de Rk, il faut que le prédicat P(Rk) soit vérifié.

Détection de régions (approche de Zucker)  Différents prédicats peuvent être utilisés comme : P1(Rk ) : max(Rk ) - min (Rk) < S1 P2(Rk ) : | Moyenne(Ri ) - Moyenne(Rj ) | < S2 P3(Rk ) : Variance(Rk ) < S3 P4(Rk ) : Gradient_moyen (Ri , Rj ) < S4 Rappelons que le gradient moyen de la frontière entre Ri et Rj = moyenne des différences des pixels de part et d’autre de la frontière

Détection de régions (partition => split) On commence par une grande région correspondant à l’image au complet. On continue à partitionner jusqu’à ce que la condition 4 soit vérifiée (toutes les régions sont homogènes)

Détection de régions (fusion => merge) On commence par des régions atomiques : comme des pixels, des carrés de 4 pixels, etc. On fusionne jusqu’à ce que la condition 5 soit vérifiée (on ne peut plus regrouper de paires de régions).

Détection de régions (fusion => merge) Algorithme de fusion : Initialisation : partitionner l’image en petites régions calculer les attributs de chaque région calculer les attributs des couples de régions construire la liste ordonnée des régions à fusionner Tant qu’il y a des régions à fusionner sélectionner le meilleur couple fusionner les 2 régions et mettre à jour les attributs mettre à jour la liste des régions à fusionner

Résumé Segmentation des images par détection de contours et d’arêtes Dérivée première (gradient) Dérivée seconde Laplacien Laplacien de la gaussienne Filtre de Canny Détection de régions