Upload
kasimir-stolzenburg
View
109
Download
0
Embed Size (px)
Citation preview
Vorlesung
Computergraphik I
WS 1999/2000
Prof. Dr. Guido BrunnettFakultät für InformatikGraphische Datenverarbeitungund Visualisierung
TU Chemnitz Oktober 1999
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
(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
Beispiel
3D-Szene Projektion
virtuelles Bild Ausgabe
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) 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
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
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
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 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
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).
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
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 Softwarebereitet die Bilddefinition des Anwendungspro-gramms zur Ausgabe auf dem Sichtgerät auf
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
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
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
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
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
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)
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
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
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
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
Aufgaben der DPU im Bilderzeugungsprozess
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.
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.
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.
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.
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
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)
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
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
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
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
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 ()
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)
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
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
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
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
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
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.
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.
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.
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
Die Projektion dieser Ebene auf (X, Y)-Ebene ergibtdas 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 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
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
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
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ß
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
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
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 Abstandvon mittlerer Intensität
lineare Interpolation zwischen Farben ist nicht möglichin 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 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
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.
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)
(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
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
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 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