Transformata Fouriera i analiza spektralna
Transcript of Transformata Fouriera i analiza spektralna
Transformata Fouriera i analiza spektralna
● Z czego składają się sygnały?● Sygnały jednowymiarowe, częstotliwość● Liczby zespolone● Transformata Fouriera● Szybka Transformata Fouriera (FFT)● FFT w 2D● Przykłady
Częstotliwość Prędkość (liniowa): V = S / tS – drogat – czas
Prędkość kołowa: ω = θ / tθ – kątt – czas
kąt pełny = 2*PI PI=3.14....okres T [s] – czas, w jakim przebyty zostanie kąt pełny
Częstotliwość kąt pełny = 2*PI PI=3.14....2*PI = 360˚PI = 180˚PI/2 = 90˚ itd...
okres T [s] – czas, w jakim przebyty zostanie kąt pełny
jednostka: sekunda 1 s
częstotliwość f [Hz] – ile pełnych kątów na sekundęjednostka: Herz 1 Hz = 1/s
ω = 2*PI / T = 2*PI *f
Sygnał 1D
Sygnał 1D
Sygnał 1D
Sygnały składają się z wielu składowych o różnych częstotliwościach...
Zaszumiony sygnał 1D
...dodatkowo występują w nich szumy.
Sygnał 1D
Celem analizy spektralnej i zastosowania transformaty Fouriera jest analiza sygnału w przestrzeni częstotliwości (rys. po prawej). Widać, że w sygnale występują dwie częstotliwości – 25 Hz oraz 40 Hz.
Przykład zastosowania:odfiltrowanie zbędnych częstotliwości
Mając zaszumiony sygnał, możemy przenieść go do przestrzeni częstotliwości....
Przykład zastosowania:odfiltrowanie zbędnych częstotliwości
... i zaobserwować, iż pewne częstotliwości zdecydowanie dominują w sygnale, pozostałe mogą (ale nie muszą) odpowiadać za szum.
Przykład zastosowania:odfiltrowanie zbędnych częstotliwości
Usuwamy (zerujemy) “zbyt małe” częstotliwości i wracamy do przestrzeni sygnału za pomocą transformaty odwrotnej...
Przykład zastosowania:odfiltrowanie zbędnych częstotliwości
...otrzymując sygnał jedynie z dominującymi składowymi częstotliwościowymi.
Transformata Fouriera
t – czas (time domain)f – częstotliwość (frequency domain)
Liczby zespolone
Liczby zespoloneDziałania
Liczby zespolonePostać trygonometryczna
Wzory Eulera
z = | z | (cosφ + i sinφ) = | z | e^(iφ)
Liczby zespolone
Transformata Fouriera
Transformata Fouriera
Symetrie
Transformata Fouriera
Właściwości
Transformata FourieraKonwolucja (splot) dwóch funkcji g(t) oraz h(t), których transformatami Fouriera są odpowiednio
G(f) oraz H(f).
Zamiast dokonywać uciążliwego obliczeniowo splotu w sposób bezpośredni, można obliczenia przenieść do przestrzeni częstotliwości, gdzie splot sprowadza się do mnożenia.
Transformata FourieraKonwolucja (splot) to np. również nakładanie
dyskretnej maski na obraz (np. Sobela, Gaussa, itd.)Mask = [-1,-2,-1;
0, 0, 0; 1, 2, 1];
Transformata Fouriera
Korelacja dwóch funkcji
* oznacza liczbę zespoloną sprzężoną
Transformata Fourieradla dyskretnych sygnałów
Krytyczna częstotliwość Nyquista
to “sampling interval” - tzn. jak często próbkujemy dany sygnał
Próbkując dany sygnał nie jesteśmy w stanie “uchwycić” tych wysokich częstotliwości, które są “szybsze” od naszego próbkowania.
Powyższa zależność mówi, że próbkowanie będzie skuteczne jeśli da nam co najmniej dwie zmierzone wartości w jednym okresie T danej częstotliwości.
Transformata Fourieradla dyskretnych sygnałów
Próbkowanie
Transformata Fourieradla dyskretnych sygnałów
W przypadku dyskretnych sygnałów, całka przechodzi w sumę.
Nasz dyskretny sygnał składa się z N zmierzonych wartości:
Możemy uzyskać informacje o następujących częstotliwościach:
Transformata Fourieradla dyskretnych sygnałów
Dyskretna Transformata FourieraOdwrotna
Dyskretna Transformata Fouriera
W ogólności wszystkie operacje są dla liczb zespolonych.
Szybka Transformata Fourieradla dyskretnych sygnałów
Szybka Transformata Fouriera (Fast Fourier Transform – FFT) pozwala w sposób
efektywny liczyć transformaty dla sygnałów dyskretnych.
Transformata Fourieratransformata cosinusów i sinusów
Transformata Fouriera
Transformata sinusów
Transformata cosinusów
FFT w 2DFFT w dwóch wymiarach
Inverse FFT w dwóch wymiarach
FFT w 2DReasumując, dla obrazów przedstawianych jako dwuwymiarowa funkcja
f(m,n) mamy
FFT w 2DW przypadku dwóch wymiarów, FFT wykonuje się najpierw w jednym z wymiarów (np. dla każdego wiersza) a później dla drugiego wymiaru na otrzymanej transformacie z pierwszej FFT.
Analogicznie jest dla większej liczby wymiarów.
FFT w 2DDlatego w Matlabie wykonanie FFT dla obrazu (funkcji dwuwymiarowej)
Y = fft2(X)jest równoważne wykonaniu jednowymiarowej FFT dla każdego wiersza a potem jednowymiarowej FFT dla kązdej kolumny w wynikowym obrazie
fft(fft(X).').'
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D Warto zwrócić uwagę, że rysunek transformaty pokazuje większą energię dla dużych horyzontalnych częstotliwości niż dla dużych wertykalnych częstotliwości. Wynika to z faktu, iż na oryginalnym rysunku szybsze zmiany następują w przekroju poziomym (tzn. jest większa częstotliwość zmian), dlatego, że prostokąt jest węższy w poziomie.
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D
FFT w 2D: usuwanie częstotliwości o niskich wspólczynnikach Fouriera
FFT w 2D: usuwanie częstotliwości o wysokich wspólczynnikach Fouriera
FFT w 2D: usuwanie częstotliwości o niskich wspólczynnikach Fouriera
FFT w 2D: usuwanie częstotliwości o wysokich wspólczynnikach Fouriera
Wniosek
Widać, że nie zawsze współczynniki Fouriera o niskich wartościach odpowiadają za szum w obrazie
(sygnale) ale niosą ważną informację.
Konwolucja
Konwolucja dwóch obrazów w przestrzeni oryginalnej odpowiada mnożeniu w przestrzni
częstotliwości!
Konwolucja za pomocą dyskretnej maski 3x3
mask = [-1,-2,-1; 0, 0, 0; 1, 2, 1];x3 = filter2(mask, x);figureimshow(x3,'notruesize');title('po filtrowaniu');
Konwolucja za pomocą mnożenia w przestrzeni częstotliwości
mask = [-1,-2,-1; 0, 0, 0; 1, 2, 1];mask = rot90(mask,2);mask(s(1),s(2)) = 0; % Zero-pad mask to be 8-by-8;
%KONWOLUCJAx2 = ifft2(fft2(x).*fft2(mask));x2 = real(x2); % Remove imaginary part caused by roundoff error
Ten sposób jest dużo oszczędniejszy w przypadku dużych masek filtrów.
Konwolucja za pomocą mnożenia w przestrzeni częstotliwości
Korelacja w przestrzeni częstotliwości
Szukany wzorzec
Korelacja w przestrzeni częstotliwości
Korelacja dwóch obrazów również może być wydajnie przeprowadzona w przestrzeni częstotliwości. Jest ona ponownie równoważna mnożeniu transforat z dodatkową rotacją szukanego wzorca.
Korelacja w przestrzeni częstotliwości
Zwróć uwagę na jaśniejsze punkty.
Korelacja w przestrzeni częstotliwości
Po odpowiednim progowaniu...
Korelacja w przestrzeni częstotliwości
...wzorzec zostaje znaleziony.