Digitales Filter

Hallo,

habe für ein bestimmtes Signal ein bißchen mit Filtern gespielt und habe ein gutes Ergebnis bekommen für folgendes seltsames Konstrukt...

S = Original-Signal f() = Filter

f(S) + f(S - f(S))

Der zweite Term führt dazu, das Teile des Signals, welche durch das Filter zu sehr abgeschnitten wurden, wieder hinzugerechnet werden - aber durch die nochmalige Filterung ohne, daß das Rauschen wieder merklich steigt.

Aber was habe ich da gemacht? Kann man sich aus meinem benutzten Filter ein neues Filter berechnen, was dies in einem Schritt macht?

Ich bin etwas verwirrt, was das eigentlich bedeutet.

Gruß, Martin

Reply to
Martin Eckel
Loading thread data ...

X-No-Archive: Yes

begin quoting, Martin Eckel schrieb:

Falls es ein lineares Filter ist, läßt sich das auflösen zu

g(S) = f(S) + f(S - f(S)) = f(S) + f(S) - f(f(S))) = f(2*S) - f(f(S)))

Wenn Du jetzt noch die Filterfunktion f() im s- oder z-Bereich analytisch angeben kannst, dann kannst Du natürlich auch die entsprechende Funktion g() berechnen. Je nach den vorliegenden Funktionen kann man das sicher auch invertieren, also zu einer "Wunschfunktion" g() diejenige Funktion f() finden, die das Gewünschte leistet. Das ist bei Digitalfiltern doch Standard: In den beiden kanonischen Darstellungen tun die nichts anderes, als sukzessive Signale mit a*z^-1 zu multiplizieren (also um einen Takt zu verzögern und dann mit einem festen reellen Koeffizienten zu multiplizieren) und die Teilsignale zu addieren - insofern entsteht jedes Digitalfilter aus der mehrfachen Verwendung der Filterfunktion z^-1. (Die kanonische Darstellung ist nicht unbedingt die optimale Realisierung einer Filterfunktion, wenn man sie in Hardware gießen will. Für Signalprozessoren ist es eher egal.)

Wo liegt das Problem?

Gruß aus Bremen Ralf

Reply to
Ralf . K u s m i e r z

experimentelles Filterdesign. Cool!

egal was du da gemacht hast: Jetzt kannst du leider kein Patent mehr darauf anmelden ;-)

(S-f(S)) sollte eigentlich das filter mit dem inversen frequenzgang sein. Und das wird wieder gefiltert, ergibt also letztendlich wieder S.

du hast also eigentlich f(S) + S berechnet.

Unter genauerer Kenntnis von f() sollte sich daraus g() berechnen lassen.

Reply to
andijunk

Moin,

Am 01.03.12 16.09, schrieb snipped-for-privacy@gmx.de:

das wird wieder gefiltert, ergibt also letztendlich wieder S.

H.L. Mencken: for every problem, there is a solution, which is neat, simple and wrong.

Einfach wirds, wenn man sich die Anwendung einer Filterfunktion f auf ein Signal u(t) im Zeitbereich t als Multiplikation mit der Übertragungsfunktion G(s) eines Filters, angewendet auf die Transformierte U(s) des Signals u(t), im Bildbereich der Laplace-Transformation vorstellt - Linearität vorausgesetzt.

f(u(t)) korrespondiert dann mit U(s) * G(s) und man sieht, dass die Übertragungsfunktion des gesamten Filters 2 * G(s) - G^2(s) ist - so schrieb auch R.K.

Wo ist das Problem?

V.

Reply to
Volker Staben

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.