How does Lowe compute the "repeatability" of his SIFT Algorithm?

Why does the Scale Invariant Feature Transform (SIFT) algorithm tend to extract unstable keypoints from non-rigid objects in different illumination conditions?

  • I was implementing SIFT algorithm as feature extraction method in biometric (face recognition) authentication system. And the result, system has bad performance when authenticating user in different illumination condition (system cannot identified privileged user, high false reject rate). In detail: template image (user's face) was extracted using SIFT alorithm resulting keypoint descriptor, thus was saved to system database. Test image (same user's face) was extracted too. And the test keypoint was compared with template keyoint (using euclidean distance method), resulting total matched keypoint between those two images. And the problem is when two images was taken in same condition (light illumination), resulting high matched keypoint. And when the images was taken in different condition (1 light & 1 not too light), the result was low matched keypoint. And it means that extracted keypoint descriptor from those two images was too different. I still didn't get it, why in a bit different illumination change, SIFT algorithm extracted too unstable keypoint ?

  • Answer:

    The standard SIFT algorithm discards low contrast keypoints, such as those that would appear on faces, for precisely this reason: they are unstable across different samples. http://luks.fe.uni-lj.si/sl/osebje/vitomir/pub/FSIFT.pdf provides some ways of getting around that. In particular, take a look at this graph: According to the paper, the datasets S1-5 are ordered by the harshness of their illumination conditions. From this graph it's clear that the standard SIFT algorithms degrade, while the proposed solution is able to maintain its accuracy. The paper above still makes many assumptions despite dealing with illumination: it assumes that important local regions of the face are visible, and that there are high quality training samples. Other approaches are likely more robust to violations of these assumptions, e.g. http://www.scholarpedia.org/article/Elastic_Bunch_Graph_Matching.

Johnny Ho at Quora Visit the source

Was this solution helpful to you?

Other answers

My answer will be in a more general (intuitive maybe) way than Johnny's. First of all, we are speaking of the keypoint detector part of SIFT, not the descriptor part. In my opinion, using the SIFT keypoint detector (SIFT for short) for face recognition is not a good idea because SIFT, like many other unsupervised keypoint detection methods, tries to find highly repetitive regions and that means corners, blobs or things like that (I don't remember the exact procedure). When you have a face, it has few trustworthy of the previously mentioned characteristics (detected on eyes, lips, nostrils...), but for the most part it is a low contrast region and most keypoints detected on this region will be very unstable because if lighting conditions changes, the 'false corners/blobs' produced by shadows (for example) will change their location very easily. I'm no expert on face recognition (have more experience on object recognition), but it seems to me that to detect reliable keypoints on faces the thing to do is to use supervised learning, that way your keypoints could be more robust. An unsupervised method couldn't possibly know about a face geometry (for example).

Tomas Mardones

Hi, I would add that usually SIFT descriptor is used in face recognition without the key point detection part. You will have to extract sift descriptors of a certain size(or multiple sizes) on a dense grid of points, equally spaced. Hope it helps.

Alin Draghia

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.