Using Spline Normals to Render Marching Tetrahedra
Autumn 2012
Master Semester Project
Project: 00241
Volumetric data are difficult to apprehend. If some say that a 2-D image is worth thousand words, the sheer amount of information stored in a 3-D volume is simply even much larger. While it is easy to display slices of the volume, the human mind is clumsy when it comes to understand how data behave across slices. Therefore, simplifications of the volumetric data are welcome and help one to get a clearer picture of what is going on. In particular, reducing the 3-D data to an isosurface is often sufficient to capture their main structural content, because the isosurface can then be rendered as a familiar 2-D image.
There are many ways to build an isosurface. In this project, the student will implement a procedure called "marching tetrahedra" which, contrarily to the popular algorithm known as "marching cubes", is topologically correct while being also simplerthe downside is as larger count of polygons. The innovative part of the project will be the data-driven specification of normals at the polygon vertices. To do so, a spline-based continuously defined model will be fitted to the data, and the normals will be determined in accordance with the model. Since these normals are used by the renderer to finesse the relationship between shading and illumination, we expect that accurate normals will result in a better rendering experience.
This programming project will be conducted in Java and Java3D for ImageJ. A software and hardware framework is already available for stereoscopic display of the results. A prerequisite is following (or having followed) the course on image processing taught by M. Unser.
There are many ways to build an isosurface. In this project, the student will implement a procedure called "marching tetrahedra" which, contrarily to the popular algorithm known as "marching cubes", is topologically correct while being also simplerthe downside is as larger count of polygons. The innovative part of the project will be the data-driven specification of normals at the polygon vertices. To do so, a spline-based continuously defined model will be fitted to the data, and the normals will be determined in accordance with the model. Since these normals are used by the renderer to finesse the relationship between shading and illumination, we expect that accurate normals will result in a better rendering experience.
This programming project will be conducted in Java and Java3D for ImageJ. A software and hardware framework is already available for stereoscopic display of the results. A prerequisite is following (or having followed) the course on image processing taught by M. Unser.
- Supervisors
- Philippe Thévenaz, philippe.thevenaz@epfl.ch, 021 693 51 61, BM 4.137
- Michael Unser, michael.unser@epfl.ch, 021 693 51 75, BM 4.136