Ścieżka to złożona wartość oznaczona
Weź dowolny zamknięty kształt, który możesz narysować piórem – sylwetkę kota, swoje podpisy, falującą gwiazdę – i pobierz N punktów wokół niego w równych odstępach czasu. Traktuj każdy punkt (x, y) jako pojedynczą liczbę zespoloną x + iy. Teraz masz okresowy sygnał o wartości złożonej o długości N i każdy sygnał okresowy, niezależnie od tego, jak nieregularny, może być dokładnie zapisany jako suma wyrazów wielomianowych: szereg dyskretnej transformaty Fouriera.
Każde wyrażenie to obracający się okrąg
Rozkład dyskretna transformata Fouriera (RTF) rozkłada ścieżkę na N współczynników zespolonych ck, jeden dla każdej częstotliwości całkowitej k (w tym częstotliwości ujemne). Każdy współczynnik jest również liczbą zespołoną, więc ma on moduł i faza — a termin ck·e^(i·k·2πt/N) śledzi dokładnie okrąg o promieniu |ck|, obracając się z prędkością kątową proporcjonalną do k, począwszy od argumentu fazowego arg(ck):
c_k = (1/N) · Σ_{n=0}^{N-1} ścieżka[n] · exp(-i · 2π · k · n / N) dla k = -N/2 .. N/2 rekonstrukcja(t) = Σ_k c_k · exp(i · k · 2π · t / N) ↑ okrąg k: promień |c_k|, prędkość k, kąt początkowy arg(c_k) Łącz okręgi jeden za drugim — środek okręgu k+1 znajduje się na końcówce okręgu k — i, uruchamiając przez pełny okres, końcówka najostatniego okręgu śledzi dokładnie Twój oryginalny rysunek. Sortuj okręgi według |k| tak, aby największy, najwolniejszy okrąg był narysowany pierwszy, a każdy następny mniejszy, szybszy okrąg doprecyzowuje kształt, i otrzymasz klasyczną animację: kaskadę wklęsłych kół, którego zewnętrzny punkt rysuje obraz.
c_k = (1/N) · Σ_{n=0}^{N-1} path[n] · exp(-i · 2π · k · n / N) for k = -N/2 .. N/2
reconstruction(t) = Σ_k c_k · exp(i · k · 2π · t / N)
↑ circle k: radius |c_k|, speed k, start angle arg(c_k)
Ile kół w rzeczywistości potrzebujesz?
Przy wszystkich N kołach rekonstrukcja jest dokładna – to jedynie odwracalna transformacja, a nie przybliżenie. Ciekawe zachowanie pojawia się, gdy używamy mniej: dla płynnego, łagodnie wyprofilowanego rysunku współczynniki ck zwykle szybko zanikają wraz ze wzrostem |k|, więc już kilka niskoczęstotliwościowych kół uchwyci ogólną formę i brakuje tylko drobnej wibracji. Rysunek o ostrych kątach ma współczynniki, które znikają znacznie wolniej, ponieważ reprezentowanie dyscontinuity w nachyleniu za pomocą gładkich sinusoid wymaga wysokich częstotliwości – to samo powoduje, że szereg Fouriera prostej ma potrzebować nieskończonej liczby wyrazów, aby idealnie odwzorować ostry brzeg, a zjawisko Gibbsa z niewielkim przechodem wartości występuje w pierścieniach przy krawędzi, jeśli zatrzymamy się za wcześnie.
Dlaczego istotne są ujemne częstotliwości
Dla sygnału o wartościach rzeczywistych współczynniki Fouriera w +k i -k są liczbami zespolonymi sprzężonymi do siebie, a ich doparowanie daje znane szeregi sinusoidalno-cosinusowe z kursu pierwszego stopnia. Ścieżka 2D jest jednak inna: x + iy jest rzeczywiście złożone, a nie rzeczywiste, więc współczynniki +k i -k są niezależne i oba niosą informacje rzeczywiste – okręgi +k obracają się w jednym kierunku, a okręgi -k w drugim. Pozbycie się okrążeń o ujemnej częstotliwości i zdegenerowany kształt 2D zwykle przekształca się w coś, co zazwyczaj tylko śled elipsę lub linię, ponieważ wyrzucono połowę informacji potrzebnej do złamania symetrii obrotowej.
Od epicykli Ptolemeusza po przetwarzanie sygnałów
Wizualizacja okręgów jeżdżących na kole po kole przewyższa analizę Fouriera — astronomowie Ptolejmeuszowie używali epicykl i równoległych ruchów, aby przybliżyć ruch planet wokół nieruchomej Ziemi, dodając więcej okręgów, gdy dopasowanie wymagało poprawy. Współczesna wersja Fouriera to ta sama geometryczna idea przedstawiona na solidnym grunt matematycznym: zamiast ręcznego dopasowywania okrążeń do pomiarów, DFT oblicza dokładny promień, prędkość i fazę każdego okręgu bezpośrednio z danych. Ta sama maszyna — rozkład sygnału okresowego na sumę wirujących fazorów — stanowi podstawę filtrów cyfrowych, kompresji MP3 i JPEG oraz praktycznie każdego analizatora widma.
Frequently asked questions
Czy to jest ta sama koncepcja epicykli użyta przez Ptolemeusza dla orbit planet?
Geometrycznie, tak – koła na kole. Ptolemeusz wykorzystał kilka epicykli jako przybliżenie geocentryczne rzeczywistych eliptycznych orbit i nie gwarantowało to dokładności. Wersja Fouriera jest matematycznie dokładna dla dowolnego zamkniętego obwodu: z wystarczającą liczbą okręgów idealnie odwzorowuje rysunek, ponieważ pochodzi bezpośrednio z transformaty dyskretnej Fouriera tego obwodu.
Dlaczego koła stają się mniejsze, gdy dodajemy więcej?
Dla typowo gładkiego rysunku współczynniki Fouriera zanikają wraz ze wzrostem częstotliwości – w przybliżeniu jak 1/n lub szybciej, w zależności od liczby ostrych krawędzi, jakie posiada ślad. Koła przenoszące wyższe częstotliwości odpowiadają za detale i naturalnie mają mniejsze promienie; ślad z ostrymi krawędziami wymaga ich więcej, aby wyglądał na wyraźny.
Dlaczego potrzebujemy również ujemnych częstotliwości?
Rzeczywisty ślad 2D jest sygnałem złożonym, a nie rzeczywistym, więc jego seria Fouriera nie jest symetryczna w taki sposób jak seria sygnału rzeczywistego. Koła przy ujemnych częstotliwościach obracają się w przeciwnym kierunku niż koła przy dodatnich częstotliwościach, i oba są generalnie potrzebne – pominięcie którejkolwiek z połówek przekształca rekonstrukcję śladu 2D w linię prostą lub elipsę zamiast tego.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Fourier Epicycles i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Fourier Epicycles