tezvyn:

SIFT scale and rotation invariance

AI-drafted, machine-checkedSource: interviewintermediate
WHAT IT TESTS

how SIFT achieves invariance.

OUTLINE

scale-space extrema via difference-of-Gaussians give scale invariance; a dominant gradient orientation gives rotation invariance; the descriptor is a normalized gradient histogram.

WHAT THIS TESTS The interviewer wants the specific mechanisms that grant SIFT its scale and rotation invariance, not just the name of the algorithm.

A GOOD ANSWER COVERS SIFT proceeds in clear stages. First it builds a scale space by progressively blurring the image with Gaussians at multiple scales and octaves, then computes the difference-of-Gaussians between adjacent blur levels as an efficient approximation to the Laplacian. Keypoints are local extrema of the difference-of-Gaussians across both space and scale; detecting a feature at the scale where it is most prominent is what delivers scale invariance. Next, weak and edge-like candidates are rejected for stability. Then each keypoint gets a dominant orientation derived from the histogram of local gradient directions, and all subsequent measurements are made relative to that orientation, which delivers rotation invariance. Finally the descriptor is a normalized histogram of gradient orientations over a grid of subregions around the keypoint.

COMMON WRONG ANSWERS Naming only the descriptor and ignoring detection. Claiming SIFT is fully affine or perspective invariant; it is robust to moderate viewpoint change but not a full affine invariant. Forgetting the orientation assignment, which is the actual source of rotation invariance.

LIKELY FOLLOW-UPS Why is difference-of-Gaussians used instead of the Laplacian directly. How does descriptor normalization help with illumination. How does the orientation histogram handle multiple strong directions.

ONE CONCRETE EXAMPLE Consider photographing a logo and later a zoomed-in, tilted photo of the same logo. SIFT finds a keypoint at the corner of a letter in both images; because the scale space is searched across octaves, the corner is detected at a small scale in the wide shot and a larger scale in the zoomed shot, yet it is the same conceptual feature, giving scale invariance. The dominant orientation of that keypoint rotates with the logo, so when the descriptor is built relative to that orientation, the resulting 128-dimensional vector is nearly identical despite the tilt, giving rotation invariance. Normalizing the descriptor and clamping large values reduces sensitivity to brightness and contrast changes. Matching the two descriptor sets then recognizes the logo across the very different views.

Read the original → en.wikipedia.org

Get five bites like this every day.

Tezvyn delivers a daily feed of 60-second tech bites with quizzes to lock in what you learn.