Ask Your Question

Is FREAK still in OpenCV 3?

asked 2014-10-21 14:23:41 -0600

Doombot gravatar image

updated 2014-10-30 08:56:25 -0600

I am tinkering with OpenCV 3 in C++ Visual Studio 2012. I built it from Github. Now, I would like to use FREAK but while I can create BRISK or ORB object, I am not able to create a FREAK extractor.

Is anyone successful with this? I should mention that since I am not that experienced with OpenCV, it might only be that I am following a OpenCV 2.4.X tutorials and that they are no longer compatible with the new version. If so, any doc or example would be welcome!

Here is the doc I am using right now.

EDIT : I think that I have not built the xfeatures2d module. Is it necessary for OpenCV 3 and if yes, is there some way to build it without building the entire OpenCV 3 project?

EDIT 2 : So, as pointed in the answer, you have to build the xfeatures2d module, AND use the namespace "using namespace xfeatures2d;" or declare it every time (like you would do for cv:: or std::).

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2014-10-22 02:48:02 -0600

berak gravatar image

updated 2014-10-22 02:52:47 -0600

yes, FREAK is in the xfeatures2d module in opencv_contrib.

it's not absolutely nessecary for opencv3, but if you need FREAK or BRIEF, you will have to get the opencv_contrib repo and build from src.

don't be too afraid of that, if you already built the main repo from scratch, all you need to do is add the path to the contrib modules (see the readme there), and rerun cmake / vs.

after running the INSTALL proj. , you will have all headers/libs/dlls in one place.

edit flag offensive delete link more


Mmmm there's no "Global" CMakeLists.txt for the contrib project. CMake wants a list. There are one in every module. I looked at the list from the main repo and it is a little bit complex. I will try to find out how to do it/ask for it on github! Anyway, thanks for the info!

Doombot gravatar imageDoombot ( 2014-10-22 07:37:23 -0600 )edit

you're supposed to run cmake from the same build folder, in the same way, that you used, when building the main repo. just add the -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules part to your cmake cmdline.

berak gravatar imageberak ( 2014-10-22 07:57:01 -0600 )edit

Question Tools


Asked: 2014-10-21 14:23:41 -0600

Seen: 4,113 times

Last updated: Oct 30 '14