Dans cette partie, nous présenterons les notions de fréquence spatiale et de filtrage des images.
Le filtrage des images permet d’appliquer un traitement global sur une image pour la modifier. Par exemple, cela permet de supprimer le bruit dans l’image avant de la traiter. Le filtrage est très utilisé en traitement d’image, souvent en pré ou post-traitement, c’est-à-dire en début ou en fin de la chaîne de traitements.
Nous verrons le filtrage linéaire ainsi que quelques filtres non linéaires les plus utiles.
Pour bien comprendre les filtres linéaires, il est important d’assimiler la notion de fréquence spatiale et de représentation spectrale d’une image.
C’est pourquoi ce premier chapitre est consacrée à ces notions.
Notion de fréquences spatiales
Analogie avec les fréquences sonores
Les fréquences sonores sont connues de tous :
Les hautes fréquences correspondent aux sons aigus ;
Les basses fréquences correspondent aux sons graves.
Dans une image, c’est exactement la même chose, mais au lieu de considérer les variations du signal au cours du temps comme pour le son, on considère les variations spatiales du signal, le long des lignes ou le long des colonnes de l’image.
Les hautes fréquences spatiales correspondent à un niveau de gris qui varie fortement sur quelques pixels, par exemple, dans une zone de l’image très texturée.
Les basses fréquences spatiales correspondent à une variation lente du niveau de gris, par exemple dans une zone de dégradé.

Comme on le fait pour le son, on peut analyser une image pour connaître les fréquences que contient l'image.
Décomposition sinusoïdale d'une image
Pour séparer les fréquences contenues dans une image, on va la décomposer en une somme d'images contenant une seule fréquence, qui sont les images sinusoïdales. On parle de décomposition sinusoïdale.
où, comme indiqué au premier chapitre, l'axe x est vertical vers le bas, et l'axe y est horizontal vers la droite, de même pour les axes u et v ,
et où cos(2π(uxN+vyM)) et sin(2π(uxN+vyM)) sont des images sinusoïdales de fréquence spatiale (u,v) , c'est-à-dire que :
Les lignes sont des sinusoïdes de période Nu pixel et de fréquence spatiale uN pixel−1 ;
Les colonnes sont des sinusoïdes de période Mv pixel et de fréquence spatiale vM pixel−1.
Voici des exemples d'images sinusoïdales :

Les pondérations a(u,v) et b(u,v) donnent la contribution de la fréquence (u,v) dans l'image im .
La figure ci-dessous illustre le concept de la décomposition sinusoïdale de façon schématique :

Les fréquences spatiales sont exprimées en pixel−1 et sont associées à différents types d’informations dans les images :
Les basses fréquences spatiales permettent de représenter les zones avec des variations lentes de luminance : zones unies ou dégradées ;
Les hautes fréquences spatiales permettent de représenter les zones avec des variations rapides de luminance : contours, texture… ;
La fréquence spatiale u permet de représenter les variations spatiales selon l’axe x, c'est-à-dire les variations le long des colonnes de l’image telles que les contours horizontaux ;
La fréquence spatiale v permet de représenter les variations spatiales selon l’axe y, c'est-à-dire les variations le long des lignes de l’image telles que les contours verticaux.
Représentation spectrale d’une image : TFD 2D
Toute image est donc définie par les N×M coefficients de pondération a(u,v) et b(u,v) associés aux N×M images sinusoïdales de fréquences (u,v)u∈[0,N−1N],v∈[0,M−1M] .
L’ensemble de ces N×M coefficients a(u,v) et b(u,v) constitue la représentation spectrale ou spectre de l’image.
De la même façon que pour un signal 1D, le spectre d’une image numérique se calcule par une transformée de Fourier discrète en 2 dimensions ou TFD 2D.
où IM(u,v)=a(u,v)−j b(u,v)2
et où j est le complexe unité imaginaire pur.
Avec cette écriture, on obtient un spectre IM(u,v) à valeurs complexes, dont la partie réelle et la partie imaginaire sont directement liées à chaque pondération a(u,v) et b(u,v) (le voir comme une facilité d'écriture et ne pas se laisser impressionner par l'utilisation des complexes !).
IM(u,v) est défini pour tout u=0,...,N−1 et v=0,...,M−1.
Le spectre est périodique infini de période N en u et de période M en v. On choisit généralement de le représenter par une seule période centrée en (u=0,v=0), avec u∈[−N2,N2−1] et v∈[−M2,M2−1].

On peut alors montrer que IM(−u,−v)=IM∗(u,v) où ∗ désigne le complexe conjugué. Ainsi, la partie réelle du spectre est paire, et la partie imaginaire du spectre est impaire.
La figure ci-dessous montre le spectre d'une image représenté soit par son amplitude et sa phase, soit par sa partie réelle et sa partie imaginaire.

L’image peut être retrouvée à partir du spectre en appliquant sur le spectre une transformée de Fourier inverse ou TFD−1 :
Remarque : cette équation est exactement la même que la décomposition sinusoïdale de im, réécrite avec des exponentielles complexes.
Contribution des fréquences spatiales au contenu de l’image
La pondération de chaque fréquence spatiale (u,v) est donnée par la valeur du coefficient à la position (u,v) et (−u,−v) du spectre, c'est-à-dire la valeur de IM(u,v) et IM(−u,−v).
Une image sinusoïdale de fréquence (u0,v0) a comme représentation spectrale deux pics de Dirac aux positions (u0,v0) et (−u0,−v0) : cette image ne contenant qu'une seule fréquence, son spectre ne contient que 2 valeurs non nulles.

Dans le spectre d'une image,
Les coefficients situés près de l'origine correspondent aux basses fréquences (BF dans l'image ci-dessous) : zones unies, dégradées ;
Les coefficients en périphérie du spectre correspondent aux hautes fréquences (HF) : contours, détails ;
Les coefficients sur l'axe horizontal correspondent aux contours verticaux ;
Les coefficients sur l'axe vertical correspondent aux contours horizontaux.

On peut donc observer des fortes valeurs dans la direction orthogonale aux contours présents dans l'image : dans le spectre de l'image du pont, ce sont les directions horizontales et verticales ; dans le spectre de l'image du bateau donné plus haut, on observe des pics dans les directions orthogonales aux mâts des bateaux.
Propriétés de la TFD-2D
Ci-dessous, on note par
le fait que IM est la TFD de im
Symétrie
La TFD est symétrique :
Linéarité
La TFD de la somme pondérée de 2 images est la somme de leurs TFD
si
im1↔IM1 et im2↔IM2
alors
α im1+β im2↔α IM1+β IM2
Translation
Si on translate une image, sa TFD subit un déphasage
Cette propriété est illustrée sur la figure ci-dessous :

Rotation
Si on applique une rotation à une image, sa TFD subit la même rotation.

Théorème de convolution
La TFD du produit de convolution de 2 images est le produit scalaire des TFD, et vice versa
et inversement
Cette propriété nous sera très utile pour le filtrage.