How is your camera able to detect whether the person in front of it is smiling or not? How is it possible to create non-real figures, such as Gollum from Lord of the Rings, and insert them into a motion picture? Why are some products so appealing and easy to use, while others are not? The answer to the first question is Computer Vision - that is, to automatically make a computer understand what it sees.
The answer to the second is Computer Graphics - that is, to make a computer automatically visualise a virtual object. The answer to the third question is a deep understanding of user needs and user experience design. Together, these three topics form the core of the programme in Vison, Graphics and Interactive Systems at Aalborg University.
Computer vision is a field which covers processing and analysis of images to give an understanding of what is captured by machines. Computer graphics covers all about displaying and how to represent things thanks to different methods supported by software and hardware.
Finally, the interactive systems part is concerned with how to create and/or improve your experience of using your daily devices, for example the reaction of your TV, when you are browsing channels or how much fun it is to play the latest game on your phone.
These topics cover a large band of technologies and theories which will be a part of our future for sure.
This course provides an introduction to real time computer graphics concepts and techniques. Focus is on programmable functionalities as offered by graphics APIs (Application Programming Interfaces), supplemented by a presentation of the relevant underlying theories. The course also introduces the concepts of Virtual Reality and Augmented Reality, and how computer graphics is used in the context of these application areas.
This course trains you to research, analyse, prototype and conceptualise design considering all system aspects including the social and cultural contexts of use. The course gives a comprehensive knowledge about user involvement in the design process going beyond traditional methods such usability lab testing. The objectives are realised by presenting methods and tools in a case-based framework and through the students active participation in workshops and assignments.
The course gives a comprehensive introduction to machine learning which is a field concerned with learning from examples and has roots in computer science, statistics and pattern recognition. The objective is realised by presenting methods and tools proven valuable and by addressing specific application problems.
Taught by a mixture of lectures, workshops, exercises, mini projects and self-study, you will learn how to manage scientific communication. It will prepare you to read, write and present scientific documents for project purposes.
The objective of this module is two-fold: 1) to provide you with core competencies within the area of real time 3D computer graphics, enabling you to design and implement software systems that use synthetically generated images as output modality, and 2) to train you in working according to a scientific method and to report results in scientific forms such as papers and posters.The PBL part is focused on training you in working according to the PBL concept at Aalborg University.
Cameras capture visual data from the surrounding world. Building systems which can automatically process such data requires computer vision methods. Through this course, you will understand the nature of digital images and video and have an inside into relevant theories and methods within computer vision and an understanding of their applicability.
You will be presented with the basics of robotics: Danavit-Hartemberg coordinate transformations, forward and backward kinematics, etc. Also, there will be lectures about image processing such as colour detection, shape detection, orientation detection, filtering, blob analysis, etc. This course also presents several graph theory concepts as well as fuzzy logic programming. The best part is the project: you will design a system that detects Lego bricks, picks them up with an industrial robot and builds simple stacks of 3 blocks (2013 theme). You can see the results from one group here:
The objective of this course module is to provide you with core competencies within the field of computer vision and hereby enabling you to design and implement software systems for automatic or semi-automatic analysis of an image or sequence of images.
The goal of this course is to provide the foundations necessary to perform advanced work in computer graphics and visualisation on the 3rd and 4th semesters. You will explore state-of-the-art theories and techniques in a formalised manner by analysing a selection of research texts fundamental to computer graphics and visualisation through e.g. critical annotations, paper presentations, reproduction of experiments, etc.
This course covers various topics in scientific computing and behavioural sensor modelling. The course is composed of three parts: 1) computation and programming; 2) mathematical background; and 3) modelling and simulation. The first part of the course includes an introduction to modern state of the art computer and software platforms (CPUs, GPUs, multi-core, etc.), an introduction to the Python programming language (data types, programming style, packages and libraries, unit testing, profiling, etc.), scientific computing aspects (floating point representation, algorithmic complexity, condition numbers etc.), parallel computing methodologies (classification, memory models, load balancing, Amdahl/Gustafson-Barsis' laws, etc.) and Python multiprocessing programming (pools and processes, asynchronous computation, shared data, etc.). The second part of the course is devoted mainly to the mathematical representation of signals of different types (bandwidths of signals, Fourier series descriptions, passband and complex baseband representations, signal transformations, signal power, resampling, etc.). The third and final part of the course includes behavioural simulation techniques (simulation process, behavioural models, computation models, software platform, etc.), system simulation framework (signal types, functional block representation, signal decomposition, etc.), generators (sinusoidal, random, passband etc.), linear functional blocks (filters, amplifiers, etc.) and nonlinear functional blocks (power amplifiers, etc.).
Upon this course, you will be able to map algorithms to sequential and parallel CPU architectures, develop high quality scientific software in Python and perform behavioural-based simulations of various functional blocks. During the course, you will develop good software coding skills including proper structuring, good code development procedures with emphasis on readability, maintenance and performance as well as knowledge of using profiling, debugging etc. for testing and validation of software.
This course will enable you to understand the principles of multi-modal user interaction, including speech-based interaction and computer vision, and to extend the methods for HCI GUI design to analyse, design and synthesise multi-modal user interaction.
The objective of this project module is to equip you with the abilities to design, build and test advanced multi-modal user interfaces, integrating the more traditional information sources with information derived from e.g. computer vision techniques, speech recognition and contextual knowledge, such as location. Information visualisation and presentation must be considered and integrated as well. You get to choose your focus freely within the above-mentioned fields, however, interaction design issues must be considered and elements of user involvement, such as user requirements gathering and end user tests must be treated.
A stochastic process is a mathematical model that can be used to describe random (or unpredictable) mechanisms evolving in time. Many real-world examples of random phenomena can be given: weather phenomena (lightning discharges, rainfall, temperature), stock markets, internet traffic, noise processes, radioactive emission and so on forth. Good models of stochastic processes allow engineers to design and optimise our systems in particular making them able to operate in unpredictable and noisy conditions. On this course, we discuss different random processes and their properties. We also consider methods to estimate parameters of these and even methods to predict what is going to happen in the future.
Thanks to this course, you will have knowledge of the psychophysical methods that can be used to measure human perception, cognition and performance. You will be also able to carry out measurements and scaling of psychophysical responses and use statistical software for analysis of the results.
This course (provided as a free study activity) is intended to give internationals students who have not had courses on this subject previously, the basic concepts of image processing, such as image formation, image representation, image manipulation, feature extraction and image analysis.
This course will help all students who are not familiar with models of project organisation and problem based learning used at AAU to promote learning. Through the courses, individual and group activities, you will practice the key concepts of PBL to use them during your education.
This is the end-up project of the Master. You will work on a subject alone or together with 2-3 fellow students. During the masters thesis work, you will learn to independently initiate and perform collaboration within the discipline and interdisciplinary as well, and to take professional responsibility regarding your choices.