Install and Setup

The recommended operating system is Ubuntu 16.04 LTS. RoboSherlock comes as a ROS package, so you will need to install ROS Kinetic (desktop full). Installation instructions can be found on the ROS homepage and setup a catkin workspace as described here. Ubuntu 14.04 will still work, but as of now it is considered to be deprecated and support will stop soon.

These instructions are valid for the core package of RoboSherlock which you can get from the GitHub page:

git clone https://github.com/RoboSherlock/robosherlock

Check out the repository into your catkin workspace. Before compiling you need to set up the dependencies for the project.

Get dependencies

Get robosherlock_msgs. This is a ROS package and needs to be checked out in your catkin workspace.

git clone https://github.com/RoboSherlock/uimacpp_ros
git clone https://github.com/RoboSherlock/robosherlock_msgs

The following packages should be installed (this will add the RoboSherlock PPA to your software sources):

sudo add-apt-repository ppa:robosherlock/ppa
sudo apt-get update
sudo apt-get install rapidjson automake libxerces-c-dev libicu-dev libapr1-dev mongodb openjdk-8-jdk ros-kinetic-libmongocxx-ros

Warning

RoboSherlock heavily depends on algorithms implemented in OpenCV and PCL. For the current release we used the default versions that are included in ROS on Ubuntu 14.04 or Ubuntu 16.04. We also use C++11 features which might require compiling certain dependencies with C++11 support (e.g. libmongocxx-ros on 14.04)

Set up Bash

Put the right paths into your ~/.bashrc.:

export APR_HOME=/usr
export ICU_HOME=/usr
export XERCES_HOME=/usr

export LD_LIBRARY_PATH=/usr/local/lib:${LD_LIBRARY_PATH}

It is recommended to add the [..]/robosherlock/scripts/ folder to your PATH. This way you can easily access some convenience scripts, for e.g. creating a new annotator, or a new ROS package that depends on RoboSherlock.

Compilation

You can either use catkin_make or catkin tools to compie robosherlock (and the rest of your workspace).

Check out Running a pipeline in RoboSherlock for details about how to run a small demo.

Installing and Running the query-answering

In order to use the query-answering capabilities of RoboSherlock, the following libraries need to be installed:

Knowrob: Follow the official Installation guide for the Knowrob Installation, which can be found on their installation page.

robosherlock_knowrob: Check out the repository into your workspace.

git clone https://github.com/RoboSherlock/robosherlock_knowrob

Check out Use queries to control the pipeline for details about how to use the query-answering.