Qu’apprend-on dans ce chapitre

Slides:



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

Traitement d’images : concepts fondamentaux
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
Géométrie Différentielle – Cubiques d'Hermite Introduction aux courbes paramétriques et à la géométrie différentielle.
22/10/2011 Inkscape Le dessin vectoriel à portée de tous INKSCAPE Aru2L 22 octobre 2011.
Comparing color edge detection and segmentation methods Projet TIM.
Traitement d’images 420-D78-SW A16 Semaine 02 Plan de leçon  Images : définition  Mat : définition  Filtres de lissage  Les fonctions et méthodes.
Réalisé par R. MARRAKHA. KHAYAR Khayar-marrakh Université Hassan-II Faculté des sciences Aïn chock Casablanca Professeurs assistants - département de physique.
Université Hassan 1er Faculté des sciences et techniques MST Génie biomedical instrumentation et maintenance.
Chapitre 1: Les fonctions polynômes
L'OBJECTIVITE DANS LE TRAITEMENT DES IMAGES PLANETAIRES
Présenté par M. Anis DIALLO
Relativité d’un mouvement
Outils de Recherche Opérationnelle en Génie MTH 8414
Traitements et interprétation des données gravimétriques
Module de formation : mécanique et résistance des matériaux
Traitement des images (Partie 2: segmentation de bas niveau)
Détection de coutours - Exemples élémentaires -
Plan du cours Introduction : création de circuits
Fonctions.
Soit la fonction f (x) = x2 + 1
Plans d’expériences: Plans factoriels
Chapitre 7: L’algèbre des vecteurs
Les Plans d’expériences: Plans Factoriels
Homographies Patrick Hébert & Denis Laurendeau (Dernière révision : septembre 2016)
Mesure de température par radiométrie photothermique
Chapitre : La Pression I. Représentation des forces 1. définition
INTELLIGENCE ARTIFICIELLE
SIF-1033 Traitement d’image
Méthode Taguchy Analyse de la variance Anavar
Détection d’objets (obstacles) avec une seule caméra
Regroupement contextuel de cimes dans les images aéroportées
Méthodologie scientifique
Réseaux de neurones appliqués à la reconnaissance de caractères
Short distance Exposure (Mask Aligner)
Détecteurs et descripteurs
Chapitre 3 : Caractéristiques de tendance centrale
Programmation Android Première application Android
Quoi étudier pour la CD2 Reconnaitre une situation de proportionnalité #19 en mots, graphique, table de valeurs; Calculer une valeur manquante dans des.
Adaptive Neuro Fuzzy Inference System (ANFIS)
Laboratoire A2SI - Groupe ESIEE
Cours de mathématiques
Ruoqi He & Chia-Man Hung
Cycle, Cocycle, Arbre et Arborescence
Transformation linéaires
Cours de physique générale II Ph 12
Question flash TSTI2D.
Présenté par M. Anis DIALLO
SIF1033 TRAITEMENT D’IMAGE
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Les nombres complexes Saison 1 - Épisode 2. Les nombres complexes Saison 1 - Épisode 2.
Le code de Huffman: est une méthode de compression statistique de données qui permet de réduire la longueur du codage d'un alphabet. Le code de Huffman.
Présentation 4 : Sondage stratifié
Présentation 9 : Calcul de précision des estimateurs complexes
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
Détection d’objets (obstacles) avec une seule caméra
Systèmes ADAS: Assistant de contrôle de direction et de voies
Jean-Sébastien Provençal
Reconnaissance de formes: lettres/chiffres
SUJETS SPÉCIAUX EN INFORMATIQUE II
Projection, cosinus et trigonométrie.
Systèmes ADAS: Détection de panneaux d’arrêt
SUJETS SPÉCIAUX EN INFORMATIQUE II
Programmation Scratch
Seconde 8 Chapitre 9: Les droites
Chapitre 12 : Notion de fonction
Elections locales probabilistes
Les données structurées et leur traitement
Dérivation – Fonctions cosinus et sinus
Transcription de la présentation:

Qu’apprend-on dans ce chapitre Pourquoi s’intéresse-t-on aux contours sur une image ; Comment déduit-on les contours d’une image de gradient et comment calcule-t-on cette dernière ; Qu’est ce que la transformée de Hough et à quoi sert-elle ; Qu’est qu’un point d’intérêt et comment le détecteur de Harris les détecte ;

Détection de contours : approche générale Objectif Délimitation des objets Détection de points d’intérêt Méthodes dérivatives À partir du gradient ( vect. 2D), norme et direction Approximation de la dérivée 2nde par le Laplacien Contour = où réside l’information (entropique) f(x) f’(x) f’’(x)

Principe des méthodes dérivatives Laplacien trop bruité pour être utilisé seul Utilisation du gradient Calcul de l’image du gradient Calcul de l’image de la norme du gradient Calcul de l’image de la direction du gradient Seuillage (avec hystérésis) de l’image de la norme du gradient Elimination des non maxima locaux dans la direction du gradient Fermeture des contours Utilisation du laplacien Calcul de l’image du laplacien Calcul de l’image de la norme du gradient Calcul de l’image binaire B des passages par zéro du laplacien Application du masque binaire B à l’image de la norme du gradient Seuillage (avec hystérésis) de l’image de la norme du gradient | B Elimination des non maxima locaux dans la direction du gradient Fermeture des contours

par filtrage linéaire passe-haut Gradient Sobel c=2 Prewitt c=1 Opérateur MDIF Filtres de Kirsch : 8 masques Rq : les filtres sont donnés pour des directions lignes – colonnes  cas de directions diagonales : Masque MDIF plus grand  - sensible au bruit mais localisation des contours - bonne Il existe aussi des généralisations de Sobel à des tailles (2d+1)(2d+1) La direction du gradient est l’argument du masque qui maximise la norme du gradient  à p/8 près

Filtre de Sobel : exemples Image originale Norme du gradient Gradient vertical Gradient horizontal

par filtrage linéaire passe-haut Laplacien 4-connexité 8-connexité 1 filtre passe haut extrait l’information ‘complémentaire’ d’un filtre passe-bas : Id = MPB+MPH Ex : Coef. généralemt omis pour amplifier le résultat Ex.:

par filtrage optimal (I) Critères de Canny (i) Bonne détection, (ii) bonne localisation, (iii) faible multiplicité des maxima dus au bruit Filtre impulsionnel à réponse finie (RIF) Filtre de Deriche : RII  Gradient selon x = Imageh(x)f(y) Gradient selon y = Imageh(y)f(x) Filtre de Shen - Castan Maximiser le rapport signal à bruit Minimiser la variance de l’erreur en distance Solution de Canny : RIF y(x) = a1eaxcoswx + a2eaxsinwx + a3e-axcoswx +a4e-axsinwx Filtre de lissage puis application d’un opérateur différentiel Solution de Deriche : RII / y(x) = [Cst/w].e-a|x|.sinwx Soit m / m.w=a, alors m>>1  y(x)  h(x) = -a2.x.e-a|x| Lissage ds la dir.  celle de h par le filtre f / f’=h : f(y) = (a.|y|+1).e-a|y| (f’(y) = a.sgn(y).e-a|y|+(a.|y|+1).(-a.sgn(y)).e-a|y| = h(y)) Solution RII de Shen et Castan : f(x) = be-b|x|, f1(x) = b.e-bx.u(x), f2(x) = b.e-b(-x).u(-x)

par filtrage optimal (II) Implantation du filtre de dérivation de Deriche Décomposition entre 1 partie causale et 1 anti-causale R[i]=R1[i]+ R2[i] Implantation du filtre de lissage de Deriche R1[i]=c.e-a.I[i-1]+2.e-a.R[i-1]-e-2a.R[i-2] R2[i]=-c.e-a.I[i+1]+2.e-a.R[i+1]-e-2a.R[i+2] Partie causale : h-(i)=c.i.e-ia.u(i) |z|>1, TZ[u(i)] = 1/(1-z-1) TZ[ai.x(i)] = X(z/a)  TZ[e-iau(i)] = 1/(1-e-az-1) TZ[ik.x(i)] = (z.d/dz)kX(z)  TZ[ie-iau(i)] = e-az-1/(1-e-az-1)2 Partie anti-causale : h+(i)=(-c).(-i).e(-i)(-a).u(-i) R1[i]= b.I[i]+ b.e-a.(a-1).I[i-1]+2.e-a.R[i-1]-e-2a.R[i-2]  R2[i]= b.e-a.(a+1).I[i+1]-b.e-2a.I[i+2]+2.e-a.R[i+1]-e-2a.R[i+2] Partie causale : f-(i)=b.(a.i+1).e-ia.u(i) TZ[f-(i)] = b.a.e-az-1/(1-e-az-1)2+ b/(1-e-az-1) Partie anti-causale : f+(i)=[ba.(-i).e(-i)(-a)+ b.e(-i)(-a)-bd(-i)].u(-i) TZ[f-(i)] = b.a.e-az/(1-e-az)2+ b/(1-e-az)-b

Filtrage Canny-Deriche : exemples Image originale Norme du gradient Direction du gradient

Exemples de et . B1 B2 || MM (B1) || MM (B2) || Prewitt || Sobel || MDIF D masque D MM (B1) D MM (B2) Deriche a=1 Deriche a=2 Deriche a=3 Shen b=0.5 Shen b=1

Détection de contours (I) Seuillage avec hystérésis Détection des pixels de valeur ≥ sh Ajout des pixels de valeur ≥ sb et qui  1 composante connexe ayant au moins 1 pixel de valeur ≥ sh Programmation avec 1 pile gérant la composante connexe : initialisation de l’image des contours ImaCont à 0 Initialisation de la pile P avec les pixels / ≥ sh Tant que |P|>0 Extraire M(xM,yM) de la pile ImaCont(xM,yM)  1 Pour chaque k-connex (k=4 ou 8) voisin de M, noté VM : Si VM P et si ImaCont(xVM,yVM)  1 et si ≥ sb, alors ajouter VM à P

Seuillage hystérésis sur gradient : exemples Image originale Seuillage hystérésis sur gradient : exemples Seuillage hystérésis par reconstruct. géodésique Norme du gradient Seuillage > 30 Seuillage >72 + élimination des bords Norme du gradient Seuillage hystérésis par reconstruct. géodésique Blanc = seuillage >50, Rouge = seuillage > 25

Détection de contours (II) Détection des maxima locaux de la norme du gradient dans la direction du gradient q Cas soit A0=(i,j), A1=(i,j+1), A2(i-1,j+1) on cherche zM = a1A1+a2A2 avec a1+a2=1, (a1,a2)[0,1]2 alors a2=tanq et a1=1-tanq donc Autres cas : (i,j-1) (i,j) (i,j+1) (i+1,j-1) (i-1,j+1) A0 A1 A2 M1 M2

Fermeture de contours Construction d’1 « look-up table » permettant d’indexer les pixels candidats à la fermeture pour chaque configuration. Codage configuration : où xi=1 si contour, 0 sinon Ex. T[16][0]=1 ; T[136][0]=0 ; T[8][0]=1 T[16][j]={1,0,7} ; T[8][j]={0,7,6} Ex. d’algorithme de fermeture : Pour chaque extrémité trouvée lors du balayage de l’image : Construction du sous-arbre de tous les chemins possibles de longueur p et du coût associé à chaque nœud : somme des normes des gradients en chaque point du chemin Sélection du nœud de coût maximum Prolongation du contour 1 2 3 4 7 6 5 1 2 3 4 7 6 5 1 2 3 4 7 6 5 T[i][0] =1 si contour à prolonger (i[0,255]) T[i][j] avec j[1,3] donne les coordonnées relatives des 3 pixels candidats à la fermeture i.e. pixel / T[i][0] =1 3p chemins

Exemple Après fermeture de contours Filtre Sobel Seuillage hysérésis Bruit gaussien s=30 Filtre Sobel Seuillage hysérésis Après fermeture de contours Itérations 1 (cyan), 2 (bleu) ; seuil sur coût (droite)

Algorithme « Edge drawing » Pré-calcul de (i) l’image des gradients horizontaux Gx, (i) l’image des gradients verticaux Gy, (iii) l’image binaire des directions Q de gradient Calcul de l’image binaire des points d’ancrage J Chaque point d’ancrage est relié au suivant en maximisant la norme du gradient tout en se déplaçant selon la direction de départ (rigidité) Ex. d’instanciation (Topal et al., ICPR 2010) Gx et Gy calculées par Sobel ; Q calculée par comparaison de Gx et Gy en chaque pixel J’ calculée par seuillage hystérésis de |Gx|+|Gy| ; J calculée par sous-échantillonnage dyadique de J’ (facteur k appelé ‘detail ratio’ : k grand  contours grossiers, k petit  contours détaillés)

Exemples Sobel + seuillage hystérésis automatique Affinement de contours Edge drawing k=4, l 15 Image niveaux gris

Transformée de Hough Utilisation d’information a priori pour reconnaître  le type d’objets recherchés et leur représentation Principe : Les objets recherchés sont décrits à l’aide de fonctions simples modélisées par leurs paramètres Ex.: segments de droites, arcs de cercles La transformée de Hough permet de passer de l’espace image à l’espace des paramètres pour rechercher dans cet espace les objets d’intérêt

Transformée de Hough : cas de la recherche de droites (I) Hors cas x = Constante Représentation d’une droite : y = ax + b Dans l’espace image I, x et y sont les variables (colonne et ligne) et (a,b) est un couple de paramètres fixes pour une droite donnée Dans l’espace des paramètres P, a et b sont les variables et (x,y) est un couple de paramètres fixes pour un pixel donné Par un point de I passe une infinité de droites, représentées par une droite dans P (b=-ax+y), et A chaque point de P correspond une droite de I Algorithme : calculer, pour chaque point du contour dans I, la droite lui correspondant dans P ; Incrémenter les valeurs le long de cette droite ; déterminer le ‘point d’accumulation’ dans P P Q x y I DP DQ a b P

Transformée de Hough : cas de la recherche de droites (II) Représentation d’une droite : x.cosj +y.sinj = r0 avec 0 < r0 < diagonale de l’image, et 0 < j < 2p Espace des paramètres (r0,j) A chaque point de I correspond une courbe dans P, et une intersection de courbes dans P correspond à une droite dans I r0/r = |cos (j-q)| (droite perpendiculaire en M0(r0,j) à la droite radiale q=j  pente j-p/2) Droite de paramètres (r0,j) d’éq. r = r0.sec(q-j)  r0 = r.cos(q).cos(j)+ r.sin(q).sin(j)  r0 = x.cos(j)+ y.sin(j) r0 p-j M(r,q) r q j-q M0(r0,j) j-p/2

Transformée de Hough : exemple Image originale Détection de contours Maxima régionaux de la transformée de Hough Droites reconstruites

Transformée de Hough : exemple 2 Maxima régionaux de la transformée de Hough Image originale + contours superposés Droites reconstruites

Transformée de Hough : cas de la recherche de cercles Représentation d’un cercle : (x–a)2 + (y-b)2 = r 2 A un point de I correspond une surface dans P , et P représenté sous forme d’un tableau 3D (a,b,r) Si on se donne un rayon (en pixels) et un % de pixels devant appartenir à la circonférence du cercle, on peut en déduire le seuil dans P (en nombre de pixels ayant voté pour un cercle (a,b,r) ) a b r = r2 r3 r2 r1 Intensité fct du % d’intersection de l’ellipse et du cercle de rayon r

Attention à la base utilisée ! Points d’intérêt Pixels de l’image les plus riches en information Caractérisent le contenu sémantique d’une image Critère principal pour leur définition : stabilité et reproductibilité Coins : Pixel présentant des gradients élevés selon deux directions Attention à la base utilisée !

Détecteur de Harris & Stephens: principe En chaque pixel s, calcul de la matrice d’auto- corrélation Avec I l’image d’origine, Ix et Iy ses dérivées resp. selon les dir. x et y G(s) le filtre passe-bas gaussien de paramètre s l1 l2 Région homogène Contour Coin l1 et l2 grands Les valeurs propres l1 et l2 de Ms caractérisent le pixel s

Détecteur de Harris : calcul (I) Eviter le calcul des valeurs propres en calculant la trace et le déterminant de Ms : Trace(Ms)= l1 + l2 = M1,1 +M2,2 Déterminant(Ms)= l1l2 = M1,1M2,2 -M1,2M2,1 Le paramètre R permet l’identification des coins R=Déterminant(Ms)-k[Trace(Ms)]2 Les coins correspondent à k et t paramètres : k=0.04 (par défaut) et t relié à la ‘taille’ du coin R max local R>0 Trace(Ms)>t

Détecteur de Harris : calcul (II) Filtrage linéaire gaussien de l’image d’origine Calcul des images Ix et Iy des gradients selon les directions x et y respectivement, p.e. par différences finies Calcul des images des termes de la matrice de covariance Ix2, Iy2 et IxIy Filtrer les images Ix2, Iy2 et IxIy par filtrage linéaire Gaussien  , et Calcul de l’image du critère R : en chaque pixel Création de l’image des points d’intérêt = maxima locaux de R supérieurs au seuil

Détecteur de Harris : exemples Composition RGB des 3 composantes Ix2, Iy2 et IxIy après filtrage gaussien Image du critère R (k=0.04) Points détectés (V) sur image d’origine (R)

Détecteur de Harris : exemples Points sur ‘imagetest_synthetic’ tournée de + 30 degrés Points détectés sur ‘imagetest_synthetic’ Points détectés aux échelles s=5 (R), s=1 (V), s=3 (B) Autres exemples