Vektor-Medianfilter
Der Vektor-Medianfilter ist ein Glättungsfilter, der in der Digitalen Bildverarbeitung für Farbbilder verwendet wird. Beim Vektor-Medianfilter wird jedes Pixel als ein Vektor angesehen, der die Werte aller Farbkanäle an dieser Stelle enthält. Er findet z. B. zur Reduktion von Rauschen in geophysikalischen Daten[1] oder zur Bildrestauration von Farbbildern Verwendung[2]. In der Fernsehtechnik wird er zur Reduktion von Cross Luminance und Cross Color verwendet[3].
Berechnung
Der Median ist eine Kennzahl aus der Statistik, der nur sinnvoll ist, wenn die zu untersuchenden Elemente in eine nach Werten geordnete Reihenfolge gebracht werden können. Bei Grautonbildern ist dies gegeben, wodurch sich der Medianfilter als eine mögliche Operation darstellt. Bei mehrkanäligen Bildern ist es nur möglich, den Medianfilter auf alle Farbkanäle separat anzuwenden und anschließend die Kanäle zu einem Bild zusammenzuführen. Dabei können jedoch neue Farben entstehen und dadurch das Bild verfälschen. Eine Möglichkeit, dieses Problem zu lösen, ist die Pixel der Farbkanäle als zusammenhängenden Vektor zu sehen und von diesen Vektoren den Vektor-Median zu ermitteln. Da sich mehrdimensionale Elemente in keine sinnvolle Werte-Reihenfolge bringen lassen, wird eine alternative Berechnung des Median als Grundlage genommen[4].
Dabei wird ein Datensatz Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle X} mit Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle N} Elementen betrachtet. Aus diesem Datensatz wird von einem Wert Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x_j} , der an jeder Stelle in liegen kann, jeder Wert Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x_i} abgezogen. Der Betrag dieser Differenz wird aufsummiert. Das Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x_j} , welches die Summe minimiert, ist der Median Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \tilde{x}} .
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \begin{align} \tilde{x} = \arg\min_{x_j \in X} \sum_{i=1}^{N}{|x_j-x_i|} \end{align} }
Die erste Formel, nach Burger und Burge[4], beschreibt die Relation des Median zu den anderen Werten aus dem Datensatz Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle X} . Die zweite Formel, nach Vardavoulia und Andreadis[5], ist die explizite Darstellung des Medians. Dabei muss Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle N} ungerade sein, um ein eindeutiges Ergebnis zu erhalten[6].
Diese Art der Berechnung lässt sich auf mehrdimensionale Fälle verallgemeinern. Der Vektor Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_i} wird wie bei der Medianberechnung von dem beliebig gewählten Element Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_j} abgezogen. Im mehrdimensionalen Fall wird die Differenz bezüglich einer p-Norm normiert und über alle Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle i} aufsummiert. Der Vektor-Median ist dabei dasjenige Element aus Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle X} , das die Summe aus normierten Differenzen minimiert.
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \begin{align} \sum_{i=1}^{N}{\|\vec{x}_\text{VM}-\vec{x}_i\|_p} \leq \sum_{i=1}^{N}{\|\vec{x}_j-\vec{x}_i\|_p} \end{align} }
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \begin{align} \vec{x}_\text{VM} = \arg\min_{\vec{x}_j \in X} \sum_{i=1}^{N}{\|\vec{x}_j-\vec{x}_i\|_p} \end{align} }
Die p-te Norm ist dabei ein Parameter, der je nach Anwendung gewählt wird. Am Häufigsten werden von der Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle L_p} -Norm die Normen Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle L_1} , Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle L_2} und Fehler beim Parsen (Konvertierungsfehler. Der Server („https://wikimedia.org/api/rest_“) hat berichtet: „Cannot get mml. Server problem.“): {\displaystyle L_{\infty }} verwendet.
Variationen
Der Vektor-Medianfilter ist ein sehr rechenintensiver Operator[4]. Es gibt aber mehrere Ansätze, einen beschleunigten Algorithmus bezüglich einer Norm zu erhalten, wie z. B. nach Barni[7][8].
Darüber hinaus gibt es noch Variationen, die für spezielle Aufgabenstellungen sinnvoll sind.
Erweiterter Vektor-Medianfilter
Der Vektor-Median ist per Definition immer ein Wert aus dem Filterbereich. Es ist jedoch möglich, dass er die Summe nicht minimiert. Eine sinnvolle Erweiterung ist der Mittelwertfilter, da er optimal zur Reduktion von weißem Rauschen geeignet ist[9]. Deswegen wird die Rechnung auch bezüglich des vektoriellen Mittelwertes Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_\text{ave}} berechnet. Die Rechnung erfolgt mit dem vektoriellen Mittelwert in gleicher Weise wie mit den übrigen Elementen aus dem Datensatz. Der erweiterte Vektor-Median Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_\text{EVM}} ist dann der vektorielle Mittelwert, wenn die Summe kleiner ist als die des Vektor-Median. Der vektorielle Mittelwert berechnet sich aus der Summe der Vektoren, dividiert durch deren Anzahl.
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_\text{EVM} = \begin{cases} \vec{x}_\text{ave} &\text{für } \sum_{i=1}^{N}{\|\vec{x}_\text{ave}-\vec{x}_i\|} \leq \sum_{i=1}^{N}{\|\vec{x}_\text{VM}-\vec{x}_i\|}\\ \vec{x}_\text{VM} &\text{sonst} \end{cases} }
Gewichteter Vektor-Medianfilter
Um die Variabilität zu erhöhen, werden die Werte im Filterbereich mit Gewichten belegt, wobei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle i} die Position im Datensatz repräsentiert. Die Berechnung des gewichteten Vektor-Medianfilters Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \vec{x}_\text{WVM}} erfolgt analog zum gewöhnlichen Vektor-Medianfilter[10].
- Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \begin{align} \sum_{i=1}^{N}{w_i \|\vec{x}_\text{WVM}-\vec{x}_i\|} \leq \sum_{i=1}^{N}{w_i \|\vec{x}_j-\vec{x}_i\|} \end{align} }
Einzelnachweise
- ↑ Y. Liu, "Noise reduction by vector median filtering", GEOPHYSICS, vol. 78, no. 3, pp. V79-V87, 2013
- ↑ JIN, Lianghai; LI, Dehua. A switching vector median filter based on the CIELAB color space for color image restoration. Signal Processing, 2007, 87. Jg., Nr. 6, S. 1345–1354.
- ↑ Moncef Gabbouj, Edward J. Coyle, and Neal C. Gallagher. An overview of median and stack filtering. Circuits, Systems and Signal Processing, 11(1):7–45, 1992. S. 7
- ↑ a b c Wilhelm Burger and Mark James Burge. Digitale Bildverarbeitung: Eine algorithmische Einführung mit Java. Springer Vieweg, Berlin, 3 edition, 2015.
- ↑ Maria I. Vardavoulia, Ioannis Andreadis, and Ph Tsalides. A new vector median filter for colour image processing. Pattern Recognition Letters, 22(6):675–689, 2001.
- ↑ J. Astola, P. Haavisto, and Y. Neuvo. Vector median filters. Proceedings of the IEEE, 78(4):678–689, Apr 1990.
- ↑ M. Barni et al.: Fast Vector Median Filter Based on Euclidean Norm Approximation. IEEE Signal processing letters, vol. I , no. 6, june 1994, S. 92–94.
- ↑ Mauro Barni: A Fast Algorithm for 1-Norm Vector Median Filtering. IEEE Transactions on image processing, vol. 6, no. 10, October 1997, S. 1452–1455.
- ↑ J. Astola, P. Haavisto, P. Heinonen, and Y. Neuvo. Median type filters for color signals. In Circuits and Systems, 1988., IEEE International Symposium on, pages 1753–1756 vol.2, Jun 1988
- ↑ Laurent Lucat et al: Adaptive and global optimization methods for weighted vector median filters. Signal Processing: Image Communication 17 (2002) 509–524.