Curriculum CVDL Master Program Updated
Curriculum CVDL Master Program Updated
Program
CVDL Master
Detailed Curriculum
Index
Course 1 - MOCV
Mastering OpenCV with Python
|
Course 2 - CVIP
Fundamentals of Computer Vision & Image Processing
|
Course 3 - DLPT
Deep Learning with PyTorch
|
Course 4 - DLTK
Deep Learning with TensorFlow & Keras
|
Course 5 - DLAP
Computer Vision and Deep Learning Applications
|
Course 6 - GENAI
Mastering Generative AI for Art
2 of 30 CV Master Program
Course 1 - MOCV
3 of 30 CV Master Program
5. Contour and Shape Analysis
5.1. Contour and Shape Analysis
5.1.1. Finding and Drawing Contours
5.2. Applications
5.2.1. Intruder Detection
4 of 30 CV Master Program
10. Image Restoration Techniques
10.1. Image Restoration using Filtering and Inpainting
10.1.1. Noise Reduction with Median and Bilateral Filtering
10.1.2. Fix Images using Inpainting
10.2. Applications
10.2.1. Image Restoration App
11. Image Registration Techniques
11.1. Geometric Transformation and Image Features
11.1.1. Color Photography and Image Alignment
11.1.2. Affine Transformations
11.1.3. Homography/Perspective Transform
11.1.4. Image Features
11.2. Image Registration using Homography and Feature Matching
11.2.1. Image Alignment Demo
11.3. Applications
11.3.1. Virtual Billboard
11.3.2. Creating Panoramas
12. ArUco Markers for Augmented Reality
12.1. Introduction to ArUco Markers
12.1.1. ArUco Markers Overview
12.2. Application
12.2.1. Augmented Reality using ArUco Markers
13. Deep Learning with OpenCV
13.1. OpenCV DNN Module
13.1.1. Introduction to Deep Learning with OpenCV
13.1.2. Image Classification using OpenCV DNN Module
13.2. Application
13.2.1. Build a Web App for Classifying Images
14. Face and Landmark Detection
14.1. Face Detection in OpenCV
14.1.1. Face Detection using OpenCV DNN Module
14.2. Application
14.2.1. Face Blurring for Privacy Preservation
14.3. Detecting Facial Landmarks
14.3.1. Facial Landmarks Detection using OpenCV
14.3.2. Application: Blink Detection
15. Object Detection
5 of 30 CV Master Program
15.1. Object Detection in OpenCV
15.1.1. Object Detection using SSD MobileNet
15.1.2. Object Detection using YOLOv4
15.1.3. Object Detection using YOLOv5
15.2. Application
6 of 30 CV Master Program
22. Deploying Web Applications on Cloud Services
22.1. Google Cloud Deployment
22.1.1. GCP Account Setup
22.1.2. Deploy Web App using GCP
22.2. Amazon Web Services
22.2.1. AWS Account Setup
22.2.2. Deploy Web App on AWS
22.3. Microsoft Azure
22.3.1. Azure Account Setup
22.3.2. Deploy Web App on Azure
7 of 30 CV Master Program
Course 2 - CVIP
Module 1
Getting Started with OpenCV
|
Module 2
Video IO and GUI
|
Module 3
Binary Image Processing
|
Module 4
Image Enhancement and Filtering
|
Module 5
Advanced Image Processing and
Computational Photography
|
Module 6
Geometric Transforms and Image Features
|
Module 7
Image Segmentation and Recognition
|
Module 8
Video Analysis and Object Tracking
|
Module 9
Deep Learning with OpenCV
8 of 30 CV Master Program
1 Getting Started with OpenCV
1.1 Introduction to Computer Vision
1.1.1 Image Processing VS Computer Vision
1.1.2 Problems in Computer Vision
1.2 Introduction to Images
1.2.1 How are images formed?
1.2.2 Digital image
1.2.3 Image as a matrix
1.2.4 Manipulating pixels
1.2.5 Displaying and saving an image
1.2.6 Display utility functions
1.2.7 Color image
1.2.8 Image channels
1.2.9 Splitting and merging channels
1.2.10 Manipulating color pixels
1.2.11 Images with Alpha channel
1.3 Basic image operations
1.3.1 How to create new images?
1.3.2 Cropping an image section
1.3.3 Copying a region to another in an image
1.3.4 Resizing an image
1.3.5 Creating an image mask
1.4 Mathematical operations on images
1.4.1 Datatype conversion
1.4.2 Contrast enhancement
1.4.3 Brightness enhancement
1.5 Sunglass filter: A simple application
1.5.1 Load images
1.5.2 Use naive replacement
1.5.3 Use arithmetic operations
1.6 Bitwise operations
1.6.1 Different bitwise operations
1.7 Image annotations
1.7.1 Draw a line over an image
1.7.2 Draw a circle over an image
1.7.3 Draw a rectangle over an image
1.7.4 Draw an ellipse over an image
1.7.5 Draw text over an image
9 of 30 CV Master Program
Assignment 1 Build a QR Code Detector
10 of 30 CV Master Program
Assignment 4 Implement Different Morphological Operations
11 of 30 CV Master Program
Assignment 6 Convert Your Images Into Different Color Spaces
12 of 30 CV Master Program
6.5 Application: Creating panoramas
6.6 Application: Finding known objects using OpenCV
8 Video Analysis
13 of 30 CV Master Program
8.4.1 Object tracking in OpenCV
8.4.2 Comparison of different trackers
8.5 Multiple object tracking
8.5.1 How to track multiple objects in OpenCV
8.6 Kalman filtering
8.6.1 Kalman Filter Tracker
8.7 MeanShift and CamShift
8.7.1 Tracking using MeanShift and CamShift
14 of 30 CV Master Program
Course 3 - DLPT
16 of 30 CV Master Program
|
Module 6
Segmentation
|
Project 8
Object Detection Fine-tune and Training
|
Project 4
Object Detection
|
Module 9
Introduction to Generative Adversarial Networks (GANs)
|
Module 10
Pose Estimation
17 of 30 CV Master Program
1 Getting Started
1.1 Introduction to Artificial Intelligence
1.1.1 History of AI
1.1.2 Applications of AI
1.1.3 AI in Computer Vision
1.1.4 AI Terminology
1.1.5 Popularity of Deep Learning
1.1.6 Deep Learning Frameworks
1.2 NumPy refresher
1.2.1 Notebook: Numpy Refresher Part-1
1.2.2 Notebook: Numpy Refresher Part-2
1.2.3 Notebook: Numpy Refresher Part-3
Assignment NumPy(Ungraded)
2 Neural Networks
2.1 Understanding Neural Networks
2.1.1 Deep Learning Overview
2.1.2 What is Neural Network?
2.1.3 Feature Vectors and Normalization
2.1.4 Demystifying Neural Networks
2.2 Building Neural Networks in PyTorch
2.2.1 Notebook: Introduction to Linear Regression
2.2.2 Notebook: Auto-MPG Data Processing
2.2.3 Linear FRegression with PyTorch
2.2.4 Notebook: Binary Classification with PyTorch
18 of 30 CV Master Program
2.3 Building Blocks of a Neural Network
2.3.1 Notebook: Intro to PyTorch NN Module
2.3.2 Loss Function for Regression
2.3.3 Notebook: Regression Loss
2.3.4 Classification Loss Functions
2.3.5 Notebook: Activation Functions
2.3.6 How does the Network Learn?
19 of 30 CV Master Program
4 Deep Neural Networks
4.1 Optimizers and LR Schedulers
4.1.1 Optimizers
4.1.2 Notebook: PyTorch Optimizers
4.1.3 Learning Rate Schedulers in P
4.2 Training Deep Networks
4.2.1 Overview
4.2.2 Step 1: Data Understanding
4.2.3 Step 2: Data Preparation
4.2.4 Step 3: Check Training Pipeline
4.2.5 Step 4: Train the Model
4.2.6 Step 5: Improve the Model
4.2.7 Check training pipeline Hnads-on
4.3 How to add robustness to a model?
4.3.1 Bias-variance tradeoff
4.3.2 How to prevent Overfitting?
4.3.3 Training with Regularization
4.4 Gaining Insights
4.4.1 Notebook: GradCam
20 of 30 CV Master Program
5.4 PyTorch Lighting
5.4.1 Notebook: Introduction to PyTorch Lighting
5.4.2 Notebook: Transfer Learning with Lighting
6 Segmentation
6.1 Introduction to Semantic Segmentation
6.1.1 Introduction to Semantic Segmentation
6.1.2 Semantic Segmentation Datasets
6.1.3 Semantic Segmentation Architecture
6.2 PyTorch Segmentation Models and Custom Dataset
6.2.1 Notebook: Torchvision Semantic Segmentation Models
6.2.2 Notebook: Introduction to Segmentation Datasets and Custom
Dataset Class
6.3 Transposed Convolutions
6.3.1 Transposed Convolutions
6.4 Fully Convolutional Networks
6.4.1 FCN Architecture
6.4.2 Notebook: FCN on Road Data: CE Loss
6.4.3 Evaluation Metrics and Loss Functions
6.4.4 FCN: Custom Metrics and Loss Functions
6.5 UNet
6.5.1 UNet Architecture
6.5.2 UNet on Road Data: CE Loss
6.5.3 UNet on CamVid Data: Dice Loss
6.6 Dilated Convolution
6.6.1 Dilated Convolution
6.7 DeepLabV3
6.7.1 DeepLabv3 Architecture
6.7.2 DeepLabv3 on Road Data: Dice Loss
6.7.3 DeepLabv3 on CamVid Data: Dice Loss
6.7.4 Deeplabv3 on SUIM Data: Dice Loss
6.8 Instance Segmentation
6.8.1 Instance Segmentation using Mask RCNN
21 of 30 CV Master Program
Project 3 Kaggle Competition - Semantic Segmentation
22 of 30 CV Master Program
8.1 Understanding Faster RCNN
8.1.1 Notebook: Understanding Faster RCNN
8.2 Detectron 2
8.2.1 Notebook: Fine-Tuning RatinaNet using Detectron 2
8.3 Ultralytics YOLO
8.3.1 Notebook: Introduction to Ultralutics YOLO
8.3.2 Notebook: YOLOv8 Custom Training
8.4 Create a Custom Object Detector
8.4.1 Notebook: Detectors Architecture
8.4.2 Notebook: Anchors Boxes and Label Encoding
8.4.3 Notebook: Anchors Generation using K-Means
8.4.4 Notebook: Decode and NMS
8.4.5 Notebook: Create a Custom Dataset CLass
8.4.6 Notebook: Training from Scratch
23 of 30 CV Master Program
Course 4 - DLTK
Module 1
Getting Started with Tensorflow and Keras
|
Module 2
Neural Networks
|
Module 3
Convolutional Neural Networks
|
Module 4
Best Practices In Deep Learning
|
Module 5
Object Detection
|
Module 6
Image Segmentation
|
Module 7
Pose Estimation
|
Module 8
Bonus: Generative Adversarial Networks (GANS)
24 of 30 CV Master Program
1 Getting Started with TensorFlow and Keras
1.1 Introduction to Artificial Intelligence
1.2 AI in Computer Vision
1.3 AI terminology
1.4 NumPy refresher
1.5 Introduction to TensorFlow & Keras
1.6 What is inside an ML algorithm?
1.7 Gradient-based Optimization Techniques in ML
2 Neural Networks
2.1 Feature Vectors & Normalization
2.2 Basics of Neural Networks
2.3 Understanding Backpropagation in a Neural Network
2.4 Loss Functions for Regression and Classification Tasks.
2.5 Mathematical foundation for Regression & Classification
2.6 Implementing a single neuron to model Linear Regression
2.7 Binary Classification using Perceptrons
2.8 Image Classification using Multilayer Perceptron
2.9 Model Complexity, Generalizaation and handling Overfitting
2.10 Understand and implement the building blocks like the different Activation
Functions, Loss Functions, Hidden Layers
25 of 30 CV Master Program
Assignment 4 Conversion from Sequential API to Functional API.
5 Semantic Segmentation
5.1 Problem formulation, custom layers and Loss Functions associated with
Segmentation, like Dilated & Transposed Convolution, Dice Loss, Pixel
Accuracy, etc.
5.2 Semantic Segmentation Datasets and Architectures
5.3 Evaluation metrics for Semantic Segmentation
5.4 Custom DataLoader for Segmentation Datasets
5.5 Fully Convolutional Networks (FCNs) and UNet training for Binary
Segmentation on Road Data
5.6 UNet and DeepLab v3+ Training on Multi-class segmentation on CamVid
Data.
5.7 Improving DeepLab v3+ on Segmentation of Underwater Imagery (SUIM)
26 of 30 CV Master Program
6 Object Detection
6.1 Evolution from traditional Object Detection algorithms to state-of-the-art
Deep Learning-based methods
6.2 Exploring Object Detection Datasets.
6.3 Revisiting Image Classification and comparing it with Object Detection.
6.4 Two-Stage & Single Stage Object Detectors
6.5 Problem formulation, custom layers and Loss Functions used in Object
Detection like Anchors, NMS, IoU, etc.
6.6 Learn about Object Detection models like RCNN, SSD, RetinaNet, YOLO,
EfficientDet
6.7 Evaluation metrics for Object Detection: Precision, Recall, Average
Precision(AP) and mean average Precision (mAP)
6.8 Using the TensorFlow Object Detection (TFOD) API
6.9 Fine-tuning of Object Detection Models available on TFOD API on a subset of
Pascal VOC data.
6.10 Building a Custom SSD Model with FPN and training it on PenFudanPed
Dataset
27 of 30 CV Master Program
Course 5 - DLAP
28 of 30 CV Master Program
1 Facial Landmark Detection
1.1 Applications in Face Processing
1.1.1 Applications in Face Processing
1.2 Facial Landmark Detection using Dlib
1.2.1 Introduction to Dlib
1.2.2 Facial Landmark Detection using Dlib
1.3 Application: Face Alignment
1.4 Improving Facial Landmark Detector
1.4.1 Improving speed
1.4.2 Improving stability
1.4.3 Landmark stabilization in OpenCV
1.4.4 Optical Flow
1.4.5 Lucas-Kanade Optical Flow
1.5 Facial Landmark Detection Theory
1.5.1 Machine Learning basics
1.5.2 Research paper review
1.6 Training a custom Landmark Detector
1.6.1 How to train a custom Landmark Detector?
29 of 30 CV Master Program
3 Snapchat Filters
3.1 Swap Face
3.1.1 How can Face Swapping be achieved?
3.1.2 Seamless Cloning
3.1.3 Seamless Cloning in OpenCV
3.1.4 Face Swapping in a video
3.2 Application: Beard Filter
3.3 Application: Aging Filter
3.4 Non-linear Deformations
3.4.1 Moving Least Squares
3.4.2 Application: Happify and Fatify filters on the face
4 Face Recognition
4.1 Intro to Face Recognition
4.1.1 Face Recognition in brief
4.1.2 Face Recognition: Overview
4.2 Classical Face Recognition Techniques
4.2.1 Eigen Faces
4.2.2 Fisher Face
4.2.3 Local Binary Pattern Histogram
4.2.4 Face Recognition API in OpenCV
4.2.5 Eigen Faces Demo
4.3 Face recognition using Deep Learning
4.3.1 Deep Learning Overview
4.3.2 Face Recognition using OpenFace
4.3.3 Face Recognition using Dlin - Introduction
4.3.4 Face recognition using Dlib
4.3.5 Further Reading
5 Neural Network
5.1 Introduction to Neural Networks
5.1.1 What is a Neural Network?
5.1.2 How do Neural Networks learn?
5.1.3 Deep Learning Frameworks
5.2 Introduction to TensorFlow Keras
30 of 30 CV Master Program
5.2.1 The Keras Framework
5.2.2 Linear Regression using Keras
5.3 Feedforward Neural Neural Network
5.3.1 Why do We Need Hidden Layers?
5.3.2 Training a Neural Network using Backpropagation
5.3.3 Example: Image Classification using MLP
5.4 Convolutional Neural Networks
5.4.1 What is a Convolutional Neural Network?
5.4.2 Example: image Classification using CNNs
5.4.3 Data Augmentation
7 Object Detection
7.1 2-Stage Object Detectors
7.2 Single Stage Object Detector
7.2.1 Notebook: SSD Object Detector in OpenCV
31 of 30 CV Master Program
7.3 You Only Look Once (YOLO)
7.3.1 What is YOLO?
7.3.2 Notebook: YOLO Object Detection in OpenCV
7.4 Measure performance of Object Detectors
7.4.1 Evaluation Metrics for Object Detection
33 of 30 CV Master Program
A place where legacy creates future.
GENAI
Mastering
Generative AI for Art
Detailed Curriculum
OpenCV
University
AI ART GENERATION FOR EVERYONE
Index
Module 1
Introduction to Generative AI
I
Module 2
Generative AI with OpenAI DALLE
I
Module 3
Generating Images with Midjourney
I
Module 4
FREE GPU Credits from RunPod
I
Module 5
Generating Images with Stable Diffusion
I
Module 6
Diving Deeper into Stable Diffusion
I
Module 7
Advanced Image Editing Techniques
QUIZ 1
2.4.1 PlayGroundAI
QUIZ 2
QUIZ 3
QUIZ 4
QUIZ 5
QUIZ 6
Index
Module 1
DreamBooth
I
Module 2
Stable Diffusion WebUI Practical Tips for Efficient Workflow
I
Module 3
Controlled Image Editing
I
Module 4
Textual Inversion
I
Module 5
LoRA
I
Module 6
Creating videos using Prompt
I
Module 7
Prompt Generating using ChatGPT
QUIZ 1
QUIZ 2
QUIZ 3
4 Textual Inversion
4.1 Extending SD with Embeddings
QUIZ 4
QUIZ 5
QUIZ 6