Graphics and visual computing

From CS2001 Wiki

Jump to: navigation, search

Graphics and Visual Computing (GV)

The area encompassed by Graphics and Visual Computing (GV) is divided into four interrelated fields:

  • Computer graphics. Computer graphics is the art and science of communicating information using images that are generated and presented through computation. This requires (a) the design and construction of models that represent information in ways that support the creation and viewing of images, (b) the design of devices and techniques through which the person may interact with the model or the view, (c) the creation of techniques for rendering the model, and (d) the design of ways the images may be preserved The goal of computer graphics is to engage the person's visual centers alongside other cognitive centers in understanding. * Visualization. The field of visualization seeks to determine and present underlying correlated structures and relationships in both scientific (computational and medical sciences) and more abstract datasets. The prime objective of the presentation should be to communicate the information in a dataset so as to enhance understanding. Although current techniques of visualization exploit visual abilities of humans, other sensory modalities, including sound and haptics (touch), are also being considered to aid the discovery process of information.
  • Virtual reality. Virtual reality (VR) enables users to experience a three-dimensional environment generated using computer graphics, and perhaps other sensory modalities, to provide an environment for enhanced interaction between a human user and a computer-created world.
  • Computer vision. The goal of computer vision (CV) is to deduce the properties and structure of the three-dimensional world from one or more two-dimensional images. The understanding and practice of computer vision depends upon core concepts in computing, but also relates strongly to the disciplines of physics, mathematics, and psychology.


Contents

GV/FundamentalTechniques [core]

Minimum core coverage time: 2 hours

Topics:

  • Hierarchy of graphics software
  • Using a graphics API
  • Simple color models (RGB, HSB, CMYK)
  • Homogeneous coordinates
  • Affine transformations (scaling, rotation, translation)
  • Viewing transformation
  • Clipping

Learning objectives:

  1. Distinguish the capabilities of different levels of graphics software and describe the appropriateness of each.
  2. Create images using a standard graphics API.
  3. Use the facilities provided by a standard API to express basic transformations such as scaling, rotation, and translation.
  4. Implement simple procedures that perform transformation and clipping operations on a simple 2-dimensional image.
  5. Discuss the 3-dimensional coordinate system and the changes required to extend 2D transformation operations to handle transformations in 3D

GV/GraphicSystems [core]

Minimum core coverage time: 1 hour

Topics:

  • Raster and vector graphics systems
  • Video display devices
  • Physical and logical input devices
  • Issues facing the developer of graphical systems

Learning objectives:

  1. Describe the appropriateness of graphics architectures for given applications.
  2. Explain the function of various input devices.
  3. Compare and contrast the techniques of raster graphics and vector graphics.
  4. Use current hardware and software for creating and displaying graphics.
  5. Discuss the expanded capabilities of emerging hardware and software for creating and displaying graphics.

GV/GraphicCommunication

Topics:

  • Psychodynamics of color and interactions among colors
  • Modifications of color for vision deficiency
  • Cultural meaning of different colors
  • Use of effective pseudo-color palettes for images for specific audiences
  • Structuring a view for effective understanding
  • Image modifications for effective video and hardcopy
  • 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

Learning objectives:

  1. Explain the value of using colors and pseudo-colors.
  2. Demonstrate the ability to create effective video and hardcopy images.
  3. Identify effective and ineffective examples of communication using graphics.
  4. Create effective examples of graphic communication, making appropriate use of color, legends, text, and/or video.
  5. Create two effective examples that communicate the same content: one designed for hardcopy presentation and the other designed for online presentation.
  6. Discuss the differences in design criteria for hardcopy and online presentations.

GV/GeometricModeling

Topics:

  • Polygonal 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 surfaces
  • Multiresolution modeling
  • Reconstruction

Learning objectives:

  1. Create simple polyhedral models by surface tessellation.
  2. Construct CSG models from simple primitives, such as cubes and quadric surfaces.
  3. Generate a mesh representation from an implicit surface.
  4. Generate a fractal model or terrain using a procedural method.
  5. Generate a mesh from data points acquired with a laser scanner.

GV/BasicRendering

Topics:

  • Line generation algorithms (Bresenham)
  • Font generation: outline vs. bitmap
  • Light-source and material properties
  • Ambient, diffuse, and specular reflections
  • Phong reflection model
  • Rendering of a polygonal surface; flat, Gouraud, and Phong shading
  • Texture mapping, bump texture, environment map
  • Introduction to ray tracing
  • Image synthesis, sampling techniques, and anti-aliasing

Learning objectives:

  1. Explain the operation of the Bresenham algorithm for rendering a line on a pixel-based display.
  2. Explain the concept and applications of each of these techniques.
  3. Demonstrate each of these techniques by creating an image using a standard API.
  4. Describe how a graphic image has been created.

GV/AdvancedRendering

Topics:

  • 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 phenomenon
  • Non-photorealistic rendering

Learning objectives:

  1. Describe several transport equations in detail, noting all comprehensive effects.
  2. Describe efficient algorithms to compute radiosity and explain the tradeoffs of accuracy and algorithmic performance.
  3. Describe the impact of meshing schemes.
  4. Explain image-based rendering techniques, light fields, and associated topics.

GV/AdvancedTechniques

Topics:

  • Color quantization
  • Scan conversion of 2D primitive, forward differencing
  • Tessellation of curved surfaces
  • Hidden surface removal methods
  • Z-buffer and frame buffer, color channels (a channel for opacity)
  • Advanced geometric modeling techniques

Learning objectives:

  1. Describe the techniques identified in this section.
  2. Explain how to recognize the graphics techniques used to create a particular image.
  3. Implement any of the specified graphics techniques using a primitive graphics system at the individual pixel level.
  4. Use common animation software to construct simple organic forms using metaball and skeleton.

GV/ComputerAnimation

Topics:

  • Key-frame animation
  • Camera animation
  • Scripting system
  • Animation of articulated structures: inverse kinematics
  • Motion capture
  • Procedural animation
  • Deformation

Learning objectives:

  1. Explain the spline interpolation method for producing in-between positions and orientations.
  2. Compare and contrast several technologies for motion capture.
  3. Use the particle function in common animation software to generate a simple animation, such as fireworks.
  4. Use free-form deformation techniques to create various deformations.

GV/Visualization

Topics:

  • Basic viewing and interrogation functions for visualization
  • Visualization of vector fields, tensors, and flow data
  • Visualization of scalar field or height field: isosurface by the marching cube method
  • Direct volume data rendering: ray-casting, transfer functions, segmentation, hardware
  • Information visualization: projection and parallel-coordinates methods

Learning objectives:

  1. Describe the basic algorithms behind scalar and vector visualization.
  2. Describe the tradeoffs of the algorithms in terms of accuracy and performance.
  3. Employ suitable theory from signal processing and numerical analysis to explain the effects of visualization operations.
  4. Describe the impact of presentation and user interaction on exploration.

GV/VirtualReality

Topics:

  • Stereoscopic display
  • Force feedback simulation, haptic devices
  • Viewer tracking
  • Collision detection
  • Visibility computation
  • Time-critical rendering, multiple levels of details (LOD)
  • Image-base VR system
  • Distributed VR, collaboration over computer network
  • Interactive modeling
  • User interface issues
  • Applications in medicine, simulation, and training

Learning objectives:

  1. Describe the optical model realized by a computer graphics system to synthesize stereoscopic view.
  2. Describe the principles of different viewer tracking technologies.
  3. Explain the principles of efficient collision detection algorithms for convex polyhedra.
  4. Describe the differences between geometry- and image-based virtual reality.
  5. Describe the issues of user action synchronization and data consistency in a networked environment.
  6. Determine the basic requirements on interface, hardware, and software configurations of a VR system for a specified application.

GV/ComputerVision

Topics:

  • Image acquisition
  • The digital image and its properties
  • Image preprocessing
  • Segmentation (thresholding, edge- and region-based segmentation)
  • Shape representation and object recognition
  • Motion analysis
  • Case studies (object recognition, object tracking)

Learning objectives:

  1. Explain the image formation process.
  2. Explain the advantages of two and more cameras, stereo vision.
  3. Explain various segmentation approaches, along with their characteristics, differences, strengths, and weaknesses.
  4. Describe object recognition based on contour- and region-based shape representations.
  5. Explain differential motion analysis methods.
  6. Describe the differences in object tracking methods.


GV/ComputationalGeometry [elective]

Topics:

  • Purpose and nature of computational geometry
  • Application areas – convex hull, line intersection issues, Delauney triangulation, polgygon triangulation, Voroni diagrams
  • Combinatorial computational geometry: static problems such as developing efficient algorithms for certain geometric situations; dynamic problems including
  • Numerical computational geometry: gmodelling, computer-aided geometric design; curve and surface modelling including representation of these: Bezier curves, spline curves and surfaces; level set method.

Learning objectives:

  1. Be aware of algorithms for certaoin geometric tasks
  2. Be able to select algorithms appropriate to particular situations


GV/GameEngineProgramming [elective]

Topics:

  • The nature of games engines (as an integrated development environment) and their purpose
  • Hardware support including use of threading; performance issues; input devices
  • Typical components including 3D rendering, and support for real-time graphics and interaction; also physics simulation, collision detaection, sound, artificial intelligence; terrain rendering

Learning objectives:

  1. To be aware of the range of possibilities for games engines, including their potential and their limitations
  2. To use a games engine to construct a simple game
To give feedback on this area of revision, go to here and use your ACM user name and login.

Copyright © 2008, ACM, Inc. and IEEE, Inc.

Personal tools