Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Vorlesung Computergraphik I -Lehrerweiterbildung- WS 1999/2000 Prof. Dr. Guido Brunnett Fakultät für Informatik Graphische Datenverarbeitung und Visualisierung."—  Präsentation transkript:

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

2 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

3 (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

4 Beispiel 3D-SzeneProjektion virtuelles BildAusgabe

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

6 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

7 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)

8 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

9 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

10 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

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

12 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

13 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.

14 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)

15 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

16 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).

17 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

18 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

19 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

20 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

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

22 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

23 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

24 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

25 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

26 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)

27 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

28 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

29 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

30 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

31 Aufgaben der DPU im Bilderzeugungsprozess

32 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.

33 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.

34 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.

35 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 2 24 16 Mio. Farben gleichzeitig darstellbar Speicheraufwand von ca. 4 MByte pro 1024 2 Bild mit Farbtafel (z.B. m = 8, n = 16) 2 16 66T Farben gleichzeitig aus Palette von 16 Mio.

36 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

37 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)

38 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.:

39 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

40 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

41 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

42 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: 380 - 440 nm Gelb : 565 - 590 nm Blau: 440 - 490 nm Orange: 590 - 630 nm Grün: 490 - 565 nm Rot : 630 - 780 nm physikalische Charakterisierung von Licht durch spektrale Energieverteilung P ( )

43 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)

44

45 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

46 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

47 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

48 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: 2 - 10 nm Einbeziehung von Intensitätsstufen ergibt ca. 350 T unterscheidbare Farbeindrücke

49 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.

50 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.

51 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.

52 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

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

54 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

55 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

56 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

57 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ß

58 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

59 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

60 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

61 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.

62 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

63 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 01024 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

64 mm 0 1024 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.

65 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 1 2 4 3 Kritische Linien werden in Parameterdarstellung mit den Fensterberandungen geschnitten, um evtl. Schnittpunkte zu berechnen. Viele unnötige Schnittpunktberechnungen (insbes. Fall 3)

66 (b) Cohen-Sutherland-Algorithmus Bereichstests zur Vermeidung von Schnittpunktberechnungen Bereichscode: 1001 0001 0101 0000 01000110 1000 0010 4 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 0 1 0 0 0 1 0 1 d.h. es gibt eine Stelle in der beide Codes eine 1 haben v 0 1 0 0 1 1 1 1 d.h. Code (P 1 ) = 0000 u. Code (P 2 ) = 0000

67 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

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

69 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

70 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

71 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 + 0.5 [ 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

72 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.

73

74 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

75 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

76 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:

77 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

78 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

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

80 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 ( )

81 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 (- )

82 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

83 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

84 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:

85 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

86 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

87 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:

88 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).

89

90 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

91 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

92

93 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

94 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.1-200 000 Bildraum-Verfahren: O(n · N) N = # Pixel ca. 1024 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.

95 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

96 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

97 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)

98 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.

99 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.

100 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)

101 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

102 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:

103 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.

104 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:

105 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

106 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}

107 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

108 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

109 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

110 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

111 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

112 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


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

Ähnliche Präsentationen


Google-Anzeigen