Ich bin damit einverstanden, dass die Konstruktionsmethode für Fensterfilter nicht mehr zu den wichtigsten Konstruktionsmethoden gehört und dass sie in der Tat in traditionellen Lehrbüchern möglicherweise aus historischen Gründen überrepräsentiert ist.
Ich denke jedoch, dass seine Verwendung in bestimmten Situationen gerechtfertigt sein kann. Ich bin nicht einverstanden, dass die Komplexität der Berechnungen kein Thema mehr ist. Dies hängt von der Plattform ab. Wenn wir an unserem Desktop-Computer sitzen und einen Filter entwerfen, müssen wir uns in der Tat nicht um die Komplexität kümmern. Auf bestimmten Plattformen und in Situationen, in denen das Design quasi in Echtzeit ausgeführt werden muss, ist die Komplexität der Berechnungen ein Problem, und eine einfache suboptimale Designtechnik wird einer optimalen Technik vorgezogen, die viel komplexer ist. Als Beispiel habe ich einmal an einem System für die Strahlformung gearbeitet, bei dem der Filter (Strahlformer) im laufenden Betrieb neu entworfen werden musste, und daher war die Komplexität der Berechnungen in der Tat ein Problem.
Ich bin auch überzeugt, dass wir uns in vielen praktischen Situationen nicht um den Unterschied zwischen dem optimalen und dem suboptimalen Design kümmern müssen. Dies gilt umso mehr, wenn Festkommaarithmetik mit quantisierten Koeffizienten und quantisierten Ergebnissen arithmetischer Operationen verwendet werden muss.
Ein weiteres Problem ist die numerische Stabilität der optimalen Filterentwurfsmethoden und ihrer Implementierungen. Ich bin auf mehrere Fälle gestoßen, in denen der Parks-McClellan-Algorithmus (ich sollte sagen, die von mir verwendete Implementierung ) einfach nicht konvergierte. Dies ist der Fall, wenn die Spezifikation wenig sinnvoll ist, es aber auch bei absolut vernünftigen Spezifikationen möglich ist. Gleiches gilt für die Entwurfsmethode der kleinsten Quadrate, bei der ein System linearer Gleichungen gelöst werden muss, was zu einem schlecht konditionierten Problem werden kann. Unter diesen Umständen wird Sie die Fenstermethode niemals im Stich lassen.
Eine Bemerkung zu Ihrem Vergleich zwischen der Fenstermethode und dem Entwurf der kleinsten Quadrate: Ich glaube nicht, dass dieser Vergleich eine generelle Überlegenheit der Methode der kleinsten Quadrate gegenüber der Fenstermethode zeigt. Zunächst scheinen Sie die Stop-Band-Dämpfung zu betrachten, die für keine der beiden Methoden ein Entwurfsziel darstellt. Die Fenstermethode ist in keiner Weise optimal, und das Design mit den kleinsten Quadraten minimiert die Stoppbandenergie und kümmert sich überhaupt nicht um die Größe der Stoppbandwelligkeit. Was zu sehen ist, ist, dass die Durchlassbandkante des Fensterdesigns größer ist als die des Designs mit den kleinsten Quadraten, wohingegen die Stoppbandkante kleiner ist. Infolgedessen ist die Übergangsbandbreite des durch Fensterung entworfenen Filters kleiner, was zu höheren Sperrbandwelligkeiten führt. Der Unterschied in der Übergangsbandbreite kann klein sein, Filtereigenschaften reagieren jedoch sehr empfindlich auf diesen Parameter. Es besteht kein Zweifel, dass der Filter für kleinste Quadrate den anderen Filter übertrifft, wenn es darum geht, die Bandenergie zu stoppen, aber das ist nicht so einfach zu erkennen wie die Welligkeit. Und es bleibt die Frage, ob dieser Unterschied tatsächlich einen Unterschied in der praktischen Anwendung ausmachen würde.
Lassen Sie mich Ihnen zeigen, dass solche Vergleiche oft so aussehen, wie man es gerne hätte. In der folgenden Abbildung vergleiche ich ein optimales Tiefpassfilter mit den kleinsten Quadraten, das mit der Matlab / Octave-Funktion firls.m
(blau) erstellt wurde, mit einem Tiefpassfilter, das mit der Fenstermethode unter Verwendung eines Kaiser-Fensters (rot) erstellt wurde.
Aus der Abbildung könnte man sogar schließen, dass der durch Fensterung entworfene Filter etwas besser ist als der optimale Filter mit den kleinsten Quadraten. Dies ist natürlich unsinnig, da wir nicht einmal "besser" definiert haben und der Filter für kleinste Quadrate einen kleineren mittleren quadratischen Approximationsfehler haben muss . Sie sehen das jedoch nicht direkt in der Abbildung. Dies ist jedenfalls nur eine Begründung für meine Behauptung, dass man bei solchen Vergleichen sehr vorsichtig und klar sein muss.
Zusammenfassend bin ich der Meinung, dass das Erlernen für DSP-Studenten nicht nur aus rein didaktischen Gründen nützlich ist, sondern dass trotz der technologischen Fortschritte seit den 1970er Jahren die Verwendung der Fenstermethode in bestimmten praktischen Szenarien gerechtfertigt sein kann, und ich denke, dass dies nicht der Fall ist sehr bald ändern.
firpm()
und zu vergleichenfirls()
.