Visual Servoing Platform  version 3.0.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Tutorial: How to create an application that uses ViSP on NAOqi OS

We assume in this tutorial that you have successfully cross-compiled ViSP following Tutorial: Cross-compilation for NAOqi OS from Ubuntu host. The aim of this tutorial is to explain how to create an application that uses ViSP cross-build for NAOqi OS as third-party and how to run this application on Nao, Romeo or Pepper robots.

To illustrate this tutorial, we will consider all the examples that are provided in the tutorial dedicated to images (ie. the one located in visp/tutorial/image folder). If you are not familiar with ViSP read first Tutorial: How to create and build a CMake project that uses ViSP on Unix or Windows.

This tutorial was tested on an Ubuntu 14.04 LTS host computer with:

  • Cross Toolchain 2.3.1 Linux 64 (ctc-linux32-atom- on Romeo robot
  • Cross Toolchain 2.4.3 Linux 64 (ctc-linux64-atom- on Pepper robot

Create a workspace for your project

We assume that as described in Tutorial: Cross-compilation for NAOqi OS from Ubuntu host, your workspace dedicated to visp contains the following folders:

$ ls $HOME/soft

Create a new folder to host the project you want to run on NAOqi OS

$ mkdir $HOME/soft/tutorial

Get existing tutorial/image folder from ViSP source code

$ cd $HOME/soft/tutorial
$ svn export

Cross-build your project

Create first a build folder associated to your Cross Toolchain like:

$ cd $HOME/soft/tutorial
$ mkdir image-build-ctc-linux64-atom-

Configure your project setting VISP_DIR and CMAKE_TOOLCHAIN_FILE respectively to ViSP and Cross Toolchain location:

$ cd image-build-ctc-linux64-atom-
$ cmake ../image -DVISP_DIR=$HOME/soft/visp-build-ctc-linux64-atom- -DCMAKE_TOOLCHAIN_FILE=$HOME/softbank/ctc-linux64-atom-

Cross-build your project:

$ make -j4

Install the binaries on NAOqi

First create an archive for the binaries:

$ tar cvzf binary.tar.gz --exclude "*Make*" --exclude "cmake*" *

Then copy the binaries to NAOqi OS:

$ scp binary.tar.gz nao@<your_robot_ip>:

Move the binaries to a more friend location like $HOME/tutorial:

$ ssh nao@<your_robot_ip>
nao~ $ mkdir tutorial
nao~ $ tar xvzf binary.tar.gz --directory tutorial
nao~ $ rm binary.tar.gz

Run the binaries:

nao~ $ cd tutorial
nao~ $ ./tutorial-image-manipulation
nao~ $ ./tutorial-undistort

You are now ready to create your own project for Nao, Romeo or Pepper robots.