Es geht um die Filterung von z.B. den 32 letzten, zurückliegenden Werten mit einem FIR-Filter. Normal würde ich mit 32 Koeffizienten arbeiten und 32 TAPs. Nun gibt es Aussagen, daß man zu genaueren Werten gelangt, wenn man zuerst hochsampelt und dann den Filter anwendet. Z.B. mit der 4-fachen Auflösung. Ist es grundsätzlich möglich, da was rauszuholen? Ich meine doch nicht, oder?
Moin, Was erhofft sich denn der Aussagengeber denn da herauszuholen? Wie sollen denn Werte "genauer" sein als sie sind? Gruss WK
Das genau ist die Frage. In welchen Fällen könnte das etwas bringen?
Moin, Was sollte es den "bringen"? Und wer sagt sowas aus? Da wuerd' ich nachfragen... Gruss WK Edit: Kommt mir so vor, wie bei dem Kraeuterlikoer: "Man sagt, er habe magische Kraefte". Tja. Wer sagt das? Die Marketingabteilung. Achso. Und was fuer Kraefte? Magische? Je mehr ich davon trinke, desto schwindeliger wird mir? Sehr magisch...
:
Bearbeitet durch User
Signalverarbeitendes Gewerbe schrieb: > Nun gibt es Aussagen, daß man zu genaueren Werten gelangt, wenn > man zuerst hochsampelt und dann den Filter anwendet. Z.B. mit der > 4-fachen Auflösung. Hier werden meines Erachtens verschiedene Dinge durcheinander geworfen. Upsampling ("hochsamplen") bezieht sich auf die Abtastrate, also wieviele Samples pro Zeiteinheit man hat. Durch Interpolation kann man diesen Wert erhöhen oder auch verringern (Downsampling). Auflösung bezieht sich auf die Quantisierung des Signals.
Signalverarbeitendes Gewerbe schrieb: > Das genau ist die Frage. In welchen Fällen könnte das etwas bringen? Da in dem primären Signal durch das Hochsampeln keine relevanten Informationen hinzukommen (und wenn, dann Willkürliche) kann es für das Signal selber nichts bringen. Notwendig ist das nur, wenn man das Signal auf andere Abtastraten wandeln will oder aufwändig weiterprozessiert. Beim Audio macht man das gerne mal, weil die Filter auf höheren Raten feiner aufgelöst sind, was z.B. die Filtergüte angeht. Es kommen weniger zusätzliche Effekte rein, weil heissen, das Signal wird durch das genauer aufgelöste Prozessieren weniger stark weiterverschlechtert.
>Was sollte es den "bringen"? Und wer sagt sowas aus? Da wuerd' ich >nachfragen... Ich denke, ein einfaches Beispiel kann die Sache verdeutlichen. Nehmen wir z.B. einen den idealen Tiefpass angenäherten, zeitbegrenzten FIR-SINC-Filter: https://en.wikipedia.org/wiki/Sinc_filter Wenn man das Signal vor dem Filter "upsampled" als Nullen zwischen den Abtastwerten einfügt, erhält man nach dem Filter an den Stellen der Nullen die interpolierten Abtastwerte. Diese können auch eine feinere Quantisierung als die Abtastwerte haben, da der Filter das Quantisierungsrauschen minimiert. Insofern kann man auch sagen, dass die Werte nach dem Filter genauer sind, weil das Quantisierungsrauschen gefiltert wurde.
Moin, chris_ schrieb: > Diese können auch eine feinere > Quantisierung als die Abtastwerte haben, da der Filter das > Quantisierungsrauschen minimiert. Hm... Wieso sollte das Filter das Quantisierungrauschen minimieren? Klar, wenn ein Filter bestimmte Frequenzbereiche daempft, dann wird's auch das Rauschen darin daempfen. Aber mehr nicht. Eine feinere Quantisierung ist notwendig, wenn das Signal nicht (zu sehr) durch's upsamplen verschlechtert werden soll. Wenn ich so eine Folge [... 0 1 0 1 0 ...] um den Faktor 2 upsample, dann sollte am Ausgang ja ungefaehr sowas rauskommen: [ ... 0 0.5 1 0.5 0 0.5 1...] Also schon mal 1 bit mehr Quantisierung. Aber wirklich "besser" wird ein Signal durch so Gewurschtel eigentlich nicht. Gruss WK
>Hm... Wieso sollte das Filter das Quantisierungrauschen minimieren? http://www.embedded.com/design/real-time-and-performance/4007558/DSP-Tricks-Reducing-A-D-Converter-Quantization-Noise
>Wenn ich so eine Folge [... 0 1 0 1 0 ...] um den Faktor 2 upsample, >dann sollte am Ausgang ja ungefaehr sowas rauskommen: [ ... 0 0.5 1 >0.5 0 0.5 1...] Also schon mal 1 bit mehr Quantisierung. Aber >wirklich "besser" wird ein Signal durch so Gewurschtel eigentlich nicht. Vielleicht ein anderes Beispiel: Nulldurchgangsbestimmung Versuche das Verfahren mal bei dieser Folge: [... -1 1 -1 1 -1 ...]
Moin, chris_ schrieb: >>Hm... Wieso sollte das Filter das Quantisierungrauschen > minimieren? > > http://www.embedded.com/design/real-time-and-perfo... Ja, das ist ein alter Hut - ich schrub ja: Klar, wenn ein Filter bestimmte Frequenzbereiche daempft, dann wird's auch das Rauschen darin daempfen. Aber mehr nicht. Dazu brauch ich das Signal ja schon ueberabgetastet; der Threadersteller wollte ja sein "normal" abgetastetes Signal hochinterpolieren... chris_ schrieb: > Versuche das Verfahren mal bei dieser Folge: > [... -1 1 -1 1 -1 ...] Kann ich machen, hilft aber auch nix. Wie bei meinem Signalbeispiel: Vorher brauch ich 1 bit/sample, hinterher 2 bit/sample (na, gut - eigentlich nur 1.585 bit). Also hat sich die benoetigte Bitbreite/Sample durch die Interpolation vergroessert - wenn ich das ignoriere, krieg ich eher mehr Rauschen rein als weniger. Gruss WK
Ich würde sagen, es kommt auf den FIR-filter an, ob das vorherige samplen was bringt, sage ich mal.
chris_ schrieb: > Wenn man das Signal vor dem Filter "upsampled" als(o) Nullen > zwischen den Abtastwerten einfügt, erhält man nach dem Filter an den > Stellen der Nullen die interpolierten Abtastwerte. Das ist schon mal ein Denkfehler, weil das nur theorettisch ohne negative Artefakte funktioniert. Je nachdem, wie der Filter konzipiert ist, konkret, wie lange er ist, bekommt man damit alles andere, als interpolierte Werte. Das Thema hatten wir an anderer Stelle kürzlich schon einmal. > Diese können auch eine feinere > Quantisierung als die Abtastwerte haben, da der Filter das > Quantisierungsrauschen minimiert. Das ändert aber nichts daran, dass die Samples, die Ursprung des Signals sind und die die gesamte Information tragen, nicht besser werden. Wenn man das wieder runtersampelt bekommt man hingegen mitunter falsche Werte infolge der ungewollten Filterfehler. > Insofern kann man auch sagen, dass die Werte nach dem Filter genauer > sind, weil das Quantisierungsrauschen gefiltert wurde. Das stimmt nur im Hinblick auf die spätere Rekonstruktion, wenn das höherfrequente Signal wieder in ein Analoges verwandelt wird und auch nur dann, wenn man ein reales Rekofilter veranschlagt. Theoretisch ist es auch mit dem nicht hochgesampelten Datenstrom möglich, diesen im Rahmen seiner Genauigkeit = Informationsgehaltes optimal zu rekonstruieren. Auf höheren Sampleraten ist es allerdings mitunter technisch einfacher.
Jürgen S. (engineer) Benutzerseite >chris_ schrieb: >> Wenn man das Signal vor dem Filter "upsampled" als(o) Nullen >> zwischen den Abtastwerten einfügt, erhält man nach dem Filter an den >> Stellen der Nullen die interpolierten Abtastwerte. >Das ist schon mal ein Denkfehler, weil das nur theorettisch ohne >negative Artefakte funktioniert. Je nachdem, wie der Filter konzipiert >ist, konkret, wie lange er ist, bekommt man damit alles andere, als >interpolierte Werte. Hmm, Denkfehler ... ich versuche jetzt mal Deine Aussage genauer zu verstehen .. Untersuchen wir dazu die Begriffsbeschreibung zur Interpolation aus der Wikipedia ( https://de.wikipedia.org/wiki/Interpolation_(Mathematik) )
1 | "Die Interpolation ist eine Art der Approximation: Die betrachtete Funktion wird durch die Interpolationsfunktion in den Stützstellen exakt wiedergegeben und in den restlichen Punkten immerhin näherungsweise. Die Approximationsgüte hängt vom Ansatz ab."
|
Du scheinst davon auszugehen, dass eine Interpolation immer die exakten Werte zwischen denn Stützstellen ergibt. Nur so mach Dein Satz oben Sinn. Das ist falsch. Es gibt viele verschiedene Arten der Interpolation. In der Meßtechnik werden diese zur Schätzung von Zwischenwerten verwendet. Das Ergebnis der Schätzung hängt vom Verfahren ab und kann sich je nachdem stark unterscheiden. Upsampling ist eine Form der Interpolation. Am besten ist es, wenn Du Dir den Wikipedia Artikel zu Interpolation genau durchliest. In diesem Dokument sind die Ergebnisse verschiedener Interpolationsverfahren auf Seite 63 dargestellt: https://tu-dresden.de/bu/umwelt/hydro/iak/ressourcen/dateien/systemanalyse/studium/folder-2009-01-29-lehre/systemanalyse/folder-2010-04-12-1173264546/wws-03.pdf?lang=en Vielleicht kannst Du ja noch ein paar Übungen dazu im Netz finden, um das Wissen etwas zu festigen. In der Praxis wird eine Kombination der Interpolation mittels "Upsampling" und linearer Interpolation zur hoch genauen Schätzung der TOF in Sensoren verwendet.
chris_ schrieb: > Du scheinst davon auszugehen, dass eine Interpolation immer die exakten > Werte zwischen denn Stützstellen ergibt. Nein, Ich meinte sinngemäß eher das Gegenteil, weil nur bei einem idealen Filter eine solche Interpolation der Zwischenwerte korrekt gelingt, den es aber nicht gibt. Daher ist es ja - je nach angewendetem Verfahren - ein Unterschied, wie man beim upsampeln die Zwischenwerte ersetzt. Das oftmals verwendete Einfügen von Nullen ist zwar formal korrekt, führt aber zu anderen Ergebnissen, als das Einfügen von Mittelwerten o.a., weil dies eine andere Interpolation darstellt und jede anders funktioniert, wie Du selber sagst. Das ist aber nicht genau das Thema, das hier behandelt wird. Dem TE ging es um die Frage, ob das alleinige upsamlen das Quantisierungsrauschen vermindern kann und dies kann es insofern nicht, als dass die Quantisierung bereits erfolgt ist und der damit erzielte Fehler im Signal verbleibt, da sich an diesen Werten - genauer an der Qualität ihrer Aussage - nichts ändert. Es macht insofern natürlich einen Unterschied, als dass bei der Wiedergabe / der Betrachtung im kontinuierliche Bereich dann eine Verbesserung der Signalqualität zu erzielen wäre, wenn die neue hohe Abtastrate im System auch beibehalten wird, weil dann eine genauere Steuerung eines Rekonstruktionsfilters erfolgen kann. Das hat aber mehr mit der weiteren Verarbeitung und Ausgabe zu tun. In der digitalen Domäne bringt das zunächst keinen Vorteil und impliziert im Gegenteil, dass er bei seinem Filter die Anzahl der Filter-Taps verdoppeln müsste, um die gleiche Perdiodenlänge zu überdecken. Der Umstieg auf höhere Raten zieht also Aufwand nach sich. Es kommt letztlich darauf an, was man vergleichen will.
>In der Praxis wird eine Kombination der Interpolation mittels >"Upsampling" und linearer Interpolation zur hoch genauen Schätzung der >TOF in Sensoren verwendet. Bei so ziemlich jeder Anwendung, bei der es um die Gewinnung von interpolierten Zwischenergebnissen geht, muss man in irgendeiner Weise hochsampeln, weil man ja die Zwischenzeitpunkte haben möchte. Ob dabei im konkreten Fall eine lineare Interpolation der Weißheit letzter Schluss ist, lasse Ich mal offen. Das wäre an anderer Stelle zu erörtern. Hierbei geht es ja um ein völlig anderes Ziel, nämlich um eine Interpolation mit dem Ziel der Ermittlung von Nulldurchgängen. Hier wird also nicht etwa Rauschen beseitigt, wie der TE es will und dabei eine Interpolation als Mittel benutzt, sondern es wird gezielt eine Interpolation angestrebt, um neue Ergebnisse zu gewinnen. Diese Interpolation kann - das ist richtig - durch eine Filterung in Echtzeit geschehen (abseits einer rein mathematischen Betrachtung, die einen virtuellen Zwischenzeitpunkt anvisiert), aber auch in diesem Fall wird kein Rauschen beseitigt. > Am besten ist es, wenn Du Dir den Wikipedia Artikel zu Interpolation > genau durchliest. Die Thematik habe Ich in meinem Beitrag zur DDS an beiden Stellen beleuchtet: Digitale Interpolation bei DA-Wandlung Beitrag "Re: Universell programmierbarer DDS-Funktionsgenerator" Zum einen finden wir dort die Methode der Interpolation der Tabelle durch Mehrfachabtastung und späteren Filterung und zum anderen die Reduktion des Quantisierungsrauschens durch Dithering, welche deshalb funktioniert, weil zuvor genauere Zielwerte ermittelt wurden. Ansonsten hier: http://www.96khz.org/oldpages/limitsofdds.htm http://www.96khz.org/oldpages/soundsynthesiswithdds.htm Eine Reduktion der Quantisierung des Signals im Sinne des TEs ist das aber hier nicht wirklich, weil bezüglich der stattfindenden Interpolation eine Annahme über deren Oberwellengehalt gemacht wird- nämlich, dass es keine gibt! Dadurch - und nur dadurch - kann ein Filter definiert werden, welcher die Ecken in der Tabelle reduziert, welche im Falle krummer Frequenzen zu einem zusätzlichen Rauschen führen würden. Für den allgemeinen Fall eines irgendwie zusammengesetzten Signals, welches der TE einem Filter zuführen möchte, gelingt dies nicht! Es lohnt also, etwas über die Texte in der Wikipedia hinaus zu denken und genauer hinzuschauen, was da im Detail passiert. Final bleibt zu bemerken, dass der Wiki-Text so auch nicht uneingeschränkt stimmt, denn ein Filter, der so agiert, wie der FIR der TE, wird nicht nur die Zwischenwerte bestimmen, sondern auch die Stützstellen verändern, was allerdings nicht zwangsläufig nachteilig ist.
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.