Was bedeutet es in der Bildverarbeitung, wenn ein Filter als nichtlinear bezeichnet wird?


14

Was bedeutet es in der Bildverarbeitung, wenn ein Filter als nichtlinear bezeichnet wird?

Bedeutet dies, dass die Gleichung des Filters Ableitungen enthält, und wenn dies nicht der Fall wäre, hätte man sie als linear bezeichnet?

Antworten:


23

Ein Filter F heißt "linear", wenn für beliebige Skalare , und beliebige Bilder und :c1c2ich1ich2

F(c1ich1+c2ich2)=c1F(ich1)+c2F(ich2)

Das beinhaltet:

  • Derivate
  • Integrale
  • Fourier-Transformation
  • Z-Transformation
  • Geometrische Transformationen (Drehen, Verschieben, Skalieren, Verziehen)
  • Faltung und Korrelation
  • die Zusammensetzung eines Tupels linearer Filter (dh Anwenden eines linearen Filters auf den Ausgang eines anderen linearen Filters )F(G(ich))
  • die Summe der Ergebnisse von zwei beliebigen linearen Filtern (dh die Ausgabe eines Filters, pixelweise addiert zu der Ausgabe eines anderen Filters )F(ich)+G(ich)

und viele andere.

Beispiele für nichtlineare Filter sind:

  • Quadrat, Absolut, Quadratwurzel, Exp oder Logarithmus des Ergebnisses eines linearen Filters
  • das Produkt des Ergebnisses von zwei beliebigen linearen Filtern (dh die Ausgabe eines Filters, multipliziert Pixel für Pixel mit der Ausgabe eines anderen Filters )F(ich)G(ich)
  • morphologische Filter
  • Medianfilter

Gute Liste. Das Konzept der linearen Systemtheorie gilt auch allgemeiner für Signale mit anderen als zwei Dimensionen und ist in vielen Bereichen der Technik ein ziemlich grundlegendes Thema.
Jason R

1
Gute Liste, aber ich bin ein wenig besorgt darüber, dass der Ausdruck "Produkt zweier linearer Filter" von Anfängern falsch interpretiert wird. Die Kaskade von zwei linearen Filtern (verbinden Sie den Ausgang des ersten mit dem Eingang des zweiten) führt zu einem linearen Filter, und da die Übertragungsfunktionen multipliziert werden, könnte ein Neuling denken, dass das Filter, dessen Übertragungsfunktion das Produkt oder H 1 ( f ) H 2 ( f )H1(z)H2(z)H1(f)H2(f)der Übertragungsfunktionen ist das Produkt zweier linearer Filter, und dieses Filter ist nichtlinear, obwohl seine beiden Komponenten lineare Filter sind.
Dilip Sarwate

@ DilipSarwate: Guter Punkt. Ich habe der Liste eine Komposition hinzugefügt und erklärt, was ich unter "Produkt aus zwei Filtern" verstehe.
Niki Estner

@nikie Ausgezeichnete Liste. Sie können auch die Bildsegmentierung (da ich sehe, dass sie als eigenständige Technik existiert) als eine andere nichtlineare Methode auflisten. (Entspricht dem Halten von Schwellenwerten im 1-D-Sinne).
Spacey

@nikie Ich glaube nicht, dass die Übersetzung eine lineare Operation ist.
Spacey

1

Angenommen, Sie haben zwei Filter, einen linearen und einen nichtlinearen (zum Herausfiltern rauschverfälschter Bilder). Das heißt, Sie haben einige schlechte Pixel mit wirklich hohen oder niedrigen Werten, die in einem kleinen rechteckigen Bereich auf einem Bild so etwas wie "das Ungewöhnliche" aussehen.

Nun funktioniert ein linearer Filter (wie 'Durchschnitt') wie folgt:

  1. Platzieren Sie ein Fenster über dem Element
  2. Nehmen Sie einen Durchschnitt - addieren Sie Elemente und dividieren Sie die Summe durch die Anzahl der Elemente.

Wenn Sie den Bereich des Filterfensters erweitern, werden Sie feststellen, dass Sie es über mehr Elemente strecken (dh mehr Elemente bilden den Durchschnitt, der automatisch zum gefilterten Pixelwert beiträgt).

Bei einem nichtlinearen Filter wie dem Median (der das zu filternde Pixel durch den Medianwert innerhalb des quadratischen Fensters ersetzt) ​​bringt das Erhöhen des Fensters jedoch nicht notwendigerweise einen Beitrag zum Median des Fensters und dies ist auch der Fall Dies hat keine direkte Auswirkung auf das gefilterte Pixel.

Hier ist ein numerisches Beispiel: Angenommen, Sie haben ai, j (dh 3x3 Fenster) mit dem Anker (mittleres Pixel in der Mitte an Position (2,2) und die Werte sind (Helligkeitsstufe) 40, 60, 80, 89, 90 , 100, 101, 105, 185. Sie werden feststellen, dass der Median 90 ist und der Ankerpixel 90 wird. Nehmen wir nun an, Sie vergrößern das Fenster und fügen diesen neun weitere Werte hinzu, um ein 5x5-Fenster zu erhalten Dies ist eine Chance, dass der Median auch danach immer noch 90 beträgt. Eine Änderung der Eingabe bedeutet also nicht unbedingt eine proportionale Änderung der Ausgabe, daher die Nichtlinearität.


-1. Ich würde zustimmen, dass der Median ein nichtlinearer Filter ist. Ihre Erklärung ist jedoch nicht akzeptabel.
Dipan Mehta

0

x[t+1]x[t]x[t-1]

Natürlich hat diese "Linearität" nichts damit zu tun, dass ein Filter linear ist. Angenommen, ich möchte den Wert eines Signals anhand von drei vorherigen Werten vorhersagen und entscheide mich, sie über ein Polynom zweiten Grades anzupassen und zu extrapolieren. Die Extrapolation würde dann in eine Parabel passen , aber mein Filter wäre immer noch ein linearer Filter , da der extrapolierte Wert eine lineare Kombination der Eingabe ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.