FAST/FREAK Keypoint Detection

A project log for OpenMV

Python-powered machine vision modules

i.abdalkaderi.abdalkader 09/11/2014 at 12:403 Comments

Feature/Keypoints detection is a very interesting and useful tool to have around when doing image processing,  it has endless applications from tracking objects, matching and searching images to more advanced stuff...So far I've been using SURF for this, but other than being complicated and very resource consuming, the algorithm itself is patented in the US and cannot be used for commercial stuff without a license, in addition to that, the only implementation I could find (libopensurf) is GPL'd..

So I removed all SURF code from the repo and I'm using this relatively new super fast/lightweight algorithm, called FREAK....Note that FREAK is a keypoint descriptor, so it needs something to find keypoints first, for this I'm using a corner detection algorithm called FAST.

To give you an idea of what you can do with this FAST/FREAK detector, I made this short video:


Neon22 wrote 11/11/2014 at 21:32 point
note that the hugin project had problems with surf etc licensing and so built their own OS feature tool. which works really well and is unencumbered. Maybe you can use that ?

  Are you sure? yes | no

i.abdalkader wrote 11/11/2014 at 22:24 point
Yeah I know, that's one of the reasons why I removed all SURF code from the project, as far as I know FAST/FREAK are both patent-free.

  Are you sure? yes | no

shimniok wrote 09/15/2014 at 15:15 point
Man, that works *really* well. Looking forward to getting the firmware on my openmv. :)

  Are you sure? yes | no