Quelques méthodes mathématiques pour le traitement d'image

Ce cours présente les notions fondamentales et quelques méthodes mathématiques essentielles pour le traitement d’image numérique, principalement à destination des étudiants de Master 2 en mathématiques appliquées.

D'après le document Quelques méthodes mathématiques pour le traitement d'image

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Document source

Quelques méthodes mathématiques pour le traitement d'image

Image Processing and Mathematical Analysis · PDF · 110 pages · 2009

Afficher l'aperçu du document

Consulter le document original →

Ce cours présente les notions fondamentales et quelques méthodes mathématiques essentielles pour le traitement d’image numérique, principalement à destination des étudiants de Master 2 en mathématiques appliquées. L’accent est mis sur les traitements variationnels et les outils mathématiques associés, avec une progression allant de la définition des images numériques aux techniques de filtrage et d’analyse.

Introduction aux images numériques

Une image numérique est constituée d’unités élémentaires appelées pixels, chacun représentant une portion de l’image. Une image est caractérisée par :

  • Le nombre de pixels en largeur et en hauteur, pouvant varier presque à l’infini.
  • L’étendue des teintes de gris ou des couleurs que chaque pixel peut prendre, appelée dynamique de l’image.

On distingue trois types d’images :

  • Images binaires : pixels noirs ou blancs uniquement, utilisées par exemple pour scanner du texte monochrome.
  • Images en niveaux de gris : généralement codées sur 256 niveaux, allant de 0 (noir) à 255 (blanc).
  • Images couleurs : représentées dans l’espace RGB (Rouge, Vert, Bleu), basé sur la synthèse additive des couleurs.

Échantillonnage et quantification

L’échantillonnage est la discrétisation spatiale d’une image continue, associant à chaque zone rectangulaire une valeur unique I(x, y). La quantification limite le nombre de valeurs différentes que peut prendre I(x, y).

Un phénomène important est l’aliasing, qui se manifeste lorsque l’échantillonnage est insuffisant, provoquant une distorsion des fréquences et des directions des structures périodiques dans l’image.

La quantification peut aussi introduire des distorsions, et le nombre de bits nécessaires pour coder une image dépend du rapport signal sur bruit du capteur et de l’entropie de l’image, définie par :

E = − ∑(i=0 à N) pi log2(pi)

où N est le nombre de niveaux de gris présents et pi la proportion de pixels de niveau i. Cette entropie représente le nombre moyen de bits par pixel nécessaires pour coder l’information.

Profil et histogramme

Le profil d’une image est la variation des niveaux de gris le long d’une ligne tracée sur l’image. L’histogramme établit la distribution statistique des niveaux de gris dans l’image, permettant de corréler les données numériques aux positions des pixels.

Qu’est-ce que le traitement d’image ?

Le traitement d’image regroupe plusieurs aspects :

  • Filtrage et déconvolution (filtrage inverse)
  • Compression
  • Segmentation
  • Restauration et reconnaissance
  • Reconstruction tomographique

Les outils mathématiques essentiels incluent la transformation de Fourier pour le filtrage, l’optimisation et les équations aux dérivées partielles pour la segmentation, ainsi que les modèles variationnels pour la restauration.

Applications

  • Robotique et industrie : assemblage, reconnaissance de pièces, contrôle qualité, véhicules autonomes.
  • Télédétection : météorologie, cartographie, analyse des ressources terrestres, astronomie, restauration.
  • Applications militaires : guidage de missiles, reconnaissance aérienne ou sous-marine.
  • Imagerie médicale : tomographie, aide au diagnostic, comptage cellulaire, suivi de formes anatomiques.
  • Sécurité : reconnaissance d’empreintes, visages, signatures, détection de mouvement.

Traitement ponctuel des images numériques

Les traitements ponctuels appliquent une correction à chaque pixel indépendamment de sa position, uniquement en fonction de sa valeur. Cela inclut notamment le recadrage de dynamique, l’égalisation d’histogramme et la binarisation.

Correction ponctuelle : recadrage de dynamique

Le recadrage de dynamique étend la plage des niveaux de gris d’une image initialement concentrée dans un intervalle [a, b] vers l’intervalle complet [0, 255]. La transformation est affine :

t(f) = (255 / (b − a)) × (f − a) pour f ∈ [a, b]

Cette transformation peut être réalisée en temps réel via une table de transcodage.

Variantes pour le rehaussement des contrastes

  • Dilatation de la dynamique des zones sombres
  • Dilatation de la dynamique des zones claires

Ces corrections accentuent le contraste dans des plages spécifiques de niveaux de gris.

Égalisation de l’histogramme

L’égalisation vise à rendre l’histogramme de l’image aussi plat que possible, augmentant ainsi le contraste et la clarté. La transformation d’égalisation continue est donnée par :

f" = t(f) = (256 / N²) ∫₀^f h(s) ds

où h(f) est l’histogramme continu de l’image. En pratique, on utilise une version discrète :

f" = t(f) = (256 / N²) ∑(i=0)^f h(i)

Cette transformation redistribue les niveaux de gris pour améliorer la visibilité des détails.

Binarisation

La binarisation affecte un niveau uniforme aux pixels pertinents et élimine les autres. Le seuillage simple consiste à fixer un seuil S :

  • Pixels avec valeur > S → 255 (blanc)
  • Pixels ≤ S → 0 (noir)

Une variante est la fenêtre d’intensité, qui ne conserve que les pixels dont l’intensité est dans un intervalle [a, b], permettant une segmentation ciblée.

Analyse de la netteté d’une image numérique

La mise au point automatique dans les systèmes numériques repose sur un critère de netteté calculé à partir des intensités des pixels f(i, j). Deux grandes catégories de critères existent :

  • Basés sur l’analyse de l’histogramme : une image nette présente un histogramme plus large.
  • Basés sur l’analyse spectrale : une image nette contient plus de hautes fréquences spatiales.

Exemples de critères de netteté

  • Mendelsohn et Mayall : F = ∑ k hk où k > T, T proche du niveau moyen.
  • Mason et Green : F = ∑ (différences de pixels au carré dans le voisinage).
  • Variance des niveaux de gris : F = (1/N²) ∑ f²ij − ((1/N²) ∑ fij)².
  • Normes du gradient : norme L1 : F = ∑ |fi,j − fi,j+1| + |fi,j − fi+1,j| ; norme L2 : F = ∑ (fi+1,j − fi,j)² + (fi,j+1 − fi,j)².

Le critère de Brenner est souvent utilisé pour son bon compromis entre sensibilité et coût de calcul.

Corrélation d’images numériques

Soient deux images f(i, j) et g(i, j) de taille N×N. On définit leurs versions centrées et réduites :

fc(i, j) = (f(i, j) − µf) / σf, gc(i, j) = (g(i, j) − µg) / σg

où µ et σ sont la moyenne et l’écart-type. La fonction d’intercorrélation est :

ϕfg(k, l) = (1 / N²) ∑ fc(i, j) gc(i − k, j − l)

Pour éviter les effets de bord, on peut limiter la zone de calcul ou ajuster le diviseur en fonction du nombre de pixels communs.

Application à la reconnaissance d’empreintes digitales

Deux empreintes F et G de taille 256×256 sont comparées. Après centrage et réduction, l’intercorrélation est calculée sur une zone 151×151 pixels :

ϕfg(k, l) = (1 / 151²) ∑ fc(i, j) gc(i − k, j − l) avec i, j ∈ [50, 200]

La fonction d’autocorrélation de F atteint 1 en (0,0), tandis que l’intercorrélation entre F et G ne dépasse pas 0,15, indiquant qu’elles sont différentes.

Application à l’analyse de texture

La texture est la structure spatiale des pixels, pouvant être déterministe (motif périodique) ou aléatoire (sable, mur crépi). La fonction d’autocorrélation bidimensionnelle met en évidence ces propriétés.

Transformation de Hough

La transformation de Hough détecte systématiquement la présence de structures géométriques simples (droites, cercles) dans une image, en particulier dans une image binaire issue d’un traitement des contours.

Principe pour la détection de droites

Pour un pixel P1(x1, y1), toutes les droites passant par P1 sont représentées dans l’espace des paramètres (a, b) par une droite b = a x1 + y1. Pour un second pixel P2(x2, y2), la droite correspondante b = a x2 + y2 croise la première en un point (a*, b*) qui correspond aux paramètres de la droite passant par P1 et P2.

Problème des droites verticales et représentation normale

Les droites verticales ont des paramètres a et b infinis dans la représentation précédente. On utilise alors la représentation normale :

ρ = x cos θ + y sin θ

où ρ est la distance à l’origine et θ l’angle de la normale à la droite. Cette représentation permet de traiter toutes les droites, y compris verticales et horizontales.

Transformation de Hough dans une image binaire

On quantifie les paramètres θ ∈ [0, π[ et ρ ∈ [−ρmax, ρmax] où ρmax ≈ √2 N pour une image carrée de taille N×N. Le plan θρ est subdivisé en cellules indexées par (p, q). Pour chaque pixel non nul, on calcule ρ pour chaque θp, puis on incrémente la cellule correspondante A(p, q).

Le tableau A(p, q) contient alors le nombre de pixels alignés sur la droite définie par (θp, ρq). La détection de droites se fait par recherche des maxima dans ce tableau.

Exemple de calcul

Considérons une image binaire 6×6 avec deux droites ∆1 et ∆2 comportant chacune 6 pixels alignés. On calcule la transformation de Hough pour θ variant de 0° à 180° par pas de 1°. Le tableau A(p, q) est rempli en incrémentant les cellules correspondant aux paramètres calculés pour chaque pixel.

Pour une image de taille N1×N2, on a :

  • ρmax = √((N1 − 1)² + (N2 − 1)²)
  • θp = −90 + p hθ, p = 0,..., Nθ avec hθ le pas angulaire
  • ρq = ρmin + q hρ, q = 0,..., Nρ avec hρ le pas sur ρ

Le programme itératif calcule pour chaque pixel et chaque θp la valeur ρq correspondante et incrémente A(p, q).

Filtrage

Filtrage linéaire des signaux 1D

Un filtre est un système linéaire continu et invariant par translation. Si f est le signal d’entrée et g le signal de sortie, leur transformée de Fourier vérifie :

ĝ = H ˆf

où H est la fonction de transfert du filtre. Si H est dans L∞(R) et admet une transformée de Fourier inverse h, alors :

g = h ∗ f

La réponse impulsionnelle h est la convolution de f avec h.

Un filtre idéal passe-bas, avec fréquence de coupure λc, a pour fonction de transfert :

H(λ) = 1 si |λ| ≤ λc, 0 sinon

Sa réponse impulsionnelle est le sinus cardinal :

h(t) = sin(2πλc t) / (π t)

Ce filtre idéal n’est pas réalisable en pratique, on utilise donc des filtres passe-bas approchés qui atténuent progressivement les hautes fréquences.

Filtrage 2D : convolution et filtre médian

Une image numérique est un domaine spatial discret. Le filtrage spatial est une opération de convolution 2D :

g(x, y) = (f ∗ κ)(x, y) = ∑(i=x1 à x2) ∑(j=y1 à y2) f(x − i, y − j) κ(i, j)

où κ est le noyau de convolution, souvent de dimension impaire et symétrique, par exemple 3×3 avec :

g(x, y) = w1 f(x−1, y−1) + w2 f(x, y−1) + w3 f(x+1, y−1)
        + w4 f(x−1, y)   + w5 f(x, y)   + w6 f(x+1, y)
        + w7 f(x−1, y+1) + w8 f(x, y+1) + w9 f(x+1, y+1)

avec la normalisation ∑ wi = 1 pour conserver la moyenne de l’image.

Filtres séparables

Un filtre 2D est séparables s’il peut se décomposer en deux filtres 1D appliqués successivement en horizontal et vertical :

h2D = hV1D ⊗ hH1D

Exemple :

[a b c] ⊗ [α β γ] = 
[aα bα cα
 aβ bβ cβ
 aγ bγ cγ]

Filtres de moyenne passe-bas 3×3 et 5×5 sont des exemples de filtres séparables.

Exemples de filtres

  • Filtre gaussien 3×3 :
(1/16) ·
1 2 1
2 4 2
1 2 1

La taille idéale d’un filtre gaussien est (6σ + 1). Un σ faible réduit le bruit, un σ élevé crée un flou marqué.

  • Filtre binomial : coefficients issus du binôme de Newton, par exemple ordre 4 :
1D : (1 4 6 4 1)
2D : (1/256) ·
 1  4  6  4  1
 4 16 24 16  4
 6 24 36 24  6
 4 16 24 16  4
 1  4  6  4  1

Filtres médian

Les filtres médian ne sont pas linéaires ni des convolutions. La valeur du pixel est remplacée par la médiane des pixels dans un voisinage S(x, y) :

g(x, y) = médiane { f(n, m) | (n, m) ∈ S(x, y) }

Exemple :

Voisinage : 10 20 30
            10 250 25
            30 25 20

Valeurs triées : 10 10 20 20 25 25 30 30 250
Médiane : 25

Ce filtre est efficace pour éliminer le bruit "Poivre et Sel" (pixels parasites à 0 ou 255).

Filtres passe-haut

Un filtre passe-haut correspond généralement à ce qui reste après application d’un filtre passe-bas, mettant en évidence les détails et contours.

Filtrage fréquentiel

La transformation de Fourier 2D d’un signal f(x, y) est :

F(u, v) = ∫∫ f(x, y) e^(−2iπ(xu + yv)) dx dy

La reconstruction s’effectue par :

f(x, y) = ∫∫ F(u, v) e^(2iπ(xu + yv)) du dv

La transformée de Fourier est complexe, avec module et phase, et possède les mêmes propriétés que la transformée 1D.

Le filtrage peut être réalisé dans le domaine fréquentiel en multipliant la transformée par une fonction de transfert.

Filtre passe-bas fréquentiel

Définition d’une fréquence de coupure δc au-dessus de laquelle les fréquences sont annulées :

H(λ, µ) = 1 si √(λ² + µ²) ≤ δc, 0 sinon

Ce filtre idéal correspond à un crénau centré dans le domaine fréquentiel.

Glossaire des termes clés

  • Pixel : unité élémentaire d’une image numérique représentant une portion de l’image.
  • Échantillonnage : discrétisation spatiale d’une image continue en valeurs discrètes.
  • Quantification : limitation du nombre de niveaux de gris ou de couleurs possibles.
  • Histogramme : distribution statistique des niveaux de gris dans une image.
  • Transformation de Fourier : outil mathématique pour passer du domaine spatial au domaine fréquentiel.
  • Filtre : système linéaire modifiant un signal, caractérisé par sa fonction de transfert et sa réponse impulsionnelle.
  • Convolution : opération mathématique combinant deux fonctions pour produire une troisième.
  • Filtre médian : filtre non linéaire remplaçant chaque pixel par la médiane de son voisinage.
  • Transformation de Hough : méthode pour détecter des formes géométriques dans une image.
  • Intercorrélation : mesure de similarité entre deux images décalées.
  • Aliasing : distorsion due à un échantillonnage insuffisant.
  • Entropie : mesure de la quantité d’information dans une image.

Points clés à retenir

  • Une image numérique est définie par ses pixels et la dynamique des niveaux de gris ou couleurs.
  • L’échantillonnage et la quantification sont des étapes cruciales qui influencent la qualité de l’image.
  • Le traitement d’image comprend filtrage, segmentation, restauration et applications variées.
  • Les traitements ponctuels modifient chaque pixel indépendamment, comme le recadrage de dynamique ou la binarisation.
  • La netteté peut être évaluée par des critères basés sur l’histogramme ou le contenu fréquentiel.
  • La corrélation d’images permet la reconnaissance et l’analyse de textures.
  • La transformation de Hough détecte efficacement des formes géométriques dans des images binaires.
  • Le filtrage spatial s’appuie sur la convolution avec des noyaux, souvent séparables pour optimiser les calculs.
  • Les filtres médian sont efficaces contre le bruit impulsionnel "Poivre et Sel".
  • Le filtrage fréquentiel utilise la transformation de Fourier pour manipuler les composantes fréquentielles.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions