Angenommen, ich habe 3 Kernel:

  1. $$ \ left [\ begin {array} {cc } a & b & c \\ d & e & f \\ g & h & i \ end {array} \ right] $$

  2. $$ \ left [\ begin {array} {cc} p & q & r \\ s & t & u \\ v & w & x \ end {array} \ right] $$

  3. $$ \ left [\ begin {array} {cc} \ alpha & \ beta & \ gamma \\ \ delta & \ epsilon & \ zeta \\ \ eta & \ theta & \ iota \ end {array} \ right] $$

Wie kann ich daraus eine Filterbank erstellen?

Soll ich AND oder OR oder addieren Sie sie?

Oder sollte ich jedes einzelne einzeln durch drei separate Faltungsoperationen auf mein Testbild anwenden?

Antwort

Eine Filterbank ist wirklich genau das, was sie sagt:

Eine Bank von Filtern, von denen jeder auf das Signal angewendet wird.

Also signalisiert man in (Signal = Bild), 3 Signale aus. Sie wenden jeden Kernel separat an und kombinieren nichts.

Kommentare

  • Ist es wirklich möglich, die Kernel zu kombinieren, um dasselbe Ziel zu erreichen aber?
  • was? nein! völlig andere Dinge. Diese Filterbank gibt Ihnen nur drei Ausgabebilder von Ihrem einen Eingabebild, die jeweils von einem Filter gefiltert werden. Dort ' s keine Kombination von irgendetwas.
  • Ja, es gibt Möglichkeiten, die Kernel zu kombinieren und dann clevere Tricks auszuführen, um die drei Gedankenausgaben zurückzubekommen (Algebra höherer Ordnung, Bittiefe …), aber Dies liegt wahrscheinlich außerhalb des aktuellen Bereichs.

Antwort

Da der Begriff linear dies tut Nicht in der Frage und den aktuellen Antworten erscheinen, lassen Sie mich eine ergänzende Perspektive anbieten.

Ein Kernel Denken Sie bei dieser Annahme (insbesondere bei Bildern, die nicht immer linearen Regeln folgen, an Okklusion oder Sättigung) n) ist ein Array , das angewendet wird , irgendwie , auf beliebige Eingabedaten . Man unterscheidet oft zwischen linearem und nichtlinearem Kernel (da man lineare und nichtlineare Filter hat, scheint die Terminologie sogar unangemessen zu sein).

Beginnen wir vom linearen Standpunkt im spezifischsten Sinne : Das Filterarray wird als Faltung angewendet. Dann ist die Antwort von @MarcusMuller perfekt: Eine Menge, ein Array linearer Filter, die als Faltungen auf Eingabedaten angewendet werden, um mehrere separate Ausgabedaten zu erhalten. Die meisten zusätzlichen Skalare Eine lineare Operation (wie die Summe, der Durchschnitt, eine gewichtete Kombination) am Ausgang wäre „nutzlos“: Wenn sie pendeln, entspricht das Summieren des Ausgangs dem Summieren der drei Filter in einem einzigen Filter und dem Ausführen nur einer einzigen Faltung am Ausgang Daten.

Dies führt uns zurück zum Ziel in Ihrem Kommentar; traditionell ein lineares ( Analyse , darauf komme ich später zurück.) Die Filterbank (FB) wird verwendet, um Daten in Komponenten aufzuteilen oder zu trennen, häufig mit separaten Spektren oder einem engeren Inhalt (niedrige, mittlere oder hohe Frequenzen) für eine Drei-Band-Filterbank). Oder um verschiedene Datenströme mit einem breiteren Spektrum in andere zusammenzuführen. Ein generischer MIMO-FB (Multi-Input-Multi-Output) verwendet also einen oder mehrere Eingänge und filtert sie in einen oder mehrere Ausgänge. Man unterscheidet dann Analyse- oder Synthesefilterbänke.

Im Allgemeinen driftet die Rekombination der Ausgaben eines Analyse-FB vom Trennungsziel weg. Ein einzelner Filter ist aber auch eine Filterbank (allerdings nicht sehr interessant per se ). Manchmal kann dies jedoch effizienter sein (z. B. rechnerisch).

Wenn Sie nun engere / breitere Ausgänge haben, können Sie Schwankungen wie Downsampling und Upsampling vor oder nach den Filtern bewerten. Für mich ist der am meisten akzeptierte Sinn einer Filterbank eine Bank linearer Filter, die optional mit (linearen, aber nicht verschiebungsinvarianten) Upsampling- oder Downsampling-Operationen kombiniert werden . Und es hängt etwas mit linearen Transformationen zusammen, die eine Erweiterung oder Schrumpfung der Anzahl der Koeffizienten ermöglichen (sie können kritisch, über- oder unterabgetastet sein).

Dann erweitern die Leute den Begriff auf Nichtlinearität: Filter können nichtlinear sein ( wie der Median) und die Kernel werden als Gewichte interpretiert, die auf einen Datenblock angewendet werden.Oder die Daten können auf nichtlineare Weise mit $ \ min $, $ \ max $ UND oder ODER kombiniert werden …

Aber in Ihrem Fall würde ich, wie Marcus sagte, darauf wetten Drei standardmäßige gefilterte Ausgänge. In diesem Fall gibt es jedoch keine Beziehung zwischen Filtern (mit Ausnahme ihrer Kernelgröße). Was in der Filterbank-Theorie mächtig ist, ist die Verknüpfung zwischen den Filtern und wie man sie optimieren kann. Nun ein paar Anzahl der Zeiger:

Kommentare

  • ha! Dies sollte wirklich die akzeptierte Antwort sein, da sie einen breiteren Blick auf die Dinge gibt.
  • Fair of you, Aber ich bin mir nicht sicher, abhängig vom anfänglichen Umfang der Frage.
  • Nun, meine Antwort ist wirklich ein bisschen oberflächlich und trägt ' nicht viel dazu bei – seitdem " Filterbank " ist wirklich nicht ' nicht so unaussprechlich. Ihre hingegen gibt eine Perspektive.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.