Computer Graphics
Fundamental techniques in graphics
- Hierachy of graphic sosftware
- Simple graphics API
- Simple color models (RGB, HSB, CMYK)
- Homogeneous coordinates
- Affne transformations (scaling, rotation, translation)
- Viewing transformation
- Clipping
Graphic systems (1) [Devices]
- Raster and vector graphics systems
- Video display devices
- Physical and logical input devices
- Issues facing the developer of graphics systems
Graphic communication
- Psychodynamics of color and interactions among colors
- Modifications of color for vision deficiency
- Cultural meaning of different colors
- Use of efective pseudo-color palettes for images for specific audiences
- Structuring a view for effective understanding
- Image modifcations for effective video display
- Use of legends to key information to color or other visual data
- Use of text in images to present context and background information
- Visual user feedback on graphical operations
Geometric modeling
- Polugonal representation of 3D objects
- Parametric polynomial curves and surfaces
- Constructive Solid Geometry (CSG) representation
- Implicit representation of curves and surfaces
- Spatial subdivision techniques
- Procedural models
- Deformable models
- Subdivision models
- Miltiresolution modeling
- Reconstruction
Basic rendering
- Line generation algorithms (Bresenham)
- Font generation: outline vs. bitmap
- Light-sources and material properties
- Ambient, diffuse, and specular reflections
- Phong reflection model
- Rendering of polygonal surface: flat, Gouraud, and Phong shading
- Texture mapping, bump texture, environmental map
- Ray tracing
- Image synthesis, sampling techniques, and anti-aliasing
Advanced rendering
- Transport equations
- Ray tracing algorithms
- Photon tracing
- Radiosity for global illumination computation, form factors
- Efficient approaches to global illumination
- Monte Carlo methods for global illumination
- Image-based rendering, panorama viewing, plenoptic function modeling
- Rendering of complex natural phenomena
- Non-photorealistic rendering
Advanced techniques
- Color quantization
- Scan conversion of 2D primitive, forward differencing
- Tessellaton of curved surfaces
- Hidden surface removal methods
- Z-buffer and fram buffer, color channles (a channel for opacity)
- Advanced geometric modeling techniques
Computer animation
- Key-fram animation
- Camera animation
- Scripting system
- Animation of articulated structures: inverse kenematics
- Motion capture
- Procedural animation
- Deformation
- Graphics primitives and their properties
- Graphics software systems; general graphics standards
- Architecture of window managers and user interfaces
- Architecture of toolboxes and programming support environments
Data Visualization
- Basic viewing and interrogation functions for visualization
- Visualization of vector fields, tensors, and flow data
- Visualization of scalar field or height field: isisurface by the marching cube method
- Direct volume data rendering: ray-casting, tranfer functions, segmenation, hardware
- Information visualization: projection and parallel-coordinates methods
Virtual Reality
- Stereoscopic display
- Force feedback simulation, haptic devices
- Viewer tracking
- Collision detection
- Visibility computation
- Time-critical rendering, mutiple levels of details (LOD)
- Image-based VR system
Distributed VR, collaboration over computer network
- Interactive modeling
- User interface issues
- Applications in medicine, simulation, and training
Computer Vision
- Image acquisition
- The digital image and its properties
- Image preprocessing
- Segmentation (thresholding, edge- and region-based segmentation)
- Shape representation and object reognition
- Motion analysis
- Case studies (object recognition, object tracking)
Multimedia
- Sound and audio, image and graphics, animation and video
- Representation of graphic data and sound
- Multimedia standards (audio, music, graphics, image, telephony, video, TV)
- Capture
- Compression: techniques, benefits, costs
- Streaming
- Capacity planning and performance issues
- Input and output devices (scanners, digital camera, touch-screens, voice-activated)
- MIDI keyboards, synthesizers
- Storage standards (magneto optical disk, CD-ROM, DVD)
- Multimedia servers and file systems
- Tools to support multimedia development
to top