Rosanswers logo


I am trying to use rtabmap_ros with SIFT and SURF. I've installed nonfree OpenCV and can find the folder in /usr/include/opencv2. For some reason though whenever I run rtabmap_ros I get the message

[ WARN] (2016-04-15 10:21:56.026) Features2d.cpp:349::create() SURF/SIFT features cannot be used because OpenCV was not built with nonfree module. ORB is used instead.

Anyone know why rtabmap_ros can't find nonfree?

Originally posted by Icehawk101 on ROS Answers with karma: 955 on 2016-04-15

Post score: 0

Original comments

Comment by bluking on 2016-04-18:
you can check nonfree module is true or not when you catkin_make you project, if not, please build the opencv with source code , follow here

Comment by Icehawk101 on 2016-04-18:
They were installed. As matlabbe said, I needed to do a clean build of rtabmap from source


1 Answer 1


Rosanswers logo


Make sure to do a clean build of rtabmap after OpenCV (with nonfree) is installed (step 2 here):

$ cd rtabmap/build
$ rm -r *
$ cmake -DCMAKE_INSTALL_PREFIX=~/catkin_ws/devel ..
$ make
$ make install

When you do $ cmake .., make sure you see in the info at the end that OpenCV version with nonfree is detected.


Originally posted by matlabbe with karma: 6409 on 2016-04-15

This answer was ACCEPTED on the original site

Post score: 3

Original comments

Comment by Icehawk101 on 2016-04-15:
Yup, that did it. Thanks


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.