Surf

From ActiveArchives
Jump to: navigation, search

Probing Surf features

The following pages contains a selection of probes made with Surf features. Surf stands for Speeded Up Robust Features.

"For any object in an image, interesting points on the object can be extracted to provide a "feature description" of the object. This description, extracted from a training image, can then be used to identify the object when attempting to locate the object in a test image containing many other objects. To perform reliable recognition, it is important that the features extracted from the training image be detectable even under changes in image scale, noise and illumination. Such points usually lie on high-contrast regions of the image, such as object edges." [1]

Image 1 shows the opencv[2] default ouptut for the SURF algorithm applied to an image of the Guttormsgaard's collection. The circles represent the "zones of influence" of the features.

Image 2 gives a sort of panorama of the features of the same image organized by size.

The main interest of these features is to use them to compare different images and detect their similarity even if their scale or their orientation differs. The algorithm works internally with different versions of the same image on which it applies a combination of blurring and sharpening effects. Each version is called a plane of the image. Working with these different planes of an image makes possible to find connections between images even if some distortion has occured. This is why the algorithm is said to be "robust".

The following sequence of images shows the zones corresponding to two matching features in two different images. They are shown side by side. Although very important in similarity detection, the zones of the image corresponding to the features are rarely shown. At first glance, what the features reveal is rather puzzling. They invite us into a very intimate detail of an image that we would have probaly overlooked. The comparison between the two matching features sometimes correspond to something we can understand "intuitively", they "look alike", while in other images, the traits that connect them seem to evade "visuality" and stay hidden in their mathematical morphology. Below the features pair, you can see the two connected images and where the features are located in each image.

Additionnally a graph has been produced to show the relationship implied by the connecting features. For a large part the algorithm detects connections between the different views of a same object. But more interestingly, it sometimes makes surprising connections, "seeing" unexpected affinities, introducing the little difference that questions its own authority at establishing homogeneous sets. [3]

  1. SURF (Speeded Up Robust Features) http://en.wikipedia.org/wiki/SURF The SURF algorithm has been patented by the firm Kooaba later sold to Qualcomm. The regulation over software patents in Europe is still a hot debate and the nation states interpret it differently (ie. France rejects it alltogether). The next step of our investigation using feature invariance will include patent-free algorithm like BRISK and ORB
  2. OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.
  3. The SURF algortihm doesn't try to emulate high-level human perception, it doesn't try to "understand a scene". It detects zones that have specific statistical characteristics. In the traditional use of the algorithm for image matching additional measures may be taken to avoid unexpected connections, to further increase the convergence between the algorithmic output and what would correspond to human judgement.
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox