MSc: Computer Vision

From IU
Jump to navigation Jump to search

Computer Vision

  • Course name: Computer Vision
  • Code discipline: R-03
  • Subject area:

Short Description

This course covers the following concepts: Computer vision techniques; Classical and deep learning models.

Prerequisites

Prerequisite subjects

Prerequisite topics

Course Topics

Course Sections and Topics
Section Topics within the section
Image Acquisition and Basic Image Processing
  1. Computer vision in action
  2. The Human Vision System
  3. Optical Illusions
  4. Sampling and Quantization
  5. Image Representation
  6. Colour Spaces
Image Filtering and Binary Vision
  1. Image noise
  2. Convolutions and kernels
  3. Smoothing and blurring
  4. Thresholding and histograms
  5. Morphological operations
  6. Gradients and Edge detection
Feature Extractors and Descriptors
  1. Histogram of Gradients (HoG)
  2. Scale-invariant feature transform (SIFT)
  3. Harris corner detector
  4. Template matching
  5. Bag of visual words
  6. Face Detection and Recognition (Viola Johns)
Deep learning models for computer vision
  1. You Only Look Once: Unified, Real-Time Object Detection (YOLO)
  2. Generative Adversarial Networks (GAN)
  3. Fully Convolutional Networks (FCN) for semantic segmentation
  4. Multi Domain Network (MDNet) for object tracking
  5. Generic Object Tracking Using Regression Networks (GOTURN) for object tracking

Intended Learning Outcomes (ILOs)

What is the main purpose of this course?

This course provides an intensive treatment of a cross-section of the key elements of computer vision, with an emphasis on implementing them in modern programming environments, and using them to solve real-world problems. The course will begin with the fundamentals of image processing and image filtering, but will quickly build to cover more advanced topics, including image segmentation, object detection and recognition, face detection, content-based image retrieval, artificial neural networks, convolutional neural networks, generative adversarial networks and much more. A key focus of the course is on providing students with not only theory but also hands-on practice of building their computer vision applications.

ILOs defined at three levels

Level 1: What concepts should a student know/remember/explain?

By the end of the course, the students should be able to ...

  • Robots visual perception strategies
  • Significant exposure to real-world implementations
  • To develop research interest in the theory and application of computer vision

Level 2: What basic practical skills should a student be able to perform?

By the end of the course, the students should be able to ...

  • Suitability of different computer vision models in different scenarios
  • Ability to choose the right model for the given task

Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?

By the end of the course, the students should be able to ...

  • Hands on experience to implement different models to know inside behavior
  • Sufficient exposure to train and deploy model for the given task
  • Fine tune the deployed model in the real-world settings

Grading

Course grading range

Grade Range Description of performance
A. Excellent 90-100 -
B. Good 75-89 -
C. Satisfactory 60-74 -
D. Poor 0-59 -

Course activities and grading breakdown

Activity Type Percentage of the overall course grade
Labs/seminar classes 20
Interim performance assessment 50
Exams 30

Recommendations for students on how to succeed in the course

Resources, literature and reference materials

Open access resources

  • Handouts supplied by the instructor
  • Materials from the interment and research papers shared by instructor

Closed access resources

Software and tools used within the course

Teaching Methodology: Methods, techniques, & activities

Activities and Teaching Methods

Activities within each section
Learning Activities Section 1 Section 2 Section 3 Section 4
Development of individual parts of software product code 1 1 1 1
Homework and group projects 1 1 1 1
Midterm evaluation 1 1 1 1
Testing (written or computer based) 1 1 1 1
Discussions 1 1 1 1

Formative Assessment and Course Activities

Ongoing performance assessment

Section 1

Activity Type Content Is Graded?
Question What are the color spaces and where it’s used? 1
Question What are the primary and secondary colors? 1
Question How image is formed into computers? 1
Question How you will convert the RGB to grayscale images 1
Question Loading and plotting the images in python environment 0
Question Convertion of different color spaces 0
Question How you find the skin in the images based on the color space models 0
Question how to find red eye dot in face using color space models 0

Section 2

Activity Type Content Is Graded?
Question What are the challenges to perform histogram task? 1
Question Apply convolutional filter to calculate the response. 1
Question What kind of parameters are required to apply different image filters? 1
Question How you will compute the gradients of the image and its benefits? 1
Question Implement Otsu Method 0
Question Implement Sobel, Preweitt filters 0
Question Implement Canny edge detector 0
Question Perform analysis over the different filtering on the given images 0

Section 3

Activity Type Content Is Graded?
Question How feature extractor works over the given image? 1
Question What is the difference between the feature extraction and descriptors? 1
Question Explain the examples of descriptors and feature extractors. 1
Question Write down the pros and cons of SIFT, HOG and Harris. 1
Question Implement template matching algorithm 0
Question Implement histogram of gradient using CV2 library 0
Question Implement of SIFT for the given task 0
Question Implement Harris corner detection 0
Question Analysis of different extractors for the given task 0

Section 4

Activity Type Content Is Graded?
Question How classification task is different from detection task? 1
Question Explain the transfer learning mechanism for object detection task. 1
Question How many types of model exist for object tracking in videos. 1
Question Write down the pros and cons of YOLO, FCN and MDNet. 1
Question Implement YOLO using transfer learning mechanism 0
Question Implement GAN for MNIST dataset 0
Question Implement FCN and GOTURN 0
Question Analysis of different models for the given task 0

Final assessment

Section 1

  1. How you can distinguish different color spaces?
  2. Explain and provide the reason for the blind spot creation in human eye.
  3. In what scenarios computer vision is better than human vision?
  4. Write down different robotic application areas where computer vision is applied successfully.

Section 2

  1. Calculate the kernels for the given images
  2. Explain the difference between different filters
  3. What is image noise and how it contributes to make the computer vision task difficult?
  4. Apply different combination of the filters to achieve the required output of the given image.

Section 3

  1. How you distinguish different feature extractors and descriptors?
  2. What are the possible methods to detect the corners?
  3. How corners are useful to help the robotic vision task?
  4. How you will patch the different images to construct the map of the location?

Section 4

  1. What are the loss functions used in YOLO?
  2. What are the learnable parameters of FCN for semantic segmentation?
  3. How semantic segmentation is different from instance segmentation?
  4. Write the application areas for object tracking in robotics.

The retake exam

Section 1

Section 2

Section 3

Section 4