The CUVSLAM_GetLastLeftObservations function cannot obtain CUVSLAM_ObservationVector type data and causes the node to crash.
How do I set the parameters or is this function not open to the public?
Hi @lmljll
Welcome to the Isaac ROS forum.
This functionality can only be used within a ROS node if the enable_observations_export
flag is set to True in the cuvslam.h
file, which is part of the initial cuvslam configuration. To enable this configuration and obtain the point cloud of observations through the ROS node, modify the parameters in the launch file for the isaac_ros_visual_slam
node as follows:
- Enable visualization by setting:
'enable_slam_visualization': True
- Enable observation visualization specifically by setting:
'enable_observations_view': True
- These settings will work whether SLAM is enabled or not:
'enable_localization_n_mapping'
Once configured, the observations will be published via the following topic: visual_slam/vis/observations_cloud
Best,
Raffaello
Thank you very much for your reply. I know from the ROS2 code that the observation point cloud data type comes from CUVSLAM_LandmarkInfo
defined in cuvslam.h
. I use the CUVSLAM_GetLastLeftObservations
and CUVSLAM_GetLastLandmarks
functions in cuvslam.h
and cannot get the current feature point data (the corresponding data structures are CUVSLAM_Observation
and CUVSLAM_Landmark
). The CUVSLAM_LandmarkInfo
structure contains a feature point weight information. How is it generated and how can I obtain the 2D feature point information?