Was bisher geschah I digitale Bilder: I Funktion B : pos → col pos I Matrix B ∈ col I statistische Merkmale und ihre Aussagen über das Bild I Punktoperationen f : col1 → col2 und ihre Fortsetzung f : colpos → colpos 1 2 (Bildanalyse) (Farbtransformation) ∀p ∈ pos : f (B)(p) = f (B(p)) I I I Intensitäts-, Kontrasterhöhung Histogrammstreckung Binarisierung I Geometrische Operationen f : pos1 → pos2 (Koordinatentransformation) I Verschiebung, Skalierung, Drehung I Projektion I Interpolation der Intensitäten 57 Digitalisierung Transformation analoger in digitale Signale (mit endlichem diskretem Definitions- und Wertebereich) Teilaufgaben: Rasterung (Abtastung, Sampling): Abbildung auf diskreten Definitionsbereich (Ortsraum) pos Ortsauflösung: Anzahl der Positionen (Stützstellen) oft definiert durch Abtastrate Quantisierung Abbildung auf diskreten Wertebereiches col 58 Eindimensionale Signale analog : Funktion R→R N digital : Funktion pos → col mit pos, col ⊆ , oft pos = {0, . . . , m − 1} ⊆ , col = {0, . . . , n − 1} ⊆ (Array / Liste / 1D-Matrix natürlicher Zahlen) N N Beispiele: I Temperaturverläufe I Börsenkurse I Töne (Schallwellen) 59 Abtastung eindimensionaler Signale (Transformation eines Signals mit stetigem Definitionsbereich in ein Signal mit diskretem Definitionsbereich) gegeben: gesucht: R R Funktion B : → Funktion B 0 : pos → R mit pos = {0, . . . , m − 1} Ziel: Transformation f : (R → R) → (pos → R) mit ∀B ∈ (RR ) ∀p ∈ pos : f (B, p) = B(p) 0 falls p ∈ pos sonst Realisierung von f durch Multiplikation von B mit Dirac-Impulsen δ : → mit Z ∞ δ(x)dx = 1 R R −∞ ∀x ∈ R : x 6= 0 → δ(x) = 0 (1) (2) 60 Dirac-Impuls R R Dirac-Impuls δ : → mit Z ∞ δ(x)dx = 1 und ∀x ∈ R : x 6= 0 → δ(x) = 0 Approximation durch Rechteck-Impulse: ∀x ∈ R : −∞ f1 (x) 1 falls −1/2 ≤ x ≤ 1/2 0 sonst 1 falls −2−i ≤ x ≤ 2−i 0 sonst = ... fi (x) = ... R R Wirkung der Multiplikation von B : → mit Z ∞ Z 2−i fi : B(x)fi (x)dx = B(x)dx = avg{B(x) | x ∈ [−2−i , 2−i ]} −∞ −2−i Z ∞ für i → ∞: δ : B(x)δ(x)dx = B(0) −∞ 61 Dirac-Kamm R R Dirac-Impuls δ : → mit Z ∞ δ(x)dx = 1 und ∀x ∈ −∞ R : x 6= 0 → δ(x) = 0 Verschiebung um p entlang der x-Achse: Z ∞ Z ∞ B(p + x)δ(x)dx = B(x)δ(p − x)dx = B(p) −∞ −∞ Dirac-Kamm: Summe mehrerer Dirac-Impulse X ∀x ∈ : δpos (x) = δ(p − x) R p∈pos R → R) → (pos → R) mit Transformation f : ( RR) ∀p ∈ pos : f (B, p) ∀B ∈ ( Z ∞ B(x)δpos (x)dx = −∞ = Ziel erreicht: Abtastung der Funktion B : B(p) 0 falls p ∈ pos sonst R → R an den Stellen pos 62 Beispiele I R I I I I R B : → {0, 1} mit ∀x ∈ : B(x) = bxc mod 2 Abtastung an allen Positionen B: pos = {n/2 |∈ {0, . . . , 10}} B 0 = {(0, 0), (1/2, 0), (1, 1), (3/2, 1), (2, 0), (5/2, 0), . . .} pos = {3n/2 |∈ {0, . . . , 10}} B 0 = {(0, 0), (3/2, 1), (3, 1), (9/2, 0), (6, 0), (15/2, 1), . . .} Unterabtastung pos = {4n |∈ {0, . . . , 10}} B 0 = {(0, 0), (4, 0), (8, 0), . . .} Unterabtastung R → [−1, 1] mit ∀x ∈ R : B(x) = sin(x) Aliasing: Rekonstruktion nicht im Original vorhandener Frequenzen (Alias-Frequenzen, Schwebungen) 63 Probleme bei der Abtastung Durch Digitalisierung (Transformation stetiger Signale in diskrete) entstehen möglicherweise Informationsverlust bei Unterabtastung verfälschte Strukturen (Aliasing) Nyquist-Shannon-Abtasttheorem: Zur verlustfreien Rekonstruktion darf das Abtastraster nicht gröber sein als die halbe Größe des kleinsten abzubildenden Details. (Abstasfrequenz wenigstens doppelt so groß wie die höchste im Signal vorkommende Frequenz) 64 Faltung Verschiebung eines Dirac-Impulses um p entlang der x-Achse: Z ∞ Z ∞ B(p + t)δ(t)dt = B(t)δ(p − t)dt = B ∗ δ −∞ −∞ ist Spezialfall einer Operation zweier Funktionen: R R ist die Faltung (Convolution) von f und g Für f , g : → definiert durch ∀x ∈ R : (f ∗ g)(x) = Z ∞ f (t)g(x − t)dt −∞ 65 Faltung – Eigenschaften I kommutativ, d.h. ∀f , g : f ∗ g = g ∗ f I assoziativ, d.h. ∀f , g, h : (f ∗ g) ∗ h = f ∗ (g ∗ h) I bilinear, d.h. linear in jeder Komponente (af + bf 0 ) ∗ g = a(f ∗ g) + b(f 0 ∗ g) (analog für ag + bg 0 ) I Dirac-Impuls δ ist neutrales Element bzgl. ∗: Für jede Funktion B : → gilt Z ∞ ∀x ∈ : (B ∗ δ)(x) = B(t)δ(x − t)dt = B(x) R R R −∞ also B ∗ δ = B I für verschobenen Dirac-Impuls δp mit ∀x ∈ : δp (x) = δ(x − p) und jede Funktion B : → gilt R R R ∀x ∈ R : (B ∗ δp )(x) = B(x − p) 66 Diskrete Faltung stetig: Für f , g : R → R ist die Faltung von f und g definiert durch Z ∞ ∀x ∈ R : (f ∗ g)(x) = f (t)g(x − t)dt −∞ diskret: Für f , g : → ist die Faltung (Convolution) von f und g definiert durch ∞ X ∀x ∈ : (f ∗ g)(x) = f (t)g(x − t) Z Z Z −∞ diskret mit endlichen Definitionsbereichen Für f , g : {0, . . . , n − 1} ist die Faltung (Convolution) von f und g definiert durch n−1 X ∀x ∈ {0, . . . , n − 1} : (f ∗ g)(x) = f (t)g(x − t) 0 67 Diskrete Faltung – Beispiel f,g : Z → N mit f (x) = 1 falls x = 2 0 sonst 2 falls x = 1 1 falls x ∈ {0, 2} g(x) = 0 sonst als Vektoren (mit endlichen Definitionsbereichen): f = (0, 0, 1, 0), g = (1, 2, 1) (nur relevante Bereiche) falls x = 31 2 falls x ∈ {2, 4} (f ∗ g)(x) = 0 sonst als Vektor: f ∗ g = (0, 0, 1, 2, 1, 0) 68 Zweidimensionale Signale analog : Funktion R2 → R N N digital : Funktion pos → col mit col ⊆ und pos ⊆ 2 , oft pos = {0, . . . , m − 1} × pos = {0, . . . , n − 1} ⊆ und col = {0, . . . , k − 1} ⊆ (Matrix natürlicher Zahlen, Bilder) N N2 69 Abtastung (2D) Transformation eines Signals mit stetigem Definitionsbereich in ein Signal mit diskretem Definitionsbereich (Raster) gegeben: Funktion B : 2 → gesucht: Funktion B 0 : pos → mit pos = {0, . . . , m − 1} × {0, . . . , n − 1} Transformation f : ( 2 → ) → (pos → ) mit 2 ∀B ∈ ( (R ) ) ∀p = (px , py ) ∈ pos : B(px , py ) falls (px , py ) ∈ pos f (B, px , py ) = 0 sonst R R R R R R R Realisierung durch Multiplikation von B mit Dirac-Impulsen δ : 2 → mit Z ∞Z ∞ δ(x, y )dxdy = 1 R −∞ −∞ ∀(x, y ) ∈ R R2 : (x, y ) 6= (0, 0) → δ(x) = 0 70 Dirac-Kamm (2D) R R Dirac-Impuls δ : 2 → mit Z ∞Z ∞ δ(x, y )dxdy = 1 und ∀(x, y ) ∈ −∞ −∞ R2 : (x, y ) 6= (0, 0) → δ(x) = 0 R Verschiebung in der Ebene um (px , py ) ∈ 2 : Z ∞Z ∞ B(px + x, py + y )δ(x, y )dxdy −∞ −∞ Z ∞Z ∞ = B(x, y )δ(px − x, py − y )dxdy −∞ −∞ B(px , py ) = Dirac-Kamm: Summe mehrerer Dirac-Impulse X ∀(x, y ) ∈ 2 : δpos (x, y ) = δ(px − x, py − y ) R p∈pos Abtastung der Funktion B : 0 R2 → R an den Stellen pos ⊆ R2: Z ∞ Z ∞ ∀(x, y ) ∈ pos : B (x, y ) = B(x, y )δpos (x, y )dxdy = B(x, y ) −∞ −∞ 71 Faltung (2D) R Für f , g : 2 → definiert durch ∀(x, y ) ∈ R ist die Faltung (Convolution) von f und g R : (f ∗ g)(x, y ) = Z ∞ Z ∞ f (t, u)g(x − t, y − u)dtdu −∞ −∞ diskreter Fall (Bilder): Für f , g : {0, . . . , m − 1} × {0, . . . , m − 1} → col ist die Faltung (Convolution) von f und g definiert durch ∀(x, y ) ∈ {0, . . . , m − 1} × {0, . . . , m − 1} : (f ∗ g)(x, y ) = m−1 n−1 XX f (t, u)g(x − t, y − u) t=0 u=0 72 Probleme bei der Abtastung Durch Digitalisierung (Transformation stetiger Signale in diskrete) entstehen möglicherweise Informationsverlust bei Unterabtastung verfälschte Strukturen (Aliasing) Nyquist-Shannon-Abtasttheorem: Zur verlustfreien Rekonstruktion darf das Raster nicht gröber sein als die halbe Größe des kleinsten abzubildenden Details. 73 Anti-Aliasing-Techniken I Erhöhung der Abtastrate I kleine Frequenzen durch Filter entfernen I bei Bilderzeugung und -aufnahme: zufällige kleine Verschiebungen im Abtast-Raster 74