Module ICP-3038:
Computer Vision (20cr)

Module Facts

Run by Computer Science

20 Credits or 10 ECTS Credits

Semester 1 & 2

Organiser: Dr Franck Vidal

Overall aims and purpose

  1. To describe the concepts of image processing and computer vision.

  2. Enable students to process images and implement simple digital image processing and computer vision systems.

Course content

• Image formation, image representation, fundamentals of human luminance and color vision, segmentation, re-sampling. Solving problems using OpenCV library.

• Point operations, convolution, linear filters, morphological operators, image histograms, and histogram equalization, 2D image transformations, image pyramids.

• Edge detectors, Hough transform, segmentation, feature detectors, feature descriptors, feature matching.

• Digital camera, display devices. colour calibration, gamma correction, limitations of human visual perception.

• Person tracking, trajectory, surveillance, security, controlling processes (e.g., robots), navigation, Comp-Human interaction (e.g., gestures), automatic inspection. Ethical considerations incl. Data collection/management, informed consent, privacy, surveillance.

Learning outcomes mapped to assessment criteria

  threshold

40%

good

60%

excellent

70%

Effectively use image representations to solve computer vision problems

Student can implement simple transforms between image representations and choose the best representation for a given problem. As “threshold” but for advanced image representations. As “good” but excellent execution and with an evidence of very good understanding.

Apply image processing filters and operators to achieve given goals of an imaging system.

Student can design and implement a simple image processing system. As “threshold” but for complex image processing systems. As “good” but excellent execution and with an evidence of very good understanding.

Use computer vision techniques to implement feature detection and tracking.

Student can design and implement a simple feature detection system. As “threshold” but for complex feature processing systems. As “good” but excellent execution and with an evidence of very good understanding.

Make informed decisions on the selection of imaging and display technologies for a task at hand.

Student can describe the differences between variety of imaging and display devices. Student can make good design decisions based on that knowledge. As “good” but excellent execution and with an evidence of very good understanding.

Give examples of computer vision applications, associate them with CV algorithms.

Excellent understanding of the areas and implications of their use. Student understands a range of different application areas. Good knowledge of range of areas.

Programming skills for image processing

Student can demonstrates some understanding of C++ programming and some idea of testing a class. Some attempt has been made over creating the class. The code is not well commented and coding standards are not used appropriately. The report discusses some of the issues, and provides a basic critique of the work submitted. Student provided a good implementation that demonstrates a suitable understanding of C++ programming. The code works effectively and the test checks the validity of most functionalities. Coding standards are relatively well applied and there are some comments. Some limitations may exist in the work, however a good attempt made, and although there may be some limitations with the program. A comprehensive report (with an excellent and well critiqued section) is included. Student provided a good implementation that demonstrates a good understanding of C++ programming. The code works effectively and the test program is effective to check the validity of every functionality. The code is almost perfectly written using coding standards. The code is well commented. The report is comprehensive and makes a good critical analysis of the work. Overall a very good solution to this assignment. A well-structured report is provided (including a good critical analysis of the work provided).

Assessment Methods

Type Name Description Weight
Exam 50
Assignment 1 10
Assignment 2 15
Assignment 3 10
Assignment 4 15

Teaching and Learning Strategy

Hours
Lecture

36 hours over 24 weeks (sem 1 and 2) Including tutorials taught in lecture slots

48
Private study 100
Laboratory

58 hours hours over 24 week wekk (Sem 1 and 2) including Laboratory preparation and reports

52

Transferable skills

  • Numeracy - Proficiency in using numbers at appropriate levels of accuracy
  • Computer Literacy - Proficiency in using a varied range of computer software
  • Self-Management - Able to work unsupervised in an efficient, punctual and structured manner. To examine the outcomes of tasks and events, and judge levels of quality and importance
  • Exploring - Able to investigate, research and consider alternatives
  • Critical analysis & Problem Solving - Able to deconstruct and analyse problems or complex situations. To find solutions to problems through analyses and exploration of all possibilities using appropriate methods, rescources and creativity.

Subject specific skills

  • Use of such knowledge in modelling and design
  • Problem solving strategies
  • Deploy theory in design, implementation and evaluation of systems
  • Evaluate systems in terms of quality and trade-offs
  • System Design
  • Knowledge and understanding of mathematical principles
  • Knowledge and understanding of computational modelling

Resources

Pre- and Co-requisite Modules

Courses including this module

Compulsory in courses: