I need to understand how SIFT calculates the descriptors for the keypoints.
Intuitively, i understand that it takes each keypoint, calculates the gradients for each pixel in a neighborhood of the keypoint, and that's basically the descriptor for the keypoint. The paper mentions a coordination system rotation in the keypoint, i assume this is when the image is rotated, the keypoint descriptor doesn't change.
I'm following this implementation of SIFT, and in the part of the calculation function there is this cos/sin calculation: i think this is related to the coord system rotation, can you explain how the coord system is being rotated, and why that has to do with the hist_width?
p.s. This is my first post here!