Virtual and Augmented Reality

You are here

Credits
6
Types
Specialization compulsory (Computer Graphics and Virtual Reality)
Requirements
This subject has not requirements

Department
CS
This course presents the algorithms and techniques required to develop and deploy virtual reality and augmented reality applications. The course will cover VR and AR hardware, stereoscopic vision, VR software development, 3D user interfaces and presence.

Teachers

Person in charge

  • Nuria Pelechano Gomez ( )

Others

  • Carlos Andujar Gran ( )
  • Marta Fairen Gonzalez ( )

Weekly hours

Theory
3
Problems
0
Laboratory
1
Guided learning
0.15
Autonomous learning
0.5

Competences

Technical Competences of each Specialization

Computer graphics and virtual reality

  • CEE1.2 - Capability to understand and know how to apply current and future technologies for the evaluation, implementation and operation of virtual and / or increased reality environments, and 3D user interfaces based on devices for natural interaction.

Generic Technical Competences

Generic

  • CG1 - Capability to apply the scientific method to study and analyse of phenomena and systems in any area of Computer Science, and in the conception, design and implementation of innovative and original solutions.

Transversal Competences

Reasoning

  • CTR6 - Capacity for critical, logical and mathematical reasoning. Capability to solve problems in their area of study. Capacity for abstraction: the capability to create and use models that reflect real situations. Capability to design and implement simple experiments, and analyze and interpret their results. Capacity for analysis, synthesis and evaluation.

Objectives

  1. Understand the elements, architecture, input and output devices of virtual and augmented reality systems.
    Related competences: CEE1.2,
  2. Be able to develop and evaluate 3D interactive applications involving stereoscopic output, virtual reality hardware and 3D user interfaces.
    Related competences: CEE1.2, CTR6, CG1,

Contents

  1. VR systems
    VR as a discipline. Basic features of VR systems. Architecture of VR systems.
  2. VR hardware
    VR input hardware: tracking systems, motion capture systems, data gloves. VR output hardware: visual displays.
  3. Stereoscopic Vision
    Fundamentals of the human visual system. Depth cues. Stereopsis. Retinal disparity and parallax. Synthesis of stereo pairs. Pipeline for stereo images.
  4. Haptic rendering
    Haptic sense. Haptic devices. Algorithms for haptic rendering
  5. VR software development
    Challenges in VR software development. Windowing, viewing, input/output and networking issues. Master/slave and Client/server architectures. Cluster rendering. VR Juggler and XVR.
  6. AR software development
    AR software. Camera parameters and camera calibration. Marker-based augmented reality. Pattern recognition. AR Toolkit
  7. 3D user interfaces
    Why 3D user interfaces. Major user tasks in VE. Interaction techniques for selection, manipulation and navigation. 3DUI evaluation.
  8. Presence
    Presence: concept, definition, measurement and applications.

Activities

Project XVR

Development of a programing project using XVR
Theory
2
Problems
0
Laboratory
4
Guided learning
0
Autonomous learning
4
Objectives: 2
Contents:

Project sterescopy

Development of a project with sterescopy
Theory
2
Problems
0
Laboratory
4
Guided learning
0
Autonomous learning
4
Objectives: 1 2
Contents:

Project ARToolkit

Development of a project for Augmented Reality applications using ARToolkit
Theory
2
Problems
0
Laboratory
4
Guided learning
0
Autonomous learning
4
Objectives: 1
Contents:

Teaching methodology

The course is based on weekly theory classes explaining the course concepts, techniques and algorithms.

The students will have to complete weekly assignments. The assigments require the student to read and analyse a few papers about the course topics and to answer questions or solve problems on the subject.

The students will have to complete a programming project involving the development of a moderate-complexity VR or AR application.

The course assumes advanced knowledge of the C++ language and OpenGL and GLSL APIs.

Evaluation methodology

The course assessment is based on three types of activities:

- 3 Programming project ( P1, P2, P3)
- Midterm exam ( MT )
- Final exam ( F )
- Presentation ( Pr )

Grade = 0.15*P1+ 0.15*P2 + 0.15*P3 + 0.10*Pr + max(0.20*MT+0.25*F, 0.45*F)

Bibliografy

Basic:

Web links

Previous capacities

The course assumes advanced C++ programming skills, as well as computer graphics knowledge.