Logo UAB
2022/2023

Fundamentals of Computer Vision

Code: 106581 ECTS Credits: 6
Degree Type Year Semester
2504392 Artificial Intelligence OB 2 1

Contact

Name:
Jorge Bernal del Nozal
Email:
jorge.bernal@uab.cat

Use of Languages

Principal working language:
english (eng)
Some groups entirely in English:
Yes
Some groups entirely in Catalan:
No
Some groups entirely in Spanish:
No

Prerequisites

There are no prerequisites, this subject is self-contained, although it is recommended to have passed the first-year programming subjects.

Objectives and Contextualisation

The main objective of the subject is for the student to know the basic aspects of computer vision and image processing. More specifically, the objectives can be summarized as:
Knowledge:
• Know and understand the process of image acquisition
• Understand the phenomenon of human visual perception
• Understand the phases in which the solution to an image analysis problem is divided
• Know how to identify the advantages and disadvantages of computer vision algorithms that are explained in the subject
• Solve real problems using computer vision techniques
• Know the limitations of real problems in order to decide which computer vision technique is more appropriate
• Know how to choose the most appropriate image processing algorithm to perform a given task.

Skills:
• Know how to recognize in which situations applying computer vision algorithms may be appropriate to solve a problem.
• Know how to analyze the problem to be solved and design the optimal solution applying the techniques learned.
• Write technical documents related to the analysis and solution of a given problem
• Programming the basic algorithms to solve the proposed problems
• Evaluate the results obtained from the implemented solution and search for possible improvements
• Know how to reason and defend each of the decisions made when reaching a solution

Competencies and learning outcomes:
• That students know how to apply their knowledge to their work or vocation in a professional manner and possess the skills that are usually demonstrated through the elaboration and defense of arguments and the resolution of problems within their area of study.
• Introduce changes in the methods and processes of the field of knowledge to provide innovative responses to the needs and demands of society.
• Analyze a situation and identify its points for improvement.
• Propose newmethods or substantiated alternative solutions.
• Propose new ways to measure the success or failure of the implementation of proposals or innovative ideas.

• Develop critical thinking to analyze alternatives and proposals, both their own and those of others, in a well-founded and argued manner.
• Work cooperatively to achieve common goals, assuming their own responsibility and respecting the role of the different members of the team.
• Analyze and solve problems effectively, generating innovative and creative proposals to achieve objectives.
• Conceptualize and model alternatives for complex solutions to artificial intelligence application problems in different fields, and plan and manage projects for the design and development of prototypes that demonstrate the validity of the proposed system.
• Identify the best representations to define image descriptors
• Use image processing techniques to plan, develop, evaluate, and implement a solution to a particular problem.
• Plan, develop, evaluate and implement a solution to a particular visual recognition problem.
• Conceive, design, analyze and implement intelligent systems capable of using vision as a mechanism to interact with the environment.
• Identify basic concepts and properly apply image processing techniques
• Select the best image processing techniques for image preparation

Competences

  • Conceive, design, analyse and implement intelligent systems capable of using vision as a mechanism to interact with the environment.
  • Conceptualize and model alternatives of complex solutions to problems of application of artificial intelligence in different fields and create prototypes that demonstrate the validity of the proposed system.
  • Develop critical thinking to analyse alternatives and proposals, both one's own and those of others, in a well-founded and argued manner.
  • Introduce changes to methods and processes in the field of knowledge in order to provide innovative responses to society's needs and demands.
  • Work cooperatively to achieve common objectives, assuming own responsibility and respecting the role of the different members of the team.

Learning Outcomes

  1. Analyse a situation and identify areas for improvement.
  2. Develop critical thinking to analyse alternatives and proposals, both one's own and those of others, in a well-founded and argued manner.
  3. Identify the basic concepts of image optimisation and appropriately apply its techniques.
  4. Identify the basic concepts of image processing and appropriately apply its techniques.
  5. Identify the best representations for defining image descriptors.
  6. Plan, develop, evaluate and implement a solution to a particular visual recognition problem.
  7. Select the best image processing techniques for image preparation.
  8. Select the best optimisation techniques for extracting relevant information from images.
  9. Use computer learning techniques to plan, develop, evaluate, and implement a solution to a particular problem.
  10. Use image processing techniques to plan, develop, evaluate, and implement a solution to a particular problem.
  11. Work cooperatively to achieve common objectives, assuming own responsibility and respecting the role of the different members of the team.

Content

1. Introduction to computer vision

  1. Marr's model
  2. Human Visual System

2. Digital imaging

  1. Concepts of light, scene, colors
  2. Optics and cameras

3. Image processing

  1. Sampling
  2. Quantification
  3. Image types

4. Filtering

  1. Linear Filtering (Linear Systems, Fourier Transform)
  2. Nonlinear Filtering (Mathematical Morphology)

5. Feature Extraction

  1. Edges
  2. Corners
  3. Blobs

6. Feature Descriptors

  1. Color
  2. Texture
  3. Shape

7. Introduction to basic computer vision problems

  1. Detection
  2. Segmentation
  3. Classification
  4. Complete problem using Bag of Words

Methodology

The different activities of the subject are organized as follows. Each week students will have 4 hours of class where brief theoretical explanations will be combined with small practical cases. There will be no specific classes dedicated exclusively to theory dissertations or problem solving, the intention is that certain limited concepts are worked from beginning to end in each of the classes.
Once a main block of topics is finished, a short-term project (one or two weeks) will be carried out that will serve to consolidate the contents and prepare the individual evaluation activities.

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.

Activities

Title Hours ECTS Learning Outcomes
Type: Directed      
Theory and Seminars 26 1.04 1, 2, 4, 3, 5, 7, 8, 10, 9
Type: Supervised      
Problem solving in the classroom 10 0.4 1, 4, 3, 5, 6, 7, 8, 10, 9
Project solving 8 0.32 1, 2, 4, 3, 5, 6, 7, 8, 11, 10, 9
Type: Autonomous      
Homework 20 0.8 1, 4, 3, 5, 6, 7, 8, 10, 9
Practium in group 21 0.84 1, 2, 4, 3, 5, 6, 7, 8, 11, 10, 9
Study of the subject 53 2.12 1, 4, 3, 5, 6, 7, 8, 10, 9

Assessment

A continuous evaluation procedure will be followed, where each activity carried out throughout the course contributes to the final grade.

The final grade is calculated as follows:
										
											• Final mark: 0.4*Theory_mark + 0.4*Projects_mark + 0.1*Problems_mark + 0.1*Monitoring_mark
										
											As for the theory mark, it is calculated as follows:
										
											• Note_theory: 0.5*Note_Partial1 + 0.5*Note_Partial2
										
											• Approving (grade greater than 5) each one of the partial exams means that the student will not be examined of this part of the subject anymore
										
											• It is necessary to get a 5 as the final grade for theory to pass the subject.

Regarding the project grade, it is calculated as follows:
• Note_projects: 0.4*Note_Project1 + 0.6*Note_Project2
• The grade for each project will take into account both the quality of the results obtained and the ability of the students to present and defend them in public.
• It is necessary to get a 5 in each of the projects to pass the subject.
As for the mark of problems, it is calculated as an average of the marks of the different short problems delivered throughout the course. Finally, the follow-up note will be based on small activities that will be done during the classes to check the degree of assimilation of knowledge (Kahoot! or similar).

All activities with the minimum necessary to pass the subject (theory and project) will have a second opportunity to recover the grade.
Without prejudice to other disciplinary measures deemed appropriate, and in accordance with current academic regulations, irregularities committed by a student that may lead to a variation of the grade will be graded with a zero (0). The evaluation activities qualified in this way and by this procedure will not be recoverable. If it is necessary to pass any of these evaluation activities to pass the subject, this subject will be suspended directly, without the opportunity to recover it in the same course. These irregularities include, among others:

- the total or partial copy of a practice, report, or any other evaluation activity;
- allow copying;
- present a group work not entirely done by the members of the group;
- present as their own materials prepared by a third party, even if they are translations or adaptations, and in general works with non-original and exclusive elements of the student;
- have communication devices (such as mobile phones, smart watches, etc.) accessible during the individual theoretical-practical evaluation tests (exams).
The numerical grade of the file will be the lower value between 3.0 and the weighted average of the grades in case the student has committed irregularities in an evaluation act (and therefore it will not be possible to pass for compensation).
In short: copying, allowing copying or plagiarism in any of the assessment activities is equivalent to a FAIL with a grade of less than 3.5.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Final Exam See evaluation part of the memory 3 0.12 1, 2, 4, 3, 5, 6, 7, 8, 11, 10, 9
First Partial Exam See evaluation part of the memory 2.5 0.1 4, 3, 7, 10, 9
Practicum evaluation See evaluation part of the document 4 0.16 1, 2, 4, 3, 5, 6, 7, 8, 11, 10, 9
Second Partial Exam See evaluation part of the memory 2.5 0.1 1, 3, 5, 6, 8, 9

Bibliography

  • Simon J.D. Prince, Computer Vision: Models, Learning, and Inference, Cambridge University Press, 2012.(http://www.computervisionmodels.com/)
  • David A. Forsyth and Jean Ponce, Computer Vision: A Modern Approach (2nd Edition), Prentice Hall 2011.
  • Rafael C. Gonzalez and Richard E. Woods, Digital Image Processing (3rd Edition), Prentice Hall 2007.
  • Richard Szeliski, Computer Vision: Algorithms and Applications, Springer (Texts in computer Science) 2011. (http://szeliski.org/Book/)
  • Ian Goodfellow and Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press, 2016. (http://www.deeplearningbook.org)
  • Aurélien Géron, Hands-On Machine Learning with Scikit-Learn & TensorFlow, O'Reilly, 2017.

Online courses:

Software

The following software will be used in the course:
• MatLab
•Python
All communication with students will be done through the Virtual Campus of the UAB