Forum: Digitale Signalverarbeitung / DSP / Machine Learning Eine Frage zur Verkettung von Multi-Tap-Filtern


von McDesign (Gast)


Lesenswert?

Angenommen, ich habe ein digitales Filter, das aus - sagen wir - 128 
TAPs besteht und für jedes eintreffende Sample logischerweise einen 
neuen gefilterten Wert auf der Basis der letzten 128 Samples liefert.

Diesem Filter - angenommen ein Hochpass - schalte ich nun ein weiteres 
Filter - angenommen ein Tiefpass - nach. Damit habe ich einen Bandpass, 
wobei das zweite Filter bereits gefilterte Werte nutzt.

Nun kann man aber auch Filterkoeffizienten zusammenfassen und alles auf 
einmal machen. Das kann aber doch nicht zu demselben Ergebnis führen.(?)

Wie erreicht man die Filterkoeffizienten, sodass es dennoch geht? (geht 
es überhaupt?)

von Strubi (Gast)


Lesenswert?

Moin,

bei einem FIR-Filter geht das, dank Linearität der Transformation. 
Kannst du per Frequenzraum verifizieren, dass Filter B nach Filter A 
dasselbe Ergebnis liefert wie Filter A nach Filter B.
Oder auch einfach die Theorie der Faltungs-Operation (Stichwort 
Assiozativität) nachgucken. Da solltest du auch die Formeln zur 
Kombination der Faltungen finden. Oder du rechnest den Kram gleich in 
Octave/Matlab aus..

Gruss,

- Strubi

von Helmut S. (helmuts)


Lesenswert?

> Wie erreicht man die Filterkoeffizienten, sodass es dennoch geht?

Mit der gleichen Anzahl von Taps geht das schon gar nicht. Du müsstest 
ein Filter mit der Anzahl der Summe der Taps haben um exakt das Gleiche 
zu erreichen. Dann ist es aber sinnvoller die Filter gleich 
hintereinanderzuschalten.

Einmgang---HP---TP---Ausgang


Alternativ könntest du einen Bandpass entwerfen. Wenn du genau so hohe 
Anfoderungen wie bei dem getrennten Hochpass und Tiefpass hast, dann 
wirst du vermutlich eine ähnlich hohe Anzahl der Taps brauchen wie bei 
der Summe von Hochpass und Tiefpass.

Eingang---Bandpass---Ausgang

von Helmut S. (helmuts)


Lesenswert?

Hier ist eine Anleitung zum Filterdesign für Matlab.
http://www.busim.ee.boun.edu.tr/~resources/fdq.pdf
Zumindest als Student hast du wahrscheinlich Zugriff auf Matlab.

von Anonymous (Gast)


Lesenswert?

> Dann ist es aber sinnvoller die Filter gleich
> hintereinanderzuschalten.
Von der Tapzahl her ist es ja dasselbe, aber kommt auch mathematisch 
dasselbe heraus?

von Edi M. (Gast)


Lesenswert?

Anonymous schrieb:
> aber kommt auch mathematisch
>
> dasselbe heraus?

Wenn man genau die doppelte Zahl der Filter nimmt, kann man die 
Koeffizienten ja berechnen und so, wie sie im zweiten Filter wirken, 
zusammenfassenn. Dann hat man zusammengefasste Koeffizienten, die genau 
dasselbe tun.

Allerdings kann man den Filter dann auch gleich auf die doppelte Zahl 
der Taps auslegen, das sollte mehr Flexibilität geben. Ich kann aber 
ehrlich gesagt aus dem Kopf nicht sagen, ob durch die üblichen 
filter-Koeff Vorschriften dann genau das rauskommt. ???

Dazu fällt mir noch etwas ein:

Wenn man die F.Koeff. manuell bestimmt und anwendet, wird oft noch eine 
Glocke gegen leakage drüber gelegt. Bei der Verkettung zweier Filter 
würden die dann zweimal wirken. Damit hätte man schon etwas anderes, 
oder?

von Hannes (Gast)


Lesenswert?

Wer sagt, dass die zweimal wirken müssen? Man hängt ja die Filter und 
das FEnster hintereinander und lässt es einmalig rechnet.

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.