SURFmex: A MATLAB SURF interface

SURFmex is a MATLAB interface for the Speeded Up Robust Features interest point detector, written by Petter Strandmark. It is a simple interface which just calls OpenCV.


  1. first calls createTargetModel with a target image and an image with the contour of the target in the same image as input.
  2.  createTargetModel then gathers the information needed for object matching and output it as targetModel.
  3. matchTarget is then called with the targetModel and the test image as input. The contour of the target in the test image will then be shown.

The algorithm works as follows.

  1. First the SURF points of the target image is extracted and stored.
  2. In matchTarget.m the SURF points of the test image is also calculated and each of them is matched to the most similar SURF point in the model.
  3. By using the scale and orientation of the SURF point descriptor, each matched SURF point pair has a translation from the target image to the test image.

Therefore 1 pair of correctly matched SURF points can decide the position, scale and orientation of the target in the test image. However most of the matched pairs aren’t correct, therefore we use all of the pairs to cast votes on what are the correct position, scale and orientation of the target in the test image.

The result that has the highest votes are then refined. A rotation matrix and  a transition vector is then calculated based on the SURF point pairs in the result.



2 responses to “SURFmex: A MATLAB SURF interface

  1. House_eln


    Can you help me PLZ,
    I have some problem’s when i compile “surfpoints.cpp” and “surfmatch.cpp” under matlab; i have this :

    In file included from surfpoints.cpp:21:
    cppmatrix.h: In member function ‘void matrix::init(const mxArray*) [with T = unsigned char]’:
    cppmatrix.h:32: instantiated from ‘matrix::matrix(const mxArray*) [with T = unsigned char]’
    surfpoints.cpp:59: instantiated from here
    cppmatrix.h:37: error: ‘~matrix’ is not a member of ‘matrix’

    mex: compile of ‘ “surfpoints.cpp”‘ failed.

    ??? Error using ==> mex at 207
    Unable to complete successfully.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s




Just another site

Jing's Blog

Just another site

Start from here......







Just another site

Where On Earth Is Waldo?

A Project By Melanie Coles

the Serious Computer Vision Blog

A blog about computer vision and serious stuff

Cauthy's Blog

paper review...

Cornell Computer Vision Seminar Blog

Blog for CS 7670 - Special Topics in Computer Vision


Life through nerd-colored glasses

Luciana Haill

Brainwaves Augmenting Consciousness



Dr Paul Tennent

and the university of nottingham

turn off the lights, please

A bunch of random, thinned and stateless thoughts around the Web

%d bloggers like this: