Bilderzeugung und Bildaufnahme - Hochschule Niederrhein
Bilderzeugung und Bildaufnahme - Hochschule Niederrhein
Bilderzeugung und Bildaufnahme - Hochschule Niederrhein
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
„Graphische Datenverarbeitung<br />
<strong>und</strong> Bildverarbeitung“<br />
<strong>Hochschule</strong> <strong>Niederrhein</strong><br />
<strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 1<br />
Einordnung in die Inhalte der Vorlesung<br />
• Einführung<br />
• mathematische <strong>und</strong> allgemeine Gr<strong>und</strong>lagen<br />
• Hardware für Graphik <strong>und</strong> Bildverarbeitung<br />
• Graphische Gr<strong>und</strong>algorithmen (Zeichnen graphischer Primitive, Methoden für<br />
Antialaising, Füllalgorithmen)<br />
• <strong>Bildaufnahme</strong> (Koordinatensysteme, Transformation)<br />
• Durchführung der Bildverarbeitung <strong>und</strong> -analyse<br />
• Fourier Transformation<br />
• Bildrestauration<br />
• Bildverbesserung (Grauwertmodifikation, Filterverfahren)<br />
• Segmentierung<br />
• Morphologische Operationen<br />
• Merkmalsermittlung <strong>und</strong> Klassifikation<br />
• Erzeugung von Bildern in der Computergraphik<br />
• Geometrierepräsentationen<br />
• Clipping in 2D <strong>und</strong> 3D<br />
• Hidden Surface Removal<br />
• Beleuchtungsberechnung<br />
• Shading<br />
• Schattenberechnung<br />
• Volumenrendering als Beispiel für die Nutzung beider Gebiete<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 2
Wiederholung wichtiger Begriffe<br />
• Scan-Line-Algorithmus<br />
• Floodfill-Algorithmus<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 3<br />
reales<br />
Objekt<br />
Konstruktionsidee<br />
7.1 Abstraktionsstufen<br />
Modell<br />
Formale Beschreibung<br />
der Objekte<br />
Abstraktion,<br />
Modellierung<br />
Informatische<br />
Repräsentation<br />
Datenstrukturen<br />
Spezifikation,<br />
abstrakte Datentypen<br />
Graphische<br />
Ausgabe<br />
Berechnung<br />
geometrischer<br />
Eigenschaften<br />
Berechnung<br />
physikalischer<br />
Eigenschaften<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 4<br />
...<br />
Verarbeitung
Lokale<br />
Koordinaten<br />
Objektdefinition<br />
Modell-<br />
Transformation<br />
Komponieren<br />
der Szene<br />
Festlegung der<br />
Kameraposition<br />
<strong>und</strong> Orientierung<br />
Festlegung der<br />
Beleuchtung<br />
Rendering-Pipeline<br />
Weltkoordinaten<br />
Normalisierungstransformation<br />
Kamerakoordinaten<br />
Entfernen der<br />
Rückseiten<br />
Clippen gegen<br />
den Sichtkörper<br />
Entfernen<br />
verdeckter<br />
Oberflächen<br />
Rastern<br />
Schattieren<br />
Texturierung<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 5<br />
7.2 Projektion bei der Aufnahme<br />
2-D Bild<br />
Kamerasystem<br />
Linse<br />
Sichtpyramide<br />
3-D Szene<br />
• Alle Punkte außerhalb der Sichtpyramide werden nicht abgebildet.<br />
• Alle verdeckten Punkte in der Sichtpyramide werden nicht abgebildet.<br />
• Von den abgebildeten Punkten geht die Tiefeninformation verloren.<br />
Bildkoordinaten<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 6<br />
Bild
Y<br />
Bildkoordinaten<br />
7.3 Koordinatensysteme<br />
2-D Bild<br />
Bildhauptpunkt<br />
optische Achse<br />
X<br />
Kamerakoordinaten<br />
Y<br />
Linse<br />
• Weltkoordinatensystem: 3-D, reell, relativ zu einem Punkt in der Welt<br />
• Kamerakoordinatensystem: 3-D, reell, relativ zur Kamera<br />
Weltkoordinaten<br />
3-D Szene<br />
• Bildkoordinatensystem: 2-D, reell oder ganzzahlig, begrenzt, relativ zum<br />
CCD-Chip oder zum Bildschirm<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 7<br />
Koordinatensysteme in der graphischen<br />
Datenverarbeitung<br />
Zweidimensional: Dreidimensional:<br />
y<br />
x<br />
z<br />
y<br />
X<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 8<br />
Z<br />
Z<br />
x<br />
rechtshändiges<br />
Koordinatensystem<br />
Y<br />
X<br />
y<br />
z<br />
x<br />
linkshändiges<br />
Koordinatensystem<br />
Die beiden Koordinatensysteme sind spiegelbildlich<br />
<strong>und</strong> nicht durch Drehung ineinander zu überführen.
7.4 Transformation<br />
1. Koordinatentransformation = Veränderung der Koordinatenwerte<br />
beim Wechsel von einem Koordinatensystem zu einem anderen<br />
→Weltkoordinatensystem relativ zu Kamerakoordinatensystem<br />
2. Veränderung der Position von Punkten aufgr<strong>und</strong> von Bewegung<br />
Arten von Transformationen:<br />
• Translation (Verschiebung)<br />
• Skalierung (Größenveränderungen)<br />
• Rotation (Drehung)<br />
• Spiegelung<br />
• Scherung<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 9<br />
7.4.1 Translation<br />
(x‘,y‘)<br />
• Punkt (x,y) wird auf gerader<br />
Linie nach (x‘, y‘) verschoben<br />
• Beschreibung der Translation<br />
durch einen Vektor (dx,dy), der<br />
die Verschiebungsweite in x<strong>und</strong><br />
y-Richtung angibt<br />
dy ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ dx yx yx<br />
⎜⎝⎛′ = +<br />
(x,y)<br />
• Addition des<br />
Verschiebungsvektors<br />
• Noch eine Interpretation von<br />
Vektoren: Beschreiben den<br />
dx<br />
Weg bzw. die Linie von P1 zu<br />
P2 Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 10<br />
(dx,dy)<br />
′ dy
7.4.2 Uniforme Skalierung<br />
• Zunächst: Zentrum der<br />
Skalierung ist der<br />
Koordinatenursprung,<br />
Skalierung erfolgt in alle<br />
Richtungen uniform mit dem<br />
Faktor α<br />
• Ortsvektor zu (x,y) wird auf<br />
das α-fache verlängert, um<br />
(x‘,y‘) zu erhalten<br />
′ α ⎜⎝⎛′ = α =<br />
α<br />
• Multiplikation<br />
Skalierungsfaktor⎟⎠⎞<br />
mit dem yx yx<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞<br />
11 (x,y) (x‘,y‘) yx<br />
7.4.3 Nicht-uniforme Skalierung<br />
• Zentrum der Skalierung ist O,<br />
Skalierung erfolgt in x-Richtung<br />
mit dem Faktor α, in y-Richtung<br />
mit β (Skalierungsvektor (α, β) T )<br />
• Ortsvektor zu (x,y) wird auf das<br />
α-fache in x-Richtung <strong>und</strong> das<br />
β-fache in y-Richtung<br />
verlängert.<br />
′ α<br />
= yx ßyx<br />
⎜⎝⎛′<br />
• Multiplikation mit<br />
entsprechenden<br />
Skalierungsfaktoren<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞<br />
12<br />
(x‘,y‘) (x,y)
α<br />
(x‘,y‘)<br />
7.4.4 Rotation<br />
• Rotationszentrum ist der<br />
Koordinatenursprung<br />
• Punkt (x,y) wird um den<br />
Winkel α um den<br />
Koordinatenursprung<br />
gedreht, so daß sich der<br />
Punkt (x‘,y‘) ergibt<br />
• Positive Werte von α<br />
ergeben eine Drehung<br />
entgegen dem Urzeigersinn<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
(x,y)<br />
13<br />
Entfernung r vom Ursprung zu (x,y) bzw. (x‘,y‘) bleibt<br />
unverändert.<br />
(x‘,y‘)<br />
rα r<br />
Rotation<br />
φ<br />
φ) cosφ<br />
y<br />
Graphische DV <strong>und</strong> BV, Regina Pohle,<br />
(x,y)<br />
7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 14 x cos(α+ r r
Rotation<br />
• keine einfache Berechnungsvorschrift<br />
x′<br />
= x cosα<br />
− y sinα<br />
y′<br />
= xsin<br />
α + y cosα<br />
• kann aber als Matrizenmultiplikation ausgedrückt<br />
werden<br />
− α ⎜⎝⎛′ =<br />
α α<br />
• Rotationen um negative Winkel erfolgen mit dem<br />
Uhrzeigersinn, ausnutzen: cos(-α)=cos(α) <strong>und</strong><br />
sin(-α)=-sin(α)<br />
yx ⎜⎝⎛<br />
′ yx<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⎟⎠⎞ sin sin cos<br />
15<br />
αcos<br />
7.4.5 Fazit<br />
• Translation: Addition des Verschiebungsvektors<br />
• Skalierung: Multiplikation des Skalierungsfaktors<br />
• Rotation: Matrixmultiplikation<br />
• Keine einheitliche Behandlung!<br />
• Schwierig bei zusammengesetzten<br />
Transformationen!<br />
• Neue Repräsentation von Transformationen gesucht!<br />
• Homogene Koordinaten<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 16
7.5 Homogene Koordinaten<br />
• Ein Koordinatensystem wird in ein homogenes<br />
Koordinatensystem überführt, indem eine zusätzliche<br />
Dimension eingeführt wird: n Dimensionen → n+1<br />
Dimensionen.<br />
• Ein Punkt (x, y) wird in homogenen Koordinaten<br />
durch das Tripel (x w, y w, w) repräsentiert, mit w≠0.<br />
• normalisierte Darstellung: w = 1 ⇒ (x, y, 1)<br />
• Jeder Punkt hat unendlich viele äquivalente<br />
Repräsentationen in homogenen Koordinaten.<br />
• Der Punkt (0,0,0) existiert nicht! (Ergebnis von<br />
Berechnungen, die ein widersprüchliches oder nicht<br />
eindeutiges Ergebnis liefern.)<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 17<br />
7.5.1 Transformationen in homogenen<br />
Koordinaten<br />
• Was bringt uns das?<br />
• Repräsentation aller Punkte in homogenen Koordinaten, Suche<br />
nach einheitlicher Behandlung der Transformationen<br />
′<br />
?<br />
′ = ∗1yx<br />
wx w ⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛⎟⎠⎞<br />
• Fragen:<br />
– Was steht für das Fragezeichen?<br />
– Welche Operation ist *?<br />
• Antwort:<br />
– Transformationen werden als Matrizen repräsentiert<br />
– Verknüpfung durch Multiplikation<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
wy<br />
18
• Translation<br />
– Vorher: Addition eines Vektors<br />
– Jetzt: Translationsmatrix<br />
′ ⎜⎝⎛′ = ⎟⎠⎞ 01 1 1 0 01 00 yx dy dx ⇒ ⎟⎠⎞⎜⎝⎛<br />
• Skalierung<br />
Transformationen in homogenen<br />
Koordinaten<br />
– Vorher: Multiplikation mit<br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞<br />
Skalierungsfaktoren<br />
dx dy<br />
– Jetzt: Skalierungsmatrix<br />
′ ⎜⎝⎛′ =<br />
1 1 0 00 1 1 yx ⎜⎝⎛<br />
1 1 0 0 0 0 0 yx ⎜⎝⎛<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 19<br />
⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⇒ ⎟⎠⎞ 0 0 1 1 0 0 0 0 0 sy sx yx sy sx ⎟⎠⎞<br />
• Rotation<br />
Transformationen in homogenen<br />
Koordinaten<br />
– Vorher: komplexe Gleichung oder Matrixmultiplikation<br />
– Jetzt: Rotationsmatrix<br />
α − α<br />
′ α − α ⎜⎝⎛′<br />
α α<br />
= α α0<br />
sin cos cos sin 0 sin yx sin cos ⎜⎝⎛ ⎟⎠⎞⇒<br />
⎟⎠⎞⎜⎝⎛<br />
⎟⎠⎞⎜⎝⎛<br />
1 0 cos yx1<br />
• Allgemeine 2D-Transformationsmatrix<br />
⎛a<br />
b c ⎞ Skalierung<br />
⎜ ⎟<br />
⎜d<br />
e f ⎟ Rotation<br />
⎟⎠⎞<br />
⎜<br />
⎝ 0<br />
0<br />
1<br />
⎟<br />
⎠<br />
Translation<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
0 0 1 1 0 0 0<br />
20
7.5.2 Inverse Transformationen<br />
• Frage: Wie macht man Transformationen wieder<br />
rückgängig, also was sind die entsprechenden<br />
inversen Transformationen?<br />
• für die elementaren Transformationen relativ einfach:<br />
– Translation: Verschiebung um den negativen<br />
Verschiebungsvektor T -1 (dx, dy) = T(-dx, -dy)<br />
– Skalierung: Skalierung mit dem reziproken Skalierungsfaktor<br />
S -1 (α) = S(1/α)<br />
– Rotation: Rotation um den negativen Rotationswinkel. Da<br />
aber Rotationsmatrizen speziell othogonal sind, gilt hier<br />
R -1 = R T <strong>und</strong> es ist keine Neubesetzung der Matrix<br />
notwendig.<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 21<br />
7.5.3 Zusammengesetzte Transformationen<br />
• Nacheinanderausführung zweier Translationen<br />
+ ⎜⎝⎛′ =<br />
⇒⎜⎝⎛′<br />
=<br />
+ 01 1 0 01 2 yx dy dx dy dx ⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ 01 1 2 1 2 1 yx dx dydx dx yx ⎟⎠⎞⎜⎝⎛<br />
⎟⎠⎞⎜⎝⎛<br />
⎟⎠⎞⎜⎝⎛⎟⎠⎞<br />
′ 1 0 1 11<br />
′ yx ⎟⎠⎞ 1 1 0 00 1<br />
′<br />
00<br />
′<br />
1<br />
0 0 0 0 0 0 0 1 1 1 2 2 yx yx ⎟⎠⎞ 1 1 0 0 0 0 11<br />
– Translation ist additiv, d.h. Ergebnis ist eine Verschiebung<br />
um die Summe der beiden Vektoren<br />
• Nacheinanderausführung zweier Skalierungen<br />
⋅ ⎜⎝⎛′ = ⎜⎝⎛′ ⇒<br />
=<br />
00<br />
1<br />
⋅<br />
– Skalierung ist multiplikativ, d.h. Ergebnis ist eine Skalierung<br />
um das Produkt der beiden Faktoren<br />
⎜⎝⎛<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞<br />
22<br />
0 1 0 0 0 sy sx sy sx ⎜⎝⎛ ⎟⎠⎞ ⎟⎠⎞ 0 0 1 yx sy sy sx sx yx 0<br />
2 1 2 1
Zusammengesetzte Transformationen<br />
• Nacheinanderausführung zweier Rotationen<br />
α − α α − α ⎜⎝⎛′ = α α α α cos sin 0 sin cos 1 0 0 0 cos sin 0 sin cos 2 2 2 yx 0 0 ⎟⎠⎞⎜⎝⎛<br />
⎟⎠⎞⎜⎝⎛<br />
⎟⎠⎞⎜⎝⎛⎟⎠⎞<br />
′ 1 0 1 1 1 1 1 2 yx1<br />
– Rotation ist additiv<br />
• Allgemein: Arbeit mit Transformationmatrizen<br />
– vereinheitlicht alle Transformationen<br />
– einfache Möglichkeit der Kombination von Transformationen<br />
• hier genutzte Schreibweise<br />
– Transformationen werden in der Reihenfolge T 1 , T 2 , ..., T n<br />
ausgeführt ⇒P‘=T n ·...·T 2 ·T 1 ·P<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 23<br />
Zusammensetzen beliebiger<br />
Transformationen<br />
• Rotation eines Punktes um einen beliebigen Punkt<br />
P 1 in der Ebene<br />
• Ausführung in drei Schritten<br />
1. Translation, so daß P 1 im Ursprung liegt<br />
2. Rotation um den Ursprung<br />
3. Rück-Translation des Ursprungs nach P 1<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 24<br />
P1 P1
Zusammensetzen beliebiger<br />
Transformationen<br />
• Aber: Matrixmultiplikation ist nicht kommutativ!<br />
• Das bedeutet: Reihenfolge der Transformationen ist<br />
ausschlaggebend für das Ergebnis<br />
• also: T n ...T 2 T 1 P ≠ T 1 T 2 ...T n P ≠ T 2 T n ...T 1 P wenn die T i<br />
voneinander verschiedene Transformationen sind<br />
• Allerdings in einigen Fällen besteht doch<br />
Kommutativität (wegen der Eigenschaften der<br />
Matrizen):<br />
– Nacheinanderausführung von Translationen<br />
– Nacheinanderausführung von Skalierungen<br />
– Nacheinanderausführung von Rotationen<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 25<br />
Zusammensetzen beliebiger<br />
Transformationen<br />
• Für Transformationsmatrizen gilt das<br />
Assoziativgesetz:<br />
– (AB) C = A (BC); (A (B (C P)))= (ABC)P:<br />
– Wenn eine Folge von Punkten P in gleicher Weise<br />
transformiert werden muß, kann eine gemeinsame,<br />
akkumulierte Matrix (A B C) für alle Punkte genutzt werden.<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 26
7.5.4 Weitere Transformationen<br />
• Spiegelung<br />
– zwei Standard-Möglichkeiten:<br />
• Spiegelung an der x-<br />
Achse<br />
• Spiegelung an der y-<br />
Achse<br />
– Spiegelung wird implementiert<br />
als Skalierung mit dem<br />
Skalierungsfaktor -1<br />
−<br />
− ⎜⎝⎛<br />
= 0 0 0 ) 1 ( 0 0 0 ) 1 1<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 27<br />
( T ⎟⎠⎞<br />
Weitere Transformationen<br />
• Scherung<br />
– Versatz parallel zur x-<br />
Achse, proportional zur y-<br />
Position (bzw. umgekehrt)<br />
– zwei Standardmöglichkeiten<br />
• Scherung entlang der x-<br />
Richtung<br />
= 01<br />
• Scherung entlang der y-<br />
Richtung<br />
= 01<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong><br />
⎜⎝⎛0<br />
0 1a T<br />
28 ⎜⎝⎛0<br />
0 1b T ⎟⎠⎞<br />
(x‘,y‘) ⎟⎠⎞ 0 0 1 (x,y)<br />
10<br />
0
7.6 Transformationsmatrizen in 3D<br />
• Translation<br />
– Addition eines Translationsvektors bzw. Multiplikation mit<br />
einer Translationsmatrix<br />
⎠⎞ ⎜⎝⎛1<br />
dz dy dx⎟<br />
• Skalierung<br />
= 0 0 1<br />
– Multiplikation mit Skalierungsfaktoren bzw. Multiplikation mit<br />
einer<br />
T<br />
Skalierungsmatrix<br />
= 0 0 1<br />
1 0 0 0 1 0 0 0 0<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 29<br />
⎜⎝⎛ 0sz sy sx wennsx=sy=sz, sonst Nicht-uniforme Skalierung ⎟⎠⎞<br />
• Rotation<br />
0 0 0 0 0 0 0 0 0<br />
Transformationsmatrizen in 3D<br />
S uniforme Skalierung,<br />
– nicht mehr ganz so einfach da jetzt Rotationen um die<br />
verschiedenen Koordinatenachsen betrachtet werden<br />
müssen<br />
– drei verschiedene Rotationsmatrizen<br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞ ⎟⎠⎞ ⎜⎝⎛1 0 0 0 cosα<br />
0 sinα<br />
0<br />
0 cosα<br />
− sinα<br />
Rx<br />
=<br />
0 sinα<br />
cosα<br />
0 0 0<br />
0<br />
0<br />
1 ⎜⎝⎛− 0<br />
Ry<br />
=<br />
sinα<br />
0<br />
1<br />
0<br />
0<br />
0<br />
cosα<br />
0<br />
0<br />
0<br />
1<br />
cosα<br />
− sinα<br />
sinα<br />
cosα<br />
Rz<br />
=<br />
0 0<br />
0 0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
0<br />
1<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 30<br />
– Achse, um die gedreht wird, bleibt „Einheitsvektor“ in der<br />
Matrix
Zusammengesetzte 3D-Transformationen<br />
• auch über Multiplikation der Matrizen<br />
• generelle Transformationsmatrix in 3D<br />
Z<br />
Skalierung<br />
= ⎛<br />
o n T p ⎜⎝<br />
l k j i h g f e d c b a<br />
m<br />
⎟⎠<br />
⎞<br />
Rotation<br />
Translation<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 31<br />
7.7 Zusammenfassung - Transformation<br />
• für Computergraphik relevante Transformationen (2D→2D, 3D→3D):<br />
→Translation, Skalierung, Rotation, (Scherung, Spiegelung)<br />
• einheitliche Behandlung der Transformationen durch Übergang zu<br />
homogenen Koordinaten <strong>und</strong> zur Darstellung der Transformationen<br />
durch Matrizen<br />
• zusammengesetzte Transformationen durch<br />
Hintereinanderausführen von elementaren Transformationen,<br />
entspricht Multiplikation der Matrizen<br />
• Transformation der Objekte oder des Koordinatensystems<br />
Y<br />
Weltkoordinaten<br />
X<br />
3-D Szene<br />
Y<br />
Bildkoordinaten<br />
2-D Bild<br />
Bildhauptpunkt<br />
optische Achse<br />
X<br />
Kamerakoordinaten<br />
Y<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 32<br />
Linse<br />
X<br />
Z<br />
Z<br />
Y<br />
Weltkoordinaten<br />
X<br />
3-D Szene
7.8 Projektion (3D→2D)<br />
• Projektionsstrahlen sind Geraden<br />
• Wichtige Projektionsarten: perspektivische Projektion <strong>und</strong><br />
Parallelprojektion<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 33<br />
7.8.1 Perspektivische Projektion<br />
• Realitätsnahe Darstellung<br />
• Projektionsstrahlen treffen sich in einem Punkt<br />
• Keine affine Abbildung: Längenverhältnisse <strong>und</strong> Winkel bei den<br />
Objekten, die nicht parallel zur Projektionsebene liegen, werden<br />
geändert<br />
⎥⎦ Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 34<br />
⎤ ⎥⎦⎤ ⎢⎣⎡ ⎥⎦⎤ ⎥⎦⎤⎢⎣⎡<br />
⎢⎣⎡ x'<br />
d 0 0 0 x d ⋅ x<br />
y'<br />
z'<br />
=<br />
0<br />
0<br />
d<br />
0<br />
0<br />
0<br />
0<br />
0<br />
⋅<br />
y<br />
z<br />
= ⎢⎣⎡+ d ⋅ y<br />
0<br />
1 0 0 1 d 1 z d<br />
• Transformationsmatrix:
Perspektivische Projektion<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 35<br />
Perspektivische Projektion<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 36
7.8.2 Parallelprojektion<br />
• Genutzt zur Darstellung architektonischer Modelle <strong>und</strong><br />
medizinischer Daten<br />
• Projektionsstrahlen treffen sich nicht in einem Punkt,<br />
Projektionszentrum im Unendlichen<br />
• Parallele Linien bleiben parallel; Winkel bleiben nicht erhalten<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 37<br />
Parallelprojektion<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 38
7.9 Zusammenfassung – Schritte in der Computergraphik<br />
1. 2. 3. 4.<br />
1. 2.<br />
3. 4.<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 39<br />
7.10 <strong>Bildaufnahme</strong> mit der realen Kamera<br />
Y<br />
Bildkoordinaten<br />
2-D Bild<br />
Bildhauptpunkt<br />
optische Achse<br />
X<br />
Kamerakoordinaten<br />
Y<br />
Linse<br />
X<br />
Weltkoordinaten<br />
3-D Szene<br />
Transformation zwischen Welt- <strong>und</strong> Kamerakoordinaten:<br />
( x<br />
y z 1)<br />
⎟<br />
w<br />
w<br />
w<br />
=<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 40<br />
⎞<br />
⎠<br />
⎜⎝<br />
⎛<br />
r<br />
r<br />
r<br />
11<br />
21<br />
31<br />
0<br />
r<br />
r<br />
r<br />
12<br />
22<br />
32<br />
0<br />
Z<br />
r<br />
r<br />
r<br />
13<br />
23<br />
33<br />
0<br />
Z<br />
t<br />
t<br />
t<br />
x<br />
y<br />
z<br />
1<br />
Y<br />
⎛ ⎟⎠<br />
⎞⎜⎝<br />
x<br />
y<br />
z<br />
1<br />
X<br />
c<br />
c<br />
c
0.5<br />
<strong>Bildaufnahme</strong> mit der realen Kamera<br />
Y<br />
Bildkoordinaten<br />
2-D Bild<br />
Bildhauptpunkt<br />
optische Achse<br />
X<br />
Kamerakoordinaten<br />
Y<br />
Linse<br />
X<br />
Weltkoordinaten<br />
3-D Szene<br />
Transformation von Kamerakoordinaten in Bildkoordinaten:<br />
( x y − f 1)<br />
⎟<br />
i<br />
i<br />
=<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 41<br />
⎞<br />
⎠<br />
⎜⎛<br />
⎝<br />
1<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
Z<br />
−<br />
0<br />
0<br />
Z<br />
1<br />
1<br />
f<br />
7.10.1 Abtastung<br />
• Führt zu weiterer Informationsreduktion<br />
• Multiplikation der Bildfunktion f(x) mit einer Impulsfolge.<br />
• Impulsfolge: Folge von Dirac-Impulsenδ(x).<br />
•δ(x)=0 für x≠0 <strong>und</strong> ∫δ(x)=1<br />
• Näherungsweise Bestimmung durch Rechteckimpuls:<br />
1<br />
0.5<br />
0.5<br />
1<br />
0.5<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 42<br />
1<br />
Y<br />
d<br />
d<br />
t<br />
z<br />
x<br />
0<br />
y<br />
X<br />
⎛ ⎞⎟<br />
⎠⎜⎝<br />
x<br />
y<br />
z<br />
…<br />
0.5 0.5<br />
0.5 0.5<br />
c<br />
c<br />
c<br />
1
Abtastung<br />
• Multiplikation mit dem Rechteckimpuls ergibt den Durchschnittswert.<br />
• Je kleiner die Impulsbreite desto mehr nähert sich das Ergebnis dem<br />
tatsächlichen Funktionswert am Abtastort an.<br />
Multiplikation<br />
mit Rechteckimpuls<br />
tatsächlicher<br />
Funktionswert<br />
Integral über Impulsbreite<br />
Beispiel an 1-D Funktion<br />
Abtastintervall 16 Pixel Abtastintervall 8 Pixel Abtastintervall 1 Pixel<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 43<br />
7.10.2 Einflüsse bei der <strong>Bildaufnahme</strong><br />
• Informationsverlust: verloren gegangene Information<br />
beziffern <strong>und</strong> ggf. rekonstruieren (erfordert Modell).<br />
• Deterministische Informationsveränderung:<br />
Veränderung beschreiben <strong>und</strong> – falls möglich –<br />
invertieren (Restauration).<br />
• Stochastische Informationsveränderung:<br />
Veränderung beschreiben <strong>und</strong> näherungsweise<br />
rückgängig machen.<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 44
7.10.3 Deterministische Veränderungen<br />
• Viele Veränderungen lassen sich durch einen linearen Operator<br />
charakterisieren<br />
• Die Veränderung eines Bilds durch einen linearen Operator lässt<br />
sich als Vektor-Matrix-Multiplikation schreiben:<br />
r r r<br />
y = Ax, x - Pixel des Bildes, A - Operatorma trix<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 45<br />
…<br />
Operation mit linearem Operator<br />
( y y y y ) ⎟<br />
1<br />
2<br />
… … … …<br />
x r<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 46<br />
=<br />
⎜⎛<br />
⎝<br />
a<br />
a<br />
a<br />
M , 1<br />
1,<br />
M<br />
... M 3,<br />
1 3,<br />
2 3,<br />
3<br />
x3<br />
Die Operatormatrix ist quadratisch→falls A invertierbar <strong>und</strong> bekannt ist,<br />
dann kann eine Störung durch einen linearen Operator beseitigt werden.<br />
3<br />
a<br />
1,<br />
1<br />
2,<br />
1<br />
...<br />
a<br />
a<br />
a<br />
1,<br />
2<br />
2,<br />
2<br />
a<br />
a<br />
a<br />
1,<br />
3<br />
2,<br />
3<br />
...<br />
...<br />
a<br />
a<br />
M , M<br />
⎜ ⎟⎞⎛<br />
⎠⎝<br />
x<br />
x<br />
...<br />
x<br />
1<br />
2<br />
⎞<br />
M⎠
Intensitätsvariation<br />
• Variierende Sensorsensitivität oder ungleichmäßige Ausleuchtung lässt sich<br />
durch Diagonalmatrix beschreiben.<br />
• Diagonalwerte 0
Beispiel I: Bewegungsunschärfe<br />
• Über einen Zeitraum Δt wird ein<br />
Objektpunkt p auf immer andere Punkte auf<br />
dem CCD-Chip abgebildet.<br />
• Bei unbewegter Kamera sei die Bildhelligkeit<br />
des abgebildeten Punkts h.<br />
• Dann ist sie bei bewegter Kamera h/Δs,<br />
wobei Δs die zurückgelegte Strecke ist.<br />
• Wenn Δs für alle Punkte gleich ist, dann<br />
lässt sich die Veränderung durch eine<br />
Faltung beschreiben.<br />
Kamera<br />
Objekt<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 49<br />
Bewegungsunschärfe<br />
still<br />
Δs<br />
bewegt<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 50
Beispiel II: Fokussierungsunschärfe<br />
• Maß der Unschärfe hängt vom<br />
Punktabstand z, der Brennweite der<br />
Linse f <strong>und</strong> der Kammerkonstante f k ab.<br />
• Unschärfe kann durch Aufnahme eines<br />
punktförmigen Testobjekts angenähert<br />
werden.<br />
Linse<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 51<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 52<br />
z<br />
f<br />
f k<br />
Optische<br />
Achse<br />
Andere nicht verschiebungsinvariante Operatoren<br />
xLinsenverzerrung<br />
Kissenverzerrung durch spärische Linsen<br />
x‘ = x / (1+k·|x| 2 )
Andere nicht verschiebungsinvariante Operatoren<br />
Kamera<br />
Ortsabhängige Vergößerung<br />
Geometrische Verzerrung<br />
Schrägprojektion <strong>und</strong> gekrümmte Oberfläche<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 53<br />
Andere nicht verschiebungsinvariante Operatoren<br />
Über- <strong>und</strong> Unterbelichtung<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 54
7.10.4 Stochastische Einflüsse<br />
• Rauschen: nicht-deterministischer (nicht wiederholbarer) Einfluß<br />
• Beschreibbar als Wahrscheinlichkeit, wie ein Pixel gestört ist.<br />
– Quantenrauschen<br />
– Impulsrauschen<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 55<br />
Normalverteiltes Rauschen<br />
⎟⎠⎞ ⎜⎝⎛ ⎟⎠⎞<br />
• Modell für Quantenrauschen (Wahrscheinlichkeit, dass Lichtquant<br />
geradlinig ausbreitend auf den Sensor trifft).<br />
• Gauß’sche Normalverteilung<br />
1 x x<br />
( ) ⎜⎝⎛− 0<br />
n<br />
x = exp −<br />
σ 2π<br />
σ<br />
2<br />
• Erwartungswert x0 wird meist mit x0 =0 angenommen.<br />
• Varianz σ 2 ist der Grad des Rauschens<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 56
• Einzelne Pixel sind gestört.<br />
Impulsrauschen<br />
• Störung ist maximal (d.h. Pixel ist entweder schwarz oder weiß;<br />
Salt-and-Pepper-Noise)<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 57<br />
7.10.5 Zusammenfassung<br />
• Informationsreduzierende Einflüsse bei der <strong>Bildaufnahme</strong><br />
– Transformation <strong>und</strong> Projektion, Abtastung<br />
• Deterministische Einflüsse<br />
– Lineare Operatoren, Verschiebungsinvarianz, Konvolution,<br />
Punktantwort (PSF)<br />
• Stochastische Einflüsse<br />
– Normalverteiltes Rauschen <strong>und</strong> Impulsrauschen<br />
Graphische DV <strong>und</strong> BV, Regina Pohle, 7. <strong>Bilderzeugung</strong> <strong>und</strong> <strong>Bildaufnahme</strong> 58