(!) 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.

Executing the asr_state_machine in the cropbox search mode.

Description: Executes the cropbox search of the asr_state_machine.

Tutorial Level: BEGINNER



Most of the asr_resources_for_active_scene_recognition

-> rosrun asr_resources_for_active_scene_recognition start_modules_sim.sh


In asr_recognizer_prediction_ism/param/scene_recognition.yaml

  • dbfilename: Adjust to current database of scenes and corresponding objects (Checkout asr_resources_for_active_scene_recognition for knowing to how scenes are learned and trained)

If simulated: In asr_fake_object_recognition/param/params.yaml

  • config_file_path: Adjust the path to a XML file containing the poses of the object(s) of the scene(s)

In asr_next_best_view/rsc/regions_XXX_with_normals.csv (For XXX choose own name or edit a existing file):

Define each cropbox with:

min_x, min_y, min_z, max_x, max_y, max_z
normal_x, normal_y, normal_z
normal2_x, normal2_y, normal2_z
(empty line)
min_x_2, min_y_2, min_z_2, max_x_2, max_y_2, max_z_2

To define the normals here are some samples:

# 0.7071 = 45°
0.7071,-0.7071,0.0 -> +x +z
-0.7071,-0.7071,0.0 -> -x +z
0.0,-0.7071,0.7071 -> +y +z
0.0,-0.7071,-0.7071 -> -y +z
0.7071,-0.7071,0.7071 -> +x +y +z
0.7071,-0.7071,-0.7071 -> +x -y +z
-0.7071,-0.7071,0.7071 -> -x +y +z
-0.7071,-0.7071,-0.7071 -> -x -y +z
-0.7071,0.0,0.0 -> -x
-0.7071,0.7071,0.0 -> -x -z

Execute in terminal (relative to asr_next_best_view/rsc):

./!RegionToCropBoxAndNormals.py -i regions_XXX_with_normals.csv -o !CropBoxListXXXWithNormals.xml

In asr_next_best_view/launch/next_best_view_core_sim/real.launch

  • mCropBoxListFilePath: Adjust to $(find asr_next_best_view)/rsc/CropBoxListXXXWithNormals.xml

In asr_state_machine/param/params.yaml

  • mode: 5 for cropbox search

  • UseFakeMoveBase: true if simulated to save time and no error of navigation

  • min_utility_for_moving: Set it to or near 0.0, so that views will be generated until no placeholders are reachable by a view

  • PlaceholderObjectTypeInCropboxSearch: Insert anything -> the type is only for information purpose

  • PlaceholderIdentifierInCropboxSearch: The identifier represents the color of the point cloud point (0 is standard)

  • RoomHeight: Adjust to height of the search space

Start and execute the asr_state_machine and the other components like described in the asr_resources_for_active_scene_recognition.

Wiki: asr_state_machine/CropboxSearchTutorial (last edited 2019-11-11 08:49:18 by FelixMarek)