The library itself is independent of ROS, so it is built outside ROS catkin. There are wrappers for ROS (https://github.com/strands-project/v4r_ros_wrappers), which can then be placed inside the normal catkin workspace.
stated in package.xml
There are two options to use the SIFT recognizer:
- Use V4R third party library SIFT GPU (this requires a decent GPU - see www.cs.unc.edu/~ccwu/siftgpu) [default]
- Use OpenCV non-free SIFT implementation (this requires the non-free module of OpenCV - can be installed from source). This option is enabled if BUILD_SIFTGPU is disabled in cmake.
In order to use V4R in ROS, use the v4r_ros_wrappers.
simply install sudo apt-get install ros-indigo-v4r
after enabling the STRANDS repositories.
cd ~/somewhere
git clone 'https://rgit.acin.tuwien.ac.at/root/v4r.git'
cd v4r
./setup.sh
mkdir build
cd build
cmake ..
make
sudo make install (optional)
If you want to use CNN feature extraction, you need to install the Caffe library. We recommend to use CMake-based installation for Caffe and provide the install folder to V4R's cmake call as
cmake .. -DCaffe_DIR=/your_caffe_ws/build/install/share/Caffe
To avoid issues with Ceres when building shared libraries, we recommend to build and install Ceres from source.