Skip to page content

Courses

  • Introduction Ot Computer Vision (10224)
  • Course summary:

    Abstract:

    Computer vision, a key branch of artificial intelligence, is among the most rapidly advancing areas in engineering. It focuses on enabling automated interpretation and understanding of visual data, images and videos, which constitute approximately 80% of global internet traffic. Common applications span a wide range, including image-based text recognition, identification of objects, people, locations, and activities, medical image analysis for disease detection, 3D reconstruction from 2D visuals, image captioning, and the generation of visual content from textual or visual prompts. These technologies enhance human capabilities in areas such as driver assistance, accident prevention, autonomous navigation, automated media classification, and improved human-computer interaction.

     

    This course offers a foundational introduction to the field of computer vision and is also designed as a basis for the advanced course “Neural Networks for Computer Vision Applications”. It can serve independently or complement introductory courses in image processing, computer graphics, deep neural networks or machine learning. The course is well-suited for students in software engineering and data sciences programs. Instruction emphasizes current technologies at the forefront of industry and research.

     

    Topics include:

    • Introduction and applications of computer vision

    • Image generation and representation

    • Spatial and frequency domain image processing including convolution and correlation

    • Data augmentation and dataset enhancement techniques

    • Feature detection and introduction to image classification

    • Introduction to convolutional neural networks

    • Applications of CNNs for classification, detection, segmentation

    • Training, visualization, and interpretation of computer vision models

    Includes a weekly 2-hour lecture and a 2-hour weekly lab/tutorial.

     

    Lab Format

    Students will practice hands-on computer vision tasks, explore scientific literature, address practical considerations, and optionally engage in competitions.

    Deep learning and computer vision are rapidly evolving; technologies five years old may already be outdated.

    Self-study is essential and labs are designed to promote this, including independent work and flipped-classroom methods involving tools such as OpenCV, NumPy, PyTorch, and others.

    These labs involve learning and practicing various neural network architectures and use cases, primarily classification, with introductory exposure to tasks such as object detection and image segmentation. While PyTorch will serve as the primary development environment, additional platforms such as TensorFlow and Keras will also be referenced.

    The final course assignment, the mini project, will involve the completion of an advanced task that builds on the tools and techniques learned throughout the course. This may take the form of a technical implementation, a focused literature review in the field, or participation in a relevant competition. The specific project will be selected by the course staff and introduced to students during the second half of the semester. Project presentations will take place during the final one or two weeks of the term, though timing and format may be adjusted by the teaching team depending on the number of participants and the nature of the projects.
  • Electrical Engineering B (20123)
  • Course summary:

    Abstract:

    Single-phase networks. Symmetrical three-phase systems. Magnetic circuits. Coupled circuits. Ideal and practical transformers. Introduction to electric machines
  • Computer Vision (20217)
  • Multimedia Video Processing (20324)
  • Advanced Laboratory in Image Processing (20327)