SIFT 알고리즘에서 크기에 불변한 특징점을 검출할 때에는 인접한 가우시안 블러링 영상끼리의 차영상을 사용하며, 이를 DoG(Difference of Gaussian) 영상이라고 합니다. 그림 14-6 아래쪽에 나열한 영상이 레나 영상으로부터 구한 DoG 영상입니다. 그림 14-6에서는 DoG 영상을 그레이스케일 영상 형식으로 보여 주기 위해 각각의 차영상 픽셀 값에 128을 더하여 나타냈습니다. SIFT 알고리즘은 DoG 영상 집합에서 인접한 DoG 영상을 고려한 지역 극값 위치를 특징점으로 사용하며, 이후 에지 성분이 강하거나 명암비가 낮은 지점은 특징점에서 제외합니다.
SIFT 알고리즘은 특징점을 검출하는 기능뿐만 아니라 특징점 주변의 픽셀 값을 이용한 기술자(descriptor) 계산 방법도 포함합니다. 특징점 기술자는 특징점 주변 영상의 특성을 여러 개의 실수 값으로 표현한 것을 의미하며, 특징 벡터(feature vector)라고도 합니다. 서로 같은 특징점에서 추출된 기술자는 실수 값 구성이 서로 일치해야 합니다. SIFT는 기본적으로 특징점 부근의 부분 영상으로부터 그래디언트 방향 히스토그램을 추출하여 기술자로 사용합니다. 특징점 근방으로부터 특징점의 주된 방향 성분을 계산하고, 이 방향만큼 회전한 부분 영상으로부터 128개의 빈으로 구성된 그래디언트 방향 히스토그램을 계산합니다. 각각의 빈 값은 float 자료형을 사용하며, 하나의 SIFT 특징점은 512바이트 크기의 기술자로 표현됩니다.
SIFT 알고리즘은 영상의 크기, 회전 등의 변환뿐만 아니라 촬영 시점 변화에도 충분히 강인하게 동작하며, 잡음의 영향과 조명 변화가 있어도 특징점을 반복적으로 잘 찾아냅니다. SIFT 알고리즘은 다양한 컴퓨터 비전 분야에서 적용되었고, 특히 객체 인식, 파노라마 영상 이어 붙이기, 3차원 장면 인식 등의 분야에서 효과적으로 사용되었습니다.