YW P Kwon
YW P Kwon

Reputation: 2168

relationship between SIFT keypoint orientation and SIFT description orientation

I am using VLfeat open source for extracting SIFT keypoints and their descriptions. The image below shows one of them. The yellow disc indicates the keypoint's scale (radius) and orientation (line). The green frame indicates its description (i.e., 4x4 8-bin orientation histogram).

The question itself is simple. Why the "orientation of a keypoint (yellow line)" is different with the "major(most frequent) orientation in its description (most popular bin in green)" here?

As I understand, the orientation of a keypoint is determined by the peak pixel gradient among around. Then, shouldn't it be natural for the orientation to be also shown in green? Is it because the green frame is much bigger than the keypoint's scale?

SIFT
(source: young at me.berkeley.edu)

Upvotes: 2

Views: 787

Answers (2)

Ying Xiong
Ying Xiong

Reputation: 4938

I think this is just a matter of visualization used in VLfeat. As described here standard
(source: vlfeat.org)

the "standard oriented frame" will be visualized as a circle with a radius pointing downwards.

The same applies here. If you rotate the frame such that the radius points downwards, then the major gradient direction of the frame should be horizontal, which is agreed in most histograms inside the 4x4 squares.

I think this convention makes sense, because the radius pointing downwards is aligned with the "main strokes" of the frame (which is visually intuitive), but orthogonal to the major gradient direction.

Upvotes: 1

McMa
McMa

Reputation: 1566

There are at least three things to consider in order to explain why this needs not to be the case:

The first one is the fact that the main (yellow) orientation has a 36bin histogram, and the descriptor (green) orientations are 8bin; this allows for an error of a couple (~30) of degrees.

The second one is that the descriptor histograms (green) are calculated after the feature area was rotated by its main (yellow) orientation, so they would, at very least, be shifted by this rotation.

But the most important reason is that both orientations are calculated from the same region but a different neighbourhood (different in size and position) altoghether, so the gradients of them need not to be similar at all.

Upvotes: 1

Related Questions