Forum: Digitale Signalverarbeitung / DSP / Machine Learning Frequenzverteilung


von Andre R. (ltisystem)


Lesenswert?

Hallo Forum,

es ist eine vllt etwas dumme Frage, jedoch bin ich mir nicht sicher.

Ich nehme einen 2kHz-Sinus mit Audacity direkt vom Generator auf, die 
Spektralanalyse bestätigt mir die 2kHz genau (ich sehe eine rote Linie 
bei 2kHz und sonst ist alles blau). Lasse ich die 2kHz-Sinus vorher 
durch einen Tiefpass laufen (fpass=1900Hz, fstop=2000Hz, 263 
Koeffizienten, Equi-Methode, MATLAB fdatool) bevor ich sie aufnehme, und 
lasse mir dann das Spektrum anzeigen, so verteilt sich das Spektrum 
unterhalb der 2kHz-Grenze, sodass aus der dünnen roten Linie bei 2kHz, 
jetzt ein dicker roter Balken der von 0-2kHz geht zu sehen ist. Warum?

Da im Spektrum des Tiefpasses alle Frequenzen von 0-fstop vorhanden sind 
und eine Zeitbereichsfaltung damit durchgeführt wird, verteilt sich 
dieses Spektrum natürlich auch auf dem Ausgang, richtig? Wie könnte man 
das noch etwas besser beschreiben?

Ich hoffe die Frage ist nicht zu trivial.

Grüße andre

von hubert (Gast)


Lesenswert?

2kHz durch ein lineares Filter sollten immer genau 2kHz bleiben und sich 
nur in der Amplitude verändern. Hast du evtl. nach dem Filtern einen 
Einschwingvorgang mit auf dem Signal, der dir das unscharfe Spektrum 
verursacht? Ein abrupt eingeschaltetes 2KHz Signal ist für den Filter 
eben kein 2kHz Signal sondern enthält eine Sprungfunktion. Vielleicht 
mal ein langes Signal filtern und den Anfang verwerfen. Auch kann es 
sein, dass du eine Fensterung verwenden musst, wenn dein 2kHz Signal 
nicht genau in dein Sample Fenster passt, d.h. wenn das Ende nicht genau 
phasenmässig an den Anfang anschliesst.

von Andre R. (ltisystem)


Lesenswert?

Danke hubert!

Nun das ganze läuft in echtzeit ab, also fenstere ich tatsächlich...ich 
hab einen tiefpassfilter mit 262 koeffizienten. ich benutze double 
buffering, also in der zeit wo 1000 samples gelesen werden, errechnet er 
die parallel dazu den ausgang aufgrund von den vorherigen 1000 samples. 
wurden dann wieder 1000 samples gelesen, werden die pointer der buffer 
gewechselt und die einen daten werden überschrieben mit neuen werte vom 
codec und in der zeit, wird im anderen buffer wieder gerechnet usw...

hab es jetzt noch einmal versucht mit audacity und jetzt kommt das 
ergebniss raus, was du (hubert) meintest. die 2khz bleiben vorhanden, 
nur die amplitude, also im spektrogram die intensität, wird weniger. wie 
kann ich das allerdings verstehen? das passt ja so nun gar nicht zu 
meiner erklärung?!?

Grüße

von rava (Gast)


Lesenswert?

naja, die erklärung ist halt einfach nicht wirklich richtig:
Im Bode-Diagramm des Filters sind zwar alle Frequenzen enthalten, hinten 
herauskommen kann aber nur, was du vorne hineinschiebst. Lineare Systeme 
können keine Frequenzverschiebung verursachen.

Durch die Fensterung machst du diesen Charakter möglicherweise kaputt

von Andre R. (ltisystem)


Lesenswert?

danke rava.

ach ja, das ist die bedingung der linearität...es kann allerdings 
vorkommen, oder der idealfall wäre es, wenn die amplitude der zu 
filternden frequenz nahezu 0 ist?!

grüße

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
Noch kein Account? Hier anmelden.