Reconnaissance de caractères: Avant tout, connaître le traitement d'images - Philippe Foucher
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Reconnaissance de caractères: Avant tout, connaître le traitement d’images Philippe Foucher
Plan Introduction Pré-traitement Segmentation d’images Extraction de caractéristiques Classification Conclusion
Une image ? Définition: image = fonction d’au moins deux variables spatiales. I=f(x,y). Image numérique: x et y sont discrets (entiers) et f(x,y) correspond à une luminance ou une couleur. exemple f(35,460)= 127. Image composée de pixels, un pixel (Picture Element) correspond à un couple (x,y) et la valeur de ce pixel correspond à f(x,y).
Exemple 57 86 Image 100* 150 F(57,86) = 250
Codage niveaux de gris images monochromatiques (souvent en niveau de gris ou luminances). Chaque pixel peut prendre N valeurs. en général: N = 256 (1 octet) Noir = 0 ; Blanc = 255 ; Les images multi-spectrales (plusieurs valeurs par pixel vecteur de composantes par pixel) f(x,y)=[fr, fv, fb]
Exemple d’images multi-spectrales images en couleurs RVB (Rouge, Vert, Bleu): trois composantes couleur. f(57,86) = [255,237,255]. Rouge Vert Bleu
Image binaire Une image binaire: les pixels ne prennent que deux valeurs (par exemple noir (0) ou blanc (1 ou 255)). Exemple:
Voisinage d’un pixel Pixel A de coordonnées (x,y) Voisinage: pixels autour du pixel A × × × × × × × × × × × × × × × A × × A × × × A × × × × × × × × × × × Voisinage 3*3 Voisinage 3*3 × × × × × Connectivité 8 Connectivité 4 Voisinage 5*5
Plan Introduction Pré-traitement Segmentation d’images Extraction de caractéristiques Classification Conclusion
Bruit ? Bruit: nuisances sur le signal ou l’image (tout ce qu’on ne veut pas). En général aléatoire. Origine: perturbations à l’acquisition (électronique, lentilles, capteurs,humidité, température,…), bruit sur document initial,échantillonnage. Souvent Bruit additif (constant ou gaussien) noté n(x,y). g(x,y) = f(x,y) + n(x,y) (variable aléatoire) Parfois Bruit multiplicatif noté m(x,y) g(x,y) ) = m(x,y)*f(x,y)
Exemple image bruitée Image originale Image fortement bruitée Image filtrée (bruit additif gaussien) (filtre gaussien 3*3 )
Notions de fréquence Image: représentation spatiale Distance entre deux pixels facile à calculer Fréquence spatiale: nombre d’éléments par unité de distance exemple: sur une route, on peut voir 200 bandes blanches au kilomètre, c’est la fréquence spatiale.
Fréquences haute et basse Dans une image, la fréquence d’apparition des détails (variations, contour) est élevée. On parle de fréquence haute. au contraire, les plans très homogènes (ciel, fond d’écran, plans unis) présentent de faibles variations qui sont reproduites dans les basses fréquences
Filtres (passe-haut et passe-bas) Filtre passe-haut: favorise les hautes fréquences et donc les détails. Il permet de rehausser un contour mais ajoute du bruit. Filtre passe-bas: effet contraire au filtre passe-haut, favorise les textures homogènes. il permet de réduire le bruit additif au risque de louper les détails et les contours.
Produit de convolution Produit de convolution = opérateur mathématique pour multiplier les matrices entre elles. Deux matrices: Matrice Image A et une matrice plus petite appelée noyau K (c’est le noyau qui va agir sur la matrice A) Notation B=A*K
En plus clair… K(i-1,j-1) K(i,j-1) K(i+1,j-1) K(i-1,j) K(i,j) K(i,j+1) x,y * K(i-1,j+1) K(i,j+1) K(i+1,j+1) Noyau K Matrice A B(x,y)= [A(x,y)*K(i,j) + A(x-1,y-1)*K(i-1,j-1) + A(x,y-1)*K(i,j-1) + A(x+1,y-1)*K(i+1,j-1) + A(x-1,y)*K(i-1,j) + A(x+1,y)*K(i+1,j) + A(x-1,y+1)*K(i-1,j+1) + A(x,y+1)*K(i,j+1) + A(x+1,y+1)*K(i+1,j+1)]/somme K
Filtre passe-haut 100 100 100 100 100 100 100 100 100 100 100 100 0 -1 0 100 100 100 150 100 100 * -1 5 -1 100 100 100 100 100 100 100 100 100 100 100 100 0 -1 0 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 50 100 100 100 100 50 350 50 100 100 100 100 50 100 100 100 100 100 100 100 100 100 100 100 100 100 100
Caractéristiques Favorise et renforce les détails (exemple le pixel de luminance initiale150) Noyau: pixels négatifs autour du pixel central. Augmente le bruit dans les zones homogènes.
Filtre passe-bas 100 100 100 100 100 100 100 100 100 100 100 100 1 1 1 100 100 100 110 100 100 * 1 4 1 100 100 100 100 100 100 100 100 100 100 100 100 1 1 1 100 100 100 100 100 100 100 100 100 100 100 100 100 100 101 101 101 100 100 100 101 104 101 100 100 100 101 101 101 100 100 100 100 100 100 100 100 100 100 100 100 100
Caractéristiques Filtre passe-bas adoucit les détails et permet d’enlever le bruit de fond. valeurs positives autour de la valeur centrale. Tendance à réduire les points isolés et à rendre plus difficile la détection de contours
Autres filtres: Filtre moyenne Filtre moyenne: pixel central = moyenne des pixels voisins. Filtre passe-bas particulier: trop homogène, réduit fortement les contours 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9
Filtre médian Atténue les pixels isolés, c’est-à-dire ceux qui ony valeur très différente de leur entourage. Pas exactement un produit de convolution 433 432 440 439 437 430 433 437 427 423 425 428 Pixels voisins rentrés dans l’ordre: 454 448 432 120 414 415 {120,414,422,423,425,426,427,43 447 450 438 426 422 420 2,438} 434 441 440 430 430 437 433 422 428 426 440 438 Médiane: 425 Exemples sur 512 niveaux
Filtre gaussien Filtre « passe-bas » particulier réduit le bruit mais augmente le flou. 1 2 1 2 4 2 1 2 1 Remarque: l’ajout de flou peut-être très utile pour obtenir les détails (image- image floue)
Et puis… Les autres filtres plutôt de type passe- haut seront vues dans la partie détection de contour: - filtre laplacien - filtre gradient - filtre Prewitt,Sobel,…
Exemples Filtre passe-bas (gaussien) Filtre passe-haut
Plan Introduction Pré-traitement Segmentation d’images Extraction de caractéristiques Classification Conclusion
Pourquoi segmenter ? L’image ne nous intéresse pas en elle-même. Ce sont les objets qui composent cette image qui sont intéressants. Objet partie cohérente de l’image: - connexe. - couleur ou texture cohérente. - contours bien définis. - information a priori.
Définition Partition d’une image en un nombre fini de régions R1,…,Rs telles que: - L’ensemble des régions compose l’image. - Les régions sont connexes entre elles - Ri et Rj sont différents. Traitement bas-niveau (pas d’analyse des objets)
Méthodes de segmentation Seuillage d’histogramme Approche région Approche contours Classification de pixels - approche statistique - approche connexionniste
Exemples de segmentation Deux régions (fond et plante). segmentation
Seuillage d’histogramme Déterminer les seuils de séparation d’un histogramme Exemple:
Histogramme Monochromatique: Nombre de pixels par niveau de gris. L’histogramme n’apporte aucune information sur la localisation des pixels
Exemple de seuillage Seuillage en deux régions et le reste. Seuil à 175
Histogramme Seuillage à 175
Seuillage en trois régions Si luminance pixel > 175 blanc Si luminance pixel > 118 gris Sinon noir
Trois régions Deux seuils, trois régions
Utilisation histogramme Recherche automatique de pics et de vallées Histogrammes 2D, 3D Exemple: 255 Histogramme Luminance 2 2D: R et V 0 Luminance 1 255
Avantages Très simple d’utilisation pas de connaissance a priori sur l‘image Très efficace pour régions très différentes.
Inconvénients (1) seuils si histogramme multimodaux (présence de vallées ) sinon:
Inconvénients (2) difficile à mettre en œuvre si besoin de détecter un grand nombre de régions. Problème des minima locaux. Pas d’information spatiale: segmentation de régions non connexes
Approche régions Algorithme de croissance de régions • germe: pixel de départ (croix rouge) • critère d’homogénéité (intensité en niveaux de gris compris entre deux seuils) à définir au préalable • Propagation de proche en proche. Pixels appartiennent à la même région si leurs valeurs répondent au critère d’homogénéité.
Avantages/inconvénients Avantage: - Régions connexes, technique assez robustes. Inconvénient: - Programme lourd (temps et mémoire) - dépendant du choix du point de départ
Region Merging Fusion des régions si critère d’homogénéité respecté Priorité de fusion si deux régions connexes se présentent on considère à chaque fois la région et non le pixel voisin
Exemple Fusion de régions: 1 2 3 A B 5 7 4 C D E 6 8
Avantages/inconvénients Avantage: idem que croissance de région Inconvénient: - Lourd à mettre en place vérification du critère d’homogénéité + calcul des caractéristiques de la nouvelle région - régions souvent grossières
Region splitting Processus inverse que region merging Région initiale = image entière divisée en quatre si non homogène Processus récursif
Exemple • Image = région initiale
Avantages/inconvénients Avantages: idem Inconvénients: - segmentation trop fine (sur- segmentation). - segmentation « à la règle » (un peu trop carré) Split and merge: division puis fusion des régions
Détection de contours Recherche contours de l’image. contour = grande variation d’une valeur (par exemple luminance) filtres passe-haut contours actifs
Filtre laplacien Laplacien: Filtre laplacien
Filtre gradient deux types de gradient: Filtre Sobel Filtre Prewitt
Filtres Prewitt: 3 filtres successifs 1 1 1 0 1 1 -1 0 1 0 0 0 -1 0 1 -1 0 1 -1 -1 -1 -1 -1 0 -1 0 1 Sobel même chose avec 1 2 1 0 0 0 -1 -2 -1
Avantages/inconvénients Avantages: - Utilisation très simple - Traitement informatique peu coûteux Inconvénients: - fonctionne difficilement si contours mal définis - Fermeture des courbes pas simple - Sensible au bruit
Contours actifs Courbes mathématiques fermées (ellipse, cercle) qui évoluent pour représenter au mieux un objet en fonction de critères d’homogénéité. Lien Avantage: extrêmement robuste Inconvénient: programmation difficile
Classification de pixels On affecte un pixel à une classe en fonction de ses caractéristiques spectrales (niveaux de gris, composantes colorimétriques, …) Étude plus approfondie dans les prochains cours.
Classification R Classe 1 V Méthodes de Pixel classification Classe 2 B Même chose que pour classification de formes ou de paroles. - aspect statistique - aspect connexionniste (réseau de neurones)
Schéma de classification V B R Définition des classes Image • Nécessité d’un apprentissage
Approche statistique Approche bayésienne et approches dérivées Nuées dynamiques …
Réseau de neurones: Perceptron W1,1 R W1,s W2,1 W3,1 Valeur réelle V comprise Décision W1,N entre 0 et 1 W2,N B WN,s W3,N 2 étapes : - apprentissage pour ajuster les poids des connexions - affectation à une classe de l’ensemble des pixels de l’image
Conclusion Avoir le meilleur document initial possible Qualité du pré-traitement et de la segmentation influence le reste du processus. pas de segmentation miracle . … Questions ????
Vous pouvez aussi lire