Course Introduction and Setup
  • Introduction
  • Introduction to Computer Vision and OpenCV
  • About this course
  • READ THIS - Guide to installing and setting up your OpenCV4.0.1 Virtual Machine
  • Recomended - Setup your OpenCV4.0.1 Virtual Machine
  • Installation of OpenCV & Python on Windows
  • Installation of OpenCV & Python on Mac
  • Installation of OpenCV & Python on Linux
  • Set up course materials (DOWNLOAD LINK BELOW) - Not needed if using the new VM
Basics of Computer Vision and OpenCV
  • What are Images?
  • How are Images Formed?
  • Storing Images on Computers
  • Getting Started with OpenCV - A Brief OpenCV Intro
  • Grayscaling - Converting Color Images To Shades of Gray
  • Understanding Color Spaces - The Many Ways Color Images Are Stored Digitally
  • Histogram representation of Images - Visualizing the Components of Images
  • Creating Images & Drawing on Images - Make Squares, Circles, Polygons & Add Text
Image Manipulations & Processing
  • Transformations, Affine And Non-Affine - The Many Ways We Can Change Images
  • Image Translations - Moving Images Up, Down. Left And Right
  • Rotations - How To Spin Your Image Around And Do Horizontal Flipping
  • Scaling, Re-sizing and Interpolations - Understand How Re-Sizing Affects Quality
  • Image Pyramids - Another Way of Re-Sizing
  • Cropping - Cut Out The Image The Regions You Want or Don't Want
  • Arithmetic Operations - Brightening and Darkening Images
  • Bitwise Operations - How Image Masking Works
  • Blurring - The Many Ways We Can Blur Images & Why It's Important
  • Sharpening - Reverse Your Images Blurs
  • Thresholding (Binarization) - Making Certain Images Areas Black or White
  • Dilation, Erosion, Opening/Closing - Importance of Thickening/Thinning Lines
  • Edge Detection using Image Gradients & Canny Edge Detection
  • Perspective & Affine Transforms - Take An Off Angle Shot & Make It Look Top Down
  • Mini Project 1 - Live Sketch App - Turn your Webcam Feed Into A Pencil Drawing
Image Segmentation & Contours
  • Segmentation and Contours - Extract Defined Shapes In Your Image
  • Sorting Contours - Sort Those Shapes By Size
  • Approximating Contours & Finding Their Convex Hull - Clean Up Messy Contours
  • Matching Contour Shapes - Match Shapes In Images Even When Distorted
  • Mini Project 2 - Identify Shapes (Square, Rectangle, Circle, Triangle & Stars)
  • Line Detection - Detect Straight Lines E.g. The Lines On A Sudoku Game
  • Circle Detection
  • Blob Detection - Detect The Center of Flowers
  • Mini Project 3 - Counting Circles and Ellipses
Object Detection in OpenCV
  • Object Detection Overview
  • Mini Project # 4 - Finding Waldo (Quickly Find A Specific Pattern In An Image)
  • Feature Description Theory - How We Digitally Represent Objects
  • Finding Corners - Why Corners In Images Are Important to Object Detection
  • SIFT, SURF, FAST, BRIEF & ORB - Learn The Different Ways To Get Image Features
  • Mini Project 5 - Object Detection - Detect A Specific Object Using Your Webcam
  • Histogram of Oriented Gradients - Another Novel Way Of Representing Images
Object Detection - Build a Face, People and Car/Vehicle Detectors
  • HAAR Cascade Classifiers - Learn How Classifiers Work And Why They're Amazing
  • Face and Eye Detection - Detect Human Faces and Eyes In Any Image
  • Mini Project 6 - Car and Pedestrian Detection in Videos
Augmented Reality (AR) - Facial Landmark Identification (Face Swaps)
  • Face Analysis and Filtering - Identify Face Outline, Lips, Eyes Even Eyebrows
  • Merging Faces (Face Swaps) - Combine Two Faces For Fun & Sometimes Scary Results
  • Mini Project 7 - Live Face Swapper (like MSQRD & Snapchat filters!!!)
  • Mini Project 8 - Yawn Detector and Counter
Simple Machine Learning using OpenCV
  • Machine Learning Overview - What Is It & Why It's Important to Computer Vision
  • Mini Project 9 - Handwritten Digit Classification
  • Mini Project # 10 - Facial Recognition - Make Your Computer Recognize You
Object Tracking & Motion Analysis
  • Filtering by Color
  • Background Subtraction and Foreground Subtraction
  • Using Meanshift for Object Tracking
  • Using CAMshift for Object Tracking
  • Optical Flow - Track Moving Objects In Videos
  • Mini Project # 11 - Ball Tracking
Computational Photography & Make a License Plate Reader
  • Mini Project # 12 - Photo-Restoration
  • Mini Project # 13 - Automatic Number-Plate Recognition (ALPR)
Conclusion
  • Course Summary and how to become an Expert
  • Latest Advances, 12 Startup Ideas & Implementing Computer VIsion in Mobile Apps
BONUS - Deep Learning Computer Vision 1 - Setup a Deep Learning Virtual Machine
  • Setup your Deep Learning Virtual Machine
  • Intro to Handwritten Digit Classification (MNIST)
  • Intro to Multiple Image Classification (CIFAR10)
BONUS - Deep Learning Computer Vision 2 - Introduction to Neural Networks
  • Neural Networks Chapter Overview
  • Machine Learning Overview
  • Neural Networks Explained
  • Forward Propagation
  • Activation Functions
  • Training Part 1 – Loss Functions
  • Training Part 2 – Backpropagation and Gradient Descent
  • Backpropagation & Learning Rates – A Worked Example
  • Regularization, Overfitting, Generalization and Test Datasets
  • Epochs, Iterations and Batch Sizes
  • Measuring Performance and the Confusion Matrix
  • Review and Best Practices
BONUS - Deep Learning Computer Vision 3 - Convolutional Neural Networks (CNNs)
  • Convolutional Neural Networks Chapter Overview
  • Introduction to Convolutional Neural Networks (CNNs)
  • Convolutions & Image Features