Benutzer-Werkzeuge

Webseiten-Werkzeuge


digitale_filter_-_bildoperatoren

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
digitale_filter_-_bildoperatoren [2024/01/20 13:52] – [Der selbe Formalismus ein wenig formaler :-)] torsten.roehldigitale_filter_-_bildoperatoren [2024/01/20 14:35] (aktuell) – [Die Faltung im Detail] torsten.roehl
Zeile 25: Zeile 25:
 |{{ :inf:java:punkt_a.png?200 |}}|  |{{ :inf:java:punkt_b.png?200 |}}||{{ :inf:java:punkt_c.png?200 |}}| |{{ :inf:java:punkt_a.png?200 |}}|  |{{ :inf:java:punkt_b.png?200 |}}||{{ :inf:java:punkt_c.png?200 |}}|
 | Orginal-Bild (Quelle, I = Input)  |**+**  |3x3 Filter-Matrix (M=Maske) |**=**  |Ziel-Bild (Senke, O = Output) | | Orginal-Bild (Quelle, I = Input)  |**+**  |3x3 Filter-Matrix (M=Maske) |**=**  |Ziel-Bild (Senke, O = Output) |
-|Der zu verändernde Bildpunkt befindet sich in der Mitte, umgeben von 8 Nachbarpixeln, welche auch ausgewertet werden müssen. Der zentrale Punkt mit seinen 8 Nachbarn werden wir mit "lokalen Bildbereich" bezeichnen.| | Der Filter besitzt 9 Werte. Filter und Orginalbild werden miteinander verknüpft. Die Verknüpfung bezeichnet man als Faltung. Die mathematischen Prinzipien, die der Faltung zu Grunde liegen, gehören nicht zur Schulmathematik und werden hier deshalb nicht aufgeführt.| |Der Original-Bildpunkt mit seinen Nachbarn wurde zusammen mit einem Filter kombiniert. Das Ergebnis ist der hier Rot dargestellte Bildpunkt.|+|Der zu verändernde Bildpunkt befindet sich in der Mitte, umgeben von 8 Nachbarpixeln, die ebenfalls ausgewertet werden müssen. Der zentrale Punkt mit seinen 8 Nachbarn wird als „lokaler Bildbereich“ bezeichnet.| | Der Filter besitzt 9 Werte. Filter und Orginalbild werden miteinander verknüpft. Die Verknüpfung bezeichnet man als Faltung. Die mathematischen Prinzipien, die der Faltung zu Grunde liegen, gehören nicht zur Schulmathematik und werden hier deshalb nicht aufgeführt.| |Der Original-Bildpunkt mit seinen Nachbarn wurde zusammen mit einem Filter kombiniert. Das Ergebnis ist der hier rot dargestellte Bildpunkt.|
  
  
Zeile 40: Zeile 40:
 | @orange: lokale Operation  | Ein Filter ist ein lokaler Operator. Ein Bildbereich **I** und eine Maske **M** werden verknüpft, um den Wert eines neuen Pixels (Bildpunkt, **O** ) zu berechnen. Die Operation **O = I * M** bezeichnet man als Faltung. | | @orange: lokale Operation  | Ein Filter ist ein lokaler Operator. Ein Bildbereich **I** und eine Maske **M** werden verknüpft, um den Wert eines neuen Pixels (Bildpunkt, **O** ) zu berechnen. Die Operation **O = I * M** bezeichnet man als Faltung. |
 ==== Die Faltung im Detail ==== ==== Die Faltung im Detail ====
-Es wird jetzt gezeigt, wie, ausgehend von einem lokalen Bildbereich und einer Maske, ein neuer Bildpunkt berechnet wird. In späteren Abschnitten wird im wesentlichen nur noch die Maske verändert, die vorgehensweise bleibt aber immer dieselbe.+Es wird jetzt gezeigt, wie, ausgehend von einem lokalen Bildbereich und einer Maske, ein neuer Bildpunkt berechnet wird. In späteren Abschnitten wird im Wesentlichen nur noch die Maske verändert, die Vorgehensweise bleibt aber immer dieselbe.
  
   * Der Wert jedes Pixels im Bildbereich wird mit dem entsprechenden Wert der Maske multipliziert. Auf diese Weise ergeben sich 9 Terme.   * Der Wert jedes Pixels im Bildbereich wird mit dem entsprechenden Wert der Maske multipliziert. Auf diese Weise ergeben sich 9 Terme.
Zeile 85: Zeile 85:
   * Während I(x,y) relative Angaben enthält, um verschiedene Bildpunkte zu repräsentieren, beschreibt M(x,y) konstante Werte.   * Während I(x,y) relative Angaben enthält, um verschiedene Bildpunkte zu repräsentieren, beschreibt M(x,y) konstante Werte.
  
-Wenn I(x,y) $w_5$ den Wert an der Position x,y repräsentiert dann gilt (auf das Beispiel bezogen): +Wenn I(x,y) =$w_5$ den Wert an der Position x,y repräsentiert dann gilt (auf das Beispiel bezogen): 
-  * I(x,y) = $w_5$ //(Wert an der Position x,y)// +  * I(x,y) = $w_5=5$ //(Wert an der Position x,y)// 
-  * I(x-1,y-1) = $w_1$ //(Wert an der Position x-1,y-1)// +  * I(x-1,y-1) = $w_1=1$ //(Wert an der Position x-1,y-1)// 
 Für die Matrix M gilt dann folgendes: Für die Matrix M gilt dann folgendes:
-  * M(1,-1) = $m_3$ (Filterwert an der Stelle  x+1,y-1) +  * $M(1,-1) = m_3=1//(Filterwert an der Stelle  x+1,y-1)// 
-  * M(0,0) = $m_5$ +  * $M(0,0) = m_5=3
-  * M(1,1) = $m_9$+  * $M(1,1) = m_9=1$
 </note> </note>
  
 Nach dem obigen Beispiel gilt dann: Nach dem obigen Beispiel gilt dann:
  
- \[ \begin{split} O(i,j) =  m1\cdot w1 m2\cdot w2 m3\cdot w3\\ + m4\cdot w4 m5\cdot w5 +  m6\cdot w6 \\+ m7\cdot w7 m8\cdot w8 m9\cdot w9 \end{split} \]+ \[ \begin{split} O(i,j) =  m_1\cdot w_1 m_2\cdot w_2 m_3\cdot w_3\\ + m_4\cdot w_4 m_5\cdot w_5 +  m_6\cdot w_6 \\+ m_7\cdot w_7 m_8\cdot w_8 m_9\cdot w_9 \end{split} \]
  
 (Die Werte für I werden eingesetzt) (Die Werte für I werden eingesetzt)
  
-\[ \begin{split} = m1\cdot I(i-1,j-1) + m2\cdot I(i,j-1) + m3\cdot I(i+1,j-1) \\+ m4 \cdot I(i-1,j) + m5\cdot I(i,j)+ m6\cdot I(i+1,j) \\ + m7\cdot I(i-1,j+1) + m8\cdot I(i,j+1) + m9\cdot I(i+1,j+1) \end{split} \]+\[ \begin{split} = m_1\cdot I(i-1,j-1) + m_2\cdot I(i,j-1) + m_3\cdot I(i+1,j-1) \\+ m_4 \cdot I(i-1,j) + m_5\cdot I(i,j)+ m_6\cdot I(i+1,j) \\ + m_7\cdot I(i-1,j+1) + m_8\cdot I(i,j+1) + m_9\cdot I(i+1,j+1) \end{split} \]
  
 (Die Werte für M werden eingesetz) (Die Werte für M werden eingesetz)
Zeile 108: Zeile 108:
 (Summenzeichen für die erste Komponente benutzen - Laufvariable heißt x) (Summenzeichen für die erste Komponente benutzen - Laufvariable heißt x)
  
-\[ \begin{split} = \sum_{x=-1}^1 \{ M(x,-1) \cdot I(i+x,j-1)  \\+ M(x,0) \cdot I(i+x,j)  \\ + M(x,1)\cdot I(i+x,j+1) \} \end{split} \]+\[ \begin{split} = \sum_{x=-1}^1 \{ M(x,-1) \cdot I(i+x,j-1)  + M(x,0) \cdot I(i+x,j)  + M(x,1)\cdot I(i+x,j+1) \} \end{split} \]
  
 (Summenzeichen auch für die zweite Komponente benutzen - Laufvariable heißt y) (Summenzeichen auch für die zweite Komponente benutzen - Laufvariable heißt y)
digitale_filter_-_bildoperatoren.1705758735.txt.gz · Zuletzt geändert: 2024/01/20 13:52 von torsten.roehl