What is the difference between 'features' and 'descriptors' in computer vision / machine learning?
I've read multiple time sentences similar to
Finally, for standard image classification bag-of-words features based on SIFT descriptors have been found critical for high performances. We first compute a standard SIFT discriptor at regular grid points over the whole image.
Source: "Multi-class image segmentation using Conditional Random Fields and Global Classification" by Nils Plath, Marc Toussaint, Shinichi Nakajima.
What is a descriptor? I thought SIFT is an algorithm which operates on images and gives features (vectors in $\mathbb{R}^n$, where $n$ is fixed for a fixed size of images and parameters of the SIFT algorithm)?
machine-learning computer-vision features
Martin ThomaMartin Thoma
The SIFT descriptor vector is a feature vector. "Descriptor vector" and "feature vector" are synonyms in this context. Most of the descriptions of SIFT I've seen use the phrase "descriptor vector", but occasionally they'll refer to it as a "feature vector" or refer it to as "SIFT features", perhaps to draw upon intuition from machine learning.
SIFT works by analyzing the image, identifying a set of keypoints (a set of points in the image that will be helpful for alignment), and then for each keypoint, it computes a descriptor vector (a feature vector). Then it uses the descriptor vectors for the keypoints in image $I_1$ and the descriptor vectors for the keypoints in image $I_2$ to try to align the two images to each other. The intuition is that if the descriptor vector for a keypoint in image $I_1$ is "similar" to a descriptor vector for a keypoint in image $I_2$, then maybe those two points should be aligned to each other. Here "similarity" is measured by the Euclidean distance between the two descriptor vectors.
Thus, a descriptor vector for a keypoint is a vector, e.g., in $\mathbb{R}^{128}$, chosen so that if the image is translated, scaled, rotated, etc., then the descriptor vector for that point won't be changed much by the transformation.
You can find a reasonable description of SIFT in Wikipedia: https://en.wikipedia.org/wiki/Scale-invariant_feature_transform
D.W.♦D.W.
$\begingroup$ I find the answer helpful, wonder why it's not accepted. $\endgroup$ – gsamaras Jan 10 '18 at 18:55
Not the answer you're looking for? Browse other questions tagged machine-learning computer-vision features or ask your own question.
What exactly is the difference between supervised and unsupervised learning?
What are the differences between computer vision and image processing?
What is the difference between Decision Support System and Machine Learning?
What's the difference between Adaptive Control and Hierarchical Reinforcement Learning?
What is the name of this problem in Computer Vision?
Clustering a set of images using keypoint descriptors
Learning Image Processing/Computer Vision
Machine learning / Computer vision
Computer Vision - What is spatial histogram/pyramid feature?
In lieu of neural networks and deep learning, what are some approaches to computer vision?