Before the deep learning revolution redefined computer vision, Haar features and Haar cascades were the tools you must not ignore for object detection. Even today, they are very useful object detectors because they are lightweight. In this post, you will learn about the Haar cascade and how it can detect …
The Random Forest algorithm forms part of a family of ensemble machine learning algorithms and is a popular variation of bagged decision trees. It also comes implemented in the OpenCV library. In this tutorial, you will learn how to apply OpenCV’s Random Forest algorithm for image classification, starting with a …
The Naive Bayes algorithm is a simple but powerful technique for supervised machine learning. Its Gaussian variant is implemented in the OpenCV library. In this tutorial, you will learn how to apply OpenCV’s normal Bayes algorithm, first on a custom two-dimensional dataset and subsequently for segmenting an image. After completing …
In a previous tutorial, we have explored the use of the Support Vector Machine algorithm as one of the most popular supervised machine learning techniques that comes implemented in the OpenCV library. So far, we have seen how to apply Support Vector Machines to a custom dataset that we have …
One of the pre-processing steps that are often carried out on images before feeding them into a machine learning algorithm is to convert them into a feature vector. As we will see in this tutorial, there are several advantages to converting an image into a feature vector that makes the …
The Support Vector Machine algorithm is one of the most popular supervised machine learning techniques, and it comes implemented in the OpenCV library. This tutorial will introduce the necessary skills to start using Support Vector Machines in OpenCV, using a custom dataset that we will generate. We will then apply …
Nov. 21, 2023, 12:24 p.m.
In the previous post, you saw that OpenCV can extract features from an image using a technique called the Histogram of Oriented Gradients (HOG). In short, this is to convert a “patch” of an image into a numerical vector. This vector, if set up appropriately, can identify key features within …
At the very start of your machine learning journey, making use of publicly available datasets alleviates the worry of having to create the datasets yourself, and rather lets you focus on learning to use the machine learning algorithms. It also helps if the datasets are moderately sized and do not …
Besides the feature descriptor generated by SIFT, SURF, and ORB, as in the previous post, the Histogram of Oriented Gradients (HOG) is another feature descriptor you can obtain using OpenCV. HOG is a robust feature descriptor widely used in computer vision and image processing for object detection and recognition tasks. …
In the previous post, you learned some basic feature extraction algorithms in OpenCV. The features are extracted in the form of classifying pixels. These indeed abstract the features from images because you do not need to consider the different color channels of each pixel, but to consider a single value. …
In the world of computer vision and image processing, the ability to extract meaningful features from images is important. These features serve as vital inputs for various downstream tasks, such as object detection and classification. There are multiple ways to find these features. The naive way is to count the …
The OpenCV library comes with a module that implements the k-Nearest Neighbors algorithm for machine learning applications. In this tutorial, you are going to learn how to apply OpenCV’s k-Nearest Neighbors algorithm for the task of classifying handwritten digits. After completing this tutorial, you will know: Several of the most …
In a previous tutorial, we have explored the use of the k-means clustering algorithm as an unsupervised machine learning technique that seeks to group similar data into distinct clusters, to uncover patterns in the data. We have, so far, seen how to apply the k-means clustering algorithm to a simple …
When you work with OpenCV, you most often work with images. However, you may find it useful to create animation from multiple images. Chances are that showing images in rapid succession may give you different insight or it is easier to visualize your work by introducing a time axis. In …
The k-means clustering algorithm is an unsupervised machine learning technique that seeks to group similar data into distinct clusters, with the aim of uncovering patterns in the data that may not be apparent to the naked eye. It is possibly the most widely known algorithm for data clustering, and it …
Digital videos are close relatives of digital images because they are, indeed, made up of many digital images that are sequentially displayed in rapid succession to create the effect of moving visual data. The OpenCV library provides several methods to work with videos, such as reading video data from different …
When working with images, some of the most basic operations that are essential to get a grip on include reading the images from disk, displaying them, accessing their pixel values, and converting them from one color space to another. This tutorial explains these basic operations, starting first with a description …
If you are interested in working with images and video and would like to introduce machine learning into your computer vision applications, then OpenCV is a library that you will need to get hold of. OpenCV is a huge open source library that can interface with various programming languages, including …