Skip to content

Workshop 4 ‐ Statistical data exploration

gcielniak edited this page Oct 10, 2024 · 8 revisions

Preliminaries

First, synchronise your fork with the main repository on GitHub (Sync fork) as some structural changes were made and new files were added. Then clone or pull the repository to your local PC and re-open it in the dev container using VSC. Rebuild the updated packages colcon build --symlink-install, and source the repository source install/setup.bash.

Statistical summaries

This task does not involve the robots directly as it is focused on a statistical analysis of the experimental data recorded in a file. The provided example data file evaluation\ref_data\head_size_gt.csv contains manually collected measurements of broccoli head sizes used in developing vision systems for robotic harvesters (see Kusumam et al., 2017 for more details). In addition, the evaluation\numpy_stats.py script demonstrates how to read the files and calculate various statistics which summarise that data. To run the script, type python3 evaluation\numpy_stats.py and you should see the summary statistics printed out in the terminal and a plot window with the histogram in the novcn browser window.

Robot sensor data analysis

Your task is to collect the sensory data from the robot and perform statistical analysis of the data. To achieve this task you will need:

  • Run the real or simulated robot using the instructions from previous workshops.
  • Run the mover_laser.py node for 60 s. and let the robot freely roam the space.
  • Log the closest distance to the obstacles as calculated in the move_laser node to a file. The closest distance would need to be published as a topic (e.g. closest_distance) by the node for example as a standard std_msgs.msg.Float32 message. Then the topic can be logged into the .csv file directly as described in Workshop 3.
  • Write a data analysis Python script (e.g. evaluation\dist_summary.py) which will calculate the basic and robust statistics together with the histogram of the closest distance data. Use that information to characterise the data, its distribution, locality and range. Compare your results to your peers and discuss the differences in the obtained results.