Skip to content
Snippets Groups Projects
user avatar
Tim Übelhör authored
0026edb7
History

ROS Workspace

This is the ROS workspace which contains all of the projects needed for the robo_guide object tracking.

Some repositories use the git-lfs extension which has to be installed to pull all neccessary files.

The repository uses submodules to pull in all of the projects so this command for cloning:

git clone --recursive git@git.rwth-aachen.de:robo_guide/robo_guide_ws.git

Dependencies

The projects build on top of each and can be built in one source tree since they are catkin and cmake packages. There are quite a few dependencies which have to be installed most can be installed via the usual cmake process (checkinstall is recommended so you can cleanly remove the dependencies):

mkdir build
cd build
cmake ..
sudo checkinstall

ROS

ROS Perception (compare with this REP) includes most of the packages that are needed. In detail these packages are required:

  • ROS-Desktop Install (for catkin, messages, nodes, ...)
  • tf2_geometry_msgs for conversion of tf2 messages. Install via apt.
  • realsense2_camera as data provider for the depth images. With a bit of tweaking of the launch files, the tracker should also run with OpenNI devices. Install as stated in realsense readme.
  • image_pipeline for preprocessing of the raw camera data

conan

Some packages use conan packages. Install conan system wide, conan_cmake fails for --user installations:

sudo pip install conan

The repositories needed:

conan remote add tuebel-gl3w https://api.bintray.com/conan/tuebel/gl3w
conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan
conan remote add conan-transit https://api.bintray.com/conan/conan/conan-transit

visp

Needed for handy-eye-calibration install via:

sudo apt install libvisp-dev libvisp-doc visp-images-data

Rendering

The dependencies of scigl_render are handled via conan.io. They will be pulled automatically if the following repositories from above are included.

Unit testing

googletest is included in robo_guide via conan.io.

Robot communication

protocol buffers v3.5.1 are included via conan.io.

Build

In the past Ubuntu 16.04 and ROS Kinetic were used, which should still work. Right now Ubuntu 18.04 an ROS Melodic are in use and tested.

Since this is a mixed catkin & cmake workspace, the easiest and fastest way is to use the catkin tools, catkin_make_isolated or colcon build.

It is required to set a profile for compilation. Use the catkin_configure.bash script before you use catkin build. The srcipt calls:

catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release