Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Transformée de Fourier | Traitement d'Images avec OpenCV
Principes Fondamentaux de la Vision par Ordinateur

bookTransformée de Fourier

Note
Définition

La transformée de Fourier (TF) est un outil mathématique fondamental utilisé en traitement d'image pour analyser les composantes fréquentielles d'une image.

Elle permet de transformer une image du domaine spatial (où les valeurs des pixels sont représentées directement) vers le domaine fréquentiel (où l'on analyse les motifs et structures selon leur fréquence). Ceci est utile pour des tâches telles que le filtrage d'image, la détection de contours et la réduction du bruit.

Tout d'abord, il est nécessaire de convertir l'image en niveaux de gris :

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
Note
Remarque

Le paramètre COLOR_BGR2GRAY est utilisé car les images sont principalement lues au format BGR, qui est l'inverse du format RGB.

Pour calculer la transformée de Fourier 2D :

dft = np.fft.fft2(image)
dft_shift = np.fft.fftshift(dft)

Ici, fft2() convertit l'image du domaine spatial au domaine fréquentiel, et fftshift() déplace les composantes basses fréquences vers le centre.

Pour visualiser le spectre de magnitude :

magnitude_spectrum = 20 * np.log(np.abs(dft_shift))

Étant donné que la transformée de Fourier produit des nombres complexes, il convient de prendre les valeurs absolues (np.abs()) pour une visualisation pertinente.

La fonction np.log améliore la visibilité, car les valeurs brutes de magnitude varient fortement en échelle.

Tâche

Swipe to start coding

Vous disposez d'une image :

  • Convertir l'image en niveaux de gris et stocker le résultat dans la variable gray_image ;
  • Appliquer la transformation de Fourier à gray_image et stocker le résultat dans la variable dft ;
  • Effectuer un décalage de la fréquence zéro vers le centre et stocker le résultat dans la variable dft_shift ;
  • Calculer le spectre de magnitude et stocker le résultat dans la variable magnitude_spectrum.

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

close

Awesome!

Completion rate improved to 3.45

bookTransformée de Fourier

Glissez pour afficher le menu

Note
Définition

La transformée de Fourier (TF) est un outil mathématique fondamental utilisé en traitement d'image pour analyser les composantes fréquentielles d'une image.

Elle permet de transformer une image du domaine spatial (où les valeurs des pixels sont représentées directement) vers le domaine fréquentiel (où l'on analyse les motifs et structures selon leur fréquence). Ceci est utile pour des tâches telles que le filtrage d'image, la détection de contours et la réduction du bruit.

Tout d'abord, il est nécessaire de convertir l'image en niveaux de gris :

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
Note
Remarque

Le paramètre COLOR_BGR2GRAY est utilisé car les images sont principalement lues au format BGR, qui est l'inverse du format RGB.

Pour calculer la transformée de Fourier 2D :

dft = np.fft.fft2(image)
dft_shift = np.fft.fftshift(dft)

Ici, fft2() convertit l'image du domaine spatial au domaine fréquentiel, et fftshift() déplace les composantes basses fréquences vers le centre.

Pour visualiser le spectre de magnitude :

magnitude_spectrum = 20 * np.log(np.abs(dft_shift))

Étant donné que la transformée de Fourier produit des nombres complexes, il convient de prendre les valeurs absolues (np.abs()) pour une visualisation pertinente.

La fonction np.log améliore la visibilité, car les valeurs brutes de magnitude varient fortement en échelle.

Tâche

Swipe to start coding

Vous disposez d'une image :

  • Convertir l'image en niveaux de gris et stocker le résultat dans la variable gray_image ;
  • Appliquer la transformation de Fourier à gray_image et stocker le résultat dans la variable dft ;
  • Effectuer un décalage de la fréquence zéro vers le centre et stocker le résultat dans la variable dft_shift ;
  • Calculer le spectre de magnitude et stocker le résultat dans la variable magnitude_spectrum.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2
single

single

some-alt