Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Computergraphik I
http://isgwww.cs.uni-magdeburg.de/~bernhard/cg(basiert auch auf Unterlagen von Dr. Stefan Schlechtweg
und Prof. Thomas Strothotte, ISG)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 2
Themen heute:
� Vorstellung� Ablauf der Lehrveranstaltung� Inhalt der Lehrveranstaltung
� Einführung� Mathematische Grundlagen � Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 3
Vorstellung
Prof. Dr. Bernhard PreimInstitut für Simulation und GraphikAG VisualisierungOtto-von-Guericke-Universität Magdeburg
E-mail: [email protected]
Tel.: (0391) 67-18512Fax: (0391) 67-11164
B. Preim AG Visualisierung Computergraphik I -Vorstellung 4
� Studium an der Otto-von-Guericke-Uni Magdeburg (1989-1994)
� Wiss. Mitarbeiter an der O-v-G-Universität, AG Computergraphik (1994-1999)
� Wiss. Assistent am Centrum für Medizinische Diagnose-systeme und Visualisierung (MeVis, Bremen), Leitung einer Arbeitsgruppe �Computergestützte Therapieplanung� (1999-2003)
� Seit März 2003: Leiter der AG Visualisierung� Forschung:
� Medizinische Visualisierung� Computergestützte Therapieplanung
Vorstellung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 5
Ablauf der Lehrveranstaltung
� Vorlesung wöchentlich, 5 Leistungspunkte für CV und Inf. � Dienstags, 9 Uhr 15
� ÜbungenDo: 9-11 Uhr, 29-335 Jana Hintze, Raum 234, Mail: [email protected]. �Mo: 9-11 Uhr, 29-335, Tobias Isenberg, Mail: [email protected]: 13-15 Uhr, 29-335,Marcel Götze, Raum 227, Mail: goetze@Di: 11-12 Uhr 30, 29-K056, Rita Freudenberg, Raum 223, Mail: rita@isg...
Inhalt� Übungsaufgaben und Programmieraufgaben mit OpenGLPrüfung:
Lt. Prüfungsordnung mündlich, wahrscheinlich: schriftlich. Für CV: Komplexprüfung Bildverarbeitung und Computergrafik.
B. Preim AG Visualisierung Computergraphik I -Vorstellung 6
Einordnung der Lehrveranstaltung
PF CV 3WPF IF 3-6PF IT-IE 5 (Informationstechnologie)PF IT-TIF 5 ( ´´ )WPF INGIF 3-6 (Ingenieurinformatik)WPF MA-NFIF ab 5 (Mathe, Nebenfach Informatik)WPF SPTE ab 5 (Sport und Technik)WPF WIF ab 5PF BStg-IF-BS 5 (Lehrer, Berufsschule)PF BStg-IF-Gy 5 (Lehrer, Gymnasium)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 7
� Computergraphik-Programmierung� Application Programmer�s Interfaces (APIs); Fokus: OpenGL
� Eingabegeräte und Interaktion� Farbmodelle und Farbräume� Transformationen & Koordinatensysteme� Projektionen und Kameraspezifikationen� Rendering 1: Viewing� Rendering 2: Shading
� Lokale und globale Beleuchtungsmodelle
� Rasterisierungsalgorithmen� Zeichnen von Linien (Bresenham)� Zeichnen von Kreisen/Ellipsen (Bresenham)� Antialiasing� Füllen von Gebieten� Clippen
Inhalt der Lehrveranstaltung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 8
EinführungWas ist Computergraphik?
Erzeugung, Verarbeitung und Analyse von Bildern mit Hilfe von Computern.
Fokus: Erstellung von geometrischen Modellen und ihre Darstellung (Bildsynthese).
Verwandte Disziplinen/Lehrveranstaltungen:� Bildverarbeitung und Bildanalyse: �Verbesserung� gegebener Bilder,
Identifikation und (quantitative) Analyse von Objekten, Klassifikation von Bildern
� Visualisierung: Nutzung von Methoden der Computergraphik, Ziel: wahrnehmungs- und aufgabenorientierte Visualisierungen von abstrakten, gemessenen oder simulierten Daten
� Mensch-Computer-Interaktion: Aufgaben- und benutzerorientierte Software, einfache Interaktionskonzepte werden auch in der Computergraphik benötigt.
B. Preim AG Visualisierung Computergraphik I -Vorstellung 9
Auf Computergraphik aufbauende Lehrveranstaltungen:� Computer-Aided Geometric Design (Modellierung und
Darstellung gekrümmter Kurven und Flächen)� Computergraphik II und III (Direkte Vertiefung von
Computergraphik I)� Non Photorealistic Rendering� Visualisierung� Medizinische Visualisierung (Darstellung von
medizinischen Volumendaten, z.B. CT-Daten)
Einführung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 10
Modellierung und Bildsynthese
Modellierung: Beschreibung von Geometrien (z.B. als Polygone oder gekrümmte Kurven/Flächen)Beschreibung von Darstellungseigenschaften (z.B. Farbe, Transparenz)
Einführung
Modeller Geometrisches Modell
Renderer Bild
B. Preim AG Visualisierung Computergraphik I -Vorstellung 11
Beschreibung von Geometrien1. Liste von Eckpunkten: p = (x,y,z)
glVertex{2,3}{i,f} (x, y, z)z.B. glVertex3f (2.3, 1.8, 0.7)
Polygone werden als Listen von Eckpunkten spezifiziert.
2. Implizite Funktionen: x²+y²+z² = 0 (Kugel)
Einführung: Modellierung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 12
Polygone:� Konvexe Polygone: Alle Winkel sind < 180 Grad.� Konkave Polygone: Alle anderen Polygone.
Algorithmen der CG sind sehr viel einfacher, wenn Konvexität vorausgesetzt werden kann. Dreiecke sind immer konvex. Zerlegung von Polygonen in Dreiecke.
Einführung: Modellierung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 13
Konvexe Polygone und Polyeder:
Einführung: ModellierungEinführung: Modellierung
Quelle: Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 14
Rendering:� Modell projizieren und transformieren
� Relation zwischen geometrischem Modell und der Kamera
� Modell clippen� Abschneiden des Modells an den Grenzen des Sichtbereiches
� Modell beleuchten� Berechnen, welche Teile des Modells wie stark beleuchtet
werden (globale und lokale Lichtquellen, Beleuchtungsmodelle)
� Anwenden von Texturen� Rastern (in Pixel umwandeln) der projizierten und
beleuchteten Geometrie
Einführung
B. Preim AG Visualisierung Computergraphik I -Vorstellung 15
Einführung: Rendering
Modell projizieren und transformieren� Nachbildung einer Kamera� Synthetische Kamera, die
nachbildet, wie ein Betrachter die Szene sehen würde.
� Nutzung von trigonometrischen Funktionen (Strahlensatz)
� Einschränkung:Resultierende Bilder sind überall überall scharf.
Quelle Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 16
Einführung: Rendering
Modell clippen
Bestimme den Teil der Szene, der auf das Bild projiziert wird.
Quelle: Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 17
Einführung: Rendering
Modell beleuchten:Bestimme, wie groß die Intensität des einfallenden Lichtes in den unterschiedlichen Teilen (Flächen) der Szene ist.Berücksichtige dabei den Winkel zwischen diesen Flächen und der Lichtquelle.(Einschränkung: so werden nur punktförmige Lichtquellen berücksichtigt.)
Quelle Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 18
Modellierung und Bildsynthese
Einführung
Modeller Geometrisches Modell
Renderer Bild
B. Preim AG Visualisierung Computergraphik I -Vorstellung 19
� Eingabe:� Geometrisches Modell (Koordinaten, �Aussehen�)� Kamera (Position und Orientierung)� Lichtquellen� Darzustellender Bildbereich
� Ausgabe:� Pro Pixel des Bildes eine Farbe, die das Aussehen des
geometrischen Modelles repräsentiert.
Einführung: Rendering
B. Preim AG Visualisierung Computergraphik I -Vorstellung 20
Einführung: Rendering
Algorithmische Realisierung: Strahlverfolgung (Raytracing)Idee: Verfolge von der Kamera die Strahlen unter
Berücksichtigung der Optik (Reflexion, Brechung, Absorption). Berechne Schnittpunkte, an denen Oberflächen getroffen werden und Winkel, in denen die Strahlen auftreffen.Verfolge Strahlen bis auf die Bildebene bzw. das Bild.
Beobachtung: Viele Strahlen enden außerhalb des Bildes. Daher: Berechnung umdrehen, so dass pro Bildpunkt zurückgerechnet wird, wo die Strahlen herkommen.
B. Preim AG Visualisierung Computergraphik I -Vorstellung 21
� Strahl A: Direkt zur Kamera� Strahl B: In den Hintergrund� Strahl C: Gerichtete Reflexion;
dann Kamera� Strahl D: Diffuse Reflexion
(unendlich viele neue Strahlen)� Strahl E: trifft auf semitranspa-
rente Fläche; wird gebrochen undreflektiert.
� Strahl F: wird gerichtet reflektiert und absorbiert
Einführung: Rendering
Quelle: Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 22
Diskussion: RaytracingVorteile: � Viele Lichteffekte, einschließlich Mehrfachreflexionen
werden berücksichtigt.� Relativ einfache Implementierung.Nachteile:� Sehr aufwändiges Verfahren, aufwändige
Schnittpunktberechnungen. �Viel Arbeit� pro Pixel.� Nur punktförmige Lichtquellen und daher keine
weichen Schatten.� Strahlverfolgung muss abgebrochen werden.
Einführung: Rendering
B. Preim AG Visualisierung Computergraphik I -Vorstellung 23
Bestandteile von Graphiksystemen:
Framebuffer: Speicher für das Bild2D-Array, je ein Wert pro Pixel.Tiefe: 1-Bit (S/W), 8 Bit: 28 Farben/Grauwerte oder 24-Bit (224 Farben, je 28 R-, G-, B-Werte)
Einführung
Tastatur
Zeichentablett
Maus
Prozessor Framebuffer Bildschirm
B. Preim AG Visualisierung Computergraphik I -Vorstellung 24
Funktionsweise eines Farb-bildschirms.
� Digitales Signal wird in (analoge) Spannungen umgewandelt.
� Phosphor wird kurz zum Leuchten angeregt. Refresh mindestens 50x/Sekunde.
� Farbmonitore: 3 Phos-phore (R,G,B) pro Pixel.
Einführung
Quelle: Angel (2000)
B. Preim AG Visualisierung Computergraphik I -Vorstellung 25
Mathematische Grundlagen: Vektoren
� Vektoren zur Darstellung von geometrischen Objekten (Koordinaten)
� Vektoren mit reellen Zahlen als Komponenten, also Elemente aus ℜ2, ℜ3, ℜ4
� (Eck)Punkte werden als Spaltenvektoren dargestellt:
1
1
1
zyx
1
1
yx
1
1
1
1
wzyx
B. Preim AG Visualisierung Computergraphik I -Vorstellung 26
Mathematische Grundlagen: Vektoren
� Länge eines Vektors� Vektoren mit der Länge |x|=1 heißen Einheitsvektoren oder
normalisierte Vektoren
� Normalisieren von Vektoren:
222|| zyx vvvv ++=
z
y
x
vvv
v1
B. Preim AG Visualisierung Computergraphik I -Vorstellung 27
� Inneres Produkt, engl.: dot product� Gegeben: Vektoren x und y im ℜn
� Skalarprodukt ist eine reellwertige Funktionx·y=x1y1+x2y2+...+xnyn
� Geometrische Interpretation(en):� Länge eines Vektors:� Winkel α zwischen zwei Vektoren x und y:
� Winkel zwischen zwei normalisierten Vektoren: cosα=x·y
xxx ⋅=||
⋅=
||||cos
yxyxα
Mathematische Grundlagen: Skalarprodukt
B. Preim AG Visualisierung Computergraphik I -Vorstellung 28
� Äußeres Produkt, engl.: cross product, vector product� Gegeben zwei Vektoren im ℜn: a und b� Kreuzprodukt ist ein Vektor:
� Geometrische Interpretation:� a×b steht senkrecht auf der durch a und b aufgespannten Ebene� Die Maßzahl der Länge von a×b entspricht der Maßzahl des
Flächeninhalts des von a und b aufgespannten Parallelogramms
−−−
=
×
=×
1221
3113
2332
3
2
1
3
2
1
babababababa
bbb
aaa
ba
Mathematische Grundlagen: Kreuzprodukt
B. Preim AG Visualisierung Computergraphik I -Vorstellung 29
Mathematische Grundlagen: Kreuzprodukt und Skalarprodukt
Kreuzprodukt und Skalarprodukt
u
B. Preim AG Visualisierung Computergraphik I -Vorstellung 30
Mathematische Grundlagen: Matrizen
� Einsatz: Beschreibung von Transformationen� Für die CG: quadratische Matrizen 2×2, 3×3, 4×4
� Einheitsmatrix E: Alle Aij = 0 (i≠j) und alle Aii = 1 (Hauptdiagonale)� Inverse Matrix M-1 für quadratische Matrizen: M-1M=MM-1=E� Transponierte Matrix MT einer (m×n)-Matrix: (n×m)-Matrix,
Originalmatrix gespiegelt an der Hauptdiagonale
dcba
ihgfedcba
ponmlkjihgfedcba
B. Preim AG Visualisierung Computergraphik I -Vorstellung 31
� Matrix multipliziert mit einer Zahl
� Addition zweier Matrizen
=
ponmlkjihgfedcba
ponmlkjihgfedcba
αααααααααααααααα
α
++++++++++++++++
=
+
ποξνµλκιθηζεδγβα
ποξνµλκιθηζεδγβα
ponmlkjihgfedcba
ponmlkjihgfedcba
Mathematische Grundlagen: Matrizen
B. Preim AG Visualisierung Computergraphik I -Vorstellung 32
� Matrixmultiplikation� Gegeben: (m×n)-Matrix A und (n×p)-Matrix B� Ergebnis: (m×p)-Matrix C
� Matrixmultiplikation ist nicht kommutativ!� Wichtiger Spezialfall: Matrix-Vektor-Multiplikation
∑=
⋅=n
kkiikij BAC
1
Mathematische Grundlagen
++++++
=
ihgfedcba
ihgfedcba
γβαγβαγβα
γβα
B. Preim AG Visualisierung Computergraphik I -Vorstellung 33
Geschichte der Computergraphik� 1949: erste Computergraphik auf dem Whirlwind-Computer des
MIT� 1952: Einsatz der CG zur Kennzeichnung von Flugobjekten auf
Radarbildschirmen (SAGE Computer mit 82 Graphikkonsolen, erster Einsatz eines Lichtgriffels)
� 1962: erste 3D-Computergraphiken von L.G. Roberts auf dem TX2 des MIT
B. Preim AG Visualisierung Computergraphik I -Vorstellung 34
� 1963: Sketchpad: erstes interaktives Graphiksystem von Sutherland mit� Bildkomposition aus graphischen Standardelementen� Interaktion mit Tastatur und Lichtgriffel zur Arbeit mit Menüs� Entsprechenden Datenstrukturen zur Verwaltung graphischer
Daten
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 35
� Mitte der 60er-Jahre: Beginn einer Vielzahl von CG-Forschungsprojekten (am MIT, General Motors, Bell Telephone Lab., Lockheed Aircraft usw.)
� 1965: Erstes kommerzielles Vektor-Display von IBM (Preis ca. 100.000 US$)
� 1967: Erster Bildspeicher-Display von Tektronix (bietet einembreiten Interessentenkreis Zugang zur Computergraphik, Preisca. 10.000 USD)
� Anfang der 70er Jahre: erste kommerzielle CAD/CAM-Systemekommen auf den Markt.
� 1971: Raster-Scan-Prinzip von M. Noll (Bell Lab.) vorgeschlagen
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 36
� 1972: Erster Flugsimulator (General Electronics)� 1972: Erster Heimcomputer als Bausatz unter dem Namen
�Altair 8800� auf dem Markt� 1973: Erste Konferenz der SIGGRAPH (Special Interest Group
on Computer Graphics) der ACM (Association of Computing Machinery), die sich ausschließlich mit Computergraphikbeschäftigt.
� Ab Mitte der 70er Jahre:� Graphische Unterprogrammpakete (PLOT10, CAL-Comp)� Erste kommerzielle Raster-Displays (max. Auflösung 512 x 512
Pixel, 8 Bit pro Pixel, Preis ca. 100.000 DM)� Erste Verfahren zur schattierten Objektdarstellung:
� Beleuchtungsverfahren (Phong 1975, Blinn 1977)� Schattierungsverfahren (Gouraud 1971, Phong 1975)� Texturierung (Catmull 1974)� Schattenwurf (Crow 1977)
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 37
� 1977: Erste Vorschläge zur Standardisierung von Graphiksoftware - CORE
� 1979: Erstmalige Darstellung von spiegelnderReflexion und Transparenz mit Hilfe des Raytracing
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 38
� 1979: Gründung der Computergraphik-Abteilung von LucasFilmdurch Geoge Lucas (die Abteilung wird der �Special Effects�-Abteilung ILM -Industrial Light and Magic- zugeordnet)
� 1980: Vorführung des Films �Vol Libre� (von L. Carpenter, Boeing) auf der SIGGRAPH�80 (in dem Film wird der Flug durcheine fraktale Landschaft gezeigt)
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 39
� 1980: ca. 30 Min. Computer-animationen im Film �Tron�
� 1981: Erstes �Rendering�-System REYES (�Rendering everything you ever saw�, von L. Carpenter für LucasFilm �wird später zu Rendermanweiterentwickelt)
� 1981: Beginn der Entwicklungdes Volume-Rendering
� 1982: Erste Filmsequenz, in dersich eine Frau in einen Luchsverwandelt (T. Brigham, SIGGRAPH´82); Diese Technikwird später Morphing genannt
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 40
� 1982: Gründung Silicon Graphics Inc. (SGI), J. Clark,(Entwicklung von Hochleistungsrechnern fürgraphische Anwendungen)
� 1983: J. Lanier (Atari Research Center) entwickeltDatenhandschuh
� 1984: Globale Beleuchtungs-Simulation mit Radiosity (Goral u.a., Nishita)
� 1984: Gründung WavefrontTechnologies für Animations-Software
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 41
� 1985: GKS - erster graphischer ISO-Standard (1988 GKS-3D)
� 1986: Gründung der Fa. Pixar durchEd Catmull und A.R. Smith nachAbspaltung von Lucas Film
� 1986: Pixars RenderMan wirdIndustrie-Standard
� 1988: Film �The Abyss� � James Cameron (ILM stellt dabei die Szenemit der Wasser-Kreatur her, die die Gesichter der Mannschaft imitiert)
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 42
� 1989: Einführung von Motion Capture durch Jim Henson,Nutzung mechanischerEingabegeräte fürComputeranimation
� 1993: Steven Spielberg�s Film�Jurassic Park� (anstelle derursprünglich geplantenPuppenanimationen werdenComputeranimationen für die Dinosaurierszenen eingesetzt)
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 43
� Anfang-Mitte der 90er Jahre:� Verbindung moderner
Kommunikationstechnologien mitGraphik:
� Multimedia in verteilten Umgebungen� CSCW� Graphik im Internet� Standards zur Bild- und
Bewegtbildübertragung...� Informations-Visualisierung� Methoden des Non-Photorealistic
Rendering� 1995: �Toy Story� kommt in die
Kinos; erster vollständigcomputeranimierte Film von Pixar;Rendering: Zeit: 800 000 Std. auf 177 Sun Sparc 20Film: 70 Minuten
Geschichte der Computergraphik
B. Preim AG Visualisierung Computergraphik I -Vorstellung 44
Moderne Anwendungen
Medizin: Anatomieausbildung, Simulation chirurgischer Eingriffe
B. Preim AG Visualisierung Computergraphik I -Vorstellung 45
Medizin: Diagnostik, Therapieplanung
Moderne Anwendungen
B. Preim AG Visualisierung Computergraphik I -Vorstellung 46
Graphik und Visualisierung zur Analyse von Strömungen
Moderne Anwendungen