(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Running twoLevelMTTDExamples - Experiment 1

Description: This tutorial explain, step by step, how to run the first experiment in twoLevelMTTDExamples

Keywords: twoLevelMTTDExamples

Tutorial Level: INTERMEDIATE

Installing twoLevelMTTDExamples

As every ROS package, the first step is download and make twoLevelMTTDExamples

$ rosmake twoLevelMTTDExamples

In order to plot results, IPython is needed.

$ sudo apt-get install ipython

Running Experiment 1

Go to Experiment 1 folder typing

$ roscd twoLevelMTTDExamples
$ cd experiment1

Here you will find an executable bash script. Run it typing

./runTwoLevelMTTDFile

This script will launch an OROCOS process, where some OROCOS component are running on it. You can see which components are running typing ls on the OROCOS TaskBrowser

taskbrowser1.png

You can see that the twoLevelMTTD core is running ( NumberObjectsEstimator, VBClusters, twoLevelMTTD components), plus some components used in this experiment, as PrepareSeparateMeasurement and Reporter, used for background subtraction purpose and saving output/results, respectively.

You can terminate the experiment when you wish, typing quit on the TaskBrowser.

During the experiment, a report.txt file will be generated. It contains all output data incoming from twoLevelMTTD algorithm. Open it (using the text editor that you prefer), delete the first row (data field names) and save it.

In order to visualize the final result, a python script can be used. Run IPython typing

$ ipython

then execute the following script

In[1]: run plotResults.py

and three figures will appear

attachment:enviroment.png The first figure shows the enviroment, as set of measurement detected by the Sick Laser Scanner. attachment:clusters.png The second figure shows detected cluster history, result of the low level of twoLevelMTTD approach. attachment:targets.png The third figure shows the detected targets, result of the high level of twoLevelMTTD approach, starting from the previous result.

Closing the figures, it will be generated another one attachment:figure3.png This picture is focused on the first target detected (not in movement). The picture shows the estimated target position, cluster associated to the target and relative covariance.

Details

Experiment data (laser scan data) are contained in measurementsEXP4.txt file. The environment is known and laser scan data matched as environment are saved in environmentEXP4.txt. In order to repeat the experiment, an OROCOS component read these files, every row is a new incoming data.

As first step, some preparations (about measurement's data) are needed: all measurements will be matched with environment data, so all measurements that correspond with the environment will have discarded.

The second step corresponds to the low level of twoLevelMTTD algorithm: clusters will be detected starting from non-environment measurements.

The last step corresponds to the high level of twoLevelMTTD algorithm, that it solve a data association problem, finding targets from general clusters detected before.

Further Information - Questions

It's possible to find detailed information at http://people.mech.kuleuven.be/~tdelaet/twoLevelMTTD/twoLevelMTTL.html#exp1

Wiki: twoLevelMTTDExamples/Tutorials/Running twoLevelMTTDExamples - Experiment 1 (last edited 2010-11-05 12:00:52 by Enea Scioni)