Course detail

Data Visualisation

FSI-SVD-A Acad. year: 2024/2025 Summer semester

The data that we encounter in practice can be given in different representations, for example, as 3D coordinates, by a function, or by two-dimensional slices. Data visualization is a subject designed to study algorithms and principles of displaying various kinds of these spatial data.

In the first part, students will get acquainted with approximation and interpolation representations of data using mathematical functions. The second and third parts are devoted to imaging algorithms for solid modeling and solid representation of solids. The last part deals with projection, light adjustment, visibility, shadows, texture and the following global imaging methods (e.g. ray tracing) and volumetric rendering.

For algorithms and programming, the Python language or the Matlab environment will be used.

Language of instruction

English

Number of ECTS credits

4

Entry knowledge

Students are expected to be familiar with basic programming techniques (Python and Matlab)  and with basic 2D and 3D graphic algorithms (colour systems, projection, curves and surfaces construction)

Rules for evaluation and completion of the course

Credit is awarded on the basis of the processing and presentation of a semester project.


Missing lessons can be replaced by processing the topic as a homework.

Aims

Students may encounter different kinds of data in their future careers and the need to visualize it correctly. The course covers most of the possible imaging methods applicable to various types of input data. Graduates of this course will have a comprehensive overview and will also get acquainted with the algorithms of selected solutions.


The student will have an overview of various types of 3D data and the possibilities of their representation.

The student will be able to visualize different types of 3D data.

The student will also get acquainted with setting parameters for visualizations such as light, visibility, shadows or texture mapping.

The study programmes with the given course

Programme N-MAI-A: Mathematical Engineering, Master's, compulsory

Type of course unit

 

Lecture

13 hours, optionally

Syllabus

The lectures are divided into four thematic blocks related to data visualization.


1. Curves and surfaces in 2D, 3D (B-spline, NURBS, implicit surfaces, subdivision surface)


2. Solid modelling (triangular and boundary representation)


3. Volume representation of solids (voxel, digital topology, isosurface)


4. Data rendering


- basic features of projection, light, visibility, shadows, textures


- global imaging methods – ray tracing


- volumetric rendering

Computer-assisted exercise

26 hours, compulsory

Syllabus

The exercises follow the lectures and serve to understand algorithms suitable for various kinds of spatial data representation. Furthermore, selected algorithms are implemented in Python or in the Matlab environment. Each area is devoted to 2-3 weeks of teaching.


1. Curves and areas in 2D, 3D


- Bézier curves and surfaces (algorithm de Casteljau), B-spline, NURBS (algorithm de Boor)


- functions given implicitly and their visualization


- subdivision surfaces


2. Solid modelling (triangular and boundary representation)


3. Solid representation of solids


4. Displaying spatial data


- basic features of projection, light, visibility, shadows, textures


- global imaging methods – ray tracing


- visualization of volume data – volumetric rendering (folding images into the resulting 3D model)


Preparation and consultation of semester work


Participation in the exercises is mandatory.