Module also offered within study programmes:
General information:
Code:
UBPJO-094
Name:
Computer vision
Profile of education:
Academic (A)
Lecture language:
English
Semester:
Fall
Responsible teacher:
dr hab. Kwolek Bogdan (bkw@agh.edu.pl)
Academic teachers:
dr hab. Kwolek Bogdan (bkw@agh.edu.pl)
Module summary

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence
M_K001 Understanding the necessity of continuous studying of modern techniques in the field of computer vision and pattern recognition and their applications in IT. Problem-solving and designing in a group, and teamwork. Activity during classes,
Completion of laboratory classes
Skills
M_U002 Designing and implementing computer vision and pattern recognition algorithms. Case study,
Completion of laboratory classes
M_U003 Development of programming skills and experience in OpenCV, Matlab, Microsoft Kincect SDK. Completion of laboratory classes,
Engineering project
Knowledge
M_W001 Knowledge of modern computer vision and pattern recognition techniques in general. Activity during classes,
Completion of laboratory classes
M_W002 The role of computer vision, pattern recognition and object recognition in computer science and artificial intelligence. Activity during classes,
Completion of laboratory classes
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Social competence
M_K001 Understanding the necessity of continuous studying of modern techniques in the field of computer vision and pattern recognition and their applications in IT. Problem-solving and designing in a group, and teamwork. + - - - - - - - - - -
Skills
M_U002 Designing and implementing computer vision and pattern recognition algorithms. - - + - - - - - - - -
M_U003 Development of programming skills and experience in OpenCV, Matlab, Microsoft Kincect SDK. - - + - - - - - - - -
Knowledge
M_W001 Knowledge of modern computer vision and pattern recognition techniques in general. + - - - - - - - - - -
M_W002 The role of computer vision, pattern recognition and object recognition in computer science and artificial intelligence. + - - - - - - - - - -
Module content
Lectures:
  1. Goals of computer vision. Image formation and preprocessing.

    Basic terms in computer vision
    Cameras
    Camera calibration
    Color
    Linear filtering
    RGBD images

  2. 2. Early vision. Image features.

    Convolution
    FFT, DCT
    Scale and Image Pyramids
    Edge detection
    Corner detection
    Blob detection

  3. Early Vision. Multiple images.

    Optical flow
    Stereovision
    Correspondence
    Multiple view geometry

  4. Mid-level vision.

    Image segmentation, k-means, mean-shift
    Image segmentation using clustering
    Graph-cut
    Segmentation using probabilistic methods, EM
    Skin segmentation
    Hough and Radon transform
    SIFT

  5. Object tracking.

    Kalman filter
    Particle filter
    Particle swarm optimization – based object tracking

  6. High-level vision.

    Karhunen-Loeve transformation
    Principal Component Analysis
    Singular Value Decomposition
    Feature selection, filters and wrappers
    Boosting and bagging
    Sparse coding

  7. Classifiers.

    Linear classifiers
    k-NN
    SVM
    Random forests
    Ensemble classifiers
    Image classification

  8. Object detection.

    Face detection
    People detection
    Part-based object detection
    Object detection in RGBD maps

  9. Object recognition.

    Face recognition
    Person identification
    Gait recognition

  10. Human behavior recognition.

    Human-computer-interaction
    Gesture recognition
    Facial expression recognition
    Fall detection

Laboratory classes:

1. Image processing and analysis in Matlab
2. Introduction to OpenCV
3. Feature extraction using OpenCV
4. Object detection using OpenCV
5. Microsoft Kinect SDK
6. Face tracking SDK
7. Humanoid robot Nao
8. Human-robot-interaction
9. Online learning of sensorimotor interactions

Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 100 h
Module ECTS credits 4 ECTS
Participation in lectures 14 h
Participation in laboratory classes 14 h
Completion of a project 15 h
Contact hours 15 h
Realization of independently performed tasks 10 h
Preparation for classes 30 h
Examination or Final test 2 h
Additional information
Method of calculating the final grade:

The final grade is calculated as the weighted sum of the grades from oral/test exam and the lab classes. The studens with excellent (5.0) grade from the lab excercises are exempt from the oral/test exam.

Prerequisites and additional requirements:

Math is kept to a minimum and only a basic knowledge of algebra is required.

Recommended literature and teaching resources:

1. David A. Forsyth, Jean Ponce. Computer Vision. A Modern Approach. 2nd ed. 2011.
2. Richard Szeliski: Computer Vision: Algorithms and Applications, Springer, 2011 (draft available online).
3. Christopher M. Bishop: Pattern Recognition and Machine Learning, Springer, 2006.
4. Frank Y. Shih: Image Processing and Pattern Recognition: Fundamentals and Techniques, Wiley-IEEE Press, 2011.
5. R. O. Duda, P. E. Hart, and D. G. Stork: Pattern Classification, John Wiley & Sons, 2000.
6. Adrian Kaehler, Gary Bradski: Learning OpenCV Computer Vision in C++ with the OpenCV Library, O’Reilly Media, 2013.
7. Jarrett Webb, James Ashley: Beginning Kinect Programming with the Microsoft Kinect SDK, 2012.
8. Humanoid robot Nao, documentation: https://community.aldebaran.com/doc/ .

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

None