Data Science


Computer Vision-Theory & Projects in Python for Beginners

Computer Vision-Become an ace of Computer Vision, Detect Shapes and Create Apps using Python, OpenCV, TensorFlow, etc.

4.39 (37 reviews)


27 hours


Jul 2021

Last Update
Regular Price

Unlimited access to 30 000 Premium SkillShare courses

What you will learn

• The introduction and importance of Computer Vision (CV).

• Why is CV such a popular field nowadays?

• The fundamental concepts from the absolute beginning with comprehensive unfolding with examples in Python.

• Practical explanation and live coding with Python.

• The concept of colored and black and white images with practice.

• Deep details of Computer Vision with examples of every concept from scratch.

• TensorFlow (Deep learning framework by Google).

• The use and applications of state-of-the-art Computer Vision (with implementations in state-of-the-art framework Numpy and TensorFlow).

• Theory and implementation of Panoramic images.

• Geometric transformations.

• Image Filtering with implementation in Python.

• Edge Detection, Shape Detection, and Corner Detection.

• Object Tracking and Object detection.

• 3D images.

• Building your own applications for change detection in the live feed of cameras by using Computer Vision Techniques using Python.

• Developing a complete project to make a very intelligent and efficient DVR using Python.


Comprehensive Course Description:

Computer vision (CV), a subfield of computer science, focuses on replicating the complex functionalities of the human visual system. In the CV process, real-world images and videos are captured, processed, and analyzed to allow machines to extract contextual, useful information from the physical world.

Until recently, computer vision functioned in a limited capacity. But due to the recent innovations in artificial intelligence and deep learning, this field has made great leaps. Today, CV surpasses humans in most routine tasks connected with detecting and labeling objects.

The high-quality content of the Mastering Computer Vision from the Absolute Beginning Using Python course presents you with a great opportunity to learn and become an expert. You will learn the core concepts of the CV field. This course will also help you to understand the digital imaging process and identify the key application areas of CV. The course is:

  • · Easy to understand.

  • · Descriptive.

  • · Comprehensive.

  • · Practical with live coding.

  • · Rich with state of the art and updated knowledge of this field.

Although this course is a compilation of all the basic concepts of CV, you are encouraged to step up and experience more than what you learn. Your understanding of every concept is tested at the end of each section. The Homework assignments/tasks/activities/quizzes along with solutions will assess your learning. Several of these activities are focused on coding so that you are ready to run with implementations.

The two hands-on projects in the last section—Change Detection in CCTV Cameras (Real-time) and Smart DVRs (Real-time)—make up the most important learning element of this course. They will help you sharpen your practical skills. Successful completion of these two projects will help you enrich your portfolio and kick-start your career in the CV field.

The course tutorials are divided into 320+ videos along with detailed code notebooks. The videos are available in HD, and the total runtime of the videos is 27 hours+.

Now is the perfect time to learn computer vision. Get started with this best-in-class course without any further delay!

Teaching is our passion:

In this course, we apply the proven learning by doing methodology. We build the interest of learners first. We start from the basics and focus on helping you understand each concept clearly. The explanation of each theoretical concept is followed by practical implementation. We then encourage you to create something new out of your learning.

Our aim is to help you master the basic concepts of CV before moving onward to advanced concepts. The course material includes online videos, course notes, hands-on exercises, project work, quizzes, and handouts. We also offer you learning support. You can approach our team in case of any queries, and we respond in quick time.

Course Content:

The comprehensive course consists of the following topics:

1. Introduction

a. Intro

i. What is computer vision?

2. Image Transformations

a. Introduction to images

i. Image data structure

ii. Color images

iii. Grayscale images

iv. Color spaces

v. Color space transformations in OpenCV

vi. Image segmentation using Color space transformations

b. 2D geometric transformations

i. Scaling

ii. Rotation

iii. Shear

iv. Reflection

v. Translation

vi. Affine transformation

vii. Projective geometry

viii. Affine transformation as a matrix

ix. Application of SVD (Optional)

x. Projective transformation (Homography)

c. Geometric transformation estimation

i. Estimating affine transformation

ii. Estimating Homography

iii. Direct linear transform (DLT)

iv. Building panoramas with manual key-point selection

3. Image Filtering and Morphology

a. Image Filtering

i. Low pass filter

ii. High pass filter

iii. Band pass filter

iv. Image smoothing

v. Image sharpening

vi. Image gradients

vii. Gaussian filter

viii. Derivative of Gaussians

b. Morphology

i. Image Binarization

ii. Image Dilation

iii. Image Erosion

iv. Image Thinning and skeletonization

v. Image Opening and closing

4. Shape Detection

a. Edge Detection

i. Definition of edge

ii. Naïve edge detector

iii. Canny edge detector

1. Efficient gradient computations

2. Non-maxima suppression using gradient directions

3. Multilevel thresholding- hysteresis thresholding

b. Geometric Shape detection


ii. Line detection through RANSAC

iii. Multiple lines detection through RANSAC

iv. Circle detection through RANSAC

v. Parametric shape detection through RANSAC

vi. Hough transformation (HT)

vii. Line detection through HT

viii. Multiple lines detection through HT

ix. Circle detection through HT

x. Parametric shape detection through HT

xi. Estimating affine transformation through RANSAC

xii. Non-parametric shapes and generalized Hough transformation

5. Key Point Detection and Matching

a. Corner detection (Key point detection)

i. Defining Corner

ii. Naïve corner detector

iii. Harris corner detector

1. Continuous directions

2. Tayler approximation

3. Structure tensor

4. Variance approximation

5. Multi-scale detection

b. Project: Building automatic panoramas

i. Automatic key point detection

ii. Scale assignment

iii. Rotation assignment

iv. Feature extraction (SIFT)

v. Feature matching

vi. Image stitching

6. Motion

a. Optical Flow, Global Flow

i. Brightness constancy assumption

ii. Linear approximation

iii. Lucas–Kanade method

iv. Global flow

v. Motion segmentation

b. Object Tracking

i. Histogram based tracking

ii. KLT tracker

iii. Multiple object tracking

iv. Trackers comparisons

7. Object detection

a. Classical approaches

i. Sliding window

ii. Scale space

iii. Rotation space

iv. Limitations

b. Deep learning approaches

i. YOLO a case study

8. 3D computer vision

a. 3D reconstruction

i. Two camera setups

ii. Key point matching

iii. Triangulation and structure computation

b. Applications

i. Mocap

ii. 3D Animations

9. Projects

a. Change detection in CCTV cameras (Real-time)

b. Smart DVRs (Real-time)

After completing this course successfully, you will be able to:

  • · Relate the concepts and theories in computer vision with real-world problems.

  • · Implement any project from scratch that requires computer vision knowledge.

  • · Know the theoretical and practical aspects of computer vision concepts.

Who this course is for:

  • · Learners who are absolute beginners and know nothing about Computer Vision.

  • · People who want to make smart solutions.

  • · People who want to learn computer vision with real data.

  • · People who love to learn theory and then implement it using Python.

  • · People who want to learn computer vision along with its implementation in realistic projects.

  • · Data Scientists.

  • · Machine learning experts.


Computer Vision-Theory & Projects in Python for Beginners
Computer Vision-Theory & Projects in Python for Beginners
Computer Vision-Theory & Projects in Python for Beginners
Computer Vision-Theory & Projects in Python for Beginners


Introduction to Course and Instructor

Why Computer Vision

Introduction to Instructor

About AI Sciences

Course Outline (Optional)


Computer Vision Applications

Final Project

Request for Your Honest Review

Github & OneDrive Link to get the Course Materials

Introduction to Images

Grayscale Image

Quiz(Grayscale Image)

Solution(Grayscale Image)

Python Warning

Grayscale Spectrum

Reading, Manipulating and Saving Grayscale Image using Matplotlib Python

Quiz(Reading, Manipulating and Saving Grayscale Image using Matplotlib Python)

Solution(Reading, Manipulating and Saving Grayscale Image using Matplotlib Python)

Reading, Manipulating and Saving Grayscale Image using OpenCV Python

Introduction to RGB Images

Quiz(Introduction to RGB Images)

Solution(Introduction to RGB Images)

RGB Color Images Matplotlib and OpenCV

Quiz(RGB Color Images Matplotlib and OpenCV)

Solution(RGB Color Images Matplotlib and OpenCV)

RGB to HSV theory and Algorithm

RGB to HSV Algorithm Implementation using Python

Quiz(RGB to HSV Algorithm Implementation using Python)

Solution(RGB to HSV Algorithm Implementation using Python)

Red Rose Extraction or Segmentation using HSV Python

Quiz(Red Rose Extraction or Segmentation using HSV Python)

Solution(Red Rose Extraction or Segmentation using HSV Python)

Hyper Spectral Images

2D Scaling Transformations

Introduction to Geometric Transformations

Scaling Example in OpenCV

Quiz(Scaling Example in OpenCV)

Solution(Scaling Example in OpenCV)

Scaling in Real Space

Quiz(Scaling in Real Space)

Solution(Scaling in Real Space)

Linear Transformation Explained

Scaling is a Linear Transformations

Scaling as a Matrix Multiplication Example Python

Quiz(Scaling as a Matrix Multiplication Example Python)

Solution(Scaling as a Matrix Multiplication Example Python)

Image Coordinate System

Image Copy and Flipping Vertically

Quiz 01(Image Copy and Flipping Vertically)

Solution 01(Image Copy and Flipping Vertically)

Quiz 02(Image Copy and Flipping Vertically)

Solution 02(Image Copy and Flipping Vertically)

Continuous Coordinates

Saturations and Holes

Image Doubling and Holes using Python

Inverse Scaling and Quiz

Solution and Nearest Neighbour Interpolation

Inverse Scaling Python

Quiz 01(Inverse Scaling Python)

Solution 01(Inverse Scaling Python)

Quiz 02 (Inverse Scaling Python)

Solution 02(Inverse Scaling Python)

Nearest Neighbour Interpolation

Weighted Average vs Simple Average

Bilinear Interpolation

Bilinear Interpolation Implementation in Python

Scaling Transformation with Bilinear Interpolation Implementation

Scaling Transformation Algorithm(Recap)


Exam Solution 01

Exam Solution 02

2D Geometric Transformations

Rotation Introduction

Optional Rotation is Linear Transform Proof

Rotation can Result Negative Coordinates(Problem)

Rotation Computing Width and Hight of Resultant Image(Solution)

Rotation Index Shifting

Quiz(Rotation Index Shifting)

Solution(Rotation Index Shifting)

Rotation Implementation Complete

Quiz(Rotation Implementation Complete)

Solution(Rotation Implementation Complete)

Rotation Implementation(Good Coding Practice)

Quiz(Rotation Implementation(Good Coding Practice))

Solution(Rotation Implementation(Good Coding Practice))

Reflection Introduction

Quiz(Reflection Introduction)

Solution(Reflection Introduction)

Reflection Implementation

Quiz 01(Reflection Implementation)

Solution 01(Reflection Implementation)

Quiz 02(Reflection Implementation)

Solution 02(Reflection Implementation)

Shear Introduction

Shear Implementation and Quiz

Translation and its Nonlinearity(Problem)

Homoginuous Coordinates

Translation as a Matrix(solution)

Homoginuous Representations Off all Transformations

Affine Transformation Implementation

Quiz(Affine Transformation Implementation)

Rotation about any Point Theory

Rotation about any Point Implementation

Reflection about a Line Quiz

Solution(Reflection about a Line)

Transformation Matrix Properties

Transformation Matrix Properties Implementation

Affine Transformation Hierarchy

Optional Affine Transformation SVD

Projective Transformation Homography

Projective Transformation Implementation

Projective Warping Algorithm

Geometric Transformation Estimation(Panorama)


Affine Transformation Estimation Introduction

Quiz(Affine Transformation Estimation Introduction)

Solution(Affine Transformation Estimation Introduction)

Affine Transformation Estimation Points Correspondences

Estimation Points Marking using Python and Quiz

Affine Transformation Min Number of Points Needed

Affine Transformation Estimation using Python

Affine Transformation Estimation Verification using Python

Affine Transformation Estimation with more than 3 Points

Quiz(Affine Transformation Estimation with more than 3 Points)

Solution(Affine Transformation Estimation with more than 3 Points)

Affine Transformation Estimation with more than 3 Points Implementation

Quiz(Affine Transformation Estimation with more than 3 Points Implementation)

Solution(Affine Transformation Estimation with more than 3 Points Implementation)

Optional Affine Transformation Estimation with LeastSquared

Projective Transformation Estimation Introduction

Projective Transformation Estimation First Implementation having Bug

Projective Transformation Estimation Reason of the Bug

Projective Transformation Estimation Removing Scale Factor

Projective Transformation Estimation DLT

Projective Transformation Estimation DLT Nullspace and Why 4 Points

Projective Transformation Estimation DLT Nullspace Implementation

DLT Implementation

Quiz(DLT Implementation)

Panorama Stitching

Panorama Stitching Implementation in OpenCV

How Projective Transformation Helps in Panorama

Binary Morphology

Binary Images Theory

Binary Images Python

Structuring Element Kernel and Sliding Window Theory

Structuring Element Python

Erosion Theory

Quiz 01(Erosion Theory)

Solution 01(Erosion Theory)

Quiz 02(Erosion Theory)

Solution 02(Erosion Theory)

Erosion Python

Dilation Theory

Quiz 01(Dilation Theory)

Solution 01(Dilation Theory)

Quiz 02(Dilation Theory)

Solution 02(Dilation Theory)

Dilation Python

Opening Theory

Opening Python

Closing Theory

Closing Python

Gradient Morphology

Gradient Morphology Python

Tophat Blackhat

Image Filtering

Image Blurring 01

Image Blurring 02

General Image Filtering


Naive Edge Detection

Image Sharpening

Quiz(Image Sharpening)

Solution(Image Sharpening)

Implementation Of Image Blurring Edge Detection Image Sharpening in Python

Lowpass Highpass Bandpass Filters

CNN Course(You can Skip)

Canny Edge Detector

Canny Edge Detector Algorithm Introduction

Canny Edge Detector OpenCV

Quiz(Canny Edge Detector OpenCV)

Solution(Canny Edge Detector OpenCV)

Gaussian Filter Introduction

Gaussian Filter to Mask Computation

Gaussian Filter Window Size

Gaussian Filter Implementation

Quiz(Gaussian Filter Implementation)

Solution(Gaussian Filter Implementation)

Gaussian Filter Smoothing Implementation

Quiz(Gaussian Filter Smoothing Implementation)

Solution(Gaussian Filter Smoothing Implementation)

Image Gradients Theory

Image Gradients Implementation

Image Gradients Implementation Datatype Bug

Derivative of Gaussian

Derivative of Gaussian Expression

Derivative of Gaussian Implementation

Applying DOG Filters

Gradient Vector

Gradient Magnitude and Gradient Direction

Non Maxima Suppression

Gradient Direction Quantization

Quiz(Gradient Direction Quantization)

Solution(Gradient Direction Quantization)

Gradient Direction Quantization Implementation

Gradient Direction Quantization Implementation Better Way

NMS Implementation

Quiz 01(NMS Implementation)

Solution 01(NMS Implementation)

Quiz 02(NMS Implementation)

Solution 02(NMS Implementation)

Last Step Thresholding

Hesterysis Thresholding

Hesterysis Thresholding Implementation

Shape Detection

Shape Detection Introduction

Why Edge Detection is not Enough

RANSAC Introduction

RANSAC For Lines Coordinate Arrays

RANSAC For Lines Sampling Points Randomly Implemenation

Quiz(RANSAC For Lines Sampling Points Randomly Implemenation)

Solution(RANSAC For Lines Sampling Points Randomly Implemenation)

RANSAC For Lines Fitting Line With 2 Points

RANSAC For Lines Fitting Line With 2 Points Implementation

Quiz(RANSAC For Lines Fitting Line With 2 Points Implementation)

Solution(RANSAC For Lines Fitting Line With 2 Points Implementation)

RANSAC For Lines Computing Consistency Score

RANSAC For Lines Computing Consistency Score Implementation

RANSAC For Lines Implementation

RANSAC For Lines Implementation Test on Real Image


RANSAC For Lines Implementation Test on Real Image Drawing and Quiz

RANSAC For Circles

RANSAC For Circles Consistency Score

RANSAC For Circles Implementation

RANSAC For Circles Implementation Real Image


RANSAC For Circles Implementation Real Image Drawing

RANSAC General


RANSAC Quiz Solution

Shape Detection Hough Transform

Hough Transform Introduction

Hough Transform as Voting

Hough Transform as Voting Loop

Hough Transform Polar Representation

Hough Transform Polar Representation Benifits

Hough Transform Polar Representation Implementation

Hough Transform Lines Implementation Real Image

Hough Transform Lines Parameters Conversion

Hough Transform Lines Drawing

Solution(Hough Transform Lines Drawing)

Hough Transform Fast Version

Hough Transform Circles

Hough Transform Circles Implementation

Hough Transform Circles Implementation Drawing

Solution(Hough Transform Circles Implementation Drawing)

Corner Detection

Corner Definition

Why Corner

Corner Measure


Why SSD to be Muted Somewhere

Corner Detection Implementation 01

Corner Detection Implementation 02

Corner Detection Implementation 03

Moravec Corner Detector

Scale Space

Infinite Directions Towards Harris Corner Detector

Harris Corner Detector 01

Harris Corner Detector 02

Harris Corner Detector 03

Harris Corner Detector 04 Structure Tensor

Harris Corner Detector 05 Final Expression

Harris Corner Detector Implementation Speedup Convolution

Harris Corner Detector Implementation 01

Harris Corner Detector Implementation 02

Harris Corner Detector as Edge Detector

Automatic Panorama SIFT

Point Correspondence Introduction

Point Drawing Implementation

Scale and Orientation Alignment


Points Matching

Object Detection

Introduction to Object Detection

Classification PipleLine

Sliding Window Implementation

Shift Scale Rotation Invariance

Person Detection

HOG Features

HandEngineering vs CNNs



YOLO Object Detector

CNNS Introduction

Face Detection Implementation

YOLO Implementation

YOLO Image Classfication Revisited

YOLO Sliding Window Object Localization

YOLO Sliding Window Efficient Implementation

YOLO Introduction

YOLO Training Data Generation

YOLO Anchor Boxes

YOLO Algorithm

YOLO Non Maxima Supression



Optical Flow

BC Assumption

Optical Flow Derivation

Object Tracking

Tracking by Detection

Tracking by Detection Motion Model Assumption

Tracking KLT TLD

Single Object Tracking

Multiple Object Tracking

WebCam and Saving Annotations of Multiple Object Tracking

3D Reconstruction

3d Reconstruction Introduction

3d Motion Capture


Camera Matrix


Camera Matrix Estimation

Mocap Revisited

Smart CCTV Project

Introduction to the Project

Introduction to Data

Reading a Video File

Change Detection Frame Differencing

Change Detection Frame Differencing Implementation

Change Detection Background Subtraction

Change Detection Background Subtraction MOG

Denoising using Morphology

Connected Components

Connected Components Filtering

Tracking Change

Saving Segments

Saving and Viewing Segments

Saving and Viewing Segments with Object Detection


THANK YOU Bonus Video


Tauseef19 February 2021

I am very grateful to learn this course by financial aid. I have been learning in many platform, and I think this course is so well-crafted that it covers so many key points and still allows us the students to learn in ease. Thanks for the opportunity and the experience as well. I am very grateful to learn this course by financial aid. I have been learning in many platform, and I think this course is so well-crafted that it covers so many key points and still allows us the students to learn in ease. Thanks for the opportunity and the experience as well.

Abdullah19 February 2021

Amazing explanations and content throughout the course. You finish with fantastic tools and templates that you can practice on your own datasets. Great course structure. Strongly recommend for any Computer vision beginner / student.

Mohammad18 February 2021

The course sounds very interesting. The instructor is obviously well versed in the topic(s). I never felt this much at ease with the topics in Computer Vision but the details with which things are discussed in the course and how things are distributed throughout the course, that blend is just Amazing. Looking forward to completing the course.

Fernando2 February 2021

What I like most of this course is that EVERYTHING is deeply explain in detail. And what is not explained, a link or help is provided. Every insight gained is applied further in the course. The other thing which I really appreciated is you can make the very same examples, side by side with the teacher, and you will get the same results (and errors). Don't overestimate making errors: you'll learn more from your mistakes than your successes. Even though, 'no prior knowledge' for this course would frustrate a segment of beginners. If you have few or all of this concepts, the course will be easier: - Python (basic understanding and above) - Jupyter notebook (easy to install, learn the basics - 10/15 minutes) - Matemathic concepts (specially matrix operations), which leads some previous knowledge with some Python libraries (numpy). The course is slow paced, building concepts one on top the other. When you least think about it, you find yourself doing amazing things. Highly recommended.


Udemy ID


Course created date


Course Indexed date
Course Submitted by