Skip to content

tue-robotics/ed_gui_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ED GUI server

CI

Installation

Requirements:

You will also need the following system dependencies:

  • geometry_msgs
  • tf2
  • tf2_geometry_msgs
  • tf2_ros
  • urdf

Check out the following packages in your workspace:

cd <your_catkin_workspace>/src
git clone https://github.com/tue-robotics/geolib2.git
git clone https://github.com/tue-robotics/ed.git
git clone https://github.com/tue-robotics/ed_gui_server.git

And compile

cd <your_catkin_workspace>
catkin build

ROS API

When you've started ED you should be able to listen to

rostopic echo /ed/gui/entities

Notice that 'rostopic echo /ed/gui/entities' will give you a constant stream of info of all entities, including their id. To get the image of a certain entity, use the service

rosservice call /ed/gui/get_entity_info

The service is defined here:

rossrv show ed_gui_server_msgs/GetEntityInfo

To store entity info (measurements needed for training perception) on the computer which runs ED, you'll have to use the service:

rosservice call /ed/gui/interact "REQUEST"

The service is defnied here:

rossrv show ed_gui_server_msgs/Interact

And put the following in the command_yaml field: {action: store, id: <PUT-ENTITY-ID-HERE>, type: <PUT-ENTITY-TYPE-HERE>}

There are also services to query for entities in a specific region. For example, the following service call returns the info of entities (their id and pose) in the 20 x 20 x 20 m area around (0, 0, 0):

rosservice call /ed/gui/query_entities "{ area_min: {x: -10, y: -10, z: -10}, area_max: {x: 10, y: 10, z: 10} }"

Once you've received the entity ids, these can be used to query for their meshes. For example, to get the mesh of entitiy 'floor':

rosservice call /ed/gui/query_meshes '{ entity_ids: [ "floor" ] }'

Per entity, You'll receive a list of vertices and a list of triangles referring to the vertices. For more info on the exact format check the message describtion:

rosmsg show ed_gui_server_msgs/Mesh

Tools for visualizing the state of ED

ED Rviz Markerarray publisher

rosrun ed_gui_server ed_rviz_publisher

Now start RViz, and listen to the Marker topic '/ed/rviz'. You should see two blocks appearing: the blocks you specified in the configuration file. Or use the rviz_plugin from the ed_rviz_plugins package to visualize.

ED RVIZ PLUGIN Worldmodel Display

Located in the ed_rviz_plugins package:

Start rviz and add the ed_rviz_plugins/WorldModel display. Configure the service for querying the meshes and the ED entities topic, e.g. /ed/gui/entities and /ed/gui/query_meshes.

Tutorial

All ED tutorials can be found in the ed_tutorials package: https://github.com/tue-robotics/ed_tutorials

About

ROS API for visualization of ED

Resources

Stars

Watchers

Forks

Packages

No packages published