Computer Vision Bootcamp™ with Python (OpenCV) - YOLO, SSD

Viola-Jones method, HOG features, R-CNNs, YOLO and SSD (Single Shot) Object Detection Approaches with Python and OpenCV

4.69 (61 reviews)


10 hours


Dec 2020

Last Update
Regular Price

What you will learn

Have a good understanding of the most powerful Computer Vision models

Understand OpenCV

Understand and implement Viola-Jones algorithm

Understand and implement Histogram of Oriented Gradients (HOG) algorithm

Understand and implement convolutional neural network (CNN) related computer vision approaches

Understand and implement YOLO (You Only Look Once) algorithm

Single Shot MultiBox Detection SDD algorithm

Master face detection and object detection


This course is about the fundamental concept of image processing, focusing on face detection and object detection.  These topics are getting very hot nowadays because these learning algorithms can be used in several fields from software engineering to crime investigation.  Self-driving cars (for example lane detection approaches) relies heavily on computer vision.

With the advent of deep learning and graphical processing units (GPUs) in the past decade it's become possible to run these algorithms even in real-time videos. So what are you going to learn in this course?

Section 1 - Image Processing Fundamentals:

  • computer vision theory

  • what are pixel intensity values

  • convolution and kernels (filters)

  • blur kernel

  • sharpen kernel

  • edge detection in computer vision (edge detection kernel)

Section 2 - Serf-Driving Cars and Lane Detection

  • how to use computer vision approaches in lane detection

  • Canny's algorithm

  • how to use Hough transform to find lines based on pixel intensities

Section 3 - Face Detection with Viola-Jones Algorithm:

  • Viola-Jones approach in computer vision

  • what is sliding-windows approach

  • detecting faces in images and in videos

Section 4 - Histogram of Oriented Gradients (HOG) Algorithm

  • how to outperform Viola-Jones algorithm with better approaches

  • how to detects gradients and edges in an image

  • constructing histograms of oriented gradients

  • using suppor vector machines (SVMs) as underlying machine learning algorithms

Section 5 - Convolution Neural Networks (CNNs) Based Approaches

  • what is the problem with sliding-windows approach

  • region proposals and selective search algorithms

  • region based convolutional neural networks (C-RNNs)

  • fast C-RNNs

  • faster C-RNNs

Section 6 - You Only Look Once (YOLO) Object Detection Algorithm

  • what is the YOLO approach?

  • constructing bounding boxes

  • how to detect objects in an image with a single look?

  • intersection of union (IOU) algorithm

  • how to keep the most relevant bounding box with non-max suppression?

Section 7 - Single Shot MultiBox Detector (SSD) Object Detection Algorithm SDD

  • what is the main idea behind SSD algorithm

  • constructing anchor boxes

  • VGG16 and MobileNet architectures

  • implementing SSD with real-time videos

We will talk about the theoretical background of face recognition algorithms and object detection in the main then we are going to implement these problems on a step-by-step basis.

Thanks for joining the course, let's get started!


Computer Vision Bootcamp™ with Python (OpenCV) - YOLO, SSD
Computer Vision Bootcamp™ with Python (OpenCV) - YOLO, SSD
Computer Vision Bootcamp™ with Python (OpenCV) - YOLO, SSD
Computer Vision Bootcamp™ with Python (OpenCV) - YOLO, SSD




Environment Setup

Installing Python and PyCharm on Mac

Installing OpenCV

Installing Python and PyCharm on Windows

History of Computer Vision

Evolution of computer vision related algorithms

Handling Images and Pixels

Images and pixel intensities

Handling pixel intensities I

Handling pixel intensities II

Why convolution is so important in image processing?

Image processing - blur operation

Image processing - edge detection kernel

Image processing - sharpen operation

Image processing quiz

Computer Vision Project I - Lane Detection Problem (Self-Driving Cars)

Lane detection - the problem

Lane detection - handling videos

Lane detection - first transformations

What is Canny edge detection?

Getting the useful region of the image - masking

Detecting lines - what is Hough transformation?

Hough transformation illustration

Drawing lines on video frames

Testing lane detection algorithm

Lane detection quiz

Viola-Jones Face Detection Algorithm Theory

Face detection problem introduction

Viola-Jones algorithm


Integral images

Boosting in computer vision


Original academic research articles

Face detection quiz

Face Detection with Viola-Jones Method Implementation

Face detection implementation I - CascadeClassifier

Face detection implementation II - CascadeClassifier parameters

Face detection implementation III - tuning the parameters

Face detection implementation IV - detecting faces real-time

Histogram of Oriented Gradients (HOG) Algorithm Theory

Histogram of oriented gradients basics

Histogram of oriented gradients - gradient kernel

Histogram of oriented gradients - magnitude and angle

Histogram of oriented gradients - normalization

Histogram of oriented gradients - big picture

Original academic research article

Histogram of oriented gradients (HOG) quiz

Histogram of Oriented Gradients (HOG) Implementation

Showing the HOG features programatically

Face detection with HOG implementation I

Face detection with HOG implementation II

Face detection with HOG implementation III

Face detection with HOG implementation IV

Convolutional Neural Networks (CNNs) Based Approaches

The standard convolutional neural network (CNN) way

Region proposals and convolutional neural networks (CNNs)

Detecting bounding boxes with regression

What is the Fast R-CNN model?

What is the Faster R-CNN model?

Original academic research articles

CNN approaches quiz

You Only Look Once (YOLO) Algorithm Theory

What is the YOLO approach?

YOLO algorithm - grid cells

YOLO algorithm - intersection over union

How to train the YOLO algorithm?

YOLO algorithm - loss function

YOLO algorithm - non-max suppression

Why to use the so-called anchor boxes?

Original academic research article

YOLO algorithm quiz

You Only Look Once (YOLO) Algorithm Implementation

YOLO algorithm implementation I

YOLO algorithm implementation II

YOLO algorithm implementation III

YOLO algorithm implementation IV

YOLO algorithm implementation V

YOLO algorithm implementation VI

YOLO algorithm implementation VII

Single-Shot MultiBox Detector (SSD) Theory

What is the SSD algorithm?

Basic concept behind SSD algorithm (architecture)

Bounding boxes and anchor boxes

Feature maps and convolution layers

Hard negative mining during training

Regularization (data augmentation) and non-max suppression during training

Original academic research article

SSD Algorithm Implementation

SSD implementation I

SSD implementation II

SSD implementation III

SSD implementation IV

SSD implementation V

Appendix #1 - Neural Networks Theory

Artificial neural networks - inspiration

Artificial neural networks - layers

Artificial neural networks - the model

Why to use activation functions?

Neural networks - the big picture

Using bias nodes in the neural network

How to measure the error of the network?

Optimization with gradient descent

Gradient descent with backpropagation

Backpropagation explained

Applications of neural networks I - character recognition

Applications of neural networks II - stock market forecast

Types of neural networks

Appendix #2 - Deep Neural Networks Theory

Deep neural networks

Activation functions revisited

Loss functions

Gradient descent / stochastic gradient descent


Appendix #3 - Convolutional Neural Networks (CNNs)

Convolutional neural networks basics

Feature selection

Convolutional neural networks - kernel

Convolutional neural networks - kernel II

Convolutional neural networks - pooling

Convolutional neural networks - flattening

Convolutional neural networks - illustration

Appendix #4 - Support Vector Machines (SVMs)

Support vector machine introduction - linear case

Support vector machine introduction - non-linear case

Support vector machine introduction - kernels


Download source code

Download slides


Gustavo18 August 2021

Is a complete course, showing the theoretical part (which I think is fundamental to undertand the practical part) and also shows some practical applications of the topics. I think what is missing are some projects at the end of the course to prove yourself but overall is a very good course specially if you are a begginer.

Saso28 November 2020

Excellent course for all interested in computer vision and machine learning. Interesting examples with working code.


4/4/202150% OFFExpired
5/5/202150% OFFExpired


Udemy ID


Course created date


Course Indexed date
Course Submitted by