Filtrage médian à 3 états pour le débruitage

Filtrage médian à 3 états pour le débruitage

Sébastien GEORGES et Lise GEORGE

 

 

 

  • I-Introduction
  • Le but de ce projet est d'étudier le " filtre médian à 3 états pour le débruitage " décrit dans l'article IEEE Transaction on Image Processing, Vol 8, N°12 Décembre 1999 de Tao Chen, Kai-Kuang Ma, et Li-Hui Chen.

    Ce type de filtre s'applique sur une image entachée d'un bruit impulsionnel.

    L'avantage du filtre proposé est de supprimer le bruit impulsionnel tout en préservant les détails de l'image.

  • II-Présentation de l'algorithme
  • 1-Principe
  • On cherche à traiter une image affectée d'un bruit impulsionnel. Dans la pratique, ce type de bruit apparaît durant la transmission d'une image dans un canal de communication. Un " bruit impulsionnel de probabilité d'apparition p " est modélisé de la façon suivante :

     

    où Sij représente le pixel de l'image non bruitée et Nij le bruit se substituant au pixel originel.

    Le principe du filtre étudié est, dans un premier temps, de déterminer si le pixel est corrompu ; puis de lui appliquer soit un filtre médian, soit un filtre médian pondéré, soit de le laisser inchangé. Le filtre médian (SM : Standard Median) permet effectivement la suppression du bruit impulsionnel, mais efface les détails fins et arrondit les angles. Afin de trouver un bon compromis entre les détails et la suppression du bruit, Ko et Lee ont proposé le filtre CWM (Center Weight Median), dans lequel on affecte un poids wc plus ou moins important au pixel central de la fenêtre d'étude. En sortie du filtre CWM on a :

    Yij = médiane(Xi-s,j-t , wc * Xij où (s,t) W) et * est l'opérateur qui signifie que l'on a wc copies de Xij.

    W est le fenêtre carrée qui entoure le pixel que l'on étudie.

    Remarques :

  • 2-Détails de l'algorithme
  • Le filtre médian à trois états (TSM Tri-State Median) vise à faire un compromis entre la suppression du bruit impulsionnel et la qualité de l'image (ie préserver les détails).

    Les étapes de l'algorithme sont les suivantes :

    où d1 = ï Xij - YijSMï et d2 = ï Xij - YijCWMï

    Remarque : on peut montrer que d2 est inférieure ou égale à d1.

    Interprétation :

    Si la distance d2 est grande (ie supérieure au seuil T), alors il y a de grandes chances pour que le pixel du centre de la fenêtre soit corrompu et donc pour être sûr de le corriger on va appliquer le filtrage SM (car ce filtrage accorde moins d'importance au pixel central corrompu).

    A l'opposé, si d1 est petite, c'est-à-dire la distance entre le pixel d'origine et le pixel filtré par SM est faible, on garde de préférence le pixel d'origine de façon à préserver les détails.

    De façon intermédiaire, si d2<T<d1, alors le pixel est peut être corrompu, donc on essaie de le corriger tout en lui accordant un certain poids. On applique alors le filtrage CWM.

    On remarque l'importance de seuil T qui est à choisir de façon optimale. Dans le paragraphe concernant les résultats, on montrera l'influence de T sur les performances du filtre TSM.

    En conclusion, en termes de préservation des détails, par ordre décroissant des performances on a : filtre identité, filtre CWM, filtre SM.

    En termes de suppression du bruit, par ordre croissant des performances on a : filtre identité, filtre CWM, filtre SM.

    Le filtre TSM permet ainsi de marier habilement les avantages des trois filtres précédents.

    Pour voir le code cliquer ici.

     

  • III-Résultats
  • On teste le filtre TSM sur une image bruitée par un bruit impulsionnel de probabilité p, uniformément réparti sur [0 ;255]. On utilise une fenêtre 3x3. De plus on se rend rapidement compte que les meilleures performances sont obtenues pour Wc=3. On pourra consulter les images ci-dessous :

    Afin d'apprécier les performances du filtre TSM, on utilise une méthode d'appréciation subjective d'une part, et d'autre part on calcule l'erreur quadratique moyenne avec la formule suivante

    où M et N sont les dimensions de l'image, et Sij est le pixel non corrompu et Yij le pixel après filtrage.

  • 1-Appréciation subjective de la qualité
  • On remarque que cette qualité n'est pas corrélée avec une erreur quadratique minimale.

  • 2-Appréciation de la qualité par le calcul de la moyenne quadratique.


  • Bateau

    EQM avec p=0.2

    EQM avec p=0.02

    SM

    88

    35

    CWM

    99

    18

    TSM

    85 (obtenue pour Topt=16)

    8 (obtenue pour Topt=34) cf courbe de EQM en fonction de T



    Lena

    EQM avec p=0.2

    EQM avec p=0.02

    SM

    78

    30

    TSM

    68 (obtenue pour Topt=12)

    7 (obtenue pour Topt=32)

    Il apparaît que l'intérêt du filtre TSM diminue quand la probabilité de corruption d'un pixel augmente. Cependant pour des images faiblement bruitées, le filtre TSM est très efficace.

    Interprétation : En effet, quand le taux de pixels corrompus augmente, la probabilité pour que des pixels bruités soient présents dans la fenêtre 3x3 augmente. Ainsi, d2 diminue quand le nombre de pixels très corrompus dans la fenêtre augmente. Donc on a tendance à choisir CWM alors qu'on a de grandes chances que le pixel soit effectivement corrompu et que donc il aurait mieux valu choisir SM (qui corrige mieux un pixel corrompu).

    Quand la probabilité p augmente, on voit donc peut-être apparaître l'intérêt d'un autre filtre (non évoqué dans l'article), qui serait " bi-état " avec un état SM et un état Identité.

  • 3-Filtre " bi-état "
  • En appliquant le filtre bi-état, on a :

    Visualiser EQM en fonction de T.

    Le T optimum est T=40 et l'EQM est alors de 9. (On rappelle que pour le TSM, l'EQM était de 8).

    Image filtrée par bi-état p=0.02.

    Le T optimum est T=16 et l'EQM est alors de 74. On rappelle que pour le TSM, l'EQM était de 85. Image filtrée par bi-état p=0.2

    Ainsi, on voit bien l'apport du filtre " bi-état " quand la probabilité p augmente. En effet chaque pixel étudié a plus de chance d'être corrompu, et le fait de ne pas avoir " d'état CWM " a l'avantage de ne jamais surpondérer le pixel central étudié. Ainsi, on conserve les détails (grâce au filtre Identité) tout en corrigeant bien le pixel erroné. Cependant, il reste un peu de pixels erronés.

    Si on cherche à supprimer d'avantage les pixels erronés au détriment des détails, on peut augmenter la taille de la fenêtre ( passer à 5x5) auquel cas le filtre TSM donne le résultat optimal (par rapport à SM, CWM et bi-état).

    On interprète ce phénomène comme suit :

    Il semblerait donc intéressant de déterminer un seuil de probabilité pseuil en dessous duquel on utiliserait le filtre TSM (à trois états) et au dessus duquel on utiliserait le filtre bi-état, tout en tenant compte du degré de détails souhaité (on agit sur la taille de la fenêtre).

     

  • IV-Conclusion


  • L'intérêt du filtre TSM est donc important pour des images faiblement bruitées. Par ailleurs si l'on souhaite conserver les détails d'une image fortement bruitée on peut améliorer les performances grâce au filtre bi-état. Cependant si l'on est moins exigeant au niveau des détails, on peut augmenter la taille de la fenêtre d'étude et à nouveau utiliser le filtre TSM.