Subject description
Transition from fully manual computer vision methods to the paradigm of feature point detection and image descriptors in conjunction with learnable classifiers. Visual tracking, motion model concept. Transition to the paradigm of learnable image descriptors and convolutional neural networks.
- Fundamentals of the human visual system and the difference between human vision and the classical computer vision methods.
- Image datasets and their use for the development and evaluation of modern computer vision algorithms.
- Feature point detectors and feature point and region descriptors. SIFT, HOG, MSER, COV, and others. Multiresolution approaches, scale space.
- Visual object detection and tracking, tracking with detection. Tracking within the framework of Bayesian sequential recursive filtering. Tracking with the Kalman filter.
- Convolutional neural networks, learnable methods for computing visual descriptors. Deep neural networks, their application in automation and robotics.
The subject is taught in programs
Objectives and competences
The aims of this course are to cover selected existing and emerging topics in advanced computer vision, and to prepare students for teamwork, as well as independent work in research and development.
Teaching and learning methods
The lectures provide a theoretical background on particular subjects together with practical examples in Matlab and Python.
Practical work is being performed as the part of laboratory exercises, and is accomplished in the form of multiple assignments, acquainting students with computer vision algorithms. Students work in groups, consisting of two or three students, and the results are in the form of Matlab and Python code. After completing each part, students present their results to the assistant.
Homework project addresses the particular problem from the machine vision domain, either robot vision or industrial machine vision applications.
Expected study results
After successful completion of the course, the students should be able to:
- Explain the differences between human visual system and computer vision methods
- Decide, which of the advanced computer vision methods is appropriate for the problem at hand
- Implement modern computer vision algorithms
- Develop complex solutions for computer vision problems, made up of multiple advanced methods
- Judge the performance of computer vision methods on the available data
- Propose solutions to computer vision problems from the field of automation and robotics that require the use of the advanced and complex algorithms, including neural networks and other learnable algorithms.
Basic sources and literature
- D. Forsyth, J. Ponce, Computer vision, a modern approach, 2nd ed., Pearson 2012.
- R. Szeliski, Computer vision, Algorithms and applications, Springer 2011.
- Temeljni članki, objavljeni v znanstvenih revijah (Basic scientific papers, published in scientific journals)