Faltungsfilter — die Bausteine der CNNs

Entwirf 3×3-Kernel und sieh in Echtzeit, wie sie Bilder verändern

Filter angewendet: Sobel-X — Senkrechte Kanten

Was ist eine Faltung?

AnalogieDefinition

Stell dir eine Schablone vor, die du über jeden einzelnen Pixel des Bildes legst. Was unter der Schablone liegt, wird gewichtet aufaddiert — und das Ergebnis ist der neue Pixel. Schiebe die Schablone weiter, mach das gleiche an der nächsten Stelle, und so weiter.

Mit verschiedenen Schablonen (Kerneln) bekommst du verschiedene Effekte: eine Schablone, die links negative und rechts positive Werte hat, findet senkrechte Kanten. Eine Schablone mit lauter gleich positiven Werten zeichnet das Bild weich. Convolutional Neural Networks (CNNs) bauen auf genau diesem Prinzip auf.

So funktioniert die Faltung

Eine Faltung sind ein paar einfache Schritte, die für jeden Pixel des Bildes wiederholt werden:

  1. Kernel — die SchabloneDer Kernel ist eine kleine Matrix (hier 3×3 — also 9 Zellen). Warum 3×3 und nicht 100×100? Weil ein winziger Ausschnitt um den Ziel-Pixel reicht, um lokale Eigenschaften wie Kanten zu erkennen — und 9 Werte sind schnell zu rechnen. In echten CNNs sind 3×3, 5×5 oder 7×7 Standard. Jeder Wert gewichtet einen Nachbar-Pixel: positive Werte verstärken, negative ziehen ab. Die Mitte ist der Ziel-Pixel (Anker).
  2. Sliding — Pixel für PixelSchiebe den Kernel über jeden Pixel des Bildes. An jeder Position: multipliziere jeden Kernel-Wert mit dem darunterliegenden Pixel, summiere alle 9 Produkte — das ist der neue Pixel-Wert. Am Rand wird der äußerste Pixel repliziert, damit nichts abgeschnitten wird.
  3. Divisor & Offset — Helligkeit kontrollierenNach dem Summieren wird das Ergebnis noch zwei Mal angepasst: durch den Divisor geteilt (damit ein Blur-Kernel mit 9 Einsen das Bild nicht 9-fach überstrahlt) und mit einem Offset verschoben (damit z.B. Prägen-Kernel um den Wert 128 in den sichtbaren Mittelgrau-Bereich rutschen, statt schwarz zu clippen). Die Stats-Anzeige rechts zeigt beide Werte live an.
  4. CNNs lernen die KernelIn einem CNN gibt der Mensch nicht mehr die Werte vor — das Netz lernt sie automatisch aus Trainingsdaten. Ein erstes Layer lernt einfache Kernel wie Kanten und Ecken. Spätere Layer kombinieren diese zu komplexeren Features (Texturen, Gesichtsmerkmale, Objekte).

Aus dieser simplen Operation entsteht die ganze Bildverarbeitungs-Kunst: Photoshop-Filter, Edge-Detection in alten Computer-Vision-Pipelines, und — am wichtigsten — das Fundament moderner KI-Bilderkennung. Dieselbe Mathematik, ob du eine Schablone für Sobel-X von Hand entwirfst oder ein neuronales Netz Millionen davon trainiert.

Faltungs-Werkstatt

🖼️ Mission: Wähle ein Quellbild, gestalte eine 3×3-Schablone (Kernel) — und sieh live, wie Kanten, Texturen und Muster hervortreten. Probier ein Preset wie Sobel oder Blur.

Was diese Demo zeigt

Ein Filter ist ein winziges Gitter aus neun Zahlen, das über ein Bild wandert und es Stück für Stück neu zeichnet — je nach Zahlen wird das Ergebnis weich, kantig oder geprägt.

Was du siehst
Zwei Bilder nebeneinander: links das Ausgangsbild, rechts das gefilterte Ergebnis, dazwischen ein Gitter aus neun Zahlen — der Kernel. Ein leuchtender Rahmen markiert das kleine 3×3-Fenster, das gerade über dem Bild sitzt.
Was passiert
Das Fenster wandert Pixel für Pixel über das Bild. Je nach den Zahlen im Kernel wird das rechte Bild weich und verwaschen (Weichzeichner), oder die Flächen verschwinden und nur helle Konturen bleiben (Kantenfilter, Sobel), oder Kanten treten härter hervor (Schärfen), oder das Motiv wirkt in Graustufen wie in Stein geprägt (Relief).
Was du tun kannst
Wähle links ein Motiv, tippe rechts einen der acht Vorgabe-Filter an oder trage eigene Zahlen ins Gitter ein. Mit Play lässt du das Fenster von allein wandern; per Klick ins Bild springst du zu einer beliebigen Stelle.
Worauf du achtest
Es ist immer derselbe Rechenschritt — allein die neun Zahlen entscheiden, ob das Bild weichgezeichnet, in Kanten zerlegt oder geprägt wird. Genau solche kleinen Filter stapeln Bild-KIs (CNNs) übereinander, um sehen zu lernen.

Wähle links ein Quellbild, gestalte in der Mitte eine 3×3-Schablone (Kernel) — rechts erscheint das Ergebnis. Die Standard-Schablone ist Sobel-X: sie hebt senkrechte Kanten hervor.

1 Quellbild

Wähle eine Vorlage oder lade ein eigenes Bild hoch.

2 3×3-Kernel

Jede Zelle gewichtet einen Nachbar-Pixel. Klick rein und ändere Werte — Ergebnis aktualisiert sich live.

+ positiv (verstärkt) − negativ (zieht ab) • Anker (Ziel-Pixel)

Voreinstellungen

Erweiterte Optionen
Normalisieren
Kernel-Summe auf 1 ziehen — verhindert Helligkeits-Verschiebungen.
Filter stapeln
Bis zu 3 Filter hintereinander anwenden — wie ein CNN-Layer-Stapel.

3 Ergebnis

Live-Vorschau nach Anwendung des Kernels.

Kernel-Summe 0
Divisor 1
Letzte Rechenzeit0 ms

Live-Faltung — zeig mir wie's funktioniert

Klick irgendwo aufs Quellbild oder starte die Animation. Du siehst dann genau, wie der Kernel an einer Position rechnet: die 3×3 Nachbarn werden mit den Kernel-Werten multipliziert, alle 9 Produkte aufsummiert, durch den Divisor geteilt und der Offset addiert. Das ergibt einen einzigen Pixel im Ergebnisbild.

Geschwindigkeit: 4×
x=1, y=1

Tipp: schau wie sich der Σ-Wert ändert, wenn der Cursor an einer Kante vorbeikommt — bei Sobel-X springt er weit ins Positive oder Negative.

Bild-Patch
000000000
Kernel
-101-202-101
Output-Pixel
Σ = 0 |Σ| / 1 + 0 → [0…255] 0

Spielideen — probier diese 5 Aufgaben

  1. Stelle alle 9 Kernel-Werte auf +1 (lauter Einsen). Das ist Box-Sum, NICHT Box-Blur. Beobachte: das Bild wird massiv überstrahlt. Schalte dann "Normalisieren" in Erweiterte Optionen ein — schwupps, Helligkeit wie vorher. Das ist der Sinn von Normalisieren.
  2. Sobel-X findet senkrechte Kanten, Sobel-Y findet waagerechte. Welcher Preset findet alle Kanten gleichzeitig — egal in welcher Richtung? (Tipp: Es ist nicht Sobel-X+Sobel-Y, sondern ein eigener Kernel.)
  3. Aktiviere "Filter stapeln". Füge erst Gauß-Blur hinzu, dann Sharpen. Vergleiche mit nur-Sharpen. Was beobachtest du? Schärfen holt nur einen Teil der Details zurück, die der Weichzeichner gelöscht hat.
  4. Lade ein eigenes Foto hoch (oder nimm das Portrait). Welcher Preset gefällt dir am besten — und WARUM? Achte auf Kanten, Texturen, Farbe.
  5. Verändere im Sobel-X-Kernel nur die linke Spalte von -1, -2, -1 zu -2, -4, -2. Das ist eine stärkere Variante. Was passiert? Was lernen wir über Kernel-Skalierung?
TheoriePseudocodeSchritt für SchrittFlussdiagramm

Was eine Faltung wirklich tut

Eine Faltung (englisch convolution) ist eine punktweise lineare Operation: für jeden Output-Pixel summierst du gewichtete Beiträge aus einer kleinen Nachbarschaft des Quellbildes. Die Gewichte stehen in einer kleinen Matrix — dem Kernel.

Mathematisch: out(x, y) = ΣᵢΣⱼ K(i, j) · I(x+i, y+j). Für einen 3×3-Kernel laufen i und j von −1 bis +1. Die so berechnete Summe wird optional durch einen Divisor geteilt (Helligkeitserhaltung) und durch einen Offset verschoben (z.B. +128 bei Emboss, damit negative Werte sichtbar bleiben).

Replicate-Padding am Rand

Am Bildrand fehlen Nachbar-Pixel — der Kernel ragt über das Bild hinaus. Naiver Ansatz: Nullen einsetzen (zero-padding) → das gibt schwarze Ränder. Besser: den äußersten Pixel des Bildes wiederholen (replicate). Das nutzt diese Demo: kein sichtbarer Rand-Artefakt.

Komplexität

  • Zeit: O(W · H · k²) pro Layer — bei einem 3×3-Kernel auf einem 192×192-Bild sind das ~330.000 Multiplikationen-Additionen. Auf moderner CPU unter 10 ms.
  • Speicher: O(W · H) für das Output-Buffer. Plus k² Werte für den Kernel.
  • Parallelisierbar: jede Output-Position ist unabhängig — GPUs (und CNNs) verarbeiten sie alle gleichzeitig.

Klassische Anwendungen

  • Edge-Detection: Sobel-X/Y, Laplace — Vorstufe für Objekterkennung
  • Glättung: Box-Blur, Gauß-Blur — Rauschen reduzieren vor anderen Schritten
  • Schärfung: Unsharp-Masking
  • Embossing: reliefartige Effekte
  • CNNs: dieselbe Operation, aber die Kernel-Werte werden gelernt — Grundlage moderner Computer-Vision

Probier es in der Demo aus! Stell den Kernel auf Identity — das Bild bleibt unverändert. Klick auf Sobel-X — plötzlich leuchten senkrechte Kanten weiß auf schwarz. Editiere einzelne Zellen — und sieh, wie kleine Änderungen das Ergebnis komplett umkrempeln.

Teste dein Verständnis

Frage 1 / 4

Was tut ein Edge-Detection-Kernel wie Sobel-X grundsätzlich?

Wählen Sie eine Antwort
Auflösung: 1) B · 2) C · 3) C · 4) C