Checking date: 27/04/2023


Course: 2023/2024

Computer Vision
(19112)
Bachelor in Robotics Engineering (Plan: 478 - Estudio: 381)


Coordinating teacher: AL-KAFF , ABDULLA HUSSEIN ABDULRAHMAN

Department assigned to the subject: Systems Engineering and Automation Department

Type: Compulsory
ECTS Credits: 6.0 ECTS

Course:
Semester:




Objectives
a. Knowledge and Understanding a.1. Have an integral view of image processing, from acquisition to extracting the data of interest. a.2. Apply different digital filters a.3. Apply Machine Learning and Deep Learning methods for pattern recognition, object detection and more AI problems b. Intellectual Skills b.1. Work with and process the images using classical algorithms b.2. Use neural networks in real applications and compare them with the classical methods. b.3. Integrate different systems of perception and control processes both from the point of view of hardware and software. c. Professional and Practical Skills c.1. Use programming skills and simulation of perception systems and control at various levels (high-intermediate-low): Python, OpenCV, ROS, etc. c.2. Working with several visual sensors, and applying real-time processing d. General and Transferrable Skills d.1. Apply the acquired knowledge and ability to problem-solving in new or unknown environments within broad (or multidisciplinary) contexts related to their field of study d.2. Integrate knowledge and deal with the complexity of formulating judgments from information that is incomplete or limited including reflections on the social and ethical responsibilities related to the application of their knowledge and judgments d.3. To communicate their conclusions, and knowledge to specialized and non-specialized people in a clear and unambiguous way
Skills and learning outcomes
Description of contents: programme
1- Introductory Concepts: Introduction to Image, Projective geometry, Images as functions, Image processing, Color Space, 3D Vision 2- Image Histograms & Point Operations: Image Histograms, Image Brightness, Point Operations, Dynamic Range, Inverting Images, Thresholding, and Histogram Equalization 3- Image Filtering: Types of image transformations. Point image processing., Linear shift-invariant image filtering. Convolution and Correlation. Image gradients. 4- Image Pyramids and Frequency Domain: Image downsampling. Aliasing. Gaussian image pyramid. Laplacian image pyramid. Fourier series. Frequency domain. Fourier transform. Frequency-domain filtering. Revisiting sampling. 5- Hough Transform: Finding boundaries. Line fitting. Line parameterizations. Hough transform. Hough circles. Some applications. 6- Corner Detection: Why detect corners? Visualizing quadratics., Harris corner detector., Multi-scale detection., Multi-scale blob detection. 7- Feature Detection and Description: Why do we need feature descriptors? Designing feature descriptors. MOPS descriptor. GIST descriptor. Histogram of Textons descriptor. HOG descriptor. SIFT. 8- 2D transformation: 2D transformations. Projective geometry. Transformations in projective geometry. Classification of 2D transformations. Determining unknown 2D transformations. Determining unknown image warps. 9- Image Homographies: Motivation: panoramas. Back to warping: image homographies. Computing with homographies. The direct linear transform (DLT). Random Sample Consensus (RANSAC). 10- Image Classification: Introduction to learning-based vision. Image classification. Bag-of-words. K-means clustering. Classification. K nearest neighbors. Naïve Bayes. Support vector machine. 11- Neural Networks: Perceptron. Neural networks. Training perceptrons. Gradient descent. Backpropagation. Stochastic gradient descent. 12- Convolutional Neural Networks: Architecture of the Convolutional Networks, Convolutional Layers, Pooling Layers, Fully Connected Layers, CNN implementation with TensorFlow, CNN with Own Name, Tools, Practical applications. 13- Object Detection and Classification: Object Detection and Classification, R-CNN Models, YOLO, Detectron, and SegmenTron
Learning activities and methodology
The course is divided into various activities as follows: 1. Theory: lectures, student presentations, individual tutorials and personal work of the student; oriented to the acquisition of theoretical knowledge 2. Practices: Sessions in computer rooms, individual tutorials and personal work of the student; oriented to the acquisition of practical skills.
Assessment System
  • % end-of-term-examination 30
  • % of continuous assessment (assigments, laboratory, practicals...) 70

Basic Bibliography
  • Géron, A. Hands-on machine learning with scikit-learn, keras, and tensorflow: Concepts, tools, and techniques to build intelligent systems. O¿Reilly Media. 2019
  • Szeliski, R. Computer vision: Algorithms and applications. Springer International Publishing. 2022
Additional Bibliography
  • Gonzalez, R., & Woods, R. Digital image processing. Prentice Hall. Pearson Education. 2002
  • Svoboda, T., Kybic, J., & Hlavac, V. Image processing, analysis, and machine vision: A matlab companion. Thomson Learning. 2008

The course syllabus may change due academic events or other reasons.