Articles
Funzione matlab CWT [closed]
Su Febbraio 17, 2021 da admin Chiusa. Questa domanda è fuori tema . Attualmente non accetta risposte.
Commenti
- Gli spaghetti si verificano a causa dellatteggiamento complesso di alcuni CWT, che hai già gestito con Fourier.
- significa che applicare cwt a questo segnale non è possibile?
- È possibile, e forse più informativo che con Fourier, poiché il segnale non è stazionario.
- i tuoi spaghetti sono probabilmente un artefatto della tua chiamata alla trama , non il cwt
- Io ' m voto per chiudere questa domanda come fuori tema perché il problema ha a che fare con il richiamo della funzione plot di matlab con valori complessi e non un problema con le wavelet
Risposta
Cercando di indovinare quale segnale stai analizzando e lo scopo, ecco una demo, su segnale reale, con metà dello spettro di Fourier, e il corrispondente scalogramma di trasformata wavelet continua.
Qui, sospetto che il segnale sia troppo breve (senza ulteriori obiettivi) perché FFT e CWT producano risultati interpretabili. Il codice Matlab è:
nsample = 64; % An odd number timeSampling = 1/nsample; time = (0:nsample-1)*timeSampling; ratioSecondHalf = 20; data = zeros(nsample,1); data(1:nsample/2,1) = rand(nsample/2,1)-0.5; data = medfilt1(data,5); data(nsample/2+1:end,1) = rand(nsample/2,1)/ratioSecondHalf; [fftR,fftAxe] = FFTR(data,timeSampling); [cwtCoeff,cwfFreq] = cwt(data,1:64,"morl",timeSampling); figure(1);clf subplot(3,1,1) plot(time,data,"x-");;axis tight xlabel("Time (a. u.)") ylabel("Amplitude (a. u.)") subplot(3,1,2) plot(fftAxe,fftR,"x-");axis tight xlabel("Frequency (a. u.)") ylabel("Amplitude (a. u.)") subplot(3,1,3) h=imagesc("XData",time,"YData",2*cwfFreq/pi,"CData",abs(cwtCoeff));axis tight xlabel("Time (a. u.)") ylabel("Frequency (a. u.)")
FFTR.m è ottenuto da qui .
Commenti
- i ' ho provato anche questo su un segnale più lungo ma mi ha comunque dato degli spaghetti, penso che sia ' s perché ' non è stazionario come hai detto.
- Il valore assoluto manca da qualche parte
- E la lunghezza maggiore riguarda linterpretazione, non gli spaghetti
- Lho fatto con un valore assoluto e ho ottenuto risultati migliori, niente più spaghetti.
- Bene, gli spaghetti nascono da trame complesse valori come punti 2D (reale + immaginario)
Lascia un commento