- In der Mathematik ist die Faltung eine Operation, die an zwei Funktionen (f und g) durchgeführt wird, um eine dritte Funktion zu erzeugen. Die Faltung ist eine der wichtigsten Operationen in der Signal- und Bildverarbeitung. Sie kann in 1D (z.B. Sprachverarbeitung), 2D (z.B. Bildverarbeitung) oder 3D (Videoverarbeitung) durchgeführt werden.
- In der Bildverarbeitung ist die Faltung der Prozess der Umwandlung eines Bildes durch Anwendung eines Kerns auf jedes Pixel und seine lokalen Nachbarn im gesamten Bild. Der Kernel ist eine Matrix von Werten, deren Größe und Werte den Transformationseffekt des Faltungsprozesses bestimmen.
- Der Faltungsprozess umfasst folgende Schritte. (1) Die Kernel-Matrix wird über jedes Pixel des Bildes gelegt (wobei sichergestellt wird, dass sich der gesamte Kernel innerhalb des Bildes befindet), und jeder Wert des Kernels wird mit dem entsprechenden Pixel, über dem er sich befindet, multipliziert. (2) Anschließend werden die multiplizierten Werte summiert und der resultierende Wert als neuer Wert des mittleren Pixels zurückgegeben. (3) Dieser Vorgang wird über das gesamte Bild wiederholt.
- Wie in der Abbildung zu sehen, wird ein 3×3-Kernel über ein 7×7-Quellbild gefaltet. Das mittlere Element des Kerns wird über dem Quellpixel platziert. Das Quellpixel wird dann durch eine gewichtete Summe aus sich selbst und den umgebenden Pixeln ersetzt. Die Ausgabe wird im Zielpixelwert platziert. In diesem Beispiel haben wir an der ersten Position 0 im Quellpixel und 4 im Kernel. 4×0 ist 0. Wenn wir dann zum nächsten Pixel gehen, haben wir 0 und 0 an beiden Stellen. 0x0 ist 0. Dann wieder 0x0 ist 0. Als Nächstes haben wir in der Mitte eine 1 im Quellbild und eine 0 an der entsprechenden Stelle des Kernels. 0x1 ist 0. Dann wieder 0x1 ist 0. Dann ist 0x0 0 und 0x1 ist 0 und an der letzten Position ist es -4×2, was -8 ist. Wenn wir nun alle diese Ergebnisse zusammenzählen, erhalten wir -8 als Antwort, also ist das Ergebnis dieser Faltungsoperation -8. Dieses Ergebnis wird im Zielbild aktualisiert.
- Das Ergebnis des Faltungsprozesses ändert sich mit den sich ändernden Kernelwerten. Der unten gezeigte Identitäts-Kernel zum Beispiel hat, wenn er durch Faltung auf ein Bild angewendet wird, keine Auswirkungen auf das resultierende Bild. Jedes Pixel behält seinen ursprünglichen Wert, wie in der folgenden Abbildung dargestellt.
Ein solcher Schärfungskern, der durch Faltung auf ein Bild angewendet wird, auf ein Bild durch Faltung angewendet wird, hat einen Schärfeeffekt auf das resultierende Bild. Die genauen Werte können für unterschiedliche Schärfegrade angepasst werden, wie in der folgenden Abbildung gezeigt.
Der Gaußsche Unschärfe-Kernel wie dieser, wenn er durch Faltung auf ein Bild angewendet wird, wendet einen Gaußschen Unschärfeeffekt auf das resultierende Bild an.