Articles
CWT-Matlab-Funktion [geschlossen]
On Februar 17, 2021 by admin geschlossen. Diese Frage ist nicht zum Thema . Derzeit werden keine Antworten akzeptiert.
Kommentare
- Spaghetti entstehen aufgrund der komplexen Einstellung einiger CWT, die Sie bereits mit Fourier verwaltet haben.
- bedeutet dies, dass cwt angewendet wird zu diesem Signal ist nicht möglich?
- Das ist möglich und möglicherweise informativer als bei Fourier, da das Signal nicht stationär ist.
- Ihre Spaghetti sind wahrscheinlich ein Artefakt Ihres Handlungsaufrufs , nicht das cwt
- Ich ' stimme ab, um diese Frage als nicht zum Thema gehörend zu schließen, da das Problem damit zu tun hat, die Plotfunktion von matlab mit komplexen Werten aufzurufen und nicht Ein Problem mit Wavelets
Antwort
Versuchen Sie zu erraten, welches Signal Sie analysieren und welchen Zweck dies hat eine Demo auf einem realen Signal mit dem halben Fourier-Spektrum und dem entsprechenden kontinuierlichen Wavelet-Transformations-Skalogramm.
Hier vermute ich, dass das Signal zu kurz ist (ohne weitere Ziele), als dass FFT und CWT interpretierbare Ergebnisse liefern könnten. Der Matlab-Code lautet:
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 wird von hier abgerufen.
Kommentare
- Ich ' habe dies auch bei einem längeren Signal versucht, aber es gab mir immer noch Spaghetti, ich denke es ' s, weil es ' nicht stationär ist, wie Sie sagten.
- Irgendwo fehlt der absolute Wert
- Und bei der längeren Länge geht es um Interpretierbarkeit, nicht um Spaghetti.
- Ich habe es mit absolutem Wert gemacht und bessere Ergebnisse erzielt, keine Spaghetti mehr.
- Gut, Spaghetti entstehen durch das Zeichnen von Komplexen Werte als 2D-Punkte (real + imaginär)
Schreibe einen Kommentar