Computer vision: OpenCV Basics Quick Starter in Python

Start your Deep Learning Computer Vision Endeavor with Strong OpenCV Basics in Python

  • (5.0) 0 students enrolled

Course Overview

Let’s see what the interesting topics are included in this course. At first, we will have an overview of computer vision and the amazing OpenCV, the open-source computer vision library.

After that, we are ready to proceed with preparing our computer for installing OpenCV and later will proceed with installing OpenCV itself. Then we will try a one-liner code to check if everything is working fine.

When I said this course is for complete beginners, I mean it. Because even-if you are coming from a non-python background, the next few sessions and examples will help you get the basic python programming skill to proceed with the rest of the sessions. The topics include Python assignment, flow-control, functions and data structures.

Now we are all set to proceed with python computer vision exercises.  But before that, we need to learn the theory of how a digital image is organized. Concept of pixels, colour and greyscale channels, colour codes etc.

Then we will write our first opencv program in which we will simply load and display an image from our computer, and we will write a greyscale version of this image back to our computer itself.

As you already know the basic building block of a digital image is pixels, we will use the power of OpenCV to manipulate the individual pixels of an image and modify it.

Later in the next session, we will use a similar technique to select a collective area of pixels and manipulate it by trying to change colourand get the properties of the image.

Hope you know that there are 3 colour channels in a colour image and one in the greyscale image. We will try to separate and extract those colour channels and later try to merge them back to form the original image.

Colour spaces, unlike the colour channels, is the way how colours are organized in an image. In the next session, we will explore the popular colour spaces and will do exercises which switches an image between different colour spaces.

In the next session, we will use opencv to create and draw simple geometric shapes like line, rectangle, circle, ellipse, polygon etc into an image canvas. We also will try to insert a text into the canvas.

Then we will try some morphological transformations to our image which includes erosion which erodes the pixels, then dilation which will expand the pixels, opening transformation for white noise removal and closing for black point noise removal. Then gradient transformation and finally the top hat and black hat morphological image transformations.

After that we will try the geometric transformations which include scaling or resizing the image, then translating or place shifting the image, flipping or changing sides, rotating the image by fixing an axis, and cropping the image to extract the region of interest.

In the coming two sessions, we will try the basic arithmetic and logical operations between two images. We will try to do the addition operation and subtraction operation between two images. We will also try the AND, OR, XOR and NOT binary bitwise operations for two images and will check the results obtained.

Later we will go ahead with Image masking, which is a technique of covering the unwanted areas of an image and display only the region of interest.

And after that, we will try Image Smoothing techniques. At first, we will use our filter to do a custom smoothing of image and later built-in filters using algorithms like Gaussian Smoothing, average smoothing, Median and finally the bilateral smoothing.

Then we will see an advanced technique called thresholding which is very useful in pre-processing and preparing the image for computer vision algorithms. We will do exercises to demonstrate simple thresholding, Otsu thresholding and adaptive thresholding.

Then we will check an interesting image colour intensity plotting technique called as the histograms. We will plot a histogram and will learn how we can analyse the histogram to predict the nature of the image.

By using this histogram and adjusting the values based on it, we can enhance the contrast of dull-looking images. We will explore the technique called histogram equalization.

Image pyramids are different sized images generated and stacked one on top of others. We will explore how we can use opencv methods to generate image pyramids.

For us humans, it’s an easy task to find an object in a scene and find the edges of it. For computers,it’s not that easy. We will explore the opencv functions which enable us to find the edges using the Canny edge detection.

As we know to a computer, an image is just a collection of numbers. To find the edges, gradients or the pattern of intensity change of colours should be found out. We will use the gradient detection function of OpenCV to do that.

Then finally we will draw contours along the different objects in an image with the help of the above-mentioned techniques and try to count the number of objects available in the scene.

That's all about the basics. The code and the images used in this course has been uploaded and shared in a folder.

What are the requirements?

  • A decent configuration computer and an enthusiasm to dive into the world of computer vision

What am I going to get from this course?

  • OpenCV Image Manipulation Fundamentals using Python. Also includes a Python basics refresher session.

What is the target audience?

  • Beginners or those who wants to start with Python Computer Vision using OpenCV

About the Author

I  am a pioneering, talented and security-oriented Android/iOS Mobile and PHP/Python Web Developer Application Developer offering more than eight years’ overall IT experience which involves designing, implementing, integrating, testing and supporting impact-full web and mobile applications. I am a Post Graduate Masters Degree holder in Computer Science and Engineering. My experience with PHP/Python Programming is an added advantage for server based Android and iOS Client Applications. I am currently serving full time as a Senior Solution Architect managing my client's projects from start to finish to ensure high quality, innovative and functional design.

Course Curriculum

Introduction and Table of Contents
1 Video Lectures | 08:05

  • Introduction and Table of Contents

Introduction to OpenCV
1 Video Lectures | 03:24

  • Introduction to OpenCV

Environment Setup: Preparing your Computer
1 Video Lectures | 08:59

  • Preparing your Computer

Python Basics
4 Video Lectures | 34:35

  • Python Basics - Assignment
  • Python Basics - Flow Control
  • Python Basics - Data Structures
  • Python Basics - Functions

Image Concepts
1 Video Lectures | 07:09

  • Image Concepts

Beginning Open CV-Read , Display and Write Images
1 Video Lectures | 06:33

  • Read , Display and Write Images

Optional: cv2.imshow() Not Responding Issue Fix
1 Video Lectures | 01:18

  • Optional: cv2.imshow() Not Responding Issue Fix

Pixel Access and Modification
1 Video Lectures | 08:53

  • Pixel Access and Modification

Area Manipulation and Image Properties
1 Video Lectures | 06:02

  • Area Manipulation and Image Properties

Color Channels - Split and Merge
1 Video Lectures | 09:52

  • Color Channels - Split and Merge

Color Spaces Conversion
1 Video Lectures | 07:02

  • Color Spaces Conversion

Drawing Geometric Shapes And Text
3 Video Lectures | 16:56

  • Part 1 Create Drawing Canvas
  • Part 2 Drawing line, Circle, Rectangle
  • Part 3 Ellipse, Polygon and Text

Morphological Transformations
3 Video Lectures | 16:19

  • Morphological Transformation - Part 1 Erosion
  • Morphological Transformation - Part 2 Dilation and Opening
  • Morphological Transformation - Part 3 Closing, Gradient, TopHat, BlackHat

Geometric Transformations
5 Video Lectures | 21:50

  • Geometric Transformations - Part 1: Scaling
  • Geometric Transformations - Part 2: Translation
  • Geometric Transformations - Part 3: Rotation
  • Geometric Transformations - Part 4: Flipping
  • Geometric Transformations - Part 5: Cropping

Arithmetic Operations
1 Video Lectures | 05:28

  • Arithmetic Operations - Addition and Subtraction

Bitwise Operations
1 Video Lectures | 05:15

  • Bitwise Operations - AND, OR, XOR, NOT

Image Masking
1 Video Lectures | 04:04

  • Image Masking

Image Smoothing
3 Video Lectures | 18:41

  • Custom Filter Image Smoothing
  • Average and Gaussian Image Smoothing
  • Median and Bilateral Smoothing

Image Thresholding
3 Video Lectures | 15:36

  • Simple Thresholding
  • Otsu Thresholding
  • Adaptive Thresholding

1 Video Lectures | 07:42

  • Histograms

Histogram Equalization
1 Video Lectures | 04:44

  • Histogram Equalization

Image Pyramids
1 Video Lectures | 04:54

  • Image Pyramids

Canny Edge Detection
1 Video Lectures | 03:23

  • Canny Edge Detection

Image Gradients - Laplace and Sobel
1 Video Lectures | 07:04

  • Image Gradients - Laplace and Sobel

Image Contours
1 Video Lectures | 08:43

  • Image Contours

1 Document Lectures

    34 Page


  • No reviews found