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

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

Embed Size (px)

Citation preview

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

Vorlesung

Computergraphik I

WS 1999/2000

Prof. Dr. Guido BrunnettFakultät für InformatikGraphische Datenverarbeitungund Visualisierung

TU Chemnitz Oktober 1999

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

0. Einführung0.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

AusgabeBild

Bildverarbeitung Computergraphik

Beschreibung

Bild

Beschreibung Bildanalyse diverses

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

(generative) Computergraphik (Computer Graphics)

behandelt die Erzeugung von Bildern durch einenComputer, ausgehend von einer geometrischenBeschreibung der Bildinhalte

darzustellendeSzene

Modell derSzene

virtuelles Bild

Bild auf dem Ausgabegerät

Modellierung

abstrakteAbbildung

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

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

Beispiel

3D-Szene Projektion

virtuelles Bild Ausgabe

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

Hierarchische Darstellung der Szene

graph. Primitive

zusammengesetzte Objekte

2D-Szene

Datenstruktur

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

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

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

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)

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

Bildverarbeitung (Image Processing)

Bild: Matrix von n x m Bildpunkten (pixeln) mitzugeordnetem Farbwert

1 m

1

n

BV besteht aus Methoden, die Darstellung einesBildes zu verändern zum Zweck der

• Bildverbesserung (z. B. Kontrastvergrößerung, Bes. v. Störungen)

• Bildauswertung (z. B. Größenbestimmung, Konturerfassung)

• Zeichenerkennung

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

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)Bild (2D)Bildverarbeitung

BildanalyseComputergraphik

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

CG I

0. Einführung

1. Grundlagen

1.1 Grundlegendes über graph. Systeme

1.2 Hardwarekomponenten graph. Systeme

1.3 Farbmodelle

2. Elemente der 2D-Computergraphik

2.1 Koordinatensysteme u. Transformationen in 2D

2.2 Windowing und Clipping

2.3 Rasterisierung von graph. Primitiven

3. Betrachtungstransformationen

3.1 Koordinatensysteme u. Transformationen in 3D

3.2 Projektionen

3.3 Durchführung der Betrachtungstransformationen

3.4 3D-Clipping

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

4. Entfernen verdeckter Linien und Flächen

5. Beleuchtung und Schattierung

6. Textur

7. Animation

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

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

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

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.

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

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)

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

Graph. Datenstrukturen

wesentliche Einflussfaktoren:

Funktionalität der graph. Systeme

• passiv• interaktiv• Dimension der Darstellung• statisch oder bewegt

Anforderungen der Anwendungz. B. Automobilbau, Geographisches IS

Die Datenstrukturen jeder Systemkomponentewerden bei der Visualisierung auf Datenstrukturendes jeweils darunter befindlichen Systems abge-bildet

graph. Daten der Anwendung

Datenstrukturen desgraph. Systems

Datenstrukturen

graph. Geräte

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

Modelldaten = Daten des Anwendungssystems

Aus den Modelldaten lassen sich geom. Daten wie

• Objektart• Objektparameter

ableiten. Diese dienen als Grundlage für die Auswahlgraph. Primitive.

Bsp.: Objektart: Kugel graph Primitiv: Polyeder mit n Seitenflächen

Der Modellkontext bestimmt oft nichtgeometrischegraph. Attribute (z.B. Farbe, Linientyp)

Topologische Informationen des Anwendungs-modells werden ebenfalls in die graph. DS über-nommen (z.B. in Form von Graphen).

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

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 hierarchischeStrukturen der Primitive realisiert

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

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

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

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

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

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 Softwarebereitet die Bilddefinition des Anwendungspro-gramms zur Ausgabe auf dem Sichtgerät auf

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

Rapid PrototypingRapid Prototyping

neue Techniken zur schnellen Erzeugung einesneue Techniken zur schnellen Erzeugung einesphysischen Prototypenphysischen Prototypen

- Stereolithographie- Stereolithographie- LOM- LOM- Selective Laser Sintering- Selective Laser Sintering

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

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 dasAblenkungssystem ein.

Elektronenstrahl wird fokussiert und auf phosphor-beschichtete Bildschirmfläche gelenkt.

Phosphor absorbiert Elektronen und emittiert LichtFlimmerfreies Bild bei Wiederholungsrate vonca 60 Hz

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

Maskenröhren (Shadow Mask Color CRT)

3 Elektronenstrahlsysteme und RGB Phosphor-punkte in unterschiedlicher Anordnung

höhere Auflösung durch Delta-Anordnung derPunkteInline Anordnung der Strahler vereinfacht Konver-genzschaltung

Konvergenz: Einhaltung der richtigen Strahlerwinkel

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

vector-refresh display (60er Jahre)Vektorbildschirm (random scan) bezeichnet CRT,bei der der Elektronenstrahl längs einer beliebigenStrecke kontinuierlich über den Bildschirm gelenktwerden kann

Architektur eines vektor-refresh Systems

höhere Graphikbefehle werden in Punkt- und Linienkommandos umgewandelt, die im Wieder-holungsspeicher (refresh buffer) gespeichert unddurch den display prozessor abgearbeitet werden

Nachteil: hohe Kosten von Wiederholspeicher undschnellem display prozessor in den 60er Jahren

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

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

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

raster-refresh displaysinkende Hardwarepreise und die Verwendung vonTV-Technologie führt zur Entwicklung preiswerterRasterbildschirme Ende '70er

raster scan bezeichnet eine CRT bei der nur aufeinem Raster liegende Bildschirmpunkte angesteuertwerden können.

pixel: Rasterelement, kleinster adressierbarer Bereich des Bildschirmsscan line: horizontale RasterlinieScankonvertierung: Abbildung eines graphischen Primitivs auf das Rasterbit map: Matrix der binären Pixelwerte (pixmap)

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

Prinzip eines raster-refresh Systems

Graph. Primitive werden durch Scankonvertierungin Pixmap umgewandelt, die im Bildwiederhol-speicher (frame buffer) gespeichert und durch denVideocontroller 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

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

Architekturen von Rasterdisplaysystemen (RDS)

Einfaches RDS:

Funktionen der DPU (z.B. Rasterisierung) in Soft-ware lange BildaufbauzeitenFrame buffer ist Teil des Arbeitsspeichers. Bei fes-tem Adressbereich liest Videocontroller Bild ohneBelastung des Systembus gemeinsamer Adressraum für Anwendungs-,Displayprogramme und Bildspeicherhohe Flexibilität bei niedrigen Hardwarekosten

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

RDS mit integrierter DPU

Beschleunigung graphischer Operationen durchDisplayprozessor

Vorteile des einheitlichen Adressraumes bleibenbestehen

Probleme mit Konkurrenz der Komponenten umSpeicherzugriff wird durch feste Zuordnung desBildspeichers gelöst

zunehmende Bedeutung

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

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 spezielleAnwendunglangsamer Datentransfer zwischen Hauptspeicherund Bildspeichermittlerer Anforderungsbereich, keine Echtzeit

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

Aufgaben der DPU im Bilderzeugungsprozess

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

Video Controller

(= Image Display System = IDS)

liest Bildschirmspeicher und erzeugt stehendes Bildauf Monitor (60 Hz Wiederholrate)

Raster scan generator erzeugt Ablenkungssignal zurSteuerung des Elektronenstrahls und kontrolliert dieX- und Y-Adressregister, welche die Speicheradressedes darzustellenden Pixels bestimmen.Speicherinhalt definiert die Intensität des Elektronen-strahls und damit Grauwert oder Farbe des Pixels.Falls mehrere Pixel gleichzeitig ausgelesen werden, wirddie Information in Schieberegister zwischengespeichert.

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

Zeilensprungverfahren (Interlacing): 2 Bilder werden mithalbierter Vertikalauflösung nacheinander geschrieben(1. Bild gerade Zeilen, 2. Bild ungerade Zeilen),halbierte Frequenzzufriedenstellend für Fernsehbilder (hohe Kohäranzbenachbarter 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.

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

einfache Videocontroller arbeiten mit fester Zu-ordnung der Positionen im Bildspeicher und der Position auf dem Bildschirm

Kompliziertere Videocontroller verwenden eineBildtransformation, die beschreibt, wie der Inhaltdes Bildspeichers auf dem Bildschirm abgebildetwird. In diesem Fall kann der VC Translationen,Rotationen, Skalierung von Teilbereichen desBildspeichers erstellen.

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

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 dieWortlänge in der Tafel größer ist als die Pixelwortlänge.

Bei n-Bits/Pixel und m-Bits/Farbanteil in der Tabellelassen sich 2n Farben gleichzeitig darstellen aus einerPalette von 23m möglichen Farben.Bsp.: 24-Bit-Graphiksysteme: n = 8 Bit pro Grundfarbe224 16 Mio. Farben gleichzeitig darstellbarSpeicheraufwand von ca. 4 MByte pro 10242 Bild

mit Farbtafel (z.B. m = 8, n = 16)216 66T Farben gleichzeitig aus Palette von 16 Mio.

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

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ür0 oder 1 an entsprechender Stelle

3n

2. Bewegtbildeffekte

Durch Änderung der Zuordnung von Pixelwert undFarbe lassen sich Bewegungen simulieren

Bsp.:

weiß schwarz

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

Bildspeicher

Bindeglied zwischen Bilderzeugung (DPU) undBilddarstellung (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)

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

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ühbirneund 50-W- zu 100-W-Glühbirne wird gleichempfunden

Definition von Graustufen

n: Anzahl der gewünschten GraustufenEmin > 0: kleinste realisierbare IntensitätEmax : max. darstellbare Intensität

E0 : = Emin

Ei : = i E0 (i = 1, ..., n-1)En-1: = Emax = 1

Aus En-1: = n-1 E0 =

Bsp.:

1-n01/E

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

Graustufen am Rasterbildschirm

Verwendung mehrerer Bit-planes

Bildschirmspeicher (frame buffer) besteht ausBit-planes

Anzahl Bit-planes = Anzahl Bits pro Pixel

Bsp.: 1 Byte pro Pixel 256 Intensitätsstufen

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

Dithering

beruht auf der Eigenschaft des Auges, kleineSchwarzweißmuster zu Grauwerten zu ermitteln

Fasse Pixelbereiche zu sog. Dithering-Zellen zusammen

Definiere mögliche Zellenmuster durch Dithering-MatrixBsp.: Fasst man 9 Pixel zu einer Zelle zusammen, so lassen sich 10 Graustufen kodieren

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

Ablauf des Ditherings

Input: Bild in ursprünglicher Auflösung mitGrauwerten

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 = 9x MOD3 = 1 y MOD3 = 0D [1] [0] = 8 < grey10Pixel wird gesetzt

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

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 nmBlau : 440 - 490 nm Orange: 590 - 630 nmGrün : 490 - 565 nm Rot : 630 - 780 nm

physikalische Charakterisierung von Licht durchspektrale Energieverteilung P ()

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

Entstehung von Farben

wahrgenommene Farben entstehen aus verschie-denen physikal./chemischen Prozessen

additive Farbmischung:

Lichtstrahlen aus verschiedenen Lichtquellenwerden additiv kombiniert

resultierende Farbe enthält für bestimmte Wellen-längen so viele Photonen wie die Summe dereinzelnen Farben(Anwendung: Farbfernseher)

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

subtraktive Farbmischung:

Farbe resultiert aus Filterung. Filter hält Lichtgewisser Wellenlängen zurück.

Bsp.: Weiß - Rot = CyanWeiß - Blau = GelbWeiß - Grün = MagentaWeiß - Gelb - Magenta = RotWeiß - Gelb - Cyan = GrünWeiß - Cyan - Magenta = Blau

(Anwendung: Diaprojektor)

PigmentierungTeilchen mit Farbwirkung (Pigmente) in Flüssigkeitoder aufgebracht auf Oberfläche

Pigmente absorbieren, reflektieren oder transmittierenLicht

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

Parameter der menschl. Farbempfindung

Farbton (Hue) wird durch dominante Wellenlängebestimmt

Sättigung (Saturation, purity)hängt mit der Energieverteilung des Lichtes über dasSpektrum 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): wahrgenommeneIntensität, proportional zu

P () • Helligkeitseffizienz () d

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

Physiologie der Farbwahrnehmung

Netzhaut ist mit Rezeptoren ausgestattet

3 Arten von Farbrezeptoren mit unterschiedlichenEmpfindlichkeiten

Piksblauer Rezeptor (440 nm), grüner R. (545 nm gelb)roter R. (580 nm gelb)

HelligkeitseffizienzEmpfindlichkeit des Auges für Licht unterschiedlicherWellenlänge und gleicher Intensität

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

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 nmEinbeziehung von Intensitätsstufen ergibtca. 350 T unterscheidbare Farbeindrücke

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

Universum physikalischer Farben

= Menge aller Energieverteilungsfunktionen P () über dem Spektrum I (Sichtbarkeit!) C0 (I) unendlich dimensionaler VR

ist kein VR, da P () > 0 für I.

Aber mit P1, P2 und [0, 1]:

(1 - ) P1 + P2 ,

d. h. ist konvex

Für P und > 0:

• P

d. h. ist ein Kegel

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

Universum der wahrnehmbaren Farben

1. Graßmannsches Gesetz (1853):

Zwischen je vier sichtbaren Farben a, b, c, d bestehtimmer eine eindeutige lineare Beziehung

(, , , ) R4 : 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 dieselbeFarbempfindung erzeugen, heißen metamers.

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

Basisdarstellungen

Wählt man als Basis von V die Grundfarben R, G, Bund bestimmt durch Messung an Beobachtern dieAnteile 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 nichtdarstellbar!Die Koeffizienten r, g, b als Funktionen der Wellen-länge werden auch als farberzeugende Funktionen be-zeichnet.

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

CIE-System der sichtbaren Farben

1931 Festlegung von drei künstlichen Grundfarben X, Y, Z durch Commission Int. de L‘Eclairage mit

F W ex. x, y, z > 0 : F = xX + yY + zZ

Die farberzeugenden Funktionen x, y, z haben dieGestalt

y = Helligkeitseffizienz ()

x, y, z sind Linearkombinationen von r, g, b.Hieraus folgt, dass eine lineare Umrechnung zwischendem RGB- und dem CIE-System existiert.

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

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 Schnittdes Kegels mit Ebene x + y + z = 1

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

Die Projektion dieser Ebene auf (X, Y)-Ebene ergibtdas CIE-Chrominanz-Diagramm

Der achromatische Punkt W definiert weißes Licht.

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

Anwendungen des CIE-Farbdiagramms

Koordinaten des CIE-Diagramms ermöglichen die präzise Angabe von Farben und erlauben den Aus-tausch von Farbinformationen zwischen Systemenmit verschiedenen Grundfarben.

Bestimmung der dominierenden Wellenlänge undSättigung

Sei F1 eine Farbe aus dem Diagramm und Fs derSchnittpunkt der Geraden durch F1 und W mitder Randkurve des Diagramms (ohne Purpurlinie).Dann ist die Wellenlänge bei Fs die dominierendeWellenlänge von F1

das Verhältnis der Sättigungsgrad von F1 |WF||WF|

s

1

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

Erzeugen von Farbpaletten

F1, F2, F3 seien sichtbare Farben des CIE-Diagrams

Die Menge der Farben, die durch additives Mischenvon F1, F2 erzeugt werden kann, entspricht der

Strecke .

Die Menge der Farben, die durch additives Mischenvon F1, F2, F3 erzeugt werden kann, entspricht demDreieck = (F1, F2, F3).

21 F ,F

Komplementäre Farben mischen zu Weißnichtspektrale Farben besitzen fehlende dominanteWellenlänge

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

Farbmodelle für Rastergraphik

Ein Farbmodell ist ein dreidimensionales Modell zurSpezifikation 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 einenTeil der sichtbaren Farben

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

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

iß werot

1] [0, t 111

t)- (1 001

t (t) M

Grautöne: Mischung von Schwarz und Weiß

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

CMY-Modell

subtraktives Farbmodell, basierend auf den Grund-farben Cyan, Magenta und Gelb

Umrechnungsformel:

bgr

- 111

ymc

Interpretation der Koeffizienten: Beschreibung derAbsorption der R,G,B-Grundfarben durch Oberfläche

Bsp.: blaue Oberfläche wird bestrahlt mit weiß,reflektiert aberblau = weiß - cyan - Magenta,d.h. absorbiert Cyan u. Magenta

blau =

011

Anwendung: permanente Ausgabe von Farbinforma-tion (z.B. Tintenstrahldrucker), Auge erhält nur dieAnteile weißen Lichts, die reflektiert werden

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

YIQ-Modell

Anwendung in amerikanischer NTSC-Fernsehnorm

Y entspricht Y-Parameter im CIE-System, d.h. Ystellt die Helligkeit dar. Die Konvertierung der Farb-information in Monochrom-Darstellung erfolgt durchAuswertung von Y

qiy

1.705 1.105 - 1 0.648 - 0.272 - 1 0.623 0.956 1

bgr

bgr

.311 .211 - .211.274- .274- .596.114 .587 .299

qiy

PAL: R - Y, Y, B - Y

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

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

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

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 Abstandvon mittlerer Intensität

lineare Interpolation zwischen Farben ist nicht möglichin HSV oder HLS.

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

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

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

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 0 1024

wird zweistufig realisiert, um die graphische Ausgabe aufverschiedenen Ausgabegeräten zu unterstützen und um Da-ten versch. Welten auf einem Ausgabegerät darstellbar zumachen.

Normalisierungstransformation: Abbildung eines windowsauf einen Teilbereich des normalisierten Koordinatenraumes[0,1] x [0,1]

Gerätetransformation: Abbildung eines Fensters imNKsystem auf das viewport

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

mm 0 1024

window-viewport transformation

Gerätekoord.

Geräte

trans

f.Norm

alisierungstransf.

Weltkoord.

Weltkoord.

G.transf.

Nor

m.tr

ansf

.

normalisierteKoordinaten

(0,0)

t

(0,1) (1,1)

(1,0)

Gerätekoord.

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

Clipping-Algorithmen

Objekte, die ganz od. teilweise außerhalb des Fenstersliegen, 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. Xmin Xmax, Ymin Ymax ): Linie liegt innerhalbbeide Endpunkte außerhalb: keine Aussageone in / one out: Clipping notwendig

x y

Ymin

Ymax

Xmin Xmax

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)

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

(b) Cohen-Sutherland-Algorithmus

Bereichstests zur Vermeidung von SchnittpunktberechnungenBereichscode:

1001

0001

0101

0000

0100 0110

1000 1000

0010

4 Bit Code: 1 = wahr 0 = falsch

Bit 1: über dem Fenster y > ymax

Bit 2: unter dem Fenster y < ymin

Bit 3: rechts des Fensters x > xmax

Bit 4: links des Fensters x < xmin

Bereichstest mittels logischer Verknüpfungen

(1) Code (P1) AND Code (P2) 0000

liegt außerhalb des Fensters21PP

(2) Code (P1) AND Code (P2) = 0000 keine Aussage

(3) Code (P1) OR Code (P2) = 0000

liegt ganz innerhalb des

Fensters21PP

0 1

0 0 01 0 1

d.h. es gibt eine Stelle in der beide Codes eine 1 haben

v 0 1

0 0 11 1 1

d.h. Code (P1) = 0000 u. Code (P2) = 0000

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

Polygonclipping

Polygon meint in der Computergraphik i. Allg. die Fläche,die von einem geschl. Polygonzug eingeschlossen wird

Anforderung: Ergebnis der Clipping Operation sollwieder ein Polygon liefern (ggf. mehrere Polygone).

Wiederholtes Linienclipping ist prinzipiell möglich,führt aber zu Problemen

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

Sutherland-Hodgman Algorithmus (1974):

Prinzip: clippe das gesamte Polygon an einer Fenster-kante nach der anderen

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

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

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

Rasteralgorithmen für Linien

verwendetes Modell des Pixelmusters:

Pixel sind nichtüberlappende Kreisscheiben um dieGitterpunkte eines ganzzahligen Gitters

vereinfachende Annahmen:

• Startpunkt (x0, y0) u. Endpunkt (x1, y1) liegen exakt auf Pixel x0 < y0

• 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