Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Fourier-transformering | Billedbehandling med OpenCV
Computer Vision Essentials

bookFourier-transformering

Note
Definition

Fourier-transformen (FT) er et grundlæggende matematisk værktøj, der anvendes i billedbehandling til at analysere frekvenskomponenterne i et billede.

Den gør det muligt at transformere et billede fra rummet (hvor pixelværdier er repræsenteret direkte) til frekvensdomænet (hvor vi analyserer mønstre og strukturer baseret på deres frekvens). Dette er nyttigt til opgaver som billedfiltrering, kantdetektion og støjreduktion.

Først skal vi konvertere billedet til gråtoner:

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
Note
Bemærk

Vi brugte COLOR_BGR2GRAY, fordi billeder primært læses i BGR-format, hvilket er omvendt af RGB.

For at beregne 2D Fourier-transformen:

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

Her konverterer fft2() billedet fra rumdomænet til frekvensdomænet, og fftshift() flytter lavfrekvente komponenter til midten.

For at visualisere magnitudespektret:

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

Da Fourier-transformen giver komplekse tal som output, tages absolutte værdier (np.abs()) for en meningsfuld visualisering.

Funktionen np.log forbedrer synligheden, da rå magnitudværdier varierer meget i skala.

Opgave

Swipe to start coding

Du får et image:

  • Konverter billedet til gråtoner og gem det i variablen gray_image;
  • Anvend Fourier-transform på gray_image og gem resultatet i variablen dft;
  • Udfør nul-frekvensskift til centrum og gem resultatet i variablen dft_shift;
  • Beregn et magnitudespektrum og gem det i variablen magnitude_spectrum.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 2
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

Awesome!

Completion rate improved to 3.45

bookFourier-transformering

Stryg for at vise menuen

Note
Definition

Fourier-transformen (FT) er et grundlæggende matematisk værktøj, der anvendes i billedbehandling til at analysere frekvenskomponenterne i et billede.

Den gør det muligt at transformere et billede fra rummet (hvor pixelværdier er repræsenteret direkte) til frekvensdomænet (hvor vi analyserer mønstre og strukturer baseret på deres frekvens). Dette er nyttigt til opgaver som billedfiltrering, kantdetektion og støjreduktion.

Først skal vi konvertere billedet til gråtoner:

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
Note
Bemærk

Vi brugte COLOR_BGR2GRAY, fordi billeder primært læses i BGR-format, hvilket er omvendt af RGB.

For at beregne 2D Fourier-transformen:

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

Her konverterer fft2() billedet fra rumdomænet til frekvensdomænet, og fftshift() flytter lavfrekvente komponenter til midten.

For at visualisere magnitudespektret:

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

Da Fourier-transformen giver komplekse tal som output, tages absolutte værdier (np.abs()) for en meningsfuld visualisering.

Funktionen np.log forbedrer synligheden, da rå magnitudværdier varierer meget i skala.

Opgave

Swipe to start coding

Du får et image:

  • Konverter billedet til gråtoner og gem det i variablen gray_image;
  • Anvend Fourier-transform på gray_image og gem resultatet i variablen dft;
  • Udfør nul-frekvensskift til centrum og gem resultatet i variablen dft_shift;
  • Beregn et magnitudespektrum og gem det i variablen magnitude_spectrum.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 2
single

single

some-alt