Skip to main content
main-content

Über dieses Buch

Dieses Buch über Computergrafik bietet Ihnen breites Wissen in der Generierung und Verarbeitung digitaler Bilder

Im Buch „Computergrafik“ finden Sie alles, was Sie für Studium und Praxis über Generierung und Verarbeitung von digitalen Bildern wissen müssen und wie Sie dieses Wissen anwenden. Das erfolgreiche didaktische Konzept wurde weiterentwickelt und bietet ab dieser vierten Auflage neben dem didaktisch leichteren Zugang zur Computergrafik mittels OpenGL auch eine Einführung in die neue Grafik-API Vulkan.

Für Einsteiger und Fortgeschrittene gleichermaßen geeignetDer erste Band des Standardwerks Computergrafik und Bildverarbeitung führt den Leser durch die Computergrafik. Die Autoren stellen OpenGL (im Core und Compatibility Profile) und Vulkan parallel dar, um einen guten Zugang für Einsteiger und einen leichteren Übergang für Fortgeschrittene zu gewährleisten. Profitieren Sie von dem umfangreichen, kostenlosen Online-Service:

· Beispiel-Software

· Bildverarbeitungswerkzeug

· interaktive Vorlesungen

Die Autoren bemühen sich in diesem Buch um einen breiten und gleichzeitig tiefen Zugang zur Computergrafik. Sie behandeln Grundlagen und fortgeschrittenes Wissen und beschäftigen sich unter anderem mit den folgenden Themengebieten:

· Interaktive 3D-Computergrafik

· OpenGL und Vulkan

· Geometrische Grundobjekte

· Koordinatensysteme und Transformationen

· Verdeckung

· Farben und Beleuchtungsmodelle

· Textur- und Bump-Mapping

· Spiegelungen

· Bildverarbeitung auf GPUs

· Schatten und Szenengraphen

· Cull-Algorithmen

· GPU-Programmierung mit CUDA und OpenCL

Damit wendet sich dieses umfangreiche Buch über die Computergrafik nicht nur an Studierende der Informatik und den Ingenieurwissenschaften, sondern auch an Praktiker, die sich beruflich mit Methoden der Computergrafik und Bildverarbeitung befassen.

Inhaltsverzeichnis

Frontmatter

Kapitel 1. Einleitung

Zusammenfassung
Die elektronische Datenverarbeitung hat in den letzten sechs Jahrzehnten eine atemberaubende Entwicklung durchgemacht. Sie wurde ermöglicht durch neue Erkenntnisse in der Hardwaretechnologie, die Miniaturisierung der Bauteile, die Erhöhung der Rechengeschwindigkeit und der Speicherkapazität, die Parallelisierung von Verarbeitungsabläufen und nicht zuletzt die enorm sinkenden Kosten. Ende der 60er Jahre des letzten Jahrhunderts wurde z.B. der Preis für ein Bit Halbleiterspeicher mit etwa 0.50 Euro (damals noch 1.- DM) angegeben. Demnach hätte 1 GByte Hauptspeicher für einen Rechner über 4.000.000.000.- Euro gekostet.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 2. Zusammenhang zwischen Computergrafik und Bildverarbeitung

Zusammenfassung
Warum fasst man die Gebiete Computergrafik und Bildverarbeitung in einem Buch zusammen? Weil sie die zwei Seiten einer Medaille sind: während man in der Computergrafik aus einer abstrakten Objektbeschreibung ein Bild generiert, versucht man in der Bildverarbeitung nach der Extraktion von charakteristischen Merkmalen die im Bild enthaltenen Objekte zu erkennen und so zu einer abstrakten Objektbeschreibung zu kommen (Bild 2.1). Oder anders ausgedrückt: Computergrafik ist die Synthese von Bildern und Bildverarbeitung ist die Analyse von Bildern. In diesem Sinne ist die Computergrafik die inverse Operation zur Bildverarbeitung.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 3. Interaktive 3D-Computergrafik

Zusammenfassung
Die Computergrafik im allgemeinen lässt sich zunächst in zwei Kategorien einteilen: einerseits in die Interaktive 3D-Computergrafik, auch Echtzeit-3D-Computergrafik genannt, und andererseits in die Nichtechtzeit-3D-Computergrafik. Wie der Name schon sagt, ist das wesentliche Element der Echtzeit-3D-Computergrafik die Interaktivität, d.h. dass die Reaktion des Systems - sprich das computergenerierte Bild - auf Eingaben, wie z.B. von einer Computer-Maus, innerhalb kurzer Zeit erscheint. Idealerweise erfolgt die Reaktion auf Eingaben so schnell, dass ein menschlicher Beobachter Verzögerungen aufgrund der rechenzeitintensiven Bildgenerierung nicht bemerkt.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 4. Anwendungen interaktiver 3D-Computergrafik

Zusammenfassung
Die enorme Leistungssteigerung von Grafikcomputern hat dazu geführt, dass heutzutage 3D-Computergrafik in nahezu allen Anwendungsgebieten von Computern Einzug gehalten hat. In diesem Kapitel wird auf eine Auswahl derzeitiger Anwendungsbeispiele interaktiver 3D-Computergrafik eingegangen, die einen gewissen Überblick verschaffen soll.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 5. Einführung in die 3D-Computergrafik

Zusammenfassung
Bei einer praxisnahen Einführung in die 3D-Computergrafik stellt sich zunächst einmal die Frage, auf der Basis welcher Grafik-Programmierschnittstelle (Application Programming Interface (API)) dies geschehen soll. Auf der einen Seite würden sich hier international normierte Standards anbieten, wie GKS (Graphical Kernel System) [Iso85] bzw. GKS- 3D [Iso88] oder PHIGS (Programmer’s Hierarchical Interactive Graphics System) [Iso89] bzw. PHIGS+ [Iso91], die in vielen früheren Standard-Lehrbüchern über Computergrafik (siehe [Enca96],[Jans96],[Hugh13]) benützt werden. Allerdings konnten sich diese Grafikstandards in der Praxis nie durchsetzen, da sie viel zu allgemein bzw. schwerfällig sind und die Möglichkeiten der Beschleunigung durch Grafikhardware nicht oder nur unzureichend ausnutzen.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 6. Geometrische Grundobjekte

Zusammenfassung
Die 3D–Computergrafik hat konstruktiven Charakter: als Ausgangspunkt des Rendering muss zunächst eine abstrakte Beschreibung von 3–dimensionalen Objekten erstellt werden, bevor eine 2–dimensionale Projektion der gesamten Szene aus einem bestimmten Blickwinkel für einen achen Bildschirm berechnet werden kann. Für die Modellierung von 3–dimensionalen Objekten wurden in der 3D–Computergrafik, je nach Anwendungsfall, unterschiedliche Methoden entwickelt, die im Folgenden erläutert werden.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 7. Koordinatensysteme und Transformationen

Zusammenfassung
Im vorhergehenden Kapitel wurde gezeigt, wie man geometrische Objekte in der 3D-Computergrafik modelliert. In diesem Kapitel wird dargestellt, wie man diese Objekte in einer Szene positioniert, wie man die Position und die Blickwinkel einer Kamera festlegt, die die Szene quasi fotografiert, und wie man schließlich die Ausmaße des fertigen Bildes spezifiziert, das in einem Fenster des Bildschirms dargestellt werden soll. All diese Aktionen werden durch entsprechende Koordinatentransformationen erreicht.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 8. Verdeckung

Zusammenfassung
Ein wichtiger Aspekt bei der räumlichen Wahrnehmung ist die Verdeckung von Objekten im Hintergrund durch (undurchsichtige) Objekte im Vordergrund. Die gegenseitige Verdeckung von Objekten gibt uns einen verlässlichen Hinweis zur Entfernung der Objekte vom Augenpunkt. Denn ein Objekt A, das vom Augenpunkt weiter entfernt ist als ein Objekt B, kann dieses niemals verdecken.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 9. Farbe, Transparenz und Farbmischung

Zusammenfassung
Das eigentliche Ziel der Interaktiven 3D-Computergrafik ist die Generierung eines Farbbildes in einem Bildschirmfenster. Dieses Fenster besteht aus einer rechteckigen Anordnung von einzelnen Bildpunkten (Pixel), von denen jeder eine eigene Farbe darstellen kann.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 10. Anti-Aliasing

Zusammenfassung
Bei genauerer Betrachtung fast aller bisherigen Bilder dieses Buches fällt auf, dass schräge Linien und Kanten nicht glatt sind, sondern einen sogenannten „Treppenstufen-Effekt“ aufweisen (Bild 10.1). Die Ursache dafür liegt in der Natur der digitalen Bildgenerierung und -verarbeitung selbst: denn ein Bild besteht hier aus einer endlichen Anzahl von Pixeln, die auf einem rechtwinkligen Gitter liegen. Eine ideale schräge Linie kann in diesem Umfeld nur durch Pixel approximiert werden, die auf diesem Raster liegen, so dass die Linie, je nach Steigung mehr oder weniger häufig, von einer Pixelzeile zur nächsten springt. Wird die Linie auch noch langsam bewegt, folgt aus der örtlichen Diskretisierung auch noch eine zeitliche Diskretisierung, d.h. die Linie bewegt sich nicht kontinuierlich über das Pixel-Raster, sondern springt zu bestimmten Zeitpunkten um eine Rasterposition weiter. Zusätzlich richtet unser Wahrnehmungssystem seine Aufmerksamkeit insbesondere auf örtliche und zeitliche Sprünge in Signalen, so dass dieser sogenannte „Aliasing“-Effekt sehr störend wirkt.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 11. Nebel und atmosphärische Effekte

Zusammenfassung
Computergenerierte Bilder erscheinen oft deswegen unrealistisch, weil sie viel zu „sauber“ sind. In unserer natürlichen Umgebung gibt es dagegen immer eine gewisse Luftverschmutzung durch kleine Staubpartikel oder Wassertröpfchen. Reflektiertes oder abgestrahltes Licht von Oberflächen wird daher auf seinem Weg durch die Luft an den kleinen Verunreinigungen gestreut oder ganz absorbiert. Diese Dämpfung der Lichtintensität führt zu einer Verblassung von weiter entfernten Objekten, die für die menschliche Wahrnehmung von räumlicher Tiefe ein wichtiges Hilfsmittel ist. Abhängig von einer als räumlich konstant angenommenen Partikelkonzentration in der Luft wird pro Längenstück dz, den das Licht zurücklegt, ein bestimmter Prozentsatz A der eingestrahlten Lichtintenstität I absorbiert.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 12. Beleuchtung und Schattierung

Zusammenfassung
Beleuchtung und Schattierung sind wesentliche Elemente, damit computergenerierte Bilder auf einem 2-dimensionalen Bildschirm einen 3-dimensionalen Eindruck beim menschlichen Beobachter hervorrufen. Denn erst durch die Beleuchtung eines Objekts mit einer Lichtquelle und die damit verbundene Abschattung der lichtabgewandten Seiten wird die 3-dimensionale Form des Objekts im Gehirn des Beobachters rekonstruiert. Im Fachjargon nennt man diesen Vorgang „Formwahrnehmung aus Schattierung“ (shape from shading, [Rama88]). In Bild 12.1-a ist das schon häufig benutzte 3-dimensionale Modell eines Triceratops mit direkter Farbzuweisung (wie in Kapitel 9 erläutert) dargestellt.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 13. Texturen

Zusammenfassung
Bisher wurden alle Farben, die man einem Objekt zuordnen kann, entweder direkt oder über ein Beleuchtungsmodell den Vertices zugewiesen. Die Farben der am Bildschirm sichtbaren Pixel eines Objekts wurden durch unterschiedliche Shading-Verfahren (Flat, Gouraud, Phong) aus den Vertexfarben und Vertex-Normalenvektoren interpoliert. Durch die Zuweisung von wenigen Vertexfarben sind also indirekt auch schon die Farben aller Pixel eines Objekts festgelegt. Objekte die mit diesen Verfahren gerendert werden, besitzen monotone Farbverläufe und erscheinen deshalb plastikartig und künstlich. Reale Oberächen, wie z.B. Hauswände, Rasenflächen, Plakatwände, Fell oder Stoff besitzen fast immer eine gewisse regelmäßige oder unregelmäßige Struktur, die man als „Textur“ bezeichnet. Während man in der Bildverarbeitung aus Texturen in erster Linie Merkmale für die Segmentierung gewinnt (Band II Kapitel 15), werden Texturen in der Computergrafik eingesetzt, um die Oberfläche von Objekten mit einer Struktur zu überziehen. Ein mittlerweile klassisches Beispiel für eine Textur ist ein ganz normales Foto, das auf ein Polygonnetz gemappt wird (Bild 13.1). Mit dieser Technik gelang im Laufe der 1980iger Jahre der Durchbruch zu einer neuen Qualitätsstufe, der sogenannten „Fotorealistischen Computergrafik“.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 14. Schatten

Zusammenfassung
Für die dreidimensionale Rekonstruktion von Objekten und Szenarien sind Schatten eine wichtige Informationsquelle. So liefern Schatten wichtige Hinweise auf die räumliche Anordnung von Objekten in einem Szenario, auf die Form von Schattenspendern (sogenannte „blocker“) und Schattenempfängern (sogenannte „receiver“) und das zu einem gewissen Grad auch in Bereichen, die vom Augenpunkt aus nicht direkt sichtbar sind.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 15. Animationen

Zusammenfassung
In den bisherigen Kapiteln zur 3D-Computergrafik fehlte ein wesentliches Element: Bewegung. Um den Bildern das „Laufen“ beizubringen, d.h. um einen kontinuierlichen Bewegungseindruck zu erzielen, sind mindestens 24 Bilder/Sekunde nötig. Ab dieser Bildgenerierrate nimmt der Mensch keine Einzelbilder mehr wahr, in denen die Objekte oder die ganze Szene stückweise verschoben sind, sondern es entsteht der Eindruck einer flüssigen Bewegung. Diese sog.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 16. Beschleunigungsverfahren für Echtzeit 3D-Computergrafik

Zusammenfassung
Alle bisher gezeigten Beispiele für interaktive 3D-Computergrafik haben Eines gemeinsam: die Szene besteht aus einem einzigen oder allenfalls wenigen Objekten, die in der Regel vollständig im sichtbaren Volumen (Viewing Frustum) enthalten sind. Diese einfachen Szenen sind ideal, um die grundlegenden Prinzipien der Computergrafik darzustellen. Reale Anwendungen, wie sie in Kapitel 4 vorgestellt werden, besitzen im Gegensatz zu den Lehrbeispielen eine sehr viel größere Szenenkomplexität. Ein LKW-Simulator z.B.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Kapitel 17. GPU Programmierung mit CUDA und OpenCL

Zusammenfassung
Dieses Kapitel gibt einen fundierten Überblick über die aktuellen Möglichkeiten der „General Purpose“ Programmierung von Grafikhardware (besser bekannt als GPGPU, General Purpose Computation on Graphics Processing Unit). Dazu werden die beiden Technologien CUDA (Compute Unified Device Architecture, NVIDIA-proprietär, [NVIb]) und OpenCL (offener Standard des Khronos Konsortiums, [Khr]) beschrieben, wohl wissend, dass mit DirectCompute (Microsoft) eine weitere Technologie in diesem Feld existiert.
Alfred Nischwitz, Max Fischer, Peter Haberäcker, Gudrun Socher

Backmatter

Weitere Informationen