Volume rendering describes visualization methods for three-dimensional volumes of scalar or vectorial data. This course provides an introduction to the fundamentals of volume data modeling and visualization. It discusses the different stages of the visualization pipeline and presents the main techniques to transform volume data into visual representations. The course covers volume data representation -focused in scalar data-, iso-surface extraction and basic direct volume visualization and rendering algorithms. Among other scientific visualization applications, the course focuses in medical visualization (segmentation, classification, transfer functions, registration,...). Students will learn to leverage new features of modern graphics hardware to build interactive high-quality volume rendering applications.
Weekly hours
Theory
2
Problems
0
Laboratory
1.2
Guided learning
0.4
Autonomous learning
6.6
Objectives
By the end of the course, students should be able to know the main concepts behind visualization and representation of volume models in scientific applications (mainly in medical applications). More specifically they will be able to undestand and program algorithms for:
Related competences:
Subcompetences:
Direct volume visualization algorithms.
Classification and Segmentation of volume data
Multiresolution represention of volume models.
Classification and Segmentation of volume data
Medical applications.
Multiresolution represention of volume models.
Isosurface extraction.
Isosurface extraction.
Direct volume visualization algorithms.
Medical applications.
Contents
Introduction to volume visualizacion
Presentation of basic principles of volume modeling and visualization, the visualization pipeline and some scientific applications.
Volume data representation
Presentation and discussion of discrete volume respresentation and interpolation and filtering techniques.
Iso-surface extraction
Presentation of the main algorithms for extracing iso-surfaces from a scalar volume data-set. Marching-cubes based techniques.
Volume visualization
Presentation of the main algorithms of direct volume rendering, including 3D textures and ray-casting. Transfer fuctions. GPU-based ray-casting. Introduction to vector field visualization.
3D Medical Imaging
Presentation of acquisition techniques (CT, MRI,...), basic segmentation algorithms, fusion of medical data. Applications.
Large Volume Data
Difficulties for rendering and representing current volume datasets in GPUs. Presentation of some proposed solutions: multiresolution representations, wavelets, compression algorithms, thin-client approaches. Visualization in mobile devices.
Activities
ActivityEvaluation act
Lectures
Material will be presented in lectures along the term. You are expected to conduct complementary readings to be presented at a later date or turned in.
Theory
30h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
30h
Implementation of selected algorithms
A selection of relevant algorithms will be assigned to implement in Lab sessions and on your own, in VTK and C++. You may be required to present your solution in class.
Theory
0h
Problems
0h
Laboratory
15h
Guided learning
0h
Autonomous learning
45h
Project
The students will have to complete a programming project involving a GPU-based ray-casting algorithm. This project will be either be presented ans discussed at a later date or turned in for grading.
Theory
0h
Problems
0h
Laboratory
3h
Guided learning
0h
Autonomous learning
20h
Final Exam
At the end of the term, the students will have a final exam, which may be a take-home,
Week:
18
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Teaching methodology
The professor provides theoretical lectures where the most important concepts are introduced; moreover supplement material will be provided.
During the laboratory class, the students will receive the guidelines for the analysis and implementation of their programming assignments and will have time to work in their assignments with the teacher supervision when needed.
Evaluation methodology
The students will be marked for their attendance and participation in class (including the presentation of papers and their discussion), yielding a mark "Class".
Another grade will stem from the student's implementations of selected algorithms (including occassionally their presentation of their solution in a laboratory class), yielding a mark "Lab".
"Project" is the mark for the programming project.
Finally, students will receive a third mark based on their performance in the final exam, yielding "Exam".
The final grade for the course will be computed as:
Final Grade = 0.2 Class + 0.4 Lab + 0.2 Project + 0.2 Exam
A Survey of Volumetric Illumination Techniques for Interactive Volume Rendering -
Daniel Jönsson, Erik Sundén, Anders Ynnerman, Timo Ropinski , Computer Graphics Forum ,
2013.
The Visualization Toolkit : an object-oriented approach to 3D graphics -
Schroeder, Will; Martin, Ken; Lorensen, Bill, Kitware ,
cop. 2002.
ISBN: 978-1930934078 http://cataleg.upc.edu/record=b1244232~S1*cat
The course assumes advanced C++ and GPU progamming skills, and computer graphics.
Completing, for instance, FRRU an AM should provide enough background.