Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Was ist ein Wavelet?

Ein Wavelet ist eine Wellenform von effektiv begrenzter Dauer, die einen Durchschnittswert von 0 und eine von 0 verschiedene Norm aufweist.

Viele Signale und Bilder von Interesse weisen ein stückweise glattes Verhalten auf, das von Transienten unterbrochen wird. Sprachsignale sind durch kurze Ausschläge (Burst) gekennzeichnet, die Konsonanten kodieren, gefolgt von stabilen Schwingungen, die auf Vokale hinweisen. Natürliche Bilder haben Kanten. Finanzzeitreihen weisen ein transientes Verhalten auf, das schnelle Auf- und Abschwünge in den wirtschaftlichen Bedingungen kennzeichnet. Im Gegensatz zur Fourier-Basis sind Wavelet-Basen in der Lage, stückweise regelmäßige Signale und Bilder, die ein transientes Verhalten aufweisen, sparsam darzustellen.

Vergleichen Sie Wavelets mit Sinuswellen, die die Grundlage der Fourier-Analyse bilden. Sinuskurven oder „Sinusoide“ haben keine begrenzte Dauer, sondern reichen von minus bis plus unendlich. Während Sinusoide gleichmäßig und vorhersagbar sind, sind Wavelets eher unregelmäßig und asymmetrisch.

Bei der Fourier-Analyse wird ein Signal in Sinuswellen verschiedener Frequenzen zerlegt. Entsprechend ist die Wavelet-Analyse die Zerlegung eines Signals in parallel verschobene und skalierte Versionen des ursprünglichen (bzw. Mutter-) Wavelets.

Die Betrachtung von Abbildungen von Wavelets und Sinuswellen lässt intuitiv erkennen, dass sich Signale mit deutlichen Veränderungen besser mit einem unregelmäßigen Wavelet als mit einem gleichmäßigen Sinusoid analysieren lassen.

Es macht außerdem Sinn, dass sich lokale Merkmale besser mit Wavelets beschreiben lassen, die eine lokale Ausdehnung haben. Im folgenden Beispiel wird dies für ein einfaches Signal veranschaulicht, das aus einer Sinuswelle mit einer Diskontinuität besteht.

Lokalisieren von Diskontinuität in einer Sinuswelle

Dieses Beispiel zeigt, wie mithilfe der Wavelet-Analyse eine Diskontinuität in einer Sinuswelle lokalisiert werden kann.

Erstellen Sie eine 1-Hz-Sinuswelle, die bei 100 Hz abgetastet wird. Die Dauer der Sinuswelle beträgt eine Sekunde. Die Sinuswelle weist eine Diskontinuität bei t=0.5 Sekunden auf.

Fs = 100;
t = 0:1/Fs:1-1/Fs;
x = sin(2*pi*t);
x1 = x-0.15;
y = zeros(size(x));
y(1:length(y)/2) = x(1:length(y)/2);
y(length(y)/2+1:end) = x1(length(y)/2+1:end);
stem(t,y,MarkerFaceColor=[0 0 1])
xlabel("Seconds")
ylabel("Amplitude")

Figure contains an axes object. The axes object with xlabel Seconds, ylabel Amplitude contains an object of type stem.

Ermitteln Sie die nicht dezimierte diskrete Wavelet-Transformation der Sinuswelle mithilfe des sym2-Wavelets und stellen Sie die Wavelet-Koeffizienten (Detailkomponenten) zusammen mit dem ursprünglichen Signal grafisch dar.

[swa,swd] = swt(y,1,"sym2");
tiledlayout(2,1)
nexttile
stem(t,y,MarkerFaceColor=[0 0 1])
title("Original Signal")
nexttile
stem(t,swd,MarkerFaceColor=[0 0 1])
title("Level 1 Wavelet Coefficients")

Figure contains 2 axes objects. Axes object 1 with title Original Signal contains an object of type stem. Axes object 2 with title Level 1 Wavelet Coefficients contains an object of type stem.

Vergleichen Sie die Fourier-Koeffizientengrößen für die 1-Hz-Sinuswelle mit und ohne Diskontinuität.

figure
dftsig = fft([x' y']);
dftsig = dftsig(1:length(y)/2+1,:);
df = 100/length(y);
freq = 0:df:50;
stem(freq,abs(dftsig))
title("Fourier Coefficient Magnitudes")
xlabel("Hz")
ylabel("Magnitude")
legend("Sine Wave","Sine Wave With Discontinuity")

Figure contains an axes object. The axes object with title Fourier Coefficient Magnitudes, xlabel Hz, ylabel Magnitude contains 2 objects of type stem. These objects represent Sine Wave, Sine Wave With Discontinuity.

Die Größen der Fourier-Koeffizienten sind minimal unterschiedlich. Da für die diskreten Fourier-Basisvektoren im gesamten Zeitintervall Träger vorhanden sind, erkennt die diskrete Fourier-Transformation die Diskontinuität nicht so gut wie die Wavelet-Transformation.

Vergleichen Sie die Wavelet-Koeffizienten der Ebene 1 für die Sinuswelle mit und ohne Diskontinuität.

[swax,swdx] = swt(x,1,"sym2");
stem(t,[swdx' swd'])
title("Wavelet Coefficients")
legend("Sine Wave","Sine Wave With Discontinuity")

Figure contains an axes object. The axes object with title Wavelet Coefficients contains 2 objects of type stem. These objects represent Sine Wave, Sine Wave With Discontinuity.

Die Wavelet-Koeffizienten der zwei Signale zeigen einen erheblichen Unterschied auf. Die Wavelet-Analyse kann häufig Eigenschaften eines Signals oder Bilds aufdecken, die anderen Analysetechniken entgehen, wie Trends, Bruchpunkte, Diskontinuitäten in höheren Ableitungen und Selbstähnlichkeit. Da Wavelets eine andere Ansicht von Daten bieten als Fourier-Techniken, kann die Wavelet-Analyse außerdem ein Signal häufig ohne nennenswerte Verschlechterung komprimieren oder entrauschen.

Siehe auch

Apps

Verwandte Beispiele

Mehr über

Externe Websites