Index Einführung in Visual Computing Kapitel 1, Vs.13 emptyvi, informatik-forum.at 1. Einführung in die Computergraphik 3 1.1. Wer braucht Computergraphik 3 1.2. Komponenten von Computergraphik-Software 4 2. Einführung in Computer Vision 5 2.1. Was ist Visual Computing 5 2.2. Definition Computer Vision 5 2.3. Mensch vs. Computer Vision 6 2.4. Plenoptische Funktion 7 2.5. Camera Obscura / Lochkamera 8 3. Bildaufnahme 9 3.1. Das menschliche Auge 9 3.2. Perspektivische Projektion 9 3.2.1. Linsen 10 3.2.2. Tiefenschärfebereich (DOF) 10 3.3. Radiometrie 10 3.4. Sampling 10 3.5. Bildsensoren 11 3.6. Farbe auf CCD Sensoren 11 3.7. Ideale vs. Reale Kamera 12 4. Farbe 13 4.1. Was ist Farbe 13 4.2. Kolorimetrie 13 4.2.1 Farbfehlsichtigkeit 14 4.3. Farbmodelle 14 4.3.1. CIE 1931 XYZ-Farbmodell 14 4.3.2. RGB-Farbmodell 15 4.3.3. CMY-Farbmodell 15 4.3.4. HSV- und HLS- Farbmodelle 15 4.4. Farbsymbolik 16 5. Bildcodierung und Kompression 17 5.1. Digitales Bild-Dateiformat 17 5.1.1. Raster-Bildformate 17 5.1.2. Vektor-Bildformate 17 5.2. Bildkompression 18 5.2.1. Verlustfreie Kompression 18 5.2.2. Verlustbehaftete Kompression 19 5.2.2.1. JPEG 19 5.2.2.2. Diskrete Cosinus Transformation 20 5.3. Video Kompression 20 6. Rasterisierung 21 6.1. Linienalgorithmen 21 6.1.1. DDA-Verfahren 21 6.1.2. Bresenham-Verfahren 21 6.2. Attribute 23 6.2.1. Attribute von (Punkten und) Linien 23 6.2.2. Attribute von Text 23 6.2.3. Attribute von (2D-) Polygonen und Flächen 23 6.3. Baryzentrische Koordinaten 23 6.3.1. Dreiecke rasterisieren 23 6.3.1.1. Berechnung der baryzentrischen Koordinaten 24 6.4. Was ist bei einem Polygon innen? 24
7. Polygonfüllen 25 7.1. Einschub: Verkettete Listen 25 7.2. Scannlinien-Flächenfüllen 26 7.3. Floodfill-Algorithmus 27 7.3.1. 4-verbunden versus 8-verbunden 27 7.3.2. Rekursive Implementierung 27 7.3.2.1 Beispiel 28 7.4. Behandlung von 3D Polygonen 28 8. Graphikpipeline, Objektrepräsentationen 29 8.1. Graphikpipeline 29 8.2. Einschub: Graphen und Bäume 29 8.3. Polygon-Listen (B-Reps) 29 8.4. Constructive Solid Geometry (CSG) 30 8.4.1. Ray-Casting von CSG-Objekten 31 8.5. Quadtrees und Octrees 31 8.6. Andere Objektrepräsentationen 32 8.7. Szenengraphen 32 9. Geometrische Transformationen 33 9.1. Einfache 2D-Transformationen 33 9.1.1. Translation (Verschiebung) 33 9.1.2. Rotation (Drehung) 33 9.1.3. Skalierung (Vergrößerung oder Verkleinerung) 33 9.1.4. Reflexion (Spiegelung) 33 9.2. Homogene Koordinaten 33 9.3. 3D Transformationen 35 10. Viewing 37 10.1. Viewing in der Graphik-Pipeline 37 10.2. Viewport-Transformation 37 10.3. Projektionstransformation 37 10.4. Kamera-Transformation 38 10.5. Orthographisches Viewing 39 10.6. Perspektive 39 11. Point Operations 41 11.1. Was sind Punktoperationen 41 11.1.1. Identitätsfunktion und Invertierung 41 11.1.2. Schwellwertoperation 41 11.1.3. Kontrast und Helligkeit 42 11.2. Histogramm 42 11.2.1. Histogrammnormalisierung 43 11.2.2. Histogrammequalisierung 44 12. Local Operations 45 12.1. Nachbarschaften 45 12.2. Was sind lokale Operationen 45 12.3. Lineare Filter 45 12.3.1 Tiefpassfilter 46 12.3.2. Differenzfilter 46 12.3.3. Bildrandproblem 46 12.3.4. Formale Eigenschaften linearer Filter 47 12.4. Nicht-lineare Filter 48
13. Local Operations Edge Filtering 49 13.1. Bildschärfung 49 13.2. Kanten 49 13.2.1. Gradienten-basierte Kantendetektion 49 13.2.2. Kantendetektionsfilter 50 13.2.3. Kantendetektion mit zweiten Ableitungen 51 13.2.4. Canny Operator 52 14. Global Operations 53 14.1. Bildtransformationen 53 14.1.1. Fourier-Transformation 53 14.1.2. Diskrete Fourier-Transformation (DFT) 54 14.2. Hough-Transformation 55 14.2.1. Hough-Transformation für Linien 56 14.2.2. Weitere Hough-Transformationen 56 15. Image Segmentation 57 15.1. Segmentierung 57 15.2. Punktorientierte Segmentierungsverfahren 57 15.2.1. Schwellwerte 58 15.3. Kantenorientierte Segmentierungsverfahren 58 15.4. Regionenorientierte Segmentierungsverfahren 58 15.5. Relaxation Labelling 59 15.6. Region Growing 59 15.7. Split & Merge 60 16. Multiscale Representations 61 16.1. Multiskalenanalyse 61 16.2. Abtastung 61 16.3. Bildskalierung 62 16.4. Bildpyramiden 62 16.4.1. Gaußpyramide 63 16.4.2. Laplacepyramide 64 17. Image Features Interest Points 65 17.1. Bildmerkmale 65 17.2. Kantenerkennung 65 17.3. Interest Points 65 17.4. Eckendetektion 66 17.4.1. Moravec-Eckendetektor 66 17.4.2. Harris Eckendetektor 66 17.5. Scale-Invariant Feature Transformation (SIFT) 67 17.5.1. 1. Finden von Interest Points Skalierung 67 17.5.2. 2. Finden von Interest Points Position 67 17.5.3. 3. Finden von Interest Points Orientierung 68 17.5.4. 4. Erstellen einer Beschreibung der Merkmale 68 18. Stereo and Motion 69 18.1. Stereo Vision 69 18.1.1. Stereoskopie 69 18.1.2. Disparität 70 18.1.3. Normalfall 70 18.1.4. Epipolargeometrie 70 18.2. Korrespondenzproblem 71 18.2.1. Regionenbasiertes Matching 71 18.2.2. Merkmalbasiertes Matching 71 18.3. Structure-from-Motion 72 18.3.1. Bewegungsfeld 72 18.3.2. Bewegungsfeldbestimmung (Optischer Fluss) 72
19. Clipping und Antialiasing 73 19.1. Linien-Clipping 73 19.1.1. Clippen von Linien: Cohen-Sutherland-Verfahren 73 19.2. Polygon-Clipping 74 19.2.1. Clippen von Polygonen: Sutherland-Hodgman-Verfahren 74 19.3. Clipping von Dreiecken 75 19.4. Clipping in Clipkoordinaten 75 19.5. Aliasing und Antialiasing 75 19.5.1. Antialiasing von Linien 76 19.5.2. Antialiasing von Polygonkanten 76 20. Sichtbarkeitsverfahren 77 20.1. Backface Detection (Backface Culling) 77 20.2. Z-Puffer-Verfahren (Depth Buffer) 77 20.3. Scanline-Methode 78 20.4. Depth-Sorting-Methode 78 20.5. Area-Subdivision-Methode 79 20.6. Octree-Methode 79 20.7. Ray-Casting 80 20.8. Klassifizierung der Verfahren 80 21. Beleuchtung und Schattierung 81 21.1. Lichtquellen und Oberflächen 81 21.1.1. Lichtquellen 81 21.1.2. Objektoberflächen 81 21.2. Ein einfaches Beleuchtungsmodell 81 21.2.1. Hintergrundlicht (Ambientes Licht) 81 21.2.2. Lambert'sches Gesetz 81 21.2.3. Glanzpunkte (Specular Highlights) 82 21.3. Schattierung von Polygonen 83 21.3.1. Flat-Shading 83 21.3.2. Gouraud-Schattierung 83 21.3.3. Phong-Schattierung 84 22. Ray-Tracing 85 22.1. Das Ray-Tracing Prinzip 85 22.1.1. Korrekte Sichtbarkeit und Schattierung 85 22.1.2. Schatten 85 22.1.3. Spiegelbilder 85 22.1.4. Transparenz 85 22.1.5. Rekursion 86 22.1.6. Perspektive 86 22.2. Ray-Tracing Implementierung 86 22.3. Schnitte zwischen Strahlen und Objekten 87 22.3.1. Schnitt Strahl-Kugel 87 22.3.2. Schnitt Strahl-Polygon 87 22.4. Ray-Tracing Beschleunigung 88 22.4.1. Objektumgebungen 88 22.4.2. Raumteilungs-Methoden 88 23. Globale Beleuchtung: Radiosity 89 23.1. Die Radiosity Gleichung 89 23.2. Berechnung der Formfaktoren 90 23.3. Fortschreitende Verfeinerung 91 23.4. Aspekte von Radiosity 92
24. Texturen 93 24.1. Environment Mapping 93 24.2. Texture Mapping 93 24.2.1. Erzeugung einer Textur 94 24.2.2. Textur-Objekt-Transformation 94 24.3. Viewing und Projektionstransformation 94 24.4. Anti-Aliasing für Texturen 95 24.4.1. Texturen auf perspektivisch verzerrten Dreiecken 95 24.4.2. Solid Texturing 95 24.5. Bump Mapping und Displacement Mapping 95 24.5.1. Bump-Mapping-Algorithmus 96 24.5.2. Displacement Mapping 96 24.6. Kombination mehrerer Mappings 96 25. Kurven und Flächen 97 25.1. Quadratische Flächen 97 25.2. Kurven 97 25.2.1. Kubische Spline-Interpolation 98 25.2.2. Hermite-Interpolation 98 25.2.3. Bézier-Kurven 98 25.2.4. B-Spline-Kurven 99 25.3. Freiformflächen 100 25.3.1. Bézier- und B-Spline-Flächen 100 26. Computational Photography 101 26.1. Computational Photography 101 26.1.1. Lichtfeld 101 26.1.2. High Dynamic Range (HDR) 102 26.1.3. Fotomontage/Komposition 103 26.1.4. Image Inpainting 103 26.2. Warping 103 26.2.1 Bildmosaik 104 26.2.1. Morphing 104