hallo, ich habe ein EMG-Signal, bei dem ich mir gerne das Frequenzspektrum (fft)(mittels matlab) anschauen möchte. Mein Signal wurde 15 sek lang aufgenommen bei einer fs=1000Hz. mein code für die fft lautet wie folgt: points=4096; Y = fft(WERTE(:,k),points); Pyy = Y.* conj(Y) / points; f = 1000*(0:(points/2)-1)/points; plot(f,Pyy(1:2049)); jetzt mein problem/frage: wovon hängt die größe (anzahl der points) der fft ab, bzw. wie wähle ich sie am besten um eine ordentliche Darstellung meines Signals zu bekommen? ausserdem habe ich gelesen, dass es sinnvoll ist das ganze durch eine Fensterfunktion zu schicken. Aber welches nehme ich da, bzw. was macht die, oder wie verändert sie mein Signal? (und wie setze ich das mit matlab um)--> kann ich diese Fensterfunktion auch verwenden um harmonische schwingungen zu unterdrücken bzw. um das rauschen zu unterdrücken??? ich hoffe ihr könnt mir weiterhelfen. mfg Sebastian
(http://de.wikipedia.org/wiki/Elektromyografie ich nehme an, das ist mit EMG gemeint? War das noch einfach mit "rußgeschwärzten Trommeln" zur Aufzeichnung.) zu den verschiedeen Fenstern gibts auch was von Wikipedia http://de.wikipedia.org/wiki/Fensterfunktion mit "ganz ohne Fenster" oder auch Rechteckfenster ist es jedenfalls am schlechtesten. Es geht um Artefakte, nicht um Rauschen oder Harmonische.
hallo ja mit emg ist electromyographie gemeint. Ja du hast recht es geht um artefakte, aber ist rauschen nicht auch ein artefakt? danke das mit den fenstern werd ich mir gleich reinziehen, ist aber nicht vorrangig. mir geht es eher um die genauigkeit meiner fft. welche muss ich wählen um ein signal mit 15000 werten optimal in den frequenzbereich zu bekommen. muss ich da eine 512 1024 2048 4096 .... punkt fft machen?? und wie hängt diese auswahl dann mit meiner Fensterfunktion zusammen/ oder nicht?? danke mfg Sebastian
Ich nehme an du willst nicht das Spektrum des gesamten Signals anschauen (da wirst du nicht viel erkennen), sondern ein gemitteltes Spektrum über einen gewissen Zeitraum? Dazu musst du die FFT auf kleine Blöcke anwenden und über das Ergebnis mitteln. Schau dir die Funktion pwelch an, die nimmt dir diese Arbeit ab. Als Parameter kannst du optional die FFT-Länge und die Fensterfunktion vorgeben.
Vielen dank für die antwort, werde mich gleich am wochenende damit beschäfftigen. Heißt das so bekomme ich das mittlere Leistungsdichtespektrum, nach Zerstückelung, Überlappung, Fensterung???? und geht dabei information verloren??? Das heißt am ende habe ich das Leistungsdichtespektrum der ganzen 15 sek. aber nicht alles auf einmal sondern gemittelt über kleine Blöcke?? Und was sind dann die richtigen einstellungen für die Blöcke? oder ist das egal? vielen dank für die antwort, ich hoffe du kannst mir noch weiterhelfen. mfg Sebastian PS: ersetze ich Y = fft(WERTE(:,k),points); Pyy = Y.* conj(Y) / points; durch pwelch???
hi Leute ich muss die M-Welle von der Willkürliche EMG Welle detektieren und separieren mit silab oder mit Matlab, könnte ich vielleicht eine Hilfe bekommen danke im Voraus Nadhmi
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.