Pourquoi les filtres gaussiens sont-ils utilisés comme filtres passe-bas dans le traitement d'image?

30

Dans le traitement du signal 1d, de nombreux types de filtres passe-bas sont utilisés. Cependant, les filtres gaussiens ne sont presque jamais utilisés.

Pourquoi sont-ils si populaires dans les applications de traitement d'image? Ces filtres sont-ils le résultat de l'optimisation de n'importe quel critère ou ne sont-ils qu'une solution ad hoc car la «bande passante» de l'image n'est généralement pas bien définie.

nimrodm
la source

Réponses:

28

Les applications de traitement d'image sont différentes des applications de traitement audio, par exemple, car bon nombre d'entre elles sont adaptées à l'œil. Les masques gaussiens simulent presque parfaitement le flou optique (voir aussi fonctions d'étalement des points ). Dans toute application de traitement d'image orientée vers la production artistique, les filtres gaussiens sont utilisés pour le flou par défaut.

Une autre propriété quantitative importante des filtres gaussiens est qu'ils sont partout non négatifs . Ceci est important car la plupart des signaux 1D varient d'environ 0 ( ) et peuvent avoir des valeurs positives ou négatives. Les images sont différentes dans le sens où toutes les valeurs d'une image ne sont pas négatives ( ). La convolution avec un noyau gaussien (filtre) garantit un résultat non négatif, de sorte que cette fonction mappe des valeurs non négatives à d'autres valeurs non négatives ( ). Le résultat est donc toujours une autre image valide. x R + f : R +R +xRxR+f:R+R+

En général, le rejet de fréquence dans le traitement d'image n'est pas aussi crucial que dans les signaux 1D. Par exemple, dans les schémas de modulation, vos filtres doivent être très précis pour rejeter les autres canaux transmis sur différentes fréquences porteuses, etc. Je ne vois rien d'aussi contraignant pour les problèmes de traitement d'image.

Phonon
la source
21

Les filtres gaussiens sont utilisés dans le traitement d'images car ils ont une propriété que leur prise en charge dans le domaine temporel, est égale à leur prise en charge dans le domaine fréquentiel. Cela vient du fait que le gaussien est sa propre transformée de Fourier.

Quelles sont les conséquences de cela? Eh bien, si le support du filtre est le même dans l'un ou l'autre domaine, cela signifie que le rapport des deux supports est de 1. En fin de compte, cela signifie que les filtres gaussiens ont le «produit de bande passante minimale».

Alors que pourriez-vous dire? Eh bien, dans le traitement d'image, une tâche très importante est d'éliminer le bruit blanc, tout en conservant les bords saillants. Cela peut être une tâche contradictoire - le bruit blanc existe à toutes les fréquences de manière égale, tandis que les bords existent dans la gamme des hautes fréquences. (Changements soudains des signaux spatiaux). Dans la suppression traditionnelle du bruit via le filtrage, un signal est filtré passe-bas, ce qui signifie que les composants haute fréquence de votre signal sont complètement supprimés.

Mais si les images ont des bords en tant que composants haute fréquence, les LPF traditionnels les supprimeront également, et visuellement, cela se manifeste lorsque les bords deviennent plus «tachés».

Comment alors supprimer le bruit, mais aussi préserver les fronts haute fréquence? Entrez dans le noyau gaussien. Étant donné que la transformée de Fourier d'un gaussien est également un gaussien, le filtre gaussien n'a pas de coupure nette à une fréquence de bande passante au-delà de laquelle toutes les fréquences supérieures sont supprimées. Au lieu de cela, il a une queue gracieuse et naturelle qui devient toujours plus basse à mesure que la fréquence augmente. Cela signifie qu'il agira comme un filtre passe-bas, mais permettra également aux composants de fréquence plus élevée proportionnels à la vitesse à laquelle sa queue se désintègre. (D'un autre côté, un LPF aura un produit à bande passante plus élevée, car sa prise en charge dans le domaine F n'est pas aussi grande que celle d'un Gaussien).

Cela permet alors d'atteindre le meilleur des deux mondes - l'élimination du bruit et la préservation des bords.

Spacey
la source
2
Je ne suis pas sûr que vous puissiez comparer les deux supports directement car l'un est mesuré en temps / longueur et l'autre en Hz / radians. Leur morphologie est identique, mais la propriété de mise à l' échelle universelle est toujours valable.
Phonon
Merci de me rappeler le produit à bande passante minimale. Cependant, comme Phonon l'a mentionné, la réduction de la prise en charge du domaine spatial (~ temps) augmente nécessairement la bande passante. Il n'y a aucun moyen de supprimer le bruit et de conserver les bords avec un simple filtre gaussien. C'est pourquoi Perona & Malik a développé un filtrage anisotrope.
nimrodm
@Phonon Comme je l'ai vu, les supports sont simplement le nombre d'entrées non nulles décrivant la fonction dans l'un ou l'autre domaine - je pense qu'ils sont les mêmes. (Par conséquent, rapport de 1). Cela dit, le produit de la largeur de bande temporelle est mesuré comme un produit de la variance de la fonction en temps et en fréquence. En quoi sa normalisation diffère des auteurs, je l'ai vue équivalente à 1/2 ou 1/4.
Spacey
1
@nimrodm "réduire la prise en charge du domaine spatial (~ temps) augmente nécessairement la bande passante.", Oui, telle est la tendance , résultant de la relation inverse temps-fréquence. (C'est de là que vient l'incertitude temps-fréquence). Cependant, la fonction gaussienne est d'une classe qui minimise totalement ce produit. Étant donné la relation inverse entre le temps et la fréquence, il n'y a aucun moyen de le faire à moins d'avoir un support égal dans les deux domaines.
Spacey
@nimrodm En diffusion anisotrope, les noyaux que j'ai vus sont encore gaussiens, mais avec des matrices de covariance qui dépendent du gradient de l'image. (C'est également une méthode non linéaire, le lissage VS gaussien qui est linéaire). Mais, le gaussien reste utilisé en raison de ses propriétés.
Spacey
11

Vous avez déjà de bonnes réponses, mais je vais simplement ajouter une autre propriété utile des filtres gaussiens 2D, qui est qu'ils sont séparables , c'est-à-dire que le filtre 2D peut être décomposé en deux filtres 1D. Cela peut être une considération de performance importante pour les tailles de noyau plus importantes, car un filtre séparable MxN peut être implémenté avec M+Ndes ajouts multiples alors qu'un filtre MxN non séparable nécessite M*Ndes ajouts multiples.

Paul R
la source
2
Voilà un bon argument. Un filtre gaussien 2D est à la fois radialement symétrique et toujours séparable, ce qui réduit considérablement la complexité de mise en œuvre.
nimrodm
1
À titre de référence, le Guide du DSP pour les scientifiques et les ingénieurs fournit une excellente description de cette propriété au chapitre 24 .
Caleb Reister
6

Le manuel imagemagick explique en grande partie pourquoi le filtrage avec des fonctions sinc conduit à des effets de "sonnerie", contrairement aux gaussiens. ( http://www.imagemagick.org/Usage/fourier/#blurred et http://www.imagemagick.org/Usage/fourier/#circle_spectrum ). Lorsque vous avez des bords (discontinuités) dans votre image (ce que font la plupart des images), la suppression complète de toutes les hautes fréquences vous laisse des ondulations dans le domaine spatial. Vous obtenez également une sonnerie lorsque vous filtrez des ondes carrées avec une fonction sinc dans une dimension.

Logique errante
la source
2

Il y a déjà eu de belles réponses, mais j'ajouterai mon grain de sel, ou plutôt une perspective différente:

Le filtrage au niveau le plus abstrait peut être considéré comme l'application de certaines connaissances préalables à certaines données brutes. Cela signifie que l'application d'un algorithme de filtrage consiste à l'appliquer avant de trouver un rapport signal / bruit optimal, par exemple.

Pour l'image, un a priori classique est la régularité des valeurs (par exemple l'intensité) par rapport à la position (cela peut être vu comme la fonction d'étalement de points mentionnée par @ Phonon). Il est souvent modélisé comme un gaussien car c'est la forme que vous obtiendriez en mélangeant différents objets avec un rayon de lissage connu (c'est ce qu'on appelle le théorème de limite centrale ). Ceci est surtout utile lorsque vous souhaitez faire des dérivés d'une image: plutôt que de différencier le signal brut (ce qui produirait une sortie bruyante), vous devriez le faire sur l'image lissée. Cela équivaut à appliquer un opérateur de type ondelette tel que les filtres de Gabor .

meduz
la source