CSE 332 - Introduction to Visualization
General Info:
Instructor: Prof.
Klaus Mueller
Office hours: CS 2428 W 2-3 pm (or send email for
appointment)
Phone: 632-1524
Email:
mueller{remove_this}@cs.sunysb.edu
Grader: TBD
Office hours:
Phone:
Email:
Meeting time and venue:
Psychology A 137, Tu Th 6:50 - 8:10 pm
Summary:
This course discusses the visualization of
scientific, medical, engineering, and business data sets. It
introduces mechanisms to acquire sampled, computed, or synthetic data
and points out methods to transform these symbolic data into the visual.
Topics include the classic visualization process; visual perception;
image processing; computer graphics fundamentals; volume and surface
visualization; methods for visualizing sampled, simulated, and
geometric objects; information visualization, visual analytics, and
visualization systems. Since graphics boards (GPUs), such as those
commonly used in PC computer games, offer great speedups for the
visualization graphics, the technology and usage of these boards for
these purposes is also discussed.
Crosslisted with ISE 332.
ABET course objectives:
- Demonstrate how to transform numerical datasets from science and
medicine into understandable visual representations.
- Understand issues associated with digital image quality (e.g.
sampling artifacts) and algorithms for performing basic image
manipulation operations such as filtering, resampling, and intensity
transformation.
- Investigate methods (including graphical user interfaces) for the
visualization of three-dimensional data sets.
Prerequisites:
CSE 219 (Computer Science III);
AMS 210 or MAT 211 (Linear Algebra)
Knowledge of C/C++ (will offer a
tutorial for Java programmers)
Texts:
Required:
- "Real-Time Volume Rendering" by K. Engel, M.
Hadwiger, J. Kniss, C. Rezk-Salama, D. Weiskopf, A.K. Peters, 2006 (book website)
For additional reference and on
reserve in the Science & Engineering library:
- "Information Visualization: Perception for
Design" 2nd edition, by Colin Ware, Morgan-Kaufman, 2004.
- "Visualization in Medicine" by B. Preim, D.
Bartz, Morgan-Kaufman, 2007.
- "Computer Graphics: Principles and Practice -
Second Edition in C" by J. D. Foley, A. van Dam, S.K. Feiner, J.F.
Hughes, Addison-Wesley, 1995.
- "Visualization Toolkit" by W. Schroeder, K.
Martin, and W. Lorensen, 2nd ed., Prentice Hall, 1998.
- "Digital Image Processing" by R. Gonzales and R.
Wood, Prentice-Hall, 2002.
- "The Visual Display of Quantitative Information"
by E. Tufte, Graphics Press, 1983.
- "Envisioning Information" by E. Tufte, Graphics
Press, 1990.
- "Explanations: Images and Quantities, Evidence
and Narrative" by E. Tufte, Graphics Press, 1997.
Grading:
Lab assignments: 30%
Midterm: 30%
Final: 40%
Lab assignments:
There will be four labs. You will
be using C/C++, FLTK (Fast Light Toolkit, a platform-independent GUI
builder), and OpenGL (a popular graphics API). You will have the choice
of implementing the labs on the CPU (software) or the GPU (accelerated
by graphics hardware). The labs are designed to give you a good
exposure to standard programming practices and techniques in general
graphics as well as in volume visualization:
- In the first lab, you will get acquainted with
FLTK and generate a useful GUI (Graphical User Interface) that embeds
some basic image processing functionalities.
- In the second lab, you will write a basic volume
visualization program, which uses the GUI
- In the third lab, you will extend your
visualization program to perform general volume rendering with lighting
effects.
- In the fourth lab, you will write a program for
the visualization of high-dimensional data, that is, data items with
many attrributes.