Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between dense SIFT and HoG?

I am new to Computer Vision. I am studying Dense SIFT and HOG. For dense SIFT, the algorithm just considers every point as an interesting point and computes its gradient vector. HOG is another way to describe an image with a gradient vector.

I think Dense SIFT is a special case for HOG. In HoG, if we set the bin size to 8, for each window there are 4 blocks, for each block, there are 4 cells and the block stride is the same as the block size, we can still get a 128 dim vector for this window. And we can set any window stride to slide the window to detect the whole image. If the window stride of both these two algorithms is the same, they can get identical results.

I am not sure whether I am correct. Can anyone help me?

like image 942
user3783676 Avatar asked Jul 07 '14 20:07

user3783676


People also ask

What is dense SIFT?

Dense SIFT collects more features at each location and scale in an image, increasing recognition accuracy accordingly. However, computational complexity will always be an issue for it (in relation to normal SIFT).

What are SIFT and HOG descriptors?

Histograms of oriented gradients (HOG) computed over a grid in the image domain. In contrast to SIFT descriptor, which is a local image descriptor, the resulting histograms of oriented gradients (HOG) descriptor is a regional image descriptor.

Is HOG better than CNN?

first algorithm uses the Histogram of Oriented Gradients (HOG) features combined with a linear classifier (SVM), while the second one uses a Convolutional Neural Network (CNN). The CNN-based face detector outperforms the HOG-based detector on the OSIE dataset especially on the badly exposed faces (Fig.

What is HOG in feature extraction?

Histogram of Oriented Gradients, also known as HOG, is a feature descriptor like the Canny Edge Detector, SIFT (Scale Invariant and Feature Transform) . It is used in computer vision and image processing for the purpose of object detection.


1 Answers

SIFT descriptor chooses a 16x16 and then divides it into 4x4 windows. Over each of these 4 windows it computes a Histogram of Oriented gradients. While computing this histogram, it also performs an interpolation between neighboring angles. Once you have all the 4x4 windows, it uses a gaussian of half the window size, centered at the center of the 16x16 block to weight the values in the whole 16x16 descriptor.

HoG on the other hand only computes a simple histogram of oriented gradients as the name says.

I feel that SIFT is more suited in describing the importance of a point, due to the gaussian weighting involved, while HoG does not have such a bias. Due to this reason, (ideally) HoG should be better suited at classification of images over dense SIFT, if all feature vectors are concatenated into one huge vector (this is my opinion, may not be true)

like image 119
Bharat Avatar answered Dec 30 '22 00:12

Bharat