Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Trasformata di Fourier | Elaborazione delle Immagini con OpenCV
Fondamenti di Computer Vision

bookTrasformata di Fourier

Note
Definizione

La trasformata di Fourier (FT) è uno strumento matematico fondamentale utilizzato nell'elaborazione delle immagini per analizzare le componenti di frequenza di un'immagine.

Permette di trasformare un'immagine dal dominio spaziale (dove i valori dei pixel sono rappresentati direttamente) al dominio delle frequenze (dove si analizzano schemi e strutture in base alla loro frequenza). Questo è utile per attività come filtraggio delle immagini, rilevamento dei bordi e riduzione del rumore.

Per prima cosa, è necessario convertire l'immagine in scala di grigi:

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

Abbiamo utilizzato COLOR_BGR2GRAY perché le immagini vengono principalmente lette in formato BGR, che è l'inverso di RGB.

Per calcolare la trasformata di Fourier 2D:

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

Qui, fft2() converte l'immagine dal dominio spaziale al dominio delle frequenze, e fftshift() sposta le componenti a bassa frequenza al centro.

Per visualizzare lo spettro di magnitudo:

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

Poiché la trasformata di Fourier restituisce numeri complessi, si utilizzano i valori assoluti (np.abs()) per una visualizzazione significativa.

La funzione np.log migliora la visibilità, poiché i valori di magnitudo grezzi variano notevolmente in scala.

Compito

Swipe to start coding

Ti viene fornita un'immagine (image):

  • Converti l'immagine in scala di grigi e memorizzala nella variabile gray_image;
  • Applica la trasformata di Fourier alla gray_image e memorizza il risultato nella variabile dft;
  • Esegui lo shift della frequenza zero al centro e memorizza il risultato nella variabile dft_shift;
  • Calcola lo spettro di magnitudine e memorizzalo nella variabile magnitude_spectrum.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 2
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Suggested prompts:

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?

close

Awesome!

Completion rate improved to 3.45

bookTrasformata di Fourier

Scorri per mostrare il menu

Note
Definizione

La trasformata di Fourier (FT) è uno strumento matematico fondamentale utilizzato nell'elaborazione delle immagini per analizzare le componenti di frequenza di un'immagine.

Permette di trasformare un'immagine dal dominio spaziale (dove i valori dei pixel sono rappresentati direttamente) al dominio delle frequenze (dove si analizzano schemi e strutture in base alla loro frequenza). Questo è utile per attività come filtraggio delle immagini, rilevamento dei bordi e riduzione del rumore.

Per prima cosa, è necessario convertire l'immagine in scala di grigi:

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

Abbiamo utilizzato COLOR_BGR2GRAY perché le immagini vengono principalmente lette in formato BGR, che è l'inverso di RGB.

Per calcolare la trasformata di Fourier 2D:

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

Qui, fft2() converte l'immagine dal dominio spaziale al dominio delle frequenze, e fftshift() sposta le componenti a bassa frequenza al centro.

Per visualizzare lo spettro di magnitudo:

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

Poiché la trasformata di Fourier restituisce numeri complessi, si utilizzano i valori assoluti (np.abs()) per una visualizzazione significativa.

La funzione np.log migliora la visibilità, poiché i valori di magnitudo grezzi variano notevolmente in scala.

Compito

Swipe to start coding

Ti viene fornita un'immagine (image):

  • Converti l'immagine in scala di grigi e memorizzala nella variabile gray_image;
  • Applica la trasformata di Fourier alla gray_image e memorizza il risultato nella variabile dft;
  • Esegui lo shift della frequenza zero al centro e memorizza il risultato nella variabile dft_shift;
  • Calcola lo spettro di magnitudine e memorizzalo nella variabile magnitude_spectrum.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 2
single

single

some-alt