Computer Vision

Histogram of Oriented Gradients

Table of Contents Introduction Orientation Histograms Histogram of Oriented Gradients Introduction Key Questions Why are these necessary? What limitations do they address that corner interest points cannot? Although the original HOG Paper came out after SIFT, it is much simpler to describe the process (Dalal and Triggs 2005). Histograms of Oriented Gradients are feature vectors that are generated by evaluating gradients within a local neighborhood of interest points. Orientation Histograms This approach depends on building orientation histograms. For each pixel in the original image, construct a histogram of gradient orientations of all pixels within a square window. The gradient orientations of each pixel are easily calculated following the approach used for Edge Detection. This transformation can be flattened into a single vector that is used to compare images via L2 distance or some other metric.

Image Features

Table of Contents Introduction Detecting Corners Describing Image Patches Scale Invariance Introduction Why do we care about image features? One of the main goals of computer vision is understanding of some environment through visual perception. In order to summarize a visual object, we need some description of it. These descriptions can come in many forms, so we need to articulate some goals as to what we are ultimately looking for when describing an image.

Linear Filters

Table of Contents Introduction Smoothing Convolution Gaussian Filters Image Derivatives Introduction How do we detect specific patterns in images (eyes, nose, spots, etc.)? Weighted sums of pixel values. Smoothing When discussing resizing and interpolation, we saw how the choice of scale factor and rotation can produce aliasing in images. Typically, this effect is hidden using some sort of smoothing. Let’s first look at the case of downsampling an image to 10\% of its original size. If we use nearest neighbor interpolation, the result is very blocky, as seen below.

Scale Invariant Feature Transforms

Table of Contents Introduction Difference of Gaussians Keypoint Localization Orientation Assignment Descriptor Formation Introduction https://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf General approach to computing SIFT features: Scale-space Extrema Detection Keypoint localization Orientation Assignment Generate keypoint descriptors Difference of Gaussians This same technique for detecting interesting points in a scale-invariant way can be approximated by taking the Difference of Gaussians. Consider the figure below. Figure 1: Comparison of DoG and Laplacian. Credit: Fei-Fei Li.