above two articles article In the detection of stable feature points in the dog space, Lowe has mentioned that these feature points are more stable than Harris corner points. The next step is to consider how best to describe these dog feature points.
Well, let's talk about how to describe these feature points. Many of the data mention that SIFT is a local feature, because in the SIFT description generation process, the distribution of the feature Point neighborhood feature points is considered (without taking advantage of global information). The main calculation procedures in this step include determining the direction of the feature point and generating the feature descriptor .
Determining the direction of a feature point
During the determination of the feature points, the coordinates and scales of the feature points are determined (the coordinates are important, the scales are more important, and then you will find that the parameters are more and more important in the whole description generation process, because it is the scale-invariant that uses the scale parameter, Scale does not change! ), select the image in the Gaussian pyramid based on the scale of the feature point, and then determine the direction of the feature point on the image. Here is the idea of scale unchanged.
The direction of the characteristic point is determined based on the statistic information, with the feature point as the center, the amplitude of the gradient direction and gradient of the characteristic distance is measured, and the direction and amplitude of the gradient are calculated as follows:
The gradient direction histogram of the point neighborhood is constructed, and a circular 360° is divided into 36 slots, and increments from 0 ° to 10 ° per slot. The gradient direction histogram is constructed based on the direction of the neighborhood point, the amplitude of the gradient, and the distance from the feature point, as shown in:
According to the gradient histogram, the angle of the histogram peak is the direction of the current feature point A, and if the gradient amplitude of an angle and the >= peak of 80%, then a new feature point B is generated, the coordinates of this point and the scale parameters are the same, but the angle is different.
At this point, the orientation of the feature points is determined.
Generating an image local descriptor
In this step, the coordinates, scale, and orientation of each feature point in the image are determined, and the following information is given to get the descriptors.
Similar to the defined feature point direction mentioned above, the generation descriptor is also based on the feature point as the center of the image local information, first, according to the scale of the feature points to select the image of the Gaussian pyramid, and then calculate the feature points in the neighborhood range of the gradient direction and gradient amplitude, And the direction of these gradients is updated according to the gradient direction of the characteristic points obtained above, so as to achieve the direction invariance of the descriptors.
After the direction invariance is complete, the feature descriptor is calculated. The descriptor calculation process is also based on the gradient direction histogram, except that the slots of this histogram are divided by 45° (so that each histogram has only 8 slots) instead of 10°. The exact process is as follows:
In order to eliminate the influence of illumination on descriptors, the gradient histogram is normalized by statistical direction gradient histogram of each 4x4 block. Then each histogram slot data in series to get SIFT descriptor, Lowe proposed when the gradient direction histogram is a 4x4 dimension, the SIFT descriptor has the best degree of distinction, so this is the birth of Laosheng long talk of the 128-dimensional sift eigenvectors, as shown:
At this point, the SIFT feature calculation process is complete.
From for notes (Wiz)
Sift parsing (iii) generating feature descriptors