Practical Course: GPU Programming in Computer Vision (6h / 10 ECTS)
SS 2018, TU München
Requirements: Good Knowledge of C or C++, basic mathematics
Number of participants: up to 24
Location: The course will take place in our lab 02.05.014.
Language: The course is held and all materials are provided in English.
Module number: IN2106, IN4102
April 22, 2018
Course dates are announced.
February 21, 2018
1) Registering for this course in tumonline will be enabled today to at 4pm. Register for this course before the deadline is over.
2) There are no free spots left for this course. If you wish to participate anyway, come to the first lecture and you might get in if accepted students do not appear in time.
February 7, 2018
If you are interested in course, please send us an email with your CV which shows that you meet the prerequisites until 13. of February, see pre-meeting slides! Additionally, do not forget to register for our course in the matching system.
If you were not able to come to the pre-meeting today, please send us your CV anyway.
January 18, 2018
IMPORTANT: Registration through the TUM Matching system has to be done between 9.-14. of February 2018. Details on the schedule can be found here.
DO NOT SEND DIRECT EMAILS TO THE TUTORS! Please direct ALL questions regarding this course to email@example.com.
Preliminary meeting and Registration
Preliminary meeting will take place on 7. of February at 2p.m. in room 02.09.023.
Slides for the pre-meeting can be found here
- Lecture (September 17. - 21.): 2–3h lectures each day (attendance mandatory) from 10:00, followed by corresponding programming exercises until 16:00. The exercises must be done in groups of 2–3 students. The groups must be formed on the first day (but you can decide on your team already beforehand, of course). You may leave early once you have finished the present day's exercises.
- Project (September 24. - October 12.): Implementation of a student project in groups of 2–3 (same groups as in the lecture week). You are free to work from home if you like and all team members agree, but keep in mind that you will require CUDA-capable hardware, and should collaborate within your team. You should also prepare your final presentation during this time.
- Presentation and demo (October 15.): Each group will be assigned a time slot on one of the days, to present their results and give a live demo, followed by a Q&A session.
The goal of this course is to provide an introduction to the NVIDIA CUDA framework for massively parallel programming on GPUs.
During the implementation of basic computer vision algorithms students will gradually learn more how to harness the power of GPU computing.
Although we assume good knowledge of C or C++ and basic mathematics, no further prior knowledge about CUDA, or computer vision topics will be required.
During the course lecture students will learn how to program GPUs with CUDA. Afterwards the students will start to implement more sophisticated computer vision algorithms within a student project. The course finishes with a presentation and a live demo of the project results.
- Introduction to Parallel Computing
- Introduction to CUDA
- Implementation of basic computer vision algorithms with CUDA (e.g. convolution, diffusion)
- Student project: Implementation of an advanced computer vision application which uses CUDA acceleration.
Additional material can be downloaded from here.