Main Content

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Impatto del supporto wavelet sui dati rumorosi

In questo esempio si dimostra un caso di discontinuità nei dati rumorosi che vengono rappresentati in modo più rado utilizzando una wavelet di Haar rispetto a una wavelet con supporto più ampio.

Creare un'onda quadra rumorosa con 512 campioni. Tracciare l’onda quadra.

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.

Ottenere la trasformata wavelet discreta a sovrapposizione massimale (MODWT) del segnale utilizzando la wavelet di haar. La wavelet di haar ha un supporto di lunghezza pari a 1

modhaar = modwt(yn,'haar');

Ottenere l'analisi multirisoluzione dalla matrice MODWT di haar e tracciare i dettagli di primo livello.

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.

Ottenere la MODWT del segnale utilizzando la wavelet db6. La wavelet db6 ha un supporto di lunghezza pari a 11.

moddb6 = modwt(yn,'db6');

Ottenere l'analisi multirisoluzione dalla matrice MODWT db6 e tracciare i dettagli di primo livello. Le discontinuità sono rappresentate in modo meno rado utilizzando la wavelet db6 piuttosto che la wavelet di 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.

Ingrandire. Utilizzando il wavelet di Haar si ottiene un numero inferiore di coefficienti necessari per identificare la variazione nel segnale.

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.

Vedi anche

| |