Main Content

La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.

Effet du support des ondelettes sur les données bruitées

Dans cet exemple, vous montrez que les discontinuités dans des données bruitées sont représentées de manière plus parcimonieuse en utilisant une ondelette de Haar qu'en utilisant une ondelette avec un support plus important.

Créez une onde carrée bruitée avec 512 échantillons. Tracez l'onde carrée.

n = 512;
t = 0:0.001:(n*0.001)-0.001;
yn = square(2*pi*10*t)+0.02*randn(size(t));
plot(yn)
grid on
title('Noisy Signal')

Figure contains an axes object. The axes object with title Noisy Signal contains an object of type line.

Obtenez la transformée en ondelettes discrète à recouvrement maximal (MODWT) du signal en utilisant l'ondelette haar. L'ondelette haar a un support de longueur égale à 1

modhaar = modwt(yn,'haar');

Obtenez l'analyse multirésolution de la matrice MODWT haar et tracez les détails de premier niveau.

mrahaar = modwtmra(modhaar,'haar');
stem(mrahaar(1,:),'Marker','none','ShowBaseLine','off');
grid on
title('First-Level MRA Details Using Haar Wavelet')

Figure contains an axes object. The axes object with title First-Level MRA Details Using Haar Wavelet contains an object of type stem.

Obtenez la MODWT du signal en utilisant l'ondelette db6. L'ondelette db6 a un support de longueur égale à 11.

moddb6 = modwt(yn,'db6');

Obtenez l'analyse multirésolution de la matrice MODWT db6 et tracez les détails de premier niveau. Les discontinuités sont représentées de manière moins parcimonieuse avec l'ondelette db6 qu'avec l'ondelette haar.

mradb6 = modwtmra(moddb6,'db6');
stem(mradb6(1,:),'Marker','none','ShowBaseLine','off');
grid on
title('First-Level MRA Details Using db6 Wavelet')

Figure contains an axes object. The axes object with title First-Level MRA Details Using db6 Wavelet contains an object of type stem.

Zoomez. L'utilisation de l'ondelette de Haar permet de réduire le nombre de coefficients nécessaires pour identifier le changement du signal.

ind = 40:110;
subplot(311)
plot(ind,yn(ind))
title('Close Up')
subplot(312)
stem(ind,mrahaar(1,ind),'Marker','none','ShowBaseLine','off','LineWidth',2)
title('Using Haar')
subplot(313)
stem(ind,mradb6(1,ind),'Marker','none','ShowBaseLine','off','LineWidth',2)
title('Using db6')

Figure contains 3 axes objects. Axes object 1 with title Close Up contains an object of type line. Axes object 2 with title Using Haar contains an object of type stem. Axes object 3 with title Using db6 contains an object of type stem.

Voir aussi

| |