Transformée de Fourier
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)
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.
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 variabledft
; - 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
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you explain why we use the frequency domain for image processing?
What are some practical applications of the magnitude spectrum?
How do I interpret the magnitude spectrum visually?
Awesome!
Completion rate improved to 3.45
Transformée de Fourier
Glissez pour afficher le menu
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)
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.
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 variabledft
; - 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
Merci pour vos commentaires !
single