Quelques méthodes de filtrage en Traitement d’Image

Ce cours présente plusieurs méthodes fondamentales de filtrage en traitement d’image numérique. Il s’inscrit dans un enseignement plus large sur le traitement du signal et des images, en abordant d’abord le filtrage unidimensionnel, puis les techniques linéaires et non linéaires appliquées aux images.

D'après le document Quelques méthodes de filtrage en Traitement d’Image

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

Quelques méthodes de filtrage en Traitement d’Image

Document source

Quelques méthodes de filtrage en Traitement d’Image

Image Processing · PDF · 53 pages · 2010

Afficher l'aperçu du document

Consulter le document original →

Ce cours présente plusieurs méthodes fondamentales de filtrage en traitement d’image numérique. Il s’inscrit dans un enseignement plus large sur le traitement du signal et des images, en abordant d’abord le filtrage unidimensionnel, puis les techniques linéaires et non linéaires appliquées aux images. Enfin, il ouvre sur les méthodes variationnelles, très utilisées pour la déconvolution et la restauration d’images.

Introduction au filtrage en traitement d’image

Le filtrage vise à nettoyer un signal ou une image en éliminant le bruit parasite tout en préservant au maximum l’information utile. Il peut aussi servir à sélectionner et renforcer certaines bandes de fréquences porteuses d’information intéressante. En traitement d’image, la notion de fréquence spatiale est plus subtile que la fréquence temporelle en 1D, mais elle correspond à la répétition de motifs ou détails sur un nombre limité de pixels. Les hautes fréquences correspondent aux contours et détails fins, tandis que les basses fréquences correspondent aux variations lentes, comme un fond uniforme.

Les images peuvent être affectées par différents types de bruit : bruit additif gaussien, flou (modélisé par une convolution), bruit poivre et sel. Les bruits multiplicatifs ou de type Poisson ne sont pas abordés ici, ni le filtrage par ondelettes qui nécessite des prérequis spécifiques.

Filtrage unidimensionnel : principes de base

Le filtrage linéaire unidimensionnel est formalisé par un opérateur linéaire continu A qui associe à un signal d’entrée e un signal de sortie s = A(e). Ce filtre est invariant dans le temps et causal. Pour un signal périodique, on peut le décomposer en exponentielles complexes (séries de Fourier), et le filtre agit sur chaque fréquence en multipliant le coefficient de Fourier par une fonction de transfert H(λ) appelée gain complexe du filtre.

Le filtrage linéaire est équivalent à une convolution entre le signal d’entrée et la réponse impulsionnelle h du filtre :

s(t) = (h * e)(t) = ∫ h(θ) e(t - θ) dθ

En temps discret, cette convolution devient une somme discrète :

sₙ = ∑ hₖ eₙ₋ₖ

Les filtres sont classés selon leur action sur le spectre :

  • Filtre passe-bas : atténue les hautes fréquences, laissant passer les basses fréquences.
  • Filtre passe-haut : atténue les basses fréquences, laissant passer les hautes fréquences.
  • Filtre passe-bande : conserve une bande spécifique de fréquences.
  • Filtre coupe-bande : élimine une bande spécifique de fréquences.

Débruitage par filtrage linéaire en traitement d’image

Filtrage spatial (bruit additif)

Le filtrage spatial est une opération de convolution en 2D entre l’image f et un filtre spatial g (ou masque, PSF - Point Spread Function) :

f * g = F⁻¹(F(f) · F(g))

où F désigne la transformée de Fourier. En pratique, la convolution est locale, basée sur un voisinage autour d’un pixel (x,y). Le noyau de convolution (masque) est généralement de taille impaire et symétrique, par exemple 3x3 ou 5x5. La somme des coefficients du filtre est normalisée à 1 pour conserver la moyenne de l’image.

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

h₂D = h_V 1D ⊗ h_H 1D

Exemples de filtres :

  • Filtre moyenneur 3x3 ou 5x5 : coefficients égaux, atténue le bruit mais floute l’image.
  • Filtre gaussien : coefficients suivant une distribution gaussienne, plus efficace pour un lissage naturel.
  • Filtre binomial : coefficients issus du binôme de Newton, également passe-bas.

Filtrage fréquentiel (bruit additif)

Le filtrage fréquentiel agit directement sur la transformée de Fourier de l’image. Le filtre idéal passe-bas est un crénau qui annule toutes les fréquences au-delà d’une fréquence de coupure δc :

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

Cette fonction de transfert a pour transformée inverse le sinus cardinal, qui génère des ondulations visibles dans l’image filtrée. Pour pallier cela, on utilise des filtres passe-bas plus doux comme le filtre de Butterworth :

H(λ, µ) = 1 / (1 + (√(λ² + µ²)/δc)^(2n))

Les filtres passe-haut sont définis symétriquement, favorisant les hautes fréquences et améliorant le contraste, mais amplifiant aussi le bruit. Les filtres passe-bande conservent uniquement une bande de fréquences définie par une largeur ε autour de δc.

Filtrage différentiel

Dans un cadre continu, l’image est vue comme une fonction f définie sur un domaine Ω. Le gradient ∇f(x,y) = (∂f/∂x, ∂f/∂y) permet d’analyser localement les variations spatiales. En pratique, on calcule des approximations discrètes des dérivées par convolution avec des noyaux simples, par exemple :

Gradient en xGradient en y
r[-1 1]r[0 -1; 1 0]

Les masques de Sobel sont fréquemment utilisés, combinant dérivation et lissage :

hx = [-1 0 1]^T * [1 2 1], hy = [1 2 1]^T * [-1 0 1]

Ces filtres permettent de détecter les contours et les textures. D’autres masques comme ceux de Roberts, Prewitt, Kirsh ou Robinson sont aussi employés, chacun avec des caractéristiques spécifiques en amplitude et direction.

La dérivée seconde est approximée par le laplacien, défini par :

Δf = ∂²f/∂x² + ∂²f/∂y²

et approché par des masques discrets (laplacien 4-connexe, 8-connexe, ou laplacien de Robinson).

Filtrage par équations aux dérivées partielles (EDP)

Équation de la chaleur

Le filtrage gaussien peut être vu comme la solution de l’équation de la chaleur :

∂u/∂t = Δu,  u(0,x) = u₀(x)

où u₀ est l’image initiale et u(t,x) l’image filtrée au temps t. La convolution avec un noyau gaussien Gσ correspond à une évolution de cette équation avec σ² proportionnel à t.

La résolution numérique se fait par schéma aux différences finies, souvent explicite, avec conditions aux limites de Neumann (réflexion aux bords). Le pas de discrétisation spatial est généralement h=1 (taille d’un pixel).

Filtrage différentiel numérique

Les gradients sont discrétisés par différences finies centrées, à droite ou à gauche, et la norme du gradient peut être calculée par des schémas ENO (Essentially Non Oscillatory) pour limiter les oscillations.

La divergence est discrétisée en fonction du choix du sens des différences finies. Ces outils permettent de modéliser et calculer des filtrages évolutifs basés sur des EDP.

Déconvolution : restauration d’image floutée

Le flou est modélisé par une convolution avec un noyau h (souvent gaussien). La déconvolution vise à inverser cette opération pour retrouver l’image originale.

Approche spatiale : équation de la chaleur rétrograde

La déconvolution peut être vue comme la résolution inverse de l’équation de la chaleur, dite rétrograde :

∂u/∂t = -Δu,  u(T,x) = u₀(x)

Cette équation est mal posée, ce qui limite le nombre d’itérations possibles sans instabilité.

Filtre inverse et algorithme de Van Cittert

En domaine fréquentiel, si f = h * u, alors ˆf = ˆh · ˆu. Le filtre inverse calcule ˆu = ˆf / ˆh, mais ce n’est pas toujours possible ni stable. L’algorithme de Van Cittert itère :

uₙ₊₁ = uₙ + f - h * uₙ

Ce processus converge vers la solution de déconvolution dans certaines conditions. Le choix du filtre h est crucial.

En présence de bruit, le filtre inverse amplifie le bruit aux hautes fréquences où ˆh est proche de zéro. Pour traiter images floutées et bruitées, on préfère le filtre de Wiener.

Débruitage par filtrage non linéaire

Filtres médian

Les filtres médian ne sont pas linéaires et ne correspondent pas à une convolution. La valeur d’un pixel est remplacée par la médiane des valeurs dans un voisinage donné. Ce filtrage est efficace contre le bruit poivre et sel (pixels à valeurs extrêmes 0 ou 255).

Si le bruit poivre et sel dépasse la moitié de la taille du filtre, le filtrage médian devient inefficace.

Modèle de Perona-Malik

Pour améliorer le filtrage par équation de la chaleur, Perona et Malik ont proposé une modification intégrant la détection des bords :

∂u/∂t = div(c(|∇u|) ∇u),  u(0,x) = u₀(x)

où c est une fonction décroissante de l’amplitude du gradient, par exemple :

c(t) = 1 / (1 + (t/α)²)

Dans les régions à faible gradient, le filtrage agit comme l’équation de la chaleur classique, lissant l’image. Dans les régions à fort gradient (bords), la régularisation est stoppée, ce qui préserve les contours.

Filtre de Wiener

Le filtre de Wiener est une approche fréquentielle qui modélise le signal et le bruit comme des processus aléatoires stationnaires. Il minimise l’erreur quadratique moyenne entre l’image restaurée et l’image originale.

Le problème est formulé en minimisant :

min_U ||F - H U||² + ||Q U||²

où F, H, U, Q sont les transformées de Fourier respectives de l’image dégradée, du filtre de flou, de l’image restaurée et d’un noyau de régularisation. La solution s’écrit :

U = (conj(H) F) / (|H|² + |Q|²)

Le choix de Q dépend de l’estimation du rapport signal sur bruit. Si Q = 0, on retrouve le filtrage inverse.

Points clés

  • Le filtrage vise à réduire le bruit tout en préservant l’information utile, souvent en agissant sélectivement sur les fréquences spatiales.
  • Les filtres linéaires sont des convolutions, caractérisées par une fonction de transfert en fréquence.
  • Les filtres passe-bas atténuent les hautes fréquences (bruit, détails fins), les filtres passe-haut accentuent les contours mais amplifient aussi le bruit.
  • Le filtrage différentiel utilise les gradients et le laplacien pour détecter les contours et les textures.
  • Le filtrage par équations aux dérivées partielles (équation de la chaleur) permet un lissage progressif de l’image.
  • La déconvolution inverse le flou mais est instable et amplifie le bruit, nécessitant des méthodes plus robustes comme l’algorithme de Van Cittert ou le filtre de Wiener.
  • Les filtres non linéaires, comme les filtres médian, sont efficaces contre certains bruits spécifiques (poivre et sel).
  • Le modèle de Perona-Malik améliore le lissage en préservant les bords grâce à une diffusion non linéaire dépendante du gradient.
  • Le filtre de Wiener combine filtrage et régularisation statistique pour traiter images floutées et bruitées.

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