Vorlesung Computergraphik I -Lehrerweiterbildung- WS 1999/2000 Prof. Dr. Guido Brunnett Fakultät für Informatik Graphische Datenverarbeitung und Visualisierung.

Slides:



Advertisements
Ähnliche Präsentationen
3. 3D-Betrachtungstransformationen
Advertisements

• • • • • 3.2 Die projektive Erweiterung des E³
Geometrie von Objektoberflächen
3. Kapitel: Komplexität und Komplexitätsklassen
Grundlagen der Geometrie
TFT - Flachbildschirme
Graphische Datenverarbeitung IV Dr. Markus Heitz.
Lic.Sc.Inf. Dr. Monique Jucquois-Delpierre
_____________________________ Einführung in die Bildbearbeitung Jucquois-Delpierre 1 Grundlagen Photoshop Ein zentraler Begriff bei Pixelgrafiken.
Zentralprojektion „Perspektive“
Computergraphik I WS 1999/2000 Vorlesung Prof. Dr. Guido Brunnett
Verbindet man das räumlich abzubildende Objekt mit
4. Sichtbarkeitsverfahren
5.2 Schattierungsverfahren
5. Beleuchtung und Schattierung
Phong Shading (Normaleninterpolation)
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Kapitel 4 Geometrische Abbildungen
Farbe.
Java3d „Licht und Material“
2. Univariate Regressionsanalyse 2.1 Das statische Regressionsmodell
Computergrafik Vom Dreieck zum Ego-Shooter Olaf Müller
Quaternionen Eugenia Schwamberger.
Special Effects Realistischeres Rendern einer Scene.
Modellierung von Baumstrukturen mit einem einzigen Polygonnetz
Versagt bei gesättigten Cyan-Tönen:
§9 Der affine Raum – Teil 2: Geraden
§9 Der affine Raum – Teil 2: Geraden
Einführung in die Physik für LAK
Grundgrößen der Lichttechnik
Bildbearbeitung: Theorie
FHP - Fachbereich Bauingenieurwesen
Computergraphik mit OpenGL Einführung. Bilder Objekt existiert im Raum unabhängig vom Betrachter Objekte sind beschrieben durch die Position verschiedener.
Computergrafik - Inhalt
Die Funktionsweise eines Beamers
Bernhard Piazzi Didaktik der Physik SS 2007
Farbräume, Verwendung von Farbe
Bildbearbeitung im Unterricht
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Bildbearbeitung GIMP Theorieteil
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
§3 Allgemeine lineare Gleichungssysteme
Polynome und schnelle Fourier-Transformation
Geometrie : Rekonstruktion
Medizinische Visualisierung
Objekte und ihre Beschreibung
Digitale Bilder Advanced IT Basics
Das ABC der Statistik DIE SÄULENDIAGRAMME 1
Beleuchtungsmodelle, Schattierungsmodelle
Beleuchtung, inkl. Schatten, Reflexionen
Seminar: Grundlagen Wissenschaftlichen Arbeitens
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Statistik – Regression - Korrelation
LED Hands-On-Days| Jo Kieker
Die Welt der Shader Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Fortgeschrittene Techniken.
Geometric Representation
Bildbearbeitung: Theorie
Die Renderpipeline.
Multimedia und Virtual Reality Vorlesung am Martin Kurze Multimedia in 3D.
Grundlagen der Geometrie
Farbe in der Computergraphik
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Konstruktion des Bildes
 Präsentation transkript:

Vorlesung Computergraphik I -Lehrerweiterbildung- WS 1999/2000 Prof. Dr. Guido Brunnett Fakultät für Informatik Graphische Datenverarbeitung und Visualisierung TU Chemnitz Oktober 1999

0. Einführung 0.1 Klassifizierung der Graph. DV ISO Definition: GDV besteht aus den Methoden zur Datenkonver- tierung zwischen Rechner und graph. Endgeräten (Ein-/Ausgabe) Klassifizierung nach Rosenfeld '72: Eingabe Ausgabe Bild BildverarbeitungComputergraphik Beschreibung Bild BeschreibungBildanalysediverses

(generative) Computergraphik (Computer Graphics) behandelt die Erzeugung von Bildern durch einen Computer, ausgehend von einer geometrischen Beschreibung der Bildinhalte darzustellende Szene Modell der Szene virtuelles Bild Bild auf dem Ausgabegerät Modellierung abstrakte Abbildung Ausgabe geometrische Modellierung: Techniken zur Erzeugung und Manipulation rechnerinterner Darstellungen dreidimensionaler Objekte 3D-Szene: geom. Modell + Material + Licht + Kamera Rendering: Prozess der Konvertierung der Szenen- beschreibung zur Ausgabe auf graph. Endgerät

Beispiel 3D-SzeneProjektion virtuelles BildAusgabe

Hierarchische Darstellung der Szene graph. Primitive zusammengesetzte Objekte 2D-Szene Datenstruktur

Zentrale Anwendungen der CG Visualisierung in Wissenschaft, Technik und Medizin CAD Prozessüberwachung und -steuerung Graph. Aspekte von Informationssystemen (z. B. geographische IS) Werbegraphik Unterhaltungsindustrie Ausbildung

Aspekte der CG Modellierung (von geom. Elementen bis zu virtuellen Welten) Aufbereitung komplexer Daten zur Visualisierung Photorealistische Darstellung Künstlerische Darstellung Animation Graphische Interaktion Virtuelle Realität Erweiterte Realität (augmented reality)

Bildverarbeitung (Image Processing) Bild:Matrix von n x m Bildpunkten (pixeln) mit zugeordnetem Farbwert 1m 1 n BV besteht aus Methoden, die Darstellung eines Bildes zu verändern zum Zweck der Bildverbesserung (z. B. Kontrastvergrößerung, Bes. v. Störungen) Bildauswertung (z. B. Größenbestimmung, Konturerfassung) Zeichenerkennung

Bildanalyse (Picture Analyses, Computer Vision) befasst sich mit der Rekonstruktion einer 3D-Szenen- beschreibung aus der Bildinformation. Hierzu: Zerlegung des Bildes in Urbilder, d. h. bekannte graph. Objekte (wie Dreiecke, Kreise) Anwendungen: Navigation von Robotern, Steuerung von Maschinen etc. Zsh zwischen den Teilgebieten der GDV Datenstruktur (3D) Bild (2D) Bildverarbeitung BildanalyseComputergraphik

CG I 0. Einführung 1. Grundlagen 1.1Grundlegendes über graph. Systeme 1.2Hardwarekomponenten graph. Systeme 1.3Farbmodelle 2. Elemente der 2D-Computergraphik 2.1Koordinatensysteme u. Transformationen in 2D 2.2Windowing und Clipping 2.3Rasterisierung von graph. Primitiven 3. Betrachtungstransformationen 3.1Koordinatensysteme u. Transformationen in 3D 3.2Projektionen 3.3Durchführung der Betrachtungstransformationen 3.43D-Clipping

4. Entfernen verdeckter Linien und Flächen 5. Beleuchtung und Schattierung 6. Textur 7. Animation

Literatur: Encarnacao, Straßer, Klein: Graph. DV 1 + 2, Oldenbourg 1996 Foley, van Dam, Feiner, Hughes: Computer Graphics, Addison Wesley 1993 Watt: 3D Computer Graphics, Addison-Wesley 1993

Lehrveranstaltungen der Professur CGV: 5. Sem. CG I (2/2/0) Geom.Grundl. 6. Sem. CG II (2/0/0) Geom.Modell. (2/2/0) 7. Sem. Bildverarbeitg. Seminar Graphik-Prakt. 8. Sem. Modeling Prakt.

1. Grundlagen 1.1 Grundlegendes über graph. Systeme und graph. Daten Modellkonfiguration graph. Systeme Komponenten: Anwendungssystem(z.B. CAD-System) Graphiksystem(z.B. GKS, PHIGS) graph. Peripherie(Sichtgeräte, Eingabegeräte)

Graph. Datenstrukturen wesentliche Einflussfaktoren: Funktionalität der graph. Systeme passiv interaktiv Dimension der Darstellung statisch oder bewegt Anforderungen der Anwendung z. B. Automobilbau, Geographisches IS Die Datenstrukturen jeder Systemkomponente werden bei der Visualisierung auf Datenstrukturen des jeweils darunter befindlichen Systems abge- bildet graph. Daten der Anwendung Datenstrukturen des graph. Systems Datenstrukturen graph. Geräte

Modelldaten = Daten des Anwendungssystems Aus den Modelldaten lassen sich geom. Daten wie Objektart Objektparameter ableiten. Diese dienen als Grundlage für die Auswahl graph. Primitive. Bsp.: Objektart: Kugel graph Primitiv: Polyeder mit n Seitenflächen Der Modellkontext bestimmt oft nichtgeometrische graph. Attribute (z.B. Farbe, Linientyp) Topologische Informationen des Anwendungs- modells werden ebenfalls in die graph. DS über- nommen (z.B. in Form von Graphen).

Datenstrukturen des graphischen Systems graph. Primitive für 2D-Graphik Minimalsatz: Punkte und Marker Linie (Strecke) Polygonzug Flächen (gefüllter Polygonzug) Punktmenge (Feld von Bildpunkten) Text Komplizierte Objekte werden als hierarchische Strukturen der Primitive realisiert

Eigenschaften z. B. Sichtbarkeit Identifizierbarkeit Farbe Priorität (z.B. für Identifikation) Operationen z. B. Erzeugen / Löschen Namensgebung Transformation Kopieren, Einsetzen von Objekten Ändern der Eigenschaft

Datentypen graph. Geräte elementare Datentypen: zweidimensionales Feld von Rasterpunkten sequentielle Liste aus move and draw Befehls- folgen logische Schnittstellen: auf der Ebene graph. Primitive Abb. auf elementare Datentypen durch das Gerät

1.2 Hardware-Komponenten eines inter- aktiven Graphiksystems graphische Eingabegeräte Tastatur, Maus, Tablett (digitizer), Lichtgriffel, Joystick, Trackball, Datenhandschuh etc. graphische Ausgabegeräte Hardcopygeräte: Plotter, Printer, rapid prototyping Sichtgeräte: Kathodenstrahlröhre, Plasma-, Laser-, Flüssigkristallanzeige Display Processing Unit (Graphics Display System) Hardware oder Software bereitet die Bilddefinition des Anwendungspro- gramms zur Ausgabe auf dem Sichtgerät auf

Rapid Prototyping neue Techniken zur schnellen Erzeugung eines physischen Prototypen - Stereolithographie - LOM - Selective Laser Sintering

Kathodenstrahlröhre (CRT) Prinzip: beheizte Kathode emittiert Elektronen, die durch Anlegung einer hohen Spannung (20 KVolt) zur Anode bewegt werden. Elektronen treten durch Loch in der Anode in das Ablenkungssystem ein. Elektronenstrahl wird fokussiert und auf phosphor- beschichtete Bildschirmfläche gelenkt. Phosphor absorbiert Elektronen und emittiert Licht Flimmerfreies Bild bei Wiederholungsrate von ca 60 Hz

Maskenröhren (Shadow Mask Color CRT) 3 Elektronenstrahlsysteme und RGB Phosphor- punkte in unterschiedlicher Anordnung höhere Auflösung durch Delta-Anordnung der Punkte Inline Anordnung der Strahler vereinfacht Konver- genzschaltung Konvergenz: Einhaltung der richtigen Strahlerwinkel

vector-refresh display (60er Jahre) Vektorbildschirm (random scan) bezeichnet CRT, bei der der Elektronenstrahl längs einer beliebigen Strecke kontinuierlich über den Bildschirm gelenkt werden kann Architektur eines vektor-refresh Systems höhere Graphikbefehle werden in Punkt- und Linienkommandos umgewandelt, die im Wieder- holungsspeicher (refresh buffer) gespeichert und durch den display prozessor abgearbeitet werden Nachteil: hohe Kosten von Wiederholspeicher und schnellem display prozessor in den 60er Jahren

Speicherbildschirm (Direct View Storage Tube) Textronics (Ende der 60er Jahre) Prinzip: Schreibkathode bringt auf einem Spei- chergitter permanente elektrische Ladungen auf. Die von der Rieselkathode emittierten Elektronen passieren das Speichergitter nur an den beschriebe- nen Stellen. Vorteil: geringerer Preis durch Verzicht auf Wie- derholspeicher/prozessor verbleibende Nachteile: Forderung nach Farben, Schattierung und Bewegung bleibt unerfüllt

raster-refresh display sinkende Hardwarepreise und die Verwendung von TV-Technologie führt zur Entwicklung preiswerter Rasterbildschirme Ende '70er raster scan bezeichnet eine CRT bei der nur auf einem Raster liegende Bildschirmpunkte angesteuert werden können. pixel: Rasterelement, kleinster adressierbarer Bereich des Bildschirms scan line: horizontale Rasterlinie Scankonvertierung: Abbildung eines graphischen Primitivs auf das Raster bit map: Matrix der binären Pixelwerte (pixmap)

Prinzip eines raster-refresh Systems Graph. Primitive werden durch Scankonvertierung in Pixmap umgewandelt, die im Bildwiederhol- speicher (frame buffer) gespeichert und durch den Videocontroller auf den Bildschirm abgebildet wer- den. Vorteile: einfachere Technologie bei der Bildwieder- holung. Geschwindigkeit der Bildwiederholung un- abhängig von der Bildkomplexität Nachteile: Rastereffekte ( antialiasing) zeitaufwendiger Prozess der Scankonvertierung

Architekturen von Rasterdisplaysystemen (RDS) Einfaches RDS: Funktionen der DPU (z.B. Rasterisierung) in Soft- ware lange Bildaufbauzeiten Frame buffer ist Teil des Arbeitsspeichers. Bei fes- tem Adressbereich liest Videocontroller Bild ohne Belastung des Systembus gemeinsamer Adressraum für Anwendungs-, Displayprogramme und Bildspeicher hohe Flexibilität bei niedrigen Hardwarekosten

RDS mit integrierter DPU Beschleunigung graphischer Operationen durch Displayprozessor Vorteile des einheitlichen Adressraumes bleiben bestehen Probleme mit Konkurrenz der Komponenten um Speicherzugriff wird durch feste Zuordnung des Bildspeichers gelöst zunehmende Bedeutung

RDS mit peripherer DPU 3 Speicherbereiche: Hauptspeicher: Anwendungsdaten, -programm, graph. Software, BS Arbeitsspeicher der DPU: Daten und Programme (z.B. Rasterisierung) Bildspeicher gute Architektur zur Anpassung an spezielle Anwendung langsamer Datentransfer zwischen Hauptspeicher und Bildspeicher mittlerer Anforderungsbereich, keine Echtzeit

Aufgaben der DPU im Bilderzeugungsprozess

Video Controller (= Image Display System = IDS) liest Bildschirmspeicher und erzeugt stehendes Bild auf Monitor (60 Hz Wiederholrate) Raster scan generator erzeugt Ablenkungssignal zur Steuerung des Elektronenstrahls und kontrolliert die X- und Y-Adressregister, welche die Speicheradresse des darzustellenden Pixels bestimmen. Speicherinhalt definiert die Intensität des Elektronen- strahls und damit Grauwert oder Farbe des Pixels. Falls mehrere Pixel gleichzeitig ausgelesen werden, wird die Information in Schieberegister zwischengespeichert.

Zeilensprungverfahren (Interlacing): 2 Bilder werden mit halbierter Vertikalauflösung nacheinander geschrieben (1. Bild gerade Zeilen, 2. Bild ungerade Zeilen), halbierte Frequenz zufriedenstellend für Fernsehbilder (hohe Kohäranz benachbarter Zeilen), jedoch nicht für synthetische Bilder (Flimmern) Nutzbare Zeit für Bildaufbau wird durch Bild- und Zeilendauer sowie Zeiten für horizontalen und verti- kalen Strahlrücklauf bestimmt.

einfache Videocontroller arbeiten mit fester Zu- ordnung der Positionen im Bildspeicher und der Position auf dem Bildschirm Kompliziertere Videocontroller verwenden eine Bildtransformation, die beschreibt, wie der Inhalt des Bildspeichers auf dem Bildschirm abgebildet wird. In diesem Fall kann der VC Translationen, Rotationen, Skalierung von Teilbereichen des Bildspeichers erstellen.

Verwendung einer Farbtafel Pixelinformation wird als Adresse in eine Farbtafel (look-up table) interpretiert. Inhalt der Farbtafel be- schreibt Farbe durch Angabe der RGB-Anteile. Anzahl der verfügbaren Farben wird erhöht, wenn die Wortlänge in der Tafel größer ist als die Pixelwortlänge. Bei n-Bits/Pixel und m-Bits/Farbanteil in der Tabelle lassen sich 2 n Farben gleichzeitig darstellen aus einer Palette von 2 3m möglichen Farben. Bsp.: 24-Bit-Graphiksysteme: n = 8 Bit pro Grundfarbe Mio. Farben gleichzeitig darstellbar Speicheraufwand von ca. 4 MByte pro Bild mit Farbtafel (z.B. m = 8, n = 16) T Farben gleichzeitig aus Palette von 16 Mio.

weitere Anwendungen 1. Bitebenenextraktion Bei n Bits/Pixel können n Binärbilder oder RGB-Bilder durch geeignetes Laden der Farbtafel dargestellt werden. Binärbild: Farbtafel enthält Weiß bzw. Schwarz für 0 oder 1 an entsprechender Stelle 2. Bewegtbildeffekte Durch Änderung der Zuordnung von Pixelwert und Farbe lassen sich Bewegungen simulieren Bsp.: weiß schwarz

Bildspeicher Bindeglied zwischen Bilderzeugung (DPU) und Bilddarstellung (VC) DPU und VC konkurrieren um Zugriff VC liest entsprechend des Ablaufs der Strahl- ablenkung aus DPU schreibt wahlfrei ein Problem: Speicherzyklus i. A. größer als Bildpunktdauer Lösungen: Bildspeicher aus mehreren gleichzeitig adressier- baren Speicherbausteinen (erlaubt das gleichzeitige Auslesen mehrerer Pixel) Wechselspeicher (double buffer): 2 komplette Bildspeicher, die im Wechsel betrieben werden, d. h. A wird gelesen während B geschrieben wird, dann wird Funktion gewechselt spezielle Hardware Architektur für Bildspeicher (Video RAM)

1.3 Farbmodelle Graustufendarstellung achromatisches Licht = Licht ohne Farbinformation freigesetzte Lichtmenge (Intensität) ist nicht propor- tional zur wahrgenommenen Lichtstärke (Helligkeit) Bsp.:Übergang zwischen 25-W- zu 50-W-Glühbirne und 50-W- zu 100-W-Glühbirne wird gleich empfunden Definition von Graustufen n: Anzahl der gewünschten Graustufen E min > 0: kleinste realisierbare Intensität E max : max. darstellbare Intensität E 0 := E min E i := i E 0 (i = 1,..., n-1) E n-1 := E max = 1 Aus E n-1 := n-1 E 0 = Bsp.:

Graustufen am Rasterbildschirm Verwendung mehrerer Bit-planes Bildschirmspeicher (frame buffer) besteht aus Bit-planes Anzahl Bit-planes = Anzahl Bits pro Pixel Bsp.: 1 Byte pro Pixel 256 Intensitätsstufen

Dithering beruht auf der Eigenschaft des Auges, kleine Schwarzweißmuster zu Grauwerten zu ermitteln Fasse Pixelbereiche zu sog. Dithering-Zellen zusammen Definiere mögliche Zellenmuster durch Dithering- Matrix Bsp.: Fasst man 9 Pixel zu einer Zelle zusammen, so lassen sich 10 Graustufen kodieren

Ablauf des Ditherings Input: Bild in ursprünglicher Auflösung mit Grauwerten PROCEDURE Set Dither Cell (x, y, grey10: INTEGER); BEGIN IF (D [x MOD3] [y MOD3] < grey10) THEN setdot (x, y); END; Je größer der Wert von grey10 {0,..., 9}, desto mehr Punkte werden gesetzt Bsp.:Pixel x = 328, y = 123, grey10 = 9 x MOD3 = 1 y MOD3 = 0 D [1] [0] = 8 < grey10 Pixel wird gesetzt

Physikalische Grundlagen der Farben Farbe= sinnliche Wahrnehmung von Licht durch den Menschen Licht= für das menschl. Auge wahrnehmbare elektromagn. Strahlung (Wellen u. Partikeltheorie, Photonen) Frequenz f, Wellenlänge : f = c Violett: nm Gelb : nm Blau: nm Orange: nm Grün: nm Rot : nm physikalische Charakterisierung von Licht durch spektrale Energieverteilung P ( )

Entstehung von Farben wahrgenommene Farben entstehen aus verschie- denen physikal./chemischen Prozessen additive Farbmischung: Lichtstrahlen aus verschiedenen Lichtquellen werden additiv kombiniert resultierende Farbe enthält für bestimmte Wellen- längen so viele Photonen wie die Summe der einzelnen Farben (Anwendung: Farbfernseher)

subtraktive Farbmischung: Farbe resultiert aus Filterung. Filter hält Licht gewisser Wellenlängen zurück. Bsp.:Weiß - Rot = Cyan Weiß - Blau = Gelb Weiß - Grün = Magenta Weiß - Gelb - Magenta = Rot Weiß - Gelb - Cyan = Grün Weiß - Cyan - Magenta = Blau (Anwendung: Diaprojektor) Pigmentierung Teilchen mit Farbwirkung (Pigmente) in Flüssigkeit oder aufgebracht auf Oberfläche Pigmente absorbieren, reflektieren oder transmittieren Licht

Parameter der menschl. Farbempfindung Farbton (Hue) wird durch dominante Wellenlänge bestimmt Sättigung (Saturation, purity) hängt mit der Energieverteilung des Lichtes über das Spektrum zusammen (Anteil an weißem Licht) hochgesättigt: geringer Anteil an weißem Licht (reine Farbe) niedriggesättigt: hoher Anteil an weißem Licht (Pastellton) Helligkeit (brightness, luminance): wahrgenommene Intensität, proportional zu P ( ) Helligkeitseffizienz ( ) d

Physiologie der Farbwahrnehmung Netzhaut ist mit Rezeptoren ausgestattet 3 Arten von Farbrezeptoren mit unterschiedlichen Empfindlichkeiten Piks blauer Rezeptor (440 nm), grüner R. (545 nm gelb) roter R. (580 nm gelb) Helligkeitseffizienz Empfindlichkeit des Auges für Licht unterschiedlicher Wellenlänge und gleicher Intensität

Prozess der Farbwahrnehmung Gehirn erhält kombinierte Signale R + G, R - G, B - (R + G) Luminanz: Helligkeit R + G Chrominanz: Farbton und Sättigung Farbwahrnehmung Farb- und Sättigungsstufen bei mittlerer Intensität Trennschärfe: nm Einbeziehung von Intensitätsstufen ergibt ca. 350 T unterscheidbare Farbeindrücke

Universum der wahrnehmbaren Farben 1. Graßmannsches Gesetz (1853): Zwischen je vier sichtbaren Farben a, b, c, d besteht immer eine eindeutige lineare Beziehung (,,, ) R 4 : a + b + c + d = 0, d. h. die Menge W wahrnehmbarer Farben ist Teilmenge eines dreidimensionalen Vektorraumes V. Genauer gilt: W ist ein konvexer Kegel in V. Zwei spektrale Energieverteilungen, die dieselbe Farbempfindung erzeugen, heißen metamers.

Basisdarstellungen Wählt man als Basis von V die Grundfarben R, G, B und bestimmt durch Messung an Beobachtern die Anteile an R, G, B, die benötigt werden, um sämtl. Farben des sichtbaren Spektrums (konstante Hellig- keit, hohe Sättigung) zu erzeugen, so ergibt sich d. h. es gibt Farben F W mit F = r R + g G + b B mit r < 0 Diese Farben sind auf einem Bildschirm nicht darstellbar! Die Koeffizienten r, g, b als Funktionen der Wellen- länge werden auch als farberzeugende Funktionen be- zeichnet.

CIE-System der sichtbaren Farben 1931 Festlegung von drei künstlichen Grundfarben X, Y, Z durch Commission Int. de LEclairage mit F W ex. x, y, z > 0 : F = xX + yY + zZ Die farberzeugenden Funktionen x, y, z haben die Gestalt y = Helligkeitseffizienz ( ) x, y, z sind Linearkombinationen von r, g, b. Hieraus folgt, dass eine lineare Umrechnung zwischen dem RGB- und dem CIE-System existiert.

Ist P ( ) die spektrale Energieverteilung einer physikal. Farbe, so errechnet sich die CIE-Darstellung zu: x = k P( ) x d, y = k P( ) y d, z = k P( ) z d mit k = 680 lumens/watt für Kathodenstrahlröhre. CIE Farbdiagramm des sichtbaren Spektrums Der CIE-Kegel hat die Form Der Luminanz-Anteil einer Farbe wird durch x+y+z bestimmt Ein Chrominanz-Diagramm erhält man durch Schnitt des Kegels mit Ebene x + y + z = 1

Die Projektion dieser Ebene auf (X, Y)-Ebene ergibt das CIE-Chrominanz-Diagramm Der achromatische Punkt W definiert weißes Licht.

Anwendungen des CIE-Farbdiagramms Koordinaten des CIE-Diagramms ermöglichen die präzise Angabe von Farben und erlauben den Aus- tausch von Farbinformationen zwischen Systemen mit verschiedenen Grundfarben. Bestimmung der dominierenden Wellenlänge und Sättigung Sei F 1 eine Farbe aus dem Diagramm und F s der Schnittpunkt der Geraden durch F 1 und W mit der Randkurve des Diagramms (ohne Purpurlinie). Dann ist die Wellenlänge bei F s die dominierende Wellenlänge von F 1 das Verhältnis der Sättigungsgrad von F 1

Erzeugen von Farbpaletten F 1, F 2, F 3 seien sichtbare Farben des CIE-Diagrams Die Menge der Farben, die durch additives Mischen von F 1, F 2 erzeugt werden kann, entspricht der Strecke. Die Menge der Farben, die durch additives Mischen von F 1, F 2, F 3 erzeugt werden kann, entspricht dem Dreieck = (F 1, F 2, F 3 ). Komplementäre Farben mischen zu Weiß nichtspektrale Farben besitzen fehlende dominante Wellenlänge

Farbmodelle für Rastergraphik Ein Farbmodell ist ein dreidimensionales Modell zur Spezifikation von Farben innerhalb einer Farbpalette Farbmodelle orientieren sich entweder an den Eigen- schaften der Graphik Hardware (RGB, YIQ, CMY) oder an den Bedürfnissen des Benutzers (HSV, HLS, HVC) In jedem Fall beschreibt ein Farbmodell nur einen Teil der sichtbaren Farben

RGB-Modell hardwareorientiert (rote, grüne u. blaue Phosphor- punkte bei KSR) weit verbreitet additives Farbmodell: F = (r, g, b), r, g, b [0, 1] Mischung zweier Farben durch lineare Interpolation Grautöne: Mischung von Schwarz und Weiß

CMY-Modell subtraktives Farbmodell, basierend auf den Grund- farben Cyan, Magenta und Gelb Umrechnungsformel: Interpretation der Koeffizienten: Beschreibung der Absorption der R,G,B-Grundfarben durch Oberfläche Bsp.: blaue Oberfläche wird bestrahlt mit weiß, reflektiert aber blau = weiß - cyan - Magenta, d.h. absorbiert Cyan u. Magenta blau = Anwendung: permanente Ausgabe von Farbinforma- tion (z.B. Tintenstrahldrucker), Auge erhält nur die Anteile weißen Lichts, die reflektiert werden

YIQ-Modell Anwendung in amerikanischer NTSC-Fernsehnorm Y entspricht Y-Parameter im CIE-System, d.h. Y stellt die Helligkeit dar. Die Konvertierung der Farb- information in Monochrom-Darstellung erfolgt durch Auswertung von Y PAL: R - Y, Y, B - Y

HSV-Modell benutzerorientiert Spezifikation der Farbe über Farbton (hue), Sättigung (saturation) und Helligkeit (hier: value) Farbselektion: Wahl einer reinen Farbe (H =, V = S = 1) Mischung mit Weiß durch Reduktion von S Mischung mit Schwarz durch Reduktion von V

HLS-System intuitives Farbsystem der Fa. Tektronix Parameter: Farbton (Hue), Helligkeit (Lightness), Sättigung (Saturation) max. Sättigungsunterschiede bei mittlerer Intensität Reduzierung der Sättigungsunterschiede mit Abstand von mittlerer Intensität lineare Interpolation zwischen Farben ist nicht möglich in HSV oder HLS.

CNS-Modell erlaubt sprachbasierte Farbauswahl CNS = color naming system Helligkeitswerte: sehr dunkel, dunkel, mittel, hell, sehr hell Sättigungswerte:gräulich, gemäßigt, stark, lebendig Farbtöne:blau, violett, rot, orange, braun, gelb, grün Zwischentöne:z.B. rot, rötlich-orange, rot-orange, orangelich-rot, orange

2.3. Windowing und Clipping in 2D Weltkoordinaten: durch Daten der Anwendung bestimmt (z.B. mm) (ArbeitsKOS, ModellKOS) Gerätekoordinaten: durch physikalische Eigenschaften des Ausgabegerätes bestimmt (z.B. Pixel eines Bildschirms) window: rechteckiger Teilbereich des WeltKOS viewport: rechteckiger Teilbereich des GKsystems, auf dem der Inhalt des windows dargestellt werden soll window-viewport-Transformation mm wird zweistufig realisiert, um die graphische Ausgabe auf verschiedenen Ausgabegeräten zu unterstützen und um Da- ten versch. Welten auf einem Ausgabegerät darstellbar zu machen. Normalisierungstransformation: Abbildung eines windows auf einen Teilbereich des normalisierten Koordinatenraumes [0,1] x [0,1] Gerätetransformation: Abbildung eines Fensters im NKsystem auf das viewport

mm window-viewport transformation Gerätekoord. Gerätetransf. Normalisierungstransf. Weltkoord. G.transf. Norm.transf. normalisierte Koordinaten (0,0) t (0,1)(1,1) (1,0) Gerätekoord.

Clipping-Algorithmen Objekte, die ganz od. teilweise außerhalb des Fensters liegen, müssen abgeschnitten bzw. bei der graph. Darstel- lung ignoriert werden (Clipping). Clipping an window Grenzen erspart die Transformation von Objekten, die nicht dargestellt werden. Linien-Clipping (a) auf der Grundlage von Schnittpunktberechnungen beide Endpunkte einer Linie liegen innerhalb (d.h. X min X max, Y min Y max ): Linie liegt innerhalb beide Endpunkte außerhalb: keine Aussage one in / one out: Clipping notwendig Y min Y max X min X max Kritische Linien werden in Parameterdarstellung mit den Fensterberandungen geschnitten, um evtl. Schnittpunkte zu berechnen. Viele unnötige Schnittpunktberechnungen (insbes. Fall 3)

(b) Cohen-Sutherland-Algorithmus Bereichstests zur Vermeidung von Schnittpunktberechnungen Bereichscode: Bit Code: 1 = wahr 0 = falsch Bit 1: über dem Fenster y > y max Bit 2: unter dem Fenster y < y min Bit 3: rechts des Fensters x > x max Bit 4: links des Fensters x < x min Bereichstest mittels logischer Verknüpfungen (1) Code (P 1 ) AND Code (P 2 ) 0000 liegt außerhalb des Fensters (2) Code (P 1 ) AND Code (P 2 ) = 0000 keine Aussage (3) Code (P 1 ) OR Code (P 2 ) = 0000 liegt ganz innerhalb des Fensters d.h. es gibt eine Stelle in der beide Codes eine 1 haben v d.h. Code (P 1 ) = 0000 u. Code (P 2 ) = 0000

Polygonclipping Polygon meint in der Computergraphik i. Allg. die Fläche, die von einem geschl. Polygonzug eingeschlossen wird Anforderung: Ergebnis der Clipping Operation soll wieder ein Polygon liefern (ggf. mehrere Polygone). Wiederholtes Linienclipping ist prinzipiell möglich, führt aber zu Problemen

Sutherland-Hodgman Algorithmus (1974): Prinzip: clippe das gesamte Polygon an einer Fenster- kante nach der anderen

Anforderungen an Algorithmen 1. Qualität: optisch zufriedenstellende Darstellung - gute Approximation des graph. Primitivs - gleichmäßige Verteilung von Pixeln über Kurvenbogen 2. Effizienz: schnelle Erzeugung der Darstellung 2.4 Rasteralgorithmen Aufgabe der Rasteralgorithmen: Abbildung der graph. Primitive auf ein Pixelmuster

Rasteralgorithmen für Linien verwendetes Modell des Pixelmusters: Pixel sind nichtüberlappende Kreisscheiben um die Gitterpunkte eines ganzzahligen Gitters vereinfachende Annahmen: Startpunkt (x 0, y 0 ) u. Endpunkt (x 1, y 1 ) liegen exakt auf Pixel x 0 < y 0 Breite der Linie ist ein Pixel Steigung in der Linie erfüllt 0 m 1, d.h. pro Spalte der Pixelmatrix wird genau ein Pixel gesetzt

Darstellung der Geraden: ( ) y (x) = mx + b mit Erster Ansatz: inkrementiere die x-Koordinate ganzzahlig von x 0 bis x 1 Für jeden x-Wert - berechne den y-Wert gemäß ( ) - runde den y-Wert, d.h. y [ k - 0.5, k [ wird durch k Z ersetzt - setze das Pixel (x, y) Aufwendige Auswertung von ( ) kann durch ein inkremen- telles Vorgehen ersetzt werden. Übergang von x 0 + i zu x 0 + i + 1 : y (x 0 + i + 1) = m (x 0 + i + 1) + b = m (x 0 + i) + b + m = y (x 0 + i) + m x y b y0y0 x0x0 x1x1 y1y1

Algorithmus von Bresenham benötigt ausschließlich Integeraddition und Shifts (Multiplikation mit 2) Prinzip: ausgehend vom aktuellen Pixel P = (x p, y p ) wähle unter den potentiellen Nachfolgern dasjenige, welches der Linie am nächsten liegt. In der betrachteten Situation (0 m 1 und x 0 < x 1 ) gibt es nur zwei potentielle Nachfolger E = (x p + 1, y p ) und NE = (x p + 1, y p + 1) Auswahl des Nachfolgers: Bestimme MP zwischen E und NE M p = (x p + 1, y p + ) liegt M p oberhalb der Linie, so wird E gesetzt, sonst NE.

Bem.: i) Die Unsymmetrie bei der Behandlung des Falles D p = 0 kann u. U. dazu führen, dass sich beim Fortschreiten von (x 0, y 0 ) nach (x 1, y 1 ) eine andere Pixelmenge ergibt als beim Zeichnen in umgekehrter Richtung, was vermieden werden sollte. Dies ist bei der Programmierung der Vari- ante x 0 > x 1 zu bedenken. p MpMp NE x0x0 E E x1x1 x1x1 x0x0 MpMp ii) Seiteneffekt: Helligkeit der Rasterlinie ist steigungs- abhängig steigungsabhängige Intensität gesetzt p

Rasteralgorithmen für Kreise Kreisdarstellung: x² + y² = R², R N o.B.d.A.: Viertelkreis naiver Ansatz: Inkrementiere x ganzzahlig von 0 bis R Für jeden x-Wert - berechne y gemäß ( ) - runde den y-Wert - setze das Pixel (x, y) Nachteile: hoher Aufwand ungleichmäßige Intensität y Rx

Bresenham-Algorithmus für Kreise Einschränkung y x Prinzip: wähle unter den potentiellen Nachfolgern nach folgendem Kriterium aus: Mittelpunkt: M p = (x p +1, y p - ) Kriterium: liegt M p innerhalb des zu zeichnenden Kreises, so wird E gesetzt, sonst SE. Aus Symmetriegründen kann mit jedem Píxel (x, y) auch (y, x), (y, -x), (x, -y), (-x, -y), (-y, -x), (-y, x) und (-x, y) gesetzt werden. E = (x p +1, y p ), SE = (x p +1, y p -1) aktuelles Pixel: P = (x p, y p ) potentielle Nachfolger:

Antialiasing Verfahren zur Reduzierung der Verfremdung, die durch die Rasterdarstellung erzeugt wird Prinzipien Erhöhung der Auflösung Unweighted Area Sampling Bestimme Intensität jedes Pixels in Abhängigkeit des Flächenanteils A p, der vom graph. Primitiv überdeckt wird

3. 3D-Betrachtungstransformationen 3.1 Koordinatensysteme und 3D-Transformationen Die Punkte des E 3 erhalten Koordinaten durch Auszeich- nung eines KOS S = {O, v 1, v 2, v 3 } positive Orientierung: det (v 1, v 2, v 3 ) > 0 Rotationsachse Richtung der positiven Rotation xy nach z yz nach x zx nach y

negative Orientierung: det (v 1, v 2, v 3 ) < 0 in erweiterten Koordinaten besitzen affine Abbildungen die Matrixdarstellung:

Spezialfälle: 1) Translation T (dx, dy, dz) 2) Skalierung S (s x, s y, s z ) 3) Rotationen um x-, y-, z-Achse: R x ( ), R y ( ), R z ( )

Rotation um beliebige Achse durch Komposition von R x, R y, R z Berechnung der Inversen: T -1 (dx, dy, dz) = T (-dx, -dy, -dz) S -1 (s x, s y, s z ) = S ( ) R ( ) = R z (- )

3.3 Projektionen 3D-Objekt 2D-Bildschirm Abbildung eines Punktes unter Zentralprojektion geg.: (1) Bildebene, Projektionszentrum Z 0 (Z 0 ) (2) Punkt P Z Abb.vorschrift: Die projizierende Gerade durch Z 0 und P (Sehstrahl) ist mit der Ebene zu schneiden. Der Schnittpunkt P' ist der Bildpunkt von P. Projektion Besitzt Z einen großen Abstand zu (Fernpunkt), so sind alle Sehstrahlen parallel. Man spricht in diesem Fall von Parallelprojektion. An die Stelle des Augpunktes Z 0 tritt nun eine Sehrichtung S. ° ° P Q P' Q' Z0Z0

Abbildung eines Punktes unter Parallelprojektion: geg.: (1) Bildebene, Projektionsrichtung S (2) Punkt P Abb.vorschrift: Die projizierende Gerade durch P mit der Richtung S ist mit der Ebene zu schneiden. Der Schnittpunkt ist der Bildpunkt P'. P' gilt: S, so spricht man von Normalprojektion (Normalriss) S, so spricht man von schiefer Projektion (Schrägriss) ° ° Q' Q P S

Zentralprojektion: spezielles KOS: z 0 liege auf negativer z-Achse, Bildebene sei x - y-Ebene, d.h. Normalenvektor der Bildebene ist +z-Achse. P = (x, y, z) P = (x', y', z) y x P' P y' z d z0z0 x y O d = |d z | Strahlensatz:

Matrix-Form: Algorithmus Zentralprojektion: geg.: Augpunkt, Bildebene A, abzubildendes Objekt P, Koordinatensystem S 1 1. Wähle Sichtkoordinatensystem S 2 = {O s ; x s, y s, z s } 2. Bestimme affine Abb. A, die S 1 in S 2 überführt und A -1 Möglichkeit (a): - A - invertiere A Möglichkeit (b): - überführe S 1 in S 2 durch eine Folge von 4 elementaren Operationen: - z0z0 S1S1 S2S2 zszs xsxs ysys P

3. Berechne die Koord. von P bezüglich S 2 4. Projiziere Eigenschaft der Zentralprojektion: parallele Geraden, die nicht parallel zur Bildebene sind, werden nicht auf parallele Geraden abgebildet, sondern laufen in einem sog. Fluchtpunkt zusammen. Hauptfluchtpunkte = Fluchtpunkte von Parallelen zu den Koordinatenachsen (max. 3) Klassifizierung der Bildwirkung der Perspektive nach der Anzahl der Hauptfluchtpunkte = Anzahl der Koord.achsen, die sich mit der Bildebene schneiden (1/2/3 Punkt-Perspekt.) { Diese Eigenschaft ist nicht aus der obigen Abb.vorschrift ablesbar, da hier das KOS so transformiert wurde, dass eine 1-Punkt-Perspektive vorliegt } - nicht parallelentreu - nicht teilverhältnistreu - realistische Darstellung durch Tiefeneindruck

Parallelprojektion geg.: Bildebene, Projektionsrichtung S wähle spezielles KOS (Sichtkoordinatensystem) S = {O s : x s, y s, z s } derart, dass die Bildebene mit der x s -y s -Ebene und O s mit dem Bildpunkt zusammenfällt. Beachte: Bei dieser Transformation ändern sich die Koord. des Projektionsvektors s. Sei R die Projektionsrichtung nach der Transformation. R 3 0, da sonst parallel zu projiziert wird. OsOs ysys zszs xsxs R P Abb.vorschrift:

Matrixdarstellung: P Proj. Bem.: a) R 1 = R 2 = 0 bedeutet orthogonale Projektion b) Die Lösung von P Proj. x = 0 ergibt x = R, die Proj.richtung (in nicht normierter Form).

3.4 3D-Sichttransformationen und Clipping 3D-Graphik Standards: GKS-3D (graph. Kernsystem) Phigs (Programmer's Hierarchical Interactive Graphics System) Verwendung des synthetischen Kameramodells zur Festlegung der Betrachtungsparameter für die Abbildung des 3D-Raumes auf eine 2D-Darstellungsfläche. zu definieren: Position und Orientierung der Kamera, Abbildung sowie Ausschnittsbildung View Reference Point (VRP): Referenzpunkt im Szenen- KOS (WKOS), Ursprung des SichtKOS View Plane (VP): Bildebene Angabe der VP erfolgt über - View Plane Normal (N): Normalenvektor - View Plane Distance (D): Abstand zum VRP N entspricht der Richtung, aus der die Kamera die Szene aufnimmt (Blickrichtung) View Reference Plane: Ebene durch VRP parallel zu VP view plane VuP VRP U v N

View Coordinale System: (Sichtkoord.system) z v -Achse N y v -Achse Projektion des View up Vectors (VuV) auf die View Plane x v -Achse gemäß Anforderungen des Rechtssystems oBdA: nehme an, dass view plane den VRP enthält. Festlegung des Szenenausschnitts, der abgebildet wird, geschieht durch 1) Wahl eines view windows 2) Festlegung der Projektion durch Projection Reference Point bei ZP ist PRP der Augpunkt bei PP ist die Proj.richtung durch die Richtung PRP center of window (cw) gegeben view volume: durch front und back plane begrenzter Bildraum

4. Sichtbarkeitsverfahren Verfahren zur Entfernung verdeckter Kanten oder Flächen hidden line Algorithmen / hidden surface Algorithmen Modellkörper sind Polyeder, d. h. Körper mit ebenen Begrenzungsflächen, die im Folgenden als Polygone bezeichnet werden Polygon Bildraum-Verfahren: entscheiden Sichtbarkeit für jedes Pixel des Geräte KOS for each pixel do begin finde das dem Betrachter am nächsten gelegene Objekt, welches vom Projektionsstrahl durch das Pixel getroffen wird färbe das Pixel in der entsprechenden Farbe end

Objektraum-Verfahren: entscheiden Sichtbarkeit für Objekte im WKOS for each object do begin finde die unverdeckten Teilflächen des Objektes bilde die Teilflächen ab end Genauigkeit: Objektraum-Verfahren: Maschinengenauigkeit Bildraum-Verahren: Geräteauflösung Wiederholung des Verfahrens bei zoom naiver Komplexitätsvergleich: Objektraum-Verfahren: O(n²) n = # Polygone ca Bildraum-Verfahren: O(n · N) N = # Pixel ca x 1024 ist wenig aussagekräftig, da die einzelnen Schritte des Objektraum-Verfahrens im Allg. zeitaufwendiger (und schwieriger zu implementieren) Bei Bildraumverfahren lassen sich Kohärenzeigenschaften ausnutzen.

Entfernen der Rückseiten (Back-Face-Removal) Technik für geschlossene Körper. Bei konvexem Körper ist dies die einzige notwendige Operation. Generell: Vorverarbeitung zur Reduzierung der Szenen- komplexität (ca. 50 %) Ebene Begrenzungsflächen der Polyeder sind durch Normalen konsistent orientiert, z.B. durch äußere Normale R N1N1 N2N2 Blickrichtungstest: > 0 N gehört zu Rückseite Parallelprojektion: R ist Projektionsrichtung Zentralprojektion: R ist Vektor vom Augpunkt auf beliebigen Polygonpunkt

Tiefenspeicher-Algorithmus (z-buffer) Idee: Speichere für jedes Pixel die Tiefe des Objektes, das dem Betrachter in diesem Punkt am nächsten liegt Tiefe im SichtKOS: (neg.)z-Koordinate Voraussetzung: Speicher von der Größe des Bildwieder- holspeichers (frame buffer) Algorithmus: 1. Setze den frame buffer auf die Hintergrundfarbe Setze den z-buffer auf den min. z-Wert 2. Für jedes Polygon F i scan konvertiere F i für jedes Pixel (x, y) von F i Berechne die Farbe c und die Tiefe z Ist z(x, y) > z buffer (x, y), dann wird der Farbwert c an der Stelle (x, y) im frame buffer eingetragen und z buffer (x, y) = z(x, y) gesetzt

Prioritätslisten-Verfahren Prinzip: Erzeugung einer Ordnung der abzubildenden Objekte derart, dass ein korrektes Bild entsteht, wenn die Szene gemäß dieser Ordnung darge- stellt wird Tiefenüberlappung: (a) Ordnung möglich (b) keine Ordnung möglich (zyklische Überlappung, Durchdringung) Zerlegung der Polygone Hybride Verfahren: Tiefenvergleich, Zerlegung sind Objektraum-Operationen Überschreiben verdeckter Polygone durch Scankonver- tierung ist Bildraum-Operation (Diese Op. kann für jede Auflösung wiederholt werden)

5. Beleuchtung und Schattierung Realistisch wirkende graphische Darstellungen räumlicher Objekte erhält man durch Farbgebung auf der Grundlage einer Beleuchtungssimulation. Beleuchtungsmodell: bestimmt den Farbwert eines Oberflächenpunktes auf der Grundlage des festgelegten Lichtaustausches innerhalb der beleuchteten 3D-Szene. Analytische Beleuchtungsmodelle: basieren auf der Modellierung physikalischer Gesetzmäßigkeiten. Empirische Beleuchtungsmodelle: verwenden einfache erprobte Regeln zur Erzeugung realistisch wirkender Bilder.

Lokale Beleuchtungsmodelle: beschreiben den Farbwert eines Oberflächenpunktes durch das Zusammenwirken von einfallendem Licht aus den Lichtquellen und dem Reflektionsverhalten der Oberfläche. Globale Beleuchtungsmodelle: beziehen den Austausch von Licht zwischen allen Objekten der Szene ein. Schattierungsverfahren: Algorithmus, der den Punkten einer (sichtbaren) Oberfläche (z.B. Polygon) Farbwerte zuordnet. Dabei wird versucht ein realistisch wirkendes Bild zu erzeugen ohne das Beleuchtungsmodell in jedem Flächenpunkt auszuwerten.

5.1 Lokale empirische Beleuchtungsmodelle Aspekte des Beleuchtungsmodells: Art der Lichtquelle: Form, Strahlungsrichtung, Spektrum Beschaffenheit der Oberfläche: Reflektion, Transmission, Absorption Lichtquelle (Source) Punktförmig Licht wird gleichmäßig in sämtliche Richtungen emittiert Monochromatisches Licht I s : Intensität der Lichtquelle Hintergrundbeleuchtung (Ambient light) Wird zur Vermeidung des Taschenlampeneffektes in das Modell integriert I a : Intensität der Hintergrundbeleuchtung Objektoberfläche Zwei idealisierte Oberflächentypen: Diffuser Reflektor (matt) Gerichteter Reflektor (spiegelnd)

Diffuse Reflektion Ein diffuser Reflektor reflektiert das einfallende Licht gleichmäßig in alle Richtungen Die Intensität des reflektierten Lichts hängt ab vom Winkel zwischen Oberflächennormale N und Vektor L zur Lichtquelle Lambertsches Gesetz k d : diffuser Reflektionskoeffizient, 0 k d Bei Verwendung normierter Vektoren gilt Bemerkung: Die Winkeleinschränkung entspricht der Annahme einer selbstverdeckenden Oberfläche. Genauer gilt bei beliebigem Einfallwinkel

Beleuchtungsmodell für diffus reflektierende Oberflächen Die Auswirkung der Beleuchtungsformel muss in einem Koordinatensystem erfolgen, das isometrisch zum WeltKOS ist, da ansonsten Winkel verändert werden Direktionale Lichtquelle: L = konstant (Lichtquelle liegt im Unendlichen) Abschwächung aufgrund der Entfernung zur Lichtquelle: Helligkeit eines Objektes hängt quadratisch vom Abstand zur Lichtquelle ab mit d s = Abstand Lichtquelle-Objekt Probleme: Bei großen Entfernungen variiert sehr wenig, bei geringen Entfernungen variiert zu stark Besserer Ansatz:

Farbeffekte Annahme: Die Wechselwirkung zwischen farbigem Licht und farbigen Objekten lässt sich komponenten- weise in einem Farbmodell (z.B. RGB-Modell) beschreiben. Intensität des farbigen Lichtes: Farbeigenschaften der Oberfläche Die diffuse Reflektion farbigen Lichtes durch die Oberfläche wird durch Verwendung eines Reflektionskoeff. pro Lichtanteil beschrieben: Beleuchtungsmodell: Bemerkung: Die obige Annahme ist falsch, liefert jedoch akzeptable Resultate. Korrekt wäre die Beleuchtungsgleichung über dem gesamten Spektrum zu formulieren.

Depth Cueing Berücksichtigt die Entfernungsunterschiede zwischen dem Betrachter und den Objekten der Szene Ermöglicht die Approximation der Farbverschiebung des Lichtes in der Atmosphäre Ansatz: Die Intensität I des Lichtes der Wellenlänge, das von einer Oberfläche reflektiert wird, wird abstands- abhängig mit einer vordefinierten reduzierten Intensität gemischt. Dabei gilt: Liegt das Objekt von einer Referenzebene z = z f, so wird s 0 = s f Liegt das Objekt von einer Referenzebene z = z b, so wird s 0 = s b sonst:

Gerichtete Reflektion Ein idealer gerichteter Reflektor reflektiert einfallendes Licht in eine Richtung, wobei Einfallswinkel = Ausfallswinkel gilt Der Beobachter sieht die Spiegelung nur, wenn A = R bestimmt den Anteil des gespiegelten Lichts der Wellenlänge bei einem Einfallswinkel Bsp.: Glas = 0°: praktisch keine Reflektion = 90° : fast Totalreflektion Für viele Materialien wird die Abhängigkeit vom Einfallswinkel vernachlässigt Der Reflektionskoeffizient bestimmt die Farbe der gerichteten Reflektion die im Allg. von der Farbe der diffusen Reflektion abweicht Bsp.: Plastik (Farbpigmente in transparentem Material) wähle einheitlich über das Spektrum

Das Phong-Modell des unvollkommenen Reflektors Ein unvollkommener Reflektor reflektiert in einem Bereich um R Dabei ist die Spiegelung maximal im Zentrum und fällt zum Rand des Bereiches ab Phong ´75 (Warnock 69): (A, R normiert) Beleuchtungsmodell der gemischten Reflektion Mehrere Lichtquellen Bei Verwendung des RGB-Farbmodells interpretiere als Index aus der Menge {rot, grün, blau}

5.2 Schattierungsverfahren Schattierung Zuordnung eines Farbwertes für jeden Punkt einer sichtbaren Fläche Auswertung der Beleuchtungsformel in jedem Flächen- punkt ist zu aufwendig Flat Shading (konstantes Schattieren) Auswertung der Beleuchtungsformel für einen Punkt pro Polygon (z.B. Eckpunkt, Schwerpunkt) Schattierung des gesamten Polygons mit der berechne- ten Intensität Flat shading ist exakt, falls 1. eine direktionale Lichtquelle vorliegt = konstant über das Polygon 2. der Betrachter in unendlicher Entfernung steht = konstant über das Polygon 3. die darzustellende Fläche eine polygonale Fläche ist Bem.: i. Allg. betrachtet man nur diffuse Reflektion für flat shading

Mach-Band-Effekt überhöhte Wahrnehmung von Intensitätsunterschieden Ursache des Mach-Band-Effektes: Die Rezeptoren der menschl. Netzhaut üben einen reak- tionsvermindernden Einfluss auf ihre Nachbarrezeptoren aus. Dieser Einfluss ist umso stärker, je mehr Lichtstrah- lung von einem Rezeptor empfangen wird und vermindert sich mit dem Abstand der Rezeptoren. A B C D helldunkel Notation: Rezeptor N erhält Licht von Position N Rezeptor B reagiert stärker als Rezeptor A, da A durch seine Nachbarn stärker vermindert wird Rezeptor C reagiert schwächer als Rezeptor D, da D durch seine Nachbarn weniger vermindert wird

Verwendet man zur Darstellung einer solchen Oberfläche eine polygonale Approximation, so erscheint das Bild auch dann facettiert, wenn die Beleuchtungsformel in jedem Polygonpunkt ausgewertet wird. Intensitätssprünge werden durch abrupte Richtungs- änderungen der Normalenvektoren induziert. Verfeinerung der polygonalen Approximation ist wenig hilfreich (Mach-Band-Effekt) Approximiert die polygonale Fläche eine tangenten- od. krümmungsstetige Oberfläche, so sind die Intensitäts- sprünge von Polygon zu Polygon besonders störend. Schattierung krümmungsstetiger Oberflächen

Ansatz von Gouraud: berechne oder approximiere die Flächennormale in den Eckpunkten der polygonalen Zerlegung Normalenmittelung: Eckpunkte gewollter Kanten erhalten mehrere Normale nehme diese Normalen als Grundlage der Schattierung

Gouraud Schattierung eines konvexen Polygons berechne die Intensitäten in den Eckpunkten des konvexen Polygons durch Auswertung der Beleuch- tungsformel approximiere die Intensität für einen beliebigen Polygonpunkt durch bilineare Interpolation der Intensitäten in den Eckpunkten Integration der Intensitätsinterpolation in ein scanline- Verfahren IpIp IaIa IbIb IcIc IdId IrIr IqIq scanline y

Bewertung des Gouraud Shading effizient schattierte Fläche erscheint weitgehend glatt (smooth shading) Mach-Band-Effekte treten nur dort auf, wo die Intensitätsfunktion ihre Steigung stark ändert Spiegelungsbereiche (highlights) werden schlecht reproduziert Bsp.: 1) Reflektionsterm cos n mit hohem Wert für n Genau ein Polygoneckpunkt mit kleinem (Betrachter sieht Reflektion) Intensitätsinterpolation zwischen den Eckpunkten ver- streut die reflektierte Intensität über das Polygon 2) Highlight im Inneren eines Polygons kann völlig ver- schwinden, da kein innerer Punkt heller ist als der hellste Polygoneckpunkt. seltsame Effekte bei Animationen, da die Normalen sich mit der Bewegung stetig ändern, die Intensitätsinterpola- tion diese Veränderung aber nicht stetig reproduziert