9 – Histogram of Oriented Gradients

In computer vision there are many algorithms that are designed to extract spatial features and identify objects using information about image gradients. One illustrative technique is called HOG or Histogram of Oriented Gradients. Histogram of Oriented Gradients may sound a little intimidating. So let’s go through what these terms actually mean. A histogram is a … Read more

8 – 08 ORB In Video V2 (1)

One common use for ORB, is in tracking and identifying objects in real time video streams. In this case, we compute the ORB descriptors for any images or objects we want to detect, before seeing a video stream and save those descriptors. Then, for each frame in an incoming video stream, we calculate ORB descriptors … Read more

7 – 07 Feature Matching V2

Now that you know how the algorithm works you may be wondering how exactly can we use ORB descriptors to perform object recognition? Let’s look at an example that displays how ORB can detect the same object at different scales and orientations. Suppose I want to be able to detect this person’s face in other … Read more

6 – 05 Scale And RotationInvariance V2

ORB uses fast to detect key points in an image. And it goes to a couple of extra steps to make sure that it can detect objects no matter their size, or location in an image. Given an image, the ORB algorithm starts by building an image pyramid. An image pyramid is a multi-scale representation … Read more

5 – 04 Brief V4

The second part of the orb algorithm is to take the key points found by the first algorithm and turn those into feature vectors that together can represent an object. To create feature vectors, orb uses the BRIEF algorithm. BRIEF stands for binary robust independent elementary features, and its purpose is to create binary feature … Read more

4 – 03 Fast V3

The first step in ORB feature detection is to find the key points in an image, which is done by the FAST Algorithm. FAST stands for Features from Accelerated Segments Test, and it quickly select key points by comparing the brightness levels in a given pixel area. Given a pixel, which I’ll call p in … Read more

3 – 02 Introduction To ORB V3

Orb, stands for Oriented Fast and Rotated Brief. Fast and brief, are a feature detection in a vector creation algorithm respectively. And we’ll get into the math behind each of these algorithms in the next couple of videos. Orb, starts by finding special regions in an image called key points. In general, you can think … Read more

2 – 01 Realtime Feature Detection V2

Having a fast Object Recognition Algorithm is essential for many computer vision applications, such as an augmented reality, robotics and self-driving cars. These kinds of applications need to respond to input video streams in real time, and so time is critical. A self-driving car for example, needs to constantly check whether another cars in front … Read more

1 – Feature Vectors

Now you’ve seen that corners are good unique features that can help identify certain points on an object. And this is a great example of how object structure and image gradients can be useful in feature recognition. But if we’re interested not only in feature points like corners, but in whole object detection, we have … Read more

9 – 06 First Convolutional Layer T1 V1 RENDER V2

The first convolutional layer in a CNN applies a set of image filters to an input image and outputs a stack of feature maps. After such a network is trained, we can get a sense of what kinds of features this first layer has learned to extract by visualizing the learned weights for each of … Read more

8 – 05 Feature Maps V1RENDER V3

Let’s start near the beginning of this CNN. We’ve talked about how the first convolutional layer in a CNN consists of a number of filtered images that are produced as the input image is convolved with a set of image filters. These filters are just grids of weights. For a convolutional layer with four filters, … Read more

7 – 04 Feature Visualization V1 RENDER V2

Let’s look at the architecture of a classification CNN that takes in an image and outputs a predicted class for that image. You’ve seen how to train CNN’s like this on sets of labeled image data, and you’ve learned about the layers that make up a CNN. Things like convolutional layers that learned to filter … Read more

6 – 动量

So, here’s another way to solve a local minimum problem. The idea is to walk a bit fast with momentum and determination in a way that if you get stuck in a local minimum, you can, sort of, power through and get over the hump to look for a lower minimum. So let’s look at … Read more

5 – Dropout

Here’s another way to prevent overfitting. So, let’s say this is you, and one day you decide to practice sports. So, on Monday you play tennis, on Tuesday you lift weights, on Wednesday you play American football, on Thursday you play baseball, on Friday you play basketball, and on Saturday you play ping pong. Now, … Read more

4 – Pooling Layers

We’re now ready to introduce you to the second and final type of layer that we’ll need to introduce before building our own convolutional neural networks. These so-called pooling layers often take convolutional layers as input. Recall that a convolutional layer is a stack of feature maps- where we have one feature map for each … Read more

3 – Convolutional Layers (Part 2)

Consider this image of a dog. A single region in this image may have many different patterns that we want to detect. Consider this region for instance. This region has teeth, some whiskers, and a tongue. In that case, to understand this image, we need filters for detecting all three of these characteristics, one for … Read more

2 – 03 Data And Lesson Outline RENDER V2

In this lesson, to learn about CNNs, we’ll first talk about the layers that make up an image classification CNN. You’ll learn how to define these layers, and what role each plays in extracting information from an input image. After learning about these layers, you’ll see how to define a CNN that aims to classify … Read more

11 – 20 Summary Of Feature Viz V2 RENDER V2

Several approaches for understanding and visualizing convolutional networks have been developed in the literature. Partly, as a response to the common criticism that the learned features in a neural network are not interpretable. Now, you’ve seen a view of the most commonly used feature visualization techniques from looking at filter weights to looking at layer … Read more

10 – 10 Visualizing Activations V1 RENDER V2

For intermediate layers, like the second convolutional layer in a CNN, visualizing the learned weights in each filter doesn’t give us easy to read information. So, how can we visualize what these deeper layers are seeing? Well, what can give us useful Information is to look at the feature maps of these layers as the … Read more

1 – 02 Intro To CNN Layers V1 RENDER V3

You’ve already seen how to extract color and shape features from an image. In the examples you’ve gone through, it was up to you to decide what features and filters were the most useful for grouping pixel data into similar clusters or classes. This is similar to how Convolutional Neural Networks or CNN’s learned to … Read more