NVIDIA-ISAAC-ROS / NVIDIA-ISAAC-ROS/isaac_ros_visual_slam
Gravity topic is empty when using IMU sensor from Isaac Sim
@jaiveersinghNV is already working on this.
Since Apr 28, 2026.
- Dominant language
- C++
- Stars
- 1.5k
- Forks
- 206
- PR merge metrics
- No merged PRs in 30d
Description
I am using Isaac Sim with a drone model equipped with stereo cameras and an IMU sensor. Through Action Graph, I publish the stereo camera images, camera info, and IMU data to ROS 2, then use Isaac ROS VSLAM for localization.
To verify whether the IMU data is actually being used, I checked the gravity topic using
ros2 topic echo /visual_slam/vis/gravity
However, the topic outputs nothing. As I understand it, this topic should normally publish the estimated gravity vector (or initialized gravity) when IMU fusion is working.
Could you please advise how to solve this issue? Thank you!
My generate_launch_description function is configured as follows:
def generate_launch_description():
visual_slam_node = ComposableNode(
name='visual_slam_node',
package='isaac_ros_visual_slam',
plugin='nvidia::isaac_ros::visual_slam::VisualSlamNode',
remappings=[
('visual_slam/image_0', 'front_stereo_camera/left/image_rect_color'),
('visual_slam/camera_info_0', 'front_stereo_camera/left/camera_info'),
('visual_slam/image_1', 'front_stereo_camera/right/image_rect_color'),
('visual_slam/camera_info_1', 'front_stereo_camera/right/camera_info'),
('visual_slam/imu', '/imu'),
],
parameters=[{
"verbosity": 2,
'use_sim_time': True,
'num_cameras': 2,
'rectified_images': True,
'enable_image_denoising': True,
'enable_imu_fusion': True,
'gravitational_force': [0.0, 0.0, -9.81],
'imu_frame': 'imu',
'gyro_noise_density': 0.000244,
'gyro_random_walk': 0.000019393,
'accel_noise_density': 0.001862,
'accel_random_walk': 0.003,
'map_frame': 'map',
'odom_frame': 'odom',
'base_frame': 'base_link',
'publish_map_to_odom_tf': True,
'publish_odom_to_base_tf': True,
'enable_slam_visualization': True,
'enable_observations_view': True,
'enable_landmarks_view': True,
'image_jitter_threshold_ms': 33.33,
}])
visual_slam_launch_container = ComposableNodeContainer(
name='visual_slam_launch_container',
namespace='',
package='rclcpp_components',
executable='component_container',
composable_node_descriptions=[
visual_slam_node,
],
output='screen',
)
return launch.LaunchDescription([visual_slam_launch_container])
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.