Computer vision techniques build the basis for an automatic understanding and interpretation of digital images that today can be recorded with a multitude of different imaging devices (e.g. mobile phones, webcams, 3D depth-images, MRI, Ultrasound... ).
The content of the course ranges from the classical feature extraction and classification approach of vision to the more modern machine / deep learning based way of making sense of images and video. The course also contains a short summary of the programming skills and mathematical background needed as well as a recap of basic image processing & analysis methods in order to make sure that everybody is on the same page.
Topics covered are the human eye and the image formation process, filtering in the spatial and frequency domain, segmentation and mathematical morphology, Hierarchical Structures and Scale space, Principal Components Analysis (PCA), feature extraction (e.g. Harris, SIFT) and matching (e.g. RANSAC), unsupervised and supervised classification & recognition as well as various machine learning methods, stereo vision and essential & fundamental matrixes, optical flow, tracking (Kalman/Particle) and last but not least deep learning for vision, i.e. fully connected feedforward NNs (Shallow ANNs, forward pass, matrix-based notation and activation functions etc.), learning (cost functions, gradient descent and backpropagation etc.), generalization (overfitting, regularization, initialization, hyper-parameters, vanishing gradients / unstable gradients and deep NNs etc.), CNNs and Image Classification (different layers, especially the conv layer, learning features and sharing parameters, AlexNet and later versions etc.), object detection and semantic segmentation (R-CNN, Fast R-CNN, Faster R-CNN, R-FCN, YOLO / YOLO v2, SSD and Mask R-CNN etc.).
Examples will be taken from key application domains like medicine, autonomy (drones, cars and ships) & robotics, industrial inspection etc.
The course provides an overview and understanding of several fundamental techniques in Computer Vision. Advanced knowledge in this field is becoming increasingly more and more important. This is in particular true in view of the ever increasing availability of cameras and other imaging devices in nearly all areas of our society. The course helps to build the skills to design and construct advanced computer vision modules that function within a system to achieve the vision system's goals. Application fields include industrial areas, autonomy (drones, cars and ships), robotics and medical image analysis. The learned subjects can be the basis of employment in industry or the public sector, or could be followed for doctoral research in Norway or overseas.